author | llornkcor <llornkcor> | 2002-10-09 19:06:44 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-10-09 19:06:44 (UTC) |
commit | 381ad47090a7dcf79d1d4fd11fff87ff565fb36b (patch) (side-by-side diff) | |
tree | a7f3b79d610dea39515936d8361fd1c03c9da4d8 | |
parent | c80818d8388c07c1606a70306aea0c9a1e17ea3c (diff) | |
download | opie-381ad47090a7dcf79d1d4fd11fff87ff565fb36b.zip opie-381ad47090a7dcf79d1d4fd11fff87ff565fb36b.tar.gz opie-381ad47090a7dcf79d1d4fd11fff87ff565fb36b.tar.bz2 |
split features up
-rw-r--r-- | core/apps/textedit/textedit.cpp | 64 | ||||
-rw-r--r-- | core/apps/textedit/textedit.h | 9 |
2 files changed, 50 insertions, 23 deletions
diff --git a/core/apps/textedit/textedit.cpp b/core/apps/textedit/textedit.cpp index 6844023..f3937b1 100644 --- a/core/apps/textedit/textedit.cpp +++ b/core/apps/textedit/textedit.cpp @@ -257,16 +257,18 @@ TextEdit::TextEdit( QWidget *parent, const char *name, WFlags f ) QPEToolBar *bar = new QPEToolBar( this ); bar->setHorizontalStretchable( TRUE ); menu = bar; QPEMenuBar *mb = new QPEMenuBar( bar ); QPopupMenu *file = new QPopupMenu( this ); QPopupMenu *edit = new QPopupMenu( this ); + QPopupMenu *advancedMenu = new QPopupMenu(this); + font = new QPopupMenu( this ); bar = new QPEToolBar( this ); editBar = bar; QAction *a = new QAction( tr( "New" ), Resource::loadPixmap( "new" ), QString::null, 0, this, 0 ); connect( a, SIGNAL( activated() ), this, SLOT( fileNew() ) ); a->addTo( bar ); @@ -319,37 +321,46 @@ TextEdit::TextEdit( QWidget *parent, const char *name, WFlags f ) connect( zin, SIGNAL( activated() ), this, SLOT( zoomIn() ) ); zin->addTo( font ); zout = new QAction( tr("Zoom out"), QString::null, 0, this, 0 ); connect( zout, SIGNAL( activated() ), this, SLOT( zoomOut() ) ); zout->addTo( font ); font->insertSeparator(); +// font->insertSeparator(); + font->insertItem(tr("Font"), this, SLOT(changeFont()) ); + + font->insertSeparator(); + font->insertItem(tr("Advanced Features"), advancedMenu); QAction *wa = new QAction( tr("Wrap lines"), QString::null, 0, this, 0 ); connect( wa, SIGNAL( toggled(bool) ), this, SLOT( setWordWrap(bool) ) ); wa->setToggleAction(TRUE); - wa->addTo( font ); - - font->insertSeparator(); - font->insertItem(tr("Font"), this, SLOT(changeFont()) ); - - font->insertSeparator(); + wa->addTo( advancedMenu); nStart = new QAction( tr("Start with new file"), QString::null, 0, this, 0 ); connect( nStart, SIGNAL( toggled(bool) ), this, SLOT( changeStartConfig(bool) ) ); nStart->setToggleAction(TRUE); - nStart->addTo( font ); + nStart->addTo( advancedMenu ); - nAdvanced = new QAction( tr("Advanced features"), QString::null, 0, this, 0 ); - connect( nAdvanced, SIGNAL( toggled(bool) ), this, SLOT( doAdvanced(bool) ) ); + nAdvanced = new QAction( tr("Prompt on Exit"), QString::null, 0, this, 0 ); + connect( nAdvanced, SIGNAL( toggled(bool) ), this, SLOT( doPrompt(bool) ) ); nAdvanced->setToggleAction(TRUE); - nAdvanced->addTo( font ); + nAdvanced->addTo( advancedMenu ); + + desktopAction = new QAction( tr("Always open linked file"), QString::null, 0, this, 0 ); + connect( desktopAction, SIGNAL( toggled(bool) ), this, SLOT( doDesktop(bool) ) ); + desktopAction->setToggleAction(TRUE); + desktopAction->addTo( advancedMenu); + filePermAction = new QAction( tr("File Permissions"), QString::null, 0, this, 0 ); + connect( filePermAction, SIGNAL( toggled(bool) ), this, SLOT( doFilePerms(bool) ) ); + filePermAction->setToggleAction(TRUE); + filePermAction->addTo( advancedMenu); font->insertSeparator(); font->insertItem(tr("About"), this, SLOT( doAbout()) ); mb->insertItem( tr( "File" ), file ); mb->insertItem( tr( "Edit" ), edit ); mb->insertItem( tr( "View" ), font ); @@ -381,54 +392,56 @@ TextEdit::TextEdit( QWidget *parent, const char *name, WFlags f ) searchBar->hide(); editor = new QpeEditor( this ); setCentralWidget( editor ); editor->setFrameStyle( QFrame::Panel | QFrame::Sunken ); connect( editor, SIGNAL( textChanged() ), this, SLOT( editorChanged() ) ); Config cfg("TextEdit"); - cfg. setGroup ( "Font" ); QFont defaultFont = editor-> font ( ); QString family = cfg. readEntry ( "Family", defaultFont. family ( )); int size = cfg. readNumEntry ( "Size", defaultFont. pointSize ( )); int weight = cfg. readNumEntry ( "Weight", defaultFont. weight ( )); bool italic = cfg. readBoolEntry ( "Italic", defaultFont. italic ( )); defaultFont = QFont ( family, size, weight, italic ); editor-> setFont ( defaultFont ); updateCaption(); cfg.setGroup ( "View" ); - useAdvancedFeatures = cfg. readBoolEntry ( "AdvancedFeatures", false ); + promptExit = cfg. readBoolEntry ( "PromptExit", false ); + openDesktop = cfg. readBoolEntry ( "OpenDesktop", true ); + filePerms = cfg. readBoolEntry ( "FilePermissions", false ); - if ( useAdvancedFeatures ) - nAdvanced-> setOn ( true ); + if(promptExit ) nAdvanced->setOn ( true ); + if(openDesktop) desktopAction->setOn ( true ); + if(filePerms) filePermAction->setOn ( true ); bool wrap = cfg. readBoolEntry ( "Wrap", true ); wa-> setOn ( wrap ); setWordWrap ( wrap ); if(cfg.readEntry("startNew","TRUE") == "TRUE") { nStart->setOn(TRUE); fileNew(); } else { fileOpen(); } viewSelection = cfg.readNumEntry( "FileView", 0 ); } TextEdit::~TextEdit() { - if( edited1 & !useAdvancedFeatures ) + if( edited1 & promptExit ) saveAs(); } void TextEdit::cleanUp() { qDebug("cleanUp");// save(); Config cfg ( "TextEdit" ); cfg. setGroup ( "Font" ); @@ -436,17 +449,20 @@ void TextEdit::cleanUp() { cfg. writeEntry ( "Family", f. family ( )); cfg. writeEntry ( "Size", f. pointSize ( )); cfg. writeEntry ( "Weight", f. weight ( )); cfg. writeEntry ( "Italic", f. italic ( )); cfg. setGroup ( "View" ); cfg. writeEntry ( "Wrap", editor-> wordWrap ( ) == QMultiLineEdit::WidgetWidth ); cfg. writeEntry ( "FileView", viewSelection ); - cfg. writeEntry ( "AdvancedFeatures", useAdvancedFeatures ); + + cfg. writeEntry ( "PromptExit", promptExit ); + cfg. writeEntry ( "OpenDesktop", openDesktop ); + cfg. writeEntry ( "FilePermissions", filePerms ); } void TextEdit::accept() { if( edited1) saveAs(); exit(0); } @@ -617,17 +633,17 @@ void TextEdit::newFile( const DocLnk &f ) { updateCaption( currentFileName); // editor->setEdited( FALSE); } void TextEdit::openFile( const QString &f ) { qDebug("filename is "+ f); QString filer; // bFromDocView = TRUE; - if(f.find(".desktop",0,TRUE) != -1 && useAdvancedFeatures) { + if(f.find(".desktop",0,TRUE) != -1 && !openDesktop) { switch ( QMessageBox::warning(this,tr("Text Editor"), tr("Text Editor has detected<BR>you selected a <B>.desktop</B> file.<BR>Open <B>.desktop</B> file or <B>linked</B> file?"), tr(".desktop File"),tr("Linked Document"),0,1,1) ) { case 0: filer = f; break; case 1: @@ -818,17 +834,17 @@ bool TextEdit::saveAs() { doc->setName( currentFileName); updateCaption( currentFileName); FileManager fm; if ( !fm.saveFile( *doc, rt ) ) { return false; } - if( useAdvancedFeatures ) { + if( filePerms ) { filePermissions *filePerm; filePerm = new filePermissions(this, tr("Permissions"),true,0,(const QString &)fileNm); filePerm->showMaximized(); filePerm->exec(); if( filePerm) delete filePerm; } @@ -942,18 +958,26 @@ void TextEdit::receive(const QCString&msg, const QByteArray&) { } void TextEdit::doAbout() { QMessageBox::about(0,tr("Text Edit"),tr("Text Edit is copyright<BR>" "2000 Trolltech AS, and<BR>" "2002 by <B>L. J. Potter <BR>llornkcor@handhelds.org</B><BR>" "and is licensed under the GPL")); } -void TextEdit::doAdvanced(bool b) { - useAdvancedFeatures=b; +void TextEdit::doPrompt(bool b) { + promptExit=b; +} + +void TextEdit::doDesktop(bool b) { + openDesktop=b; +} + +void TextEdit::doFilePerms(bool b) { + filePerms=b; } void TextEdit::editPasteTimeDate() { #ifndef QT_NO_CLIPBOARD QClipboard *cb = QApplication::clipboard(); QDateTime dt = QDateTime::currentDateTime(); cb->setText( dt.toString()); editor->paste(); diff --git a/core/apps/textedit/textedit.h b/core/apps/textedit/textedit.h index a2badaa..4848051 100644 --- a/core/apps/textedit/textedit.h +++ b/core/apps/textedit/textedit.h @@ -52,30 +52,32 @@ class TextEdit : public QMainWindow { Q_OBJECT public: TextEdit( QWidget *parent = 0, const char *name = 0, WFlags f = 0 ); ~TextEdit(); QPopupMenu *font; - QAction *nStart, *nFileDlgOpt, *nAdvanced; + QAction *nStart, *nFileDlgOpt, *nAdvanced, *desktopAction, *filePermAction; bool edited, edited1; void openFile( const QString & ); QCopChannel * channel; public slots: void editorChanged(); void receive(const QCString&, const QByteArray&); protected: - bool fileIs, useAdvancedFeatures; + bool fileIs, useAdvancedFeatures, promptExit, openDesktop, filePerms; void closeEvent( QCloseEvent *e ); void doSearchBar(); private slots: void editPasteTimeDate(); - void doAdvanced(bool); + void doPrompt(bool); + void doDesktop(bool); + void doFilePerms(bool); void doAbout(); void setDocument(const QString&); void changeFont(); void fileNew(); void fileRevert(); void fileOpen(); void changeStartConfig(bool); bool save(); @@ -111,16 +113,17 @@ private: void updateCaption( const QString &name=QString::null ); void setFontSize(int sz, bool round_down_not_up); private: // fileSaver *fileSaveDlg; // fileBrowser *browseForFiles; QpeEditor* editor; QToolBar *menu, *editBar, *searchBar; + QPopupMenu *advancedMenu; QLineEdit *searchEdit; DocLnk *doc; bool searchVisible; bool bFromDocView; int viewSelection; QAction *zin, *zout; QString currentFileName; }; |