summaryrefslogtreecommitdiff
path: root/core/apps/textedit/textedit.cpp
Unidiff
Diffstat (limited to 'core/apps/textedit/textedit.cpp') (more/less context) (show whitespace changes)
-rw-r--r--core/apps/textedit/textedit.cpp69
1 files changed, 39 insertions, 30 deletions
diff --git a/core/apps/textedit/textedit.cpp b/core/apps/textedit/textedit.cpp
index 6804918..943fecd 100644
--- a/core/apps/textedit/textedit.cpp
+++ b/core/apps/textedit/textedit.cpp
@@ -32,12 +32,13 @@
32#include <qpe/applnk.h> 32#include <qpe/applnk.h>
33#include <qpe/resource.h> 33#include <qpe/resource.h>
34#include <qpe/config.h> 34#include <qpe/config.h>
35#include <qpe/qpeapplication.h> 35#include <qpe/qpeapplication.h>
36#include <qpe/qpemenubar.h> 36#include <qpe/qpemenubar.h>
37#include <qpe/qpetoolbar.h> 37#include <qpe/qpetoolbar.h>
38#include <qpe/qcopenvelope_qws.h>
38//#include <qpe/finddialog.h> 39//#include <qpe/finddialog.h>
39 40
40#include <qstringlist.h> 41#include <qstringlist.h>
41#include <qaction.h> 42#include <qaction.h>
42#include <qcolordialog.h> 43#include <qcolordialog.h>
43#include <qfileinfo.h> 44#include <qfileinfo.h>
@@ -235,12 +236,16 @@ TextEdit::TextEdit( QWidget *parent, const char *name, WFlags f )
235 doc = 0; 236 doc = 0;
236 edited=FALSE; 237 edited=FALSE;
237 edited1=FALSE; 238 edited1=FALSE;
238 setToolBarsMovable( FALSE ); 239 setToolBarsMovable( FALSE );
239 connect( qApp,SIGNAL( aboutToQuit()),SLOT( cleanUp()) ); 240 connect( qApp,SIGNAL( aboutToQuit()),SLOT( cleanUp()) );
240 241
242 channel = new QCopChannel( "QPE/Application/textedit", this );
243 connect( channel, SIGNAL(received(const QCString&, const QByteArray&)),
244 this, SLOT(receive(const QCString&, const QByteArray&)) );
245
241 setIcon( Resource::loadPixmap( "TextEditor" ) ); 246 setIcon( Resource::loadPixmap( "TextEditor" ) );
242 247
243 QPEToolBar *bar = new QPEToolBar( this ); 248 QPEToolBar *bar = new QPEToolBar( this );
244 bar->setHorizontalStretchable( TRUE ); 249 bar->setHorizontalStretchable( TRUE );
245 menu = bar; 250 menu = bar;
246 251
@@ -482,23 +487,25 @@ void TextEdit::setWordWrap(bool y)
482 editor->setWordWrap(y ? QMultiLineEdit::WidgetWidth : QMultiLineEdit::NoWrap ); 487 editor->setWordWrap(y ? QMultiLineEdit::WidgetWidth : QMultiLineEdit::NoWrap );
483 editor->setEdited( state ); 488 editor->setEdited( state );
484} 489}
485 490
486void TextEdit::fileNew() 491void TextEdit::fileNew()
487{ 492{
488 if( !bFromDocView ) { 493// if( !bFromDocView ) {
489 saveAs(); 494// saveAs();
490 } 495// }
491 newFile(DocLnk()); 496 newFile(DocLnk());
492} 497}
493 498
494void TextEdit::fileOpen() 499void TextEdit::fileOpen()
495{ 500{
496 browseForFiles=new fileBrowser(this,tr("Open File"),TRUE,0, "text/*"); // 501 browseForFiles=new fileBrowser(this,tr("Open File"),TRUE,0, "text/*"); //
497 browseForFiles->setFileView( viewSelection ); 502 browseForFiles->setFileView( viewSelection );
498 browseForFiles->showMaximized(); 503 browseForFiles->showMaximized();
504// if( result != -1 )
505
499 if( browseForFiles->exec() != -1 ) { 506 if( browseForFiles->exec() != -1 ) {
500 QString selFile = browseForFiles->selectedFileName; 507 QString selFile = browseForFiles->selectedFileName;
501 QStringList fileList = browseForFiles->fileList; 508 QStringList fileList = browseForFiles->fileList;
502 qDebug(selFile); 509 qDebug(selFile);
503 QStringList::ConstIterator f; 510 QStringList::ConstIterator f;
504 QString fileTemp; 511 QString fileTemp;
@@ -615,20 +622,22 @@ void TextEdit::newFile( const DocLnk &f )
615 DocLnk nf = f; 622 DocLnk nf = f;
616 nf.setType("text/plain"); 623 nf.setType("text/plain");
617 clear(); 624 clear();
618 setWState (WState_Reserved1 ); 625 setWState (WState_Reserved1 );
619 editor->setFocus(); 626 editor->setFocus();
620 doc = new DocLnk(nf); 627 doc = new DocLnk(nf);
628 currentFileName = "Unnamed";
621 qDebug("newFile "+currentFileName); 629 qDebug("newFile "+currentFileName);
622 updateCaption(currentFileName); 630 updateCaption(currentFileName);
631// editor->setEdited( FALSE);
623} 632}
624 633
625void TextEdit::openFile( const QString &f ) 634void TextEdit::openFile( const QString &f )
626{ 635{
627 636
628 bFromDocView = TRUE; 637// bFromDocView = TRUE;
629 DocLnk nf; 638 DocLnk nf;
630 nf.setType("text/plain"); 639 nf.setType("text/plain");
631 nf.setFile(f); 640 nf.setFile(f);
632 currentFileName=f; 641 currentFileName=f;
633 QFileInfo fi( currentFileName); 642 QFileInfo fi( currentFileName);
634 nf.setName(fi.baseName()); 643 nf.setName(fi.baseName());
@@ -644,34 +653,30 @@ void TextEdit::openFile( const QString &f )
644 updateCaption( name ); 653 updateCaption( name );
645} 654}
646 655
647void TextEdit::openFile( const DocLnk &f ) 656void TextEdit::openFile( const DocLnk &f )
648{ 657{
649// clear(); 658// clear();
650 bFromDocView = TRUE; 659// bFromDocView = TRUE;
651 FileManager fm; 660 FileManager fm;
652 QString txt; 661 QString txt;
653 currentFileName=f.name(); 662 currentFileName=f.name();
654 qDebug("openFile doclnk " + currentFileName); 663 qDebug("openFile doclnk " + currentFileName);
655 if ( !fm.loadFile( f, txt ) ) { 664 if ( !fm.loadFile( f, txt ) ) {
656 // ####### could be a new file 665 // ####### could be a new file
657 qDebug( "Cannot open file" ); 666 qDebug( "Cannot open file" );
658
659 //return;
660 } 667 }
661 668// fileNew();
662 fileNew();
663 if ( doc ) 669 if ( doc )
664 delete doc; 670 delete doc;
665 doc = new DocLnk(f); 671 doc = new DocLnk(f);
666 editor->setText(txt); 672 editor->setText(txt);
667 editor->setEdited( FALSE); 673 editor->setEdited( FALSE);
668 edited1=FALSE; 674 edited1=FALSE;
669 edited=FALSE; 675 edited=FALSE;
670 676
671 qDebug("openFile doclnk "+currentFileName);
672 doc->setName(currentFileName); 677 doc->setName(currentFileName);
673 updateCaption(); 678 updateCaption();
674} 679}
675 680
676void TextEdit::showEditTools() 681void TextEdit::showEditTools()
677{ 682{
@@ -688,15 +693,15 @@ void TextEdit::showEditTools()
688 693
689/*! 694/*!
690 unprompted save */ 695 unprompted save */
691bool TextEdit::save() 696bool TextEdit::save()
692{ 697{
693 QString file = doc->file(); 698 QString file = doc->file();
694 qDebug(file); 699 qDebug("saver file "+file);
695 QString name= doc->name(); 700 QString name= doc->name();
696 qDebug(name); 701 qDebug("File named "+name);
697 QString rt = editor->text(); 702 QString rt = editor->text();
698 if( !rt.isEmpty() ) { 703 if( !rt.isEmpty() ) {
699 if(name.isEmpty()) { 704 if(name.isEmpty()) {
700 saveAs(); 705 saveAs();
701 } else { 706 } else {
702 currentFileName= name ; 707 currentFileName= name ;
@@ -728,29 +733,28 @@ bool TextEdit::save()
728 733
729/*! 734/*!
730 prompted save */ 735 prompted save */
731bool TextEdit::saveAs() 736bool TextEdit::saveAs()
732{ 737{
733// qDebug("saveAsFile "+currentFileName); 738// qDebug("saveAsFile "+currentFileName);
734 739 // case of nothing to save...
735 // case of nothing to save... /// there's always something to save 740 if ( !doc )//|| !bFromDocView)
736// if ( !doc )//|| !bFromDocView) 741 {
737// { 742 qDebug("no doc");
738// qDebug("no doc"); 743 return true;
739// return true; 744 }
740// }
741 if ( !editor->edited() ) { 745 if ( !editor->edited() ) {
742 delete doc; 746 delete doc;
743 doc = 0; 747 doc = 0;
744 return true; 748 return true;
745 } 749 }
746 750
747 QString rt = editor->text(); 751 QString rt = editor->text();
748 qDebug(currentFileName); 752 qDebug(currentFileName);
749 753
750 if( currentFileName.isEmpty() || currentFileName == tr("Unnamed")) { 754 if( currentFileName.isEmpty() || currentFileName == tr("Unnamed") || currentFileName == tr("Text Editor")) {
751 qDebug("do silly TT filename thing"); 755 qDebug("do silly TT filename thing");
752 if ( doc->name().isEmpty() ) { 756 if ( doc->name().isEmpty() ) {
753 QString pt = rt.simplifyWhiteSpace(); 757 QString pt = rt.simplifyWhiteSpace();
754 int i = pt.find( ' ' ); 758 int i = pt.find( ' ' );
755 QString docname = pt; 759 QString docname = pt;
756 if ( i > 0 ) 760 if ( i > 0 )
@@ -811,13 +815,13 @@ bool TextEdit::saveAs()
811 if(caption().left(1)=="*") 815 if(caption().left(1)=="*")
812 setCaption(caption().right(caption().length()-1)); 816 setCaption(caption().right(caption().length()-1));
813 817
814 if(fileSaveDlg) 818 if(fileSaveDlg)
815 delete fileSaveDlg; 819 delete fileSaveDlg;
816 return true; 820 return true;
817} 821} //end saveAs
818 822
819void TextEdit::clear() 823void TextEdit::clear()
820{ 824{
821 delete doc; 825 delete doc;
822 doc = 0; 826 doc = 0;
823 editor->clear(); 827 editor->clear();
@@ -832,25 +836,25 @@ void TextEdit::updateCaption( const QString &name )
832 if ( s.isNull() ) 836 if ( s.isNull() )
833 s = doc->name(); 837 s = doc->name();
834 if ( s.isEmpty() ) { 838 if ( s.isEmpty() ) {
835 s = tr( "Unnamed" ); 839 s = tr( "Unnamed" );
836 currentFileName=s; 840 currentFileName=s;
837 } 841 }
838 842 if(s.left(1) == "/")
843 s = s.right(s.length()-1);
839 setCaption( s + " - " + tr("Text Editor") ); 844 setCaption( s + " - " + tr("Text Editor") );
840 } 845 }
841} 846}
842 847
843void TextEdit::setDocument(const QString& fileref) 848void TextEdit::setDocument(const QString& fileref)
844{ 849{
845 bFromDocView = TRUE; 850 bFromDocView = TRUE;
846 qDebug("setDocument "+fileref);
847 bFromDocView = TRUE;
848 if(fileref.find(".desktop",0,TRUE) == -1) { 851 if(fileref.find(".desktop",0,TRUE) == -1) {
849 openFile(fileref); 852 openFile(fileref);
850 } else { 853 } else {
854 qDebug("is desktop file");
851 openFile(DocLnk(fileref)); 855 openFile(DocLnk(fileref));
852 } 856 }
853 editor->setEdited(TRUE); 857 editor->setEdited(TRUE);
854 edited1=FALSE; 858 edited1=FALSE;
855 edited=TRUE; 859 edited=TRUE;
856 doSearchBar(); 860 doSearchBar();
@@ -861,18 +865,15 @@ void TextEdit::closeEvent( QCloseEvent *e )
861 bFromDocView = FALSE; 865 bFromDocView = FALSE;
862 e->accept(); 866 e->accept();
863} 867}
864 868
865void TextEdit::accept() 869void TextEdit::accept()
866 { 870 {
867 QString file = doc->file(); 871 //if(caption() !="Unnamed")
868 if (file.find("_.txt",0,TRUE) ==-1) 872 if(edited1)
869 save(); 873 saveAs();
870 else {
871 QFile(file).remove();
872 }
873 exit(0); 874 exit(0);
874 875
875} 876}
876 877
877void TextEdit::changeFont() { 878void TextEdit::changeFont() {
878 FontDatabase fdb; 879 FontDatabase fdb;
@@ -931,6 +932,14 @@ void TextEdit::editorChanged() {
931 if(editor->edited() && edited && !edited1) { 932 if(editor->edited() && edited && !edited1) {
932 setCaption( "*"+caption()); 933 setCaption( "*"+caption());
933 edited1=TRUE; 934 edited1=TRUE;
934 } 935 }
935 edited=TRUE; 936 edited=TRUE;
936} 937}
938
939void TextEdit::receive(const QCString&msg, const QByteArray&) {
940 qDebug("QCop "+msg);
941 if ( msg == "setDocument(QString)" ) {
942 qDebug("bugger all");
943 }
944
945}