-rw-r--r-- | noncore/apps/tinykate/tinykate.cpp | 41 | ||||
-rw-r--r-- | noncore/apps/tinykate/tinykate.h | 4 |
2 files changed, 43 insertions, 2 deletions
diff --git a/noncore/apps/tinykate/tinykate.cpp b/noncore/apps/tinykate/tinykate.cpp index a823530..c8c3b31 100644 --- a/noncore/apps/tinykate/tinykate.cpp +++ b/noncore/apps/tinykate/tinykate.cpp | |||
@@ -34,6 +34,7 @@ | |||
34 | 34 | ||
35 | #include <katedocument.h> | 35 | #include <katedocument.h> |
36 | #include <katehighlight.h> | 36 | #include <katehighlight.h> |
37 | #include <kateview.h> | ||
37 | 38 | ||
38 | TinyKate::TinyKate( QWidget *parent, const char *name, WFlags f) : | 39 | TinyKate::TinyKate( QWidget *parent, const char *name, WFlags f) : |
39 | QMainWindow( parent, name, f ) | 40 | QMainWindow( parent, name, f ) |
@@ -71,10 +72,12 @@ TinyKate::TinyKate( QWidget *parent, const char *name, WFlags f) : | |||
71 | // Action for saving document | 72 | // Action for saving document |
72 | a = new QAction( tr( "Save" ), QPixmap((const char**)file_save_xpm), QString::null, 0, this, 0 ); | 73 | a = new QAction( tr( "Save" ), QPixmap((const char**)file_save_xpm), QString::null, 0, this, 0 ); |
73 | a->addTo(popup); | 74 | a->addTo(popup); |
75 | connect(a, SIGNAL(activated()), this, SLOT(slotSave())); | ||
74 | 76 | ||
75 | // Action for saving document to a new name | 77 | // Action for saving document to a new name |
76 | a = new QAction( tr( "Save As" ), QPixmap((const char**)file_save_xpm), QString::null, 0, this, 0 ); | 78 | a = new QAction( tr( "Save As" ), QPixmap((const char**)file_save_xpm), QString::null, 0, this, 0 ); |
77 | a->addTo(popup); | 79 | a->addTo(popup); |
80 | connect(a, SIGNAL(activated()), this, SLOT(slotSaveAs())); | ||
78 | 81 | ||
79 | // Action for closing the currently active document | 82 | // Action for closing the currently active document |
80 | a = new QAction( tr( "Close" ), QPixmap(), QString::null, 0, this, 0 ); | 83 | a = new QAction( tr( "Close" ), QPixmap(), QString::null, 0, this, 0 ); |
@@ -168,6 +171,7 @@ void TinyKate::open(const QString & filename) | |||
168 | void TinyKate::slotCurrentChanged( QWidget * view) | 171 | void TinyKate::slotCurrentChanged( QWidget * view) |
169 | { | 172 | { |
170 | if (currentView) { | 173 | if (currentView) { |
174 | |||
171 | disconnect(editCopy,SIGNAL(activated()),currentView,SLOT(copy())); | 175 | disconnect(editCopy,SIGNAL(activated()),currentView,SLOT(copy())); |
172 | disconnect(editCut,SIGNAL(activated()),currentView,SLOT(cut())); | 176 | disconnect(editCut,SIGNAL(activated()),currentView,SLOT(cut())); |
173 | disconnect(editPaste,SIGNAL(activated()),currentView,SLOT(paste())); | 177 | disconnect(editPaste,SIGNAL(activated()),currentView,SLOT(paste())); |
@@ -197,7 +201,9 @@ void TinyKate::slotNew( ) | |||
197 | { | 201 | { |
198 | KateDocument *kd= new KateDocument(false, false, this,0,this); | 202 | KateDocument *kd= new KateDocument(false, false, this,0,this); |
199 | KTextEditor::View *kv; | 203 | KTextEditor::View *kv; |
200 | tabwidget->addTab(kv=kd->createView(tabwidget,"BLAH"),"tinykate/tinykate",tr("Unnamed %1").arg(nextUnnamed++)); | 204 | tabwidget->addTab(kv=kd->createView(tabwidget,"BLAH"), |
205 | "tinykate/tinykate", | ||
206 | tr("Unnamed %1").arg(nextUnnamed++)); | ||
201 | viewCount++; | 207 | viewCount++; |
202 | } | 208 | } |
203 | 209 | ||
@@ -212,3 +218,36 @@ void TinyKate::slotClose( ) | |||
212 | if (!viewCount) slotNew(); | 218 | if (!viewCount) slotNew(); |
213 | } | 219 | } |
214 | 220 | ||
221 | void TinyKate::slotSave() { | ||
222 | // feel free to make this how you want | ||
223 | if (currentView==0) return; | ||
224 | |||
225 | // KateView *kv = (KateView*) currentView; | ||
226 | KateDocument *kd = (KateDocument*) currentView->document(); | ||
227 | // qDebug("saving file "+kd->docName()); | ||
228 | if( kd->docName().isEmpty()) | ||
229 | slotSaveAs(); | ||
230 | else | ||
231 | kd->saveFile(); | ||
232 | // kv->save(); | ||
233 | // kd->saveFile(); | ||
234 | } | ||
235 | |||
236 | void TinyKate::slotSaveAs() { | ||
237 | if (currentView==0) return; | ||
238 | KateDocument *kd = (KateDocument*) currentView->document(); | ||
239 | |||
240 | QString filename=OFileDialog::getSaveFileName(OFileSelector::EXTENDED_ALL); | ||
241 | if (!filename.isEmpty()) { | ||
242 | qDebug("saving file "+filename); | ||
243 | QFileInfo fi(filename); | ||
244 | QString filenamed = fi.fileName(); | ||
245 | kd->setDocFile( filename); | ||
246 | kd->setDocName( filenamed); | ||
247 | kd->saveFile(); | ||
248 | // KTextEditor::View *dv = currentView; | ||
249 | // tabwidget->changeTab( dv, filenamed); | ||
250 | // need to change tab label here | ||
251 | } | ||
252 | |||
253 | } | ||
diff --git a/noncore/apps/tinykate/tinykate.h b/noncore/apps/tinykate/tinykate.h index ef0dcba..7b61bae 100644 --- a/noncore/apps/tinykate/tinykate.h +++ b/noncore/apps/tinykate/tinykate.h | |||
@@ -33,13 +33,15 @@ public: | |||
33 | TinyKate( QWidget *parent=0, const char *name=0, WFlags f = 0); | 33 | TinyKate( QWidget *parent=0, const char *name=0, WFlags f = 0); |
34 | 34 | ||
35 | public slots: | 35 | public slots: |
36 | QString currentFileName; | ||
36 | void slotNew(); | 37 | void slotNew(); |
37 | 38 | ||
38 | protected slots: | 39 | protected slots: |
39 | void slotOpen(); | 40 | void slotOpen(); |
40 | void slotClose(); | 41 | void slotClose(); |
41 | void slotCurrentChanged(QWidget *); | 42 | void slotCurrentChanged(QWidget *); |
42 | 43 | void slotSave(); | |
44 | void slotSaveAs(); | ||
43 | protected: | 45 | protected: |
44 | void open(const QString&); | 46 | void open(const QString&); |
45 | private: | 47 | private: |