Diffstat (limited to 'noncore/apps/tinykate/tinykate.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/apps/tinykate/tinykate.cpp | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/noncore/apps/tinykate/tinykate.cpp b/noncore/apps/tinykate/tinykate.cpp index 03c6e50..f177e47 100644 --- a/noncore/apps/tinykate/tinykate.cpp +++ b/noncore/apps/tinykate/tinykate.cpp | |||
@@ -12,41 +12,44 @@ | |||
12 | * it under the terms of the GNU General Public License as published by * | 12 | * it under the terms of the GNU General Public License as published by * |
13 | * the Free Software Foundation. * | 13 | * the Free Software Foundation. * |
14 | * ONLY VERSION 2 OF THE LICENSE IS APPLICABLE * | 14 | * ONLY VERSION 2 OF THE LICENSE IS APPLICABLE * |
15 | * * | 15 | * * |
16 | ***************************************************************************/ | 16 | ***************************************************************************/ |
17 | #include <qwidget.h> | 17 | #include <qwidget.h> |
18 | #include <qaction.h> | 18 | #include <qaction.h> |
19 | #include <qlayout.h> | 19 | #include <qlayout.h> |
20 | #include <qpe/qpetoolbar.h> | 20 | #include <qpe/qpetoolbar.h> |
21 | #include <qpe/qpemenubar.h> | 21 | #include <qpe/qpemenubar.h> |
22 | #include <qpe/resource.h> | 22 | #include <qpe/resource.h> |
23 | #include <qpe/global.h> | 23 | #include <qpe/global.h> |
24 | #include <qpe/qpeapplication.h> | ||
24 | 25 | ||
25 | #include <opie/ofiledialog.h> | 26 | #include <opie/ofiledialog.h> |
26 | 27 | ||
27 | #include "tinykate.h" | 28 | #include "tinykate.h" |
28 | #include "pics/file-new.xpm" | 29 | #include "pics/file-new.xpm" |
29 | #include "pics/file-open.xpm" | 30 | #include "pics/file-open.xpm" |
30 | #include "pics/file-save.xpm" | 31 | #include "pics/file-save.xpm" |
31 | #include "pics/edit-undo.xpm" | 32 | #include "pics/edit-undo.xpm" |
32 | #include "pics/edit-redo.xpm" | 33 | #include "pics/edit-redo.xpm" |
33 | 34 | ||
34 | #include <katedocument.h> | 35 | #include <katedocument.h> |
35 | #include <katehighlight.h> | 36 | #include <katehighlight.h> |
36 | 37 | ||
37 | TinyKate::TinyKate( QWidget *parent, const char *name, WFlags f) : | 38 | TinyKate::TinyKate( QWidget *parent, const char *name, WFlags f) : |
38 | QMainWindow( parent, name, f ) | 39 | QMainWindow( parent, name, f ) |
39 | { | 40 | { |
41 | nextUnnamed=0; | ||
40 | currentView=0; | 42 | currentView=0; |
43 | viewCount=0; | ||
41 | setCaption(tr("TinyKATE")); | 44 | setCaption(tr("TinyKATE")); |
42 | 45 | ||
43 | setToolBarsMovable(FALSE); | 46 | setToolBarsMovable(FALSE); |
44 | 47 | ||
45 | QPEToolBar *bar = new QPEToolBar( this ); | 48 | QPEToolBar *bar = new QPEToolBar( this ); |
46 | bar->setHorizontalStretchable( TRUE ); | 49 | bar->setHorizontalStretchable( TRUE ); |
47 | QPEMenuBar *mb = new QPEMenuBar( bar ); | 50 | QPEMenuBar *mb = new QPEMenuBar( bar ); |
48 | mb->setMargin( 0 ); | 51 | mb->setMargin( 0 ); |
49 | 52 | ||
50 | tabwidget=new OTabWidget(this); | 53 | tabwidget=new OTabWidget(this); |
51 | setCentralWidget(tabwidget); | 54 | setCentralWidget(tabwidget); |
52 | connect(tabwidget,SIGNAL(currentChanged( QWidget *)),this,SLOT(slotCurrentChanged(QWidget *))); | 55 | connect(tabwidget,SIGNAL(currentChanged( QWidget *)),this,SLOT(slotCurrentChanged(QWidget *))); |
@@ -128,37 +131,46 @@ TinyKate::TinyKate( QWidget *parent, const char *name, WFlags f) : | |||
128 | hlmenu=new QPopupMenu(this); | 131 | hlmenu=new QPopupMenu(this); |
129 | HlManager *hlm=HlManager::self(); | 132 | HlManager *hlm=HlManager::self(); |
130 | for (int i=0;i<hlm->highlights();i++) | 133 | for (int i=0;i<hlm->highlights();i++) |
131 | { | 134 | { |
132 | hlmenu->insertItem(hlm->hlName(i),i); | 135 | hlmenu->insertItem(hlm->hlName(i),i); |
133 | } | 136 | } |
134 | popup->insertItem(tr("Highlighting"),hlmenu); | 137 | popup->insertItem(tr("Highlighting"),hlmenu); |
135 | 138 | ||
136 | 139 | ||
137 | utilSettings = new QAction( tr( "Settings" ), QString::null, 0, this, 0 ); | 140 | utilSettings = new QAction( tr( "Settings" ), QString::null, 0, this, 0 ); |
138 | utilSettings->addTo( popup); | 141 | utilSettings->addTo( popup); |
139 | 142 | ||
143 | if( qApp->argc() > 1) open(qApp->argv()[1]); | ||
144 | else slotNew(); | ||
145 | |||
140 | } | 146 | } |
141 | 147 | ||
142 | 148 | ||
143 | void TinyKate::slotOpen( ) | 149 | void TinyKate::slotOpen( ) |
144 | { | 150 | { |
145 | QString filename=OFileDialog::getOpenFileName(OFileSelector::EXTENDED_ALL); | 151 | QString filename=OFileDialog::getOpenFileName(OFileSelector::EXTENDED_ALL); |
146 | if (!filename.isEmpty()) { | 152 | if (!filename.isEmpty()) { |
153 | open(filename); | ||
154 | } | ||
155 | } | ||
156 | |||
157 | void TinyKate::open(const QString & filename) | ||
158 | { | ||
147 | KateDocument *kd= new KateDocument(false, false, this,0,this); | 159 | KateDocument *kd= new KateDocument(false, false, this,0,this); |
148 | KTextEditor::View *kv; | 160 | KTextEditor::View *kv; |
149 | tabwidget->addTab(kv=kd->createView(tabwidget,"bLAH"),"BLAH","BLAH"); | 161 | tabwidget->addTab(kv=kd->createView(tabwidget,"bLAH"),"tinykate/tinykate","BLAH"); |
150 | qDebug(filename); | 162 | qDebug(filename); |
151 | kd->open(filename); | 163 | kd->open(filename); |
152 | } | 164 | viewCount++; |
153 | } | 165 | } |
154 | 166 | ||
155 | void TinyKate::slotCurrentChanged( QWidget * view) | 167 | void TinyKate::slotCurrentChanged( QWidget * view) |
156 | { | 168 | { |
157 | if (currentView) { | 169 | if (currentView) { |
158 | disconnect(editCopy,SIGNAL(activated()),currentView,SLOT(copy())); | 170 | disconnect(editCopy,SIGNAL(activated()),currentView,SLOT(copy())); |
159 | disconnect(editCut,SIGNAL(activated()),currentView,SLOT(cut())); | 171 | disconnect(editCut,SIGNAL(activated()),currentView,SLOT(cut())); |
160 | disconnect(editPaste,SIGNAL(activated()),currentView,SLOT(paste())); | 172 | disconnect(editPaste,SIGNAL(activated()),currentView,SLOT(paste())); |
161 | disconnect(editUndo,SIGNAL(activated()),currentView,SLOT(undo())); | 173 | disconnect(editUndo,SIGNAL(activated()),currentView,SLOT(undo())); |
162 | disconnect(editRedo,SIGNAL(activated()),currentView,SLOT(redo())); | 174 | disconnect(editRedo,SIGNAL(activated()),currentView,SLOT(redo())); |
163 | disconnect(viewIncFontSizes,SIGNAL(activated()), currentView,SLOT(slotIncFontSizes())); | 175 | disconnect(viewIncFontSizes,SIGNAL(activated()), currentView,SLOT(slotIncFontSizes())); |
164 | disconnect(viewDecFontSizes,SIGNAL(activated()), currentView,SLOT(slotDecFontSizes())); | 176 | disconnect(viewDecFontSizes,SIGNAL(activated()), currentView,SLOT(slotDecFontSizes())); |
@@ -175,25 +187,27 @@ void TinyKate::slotCurrentChanged( QWidget * view) | |||
175 | connect(editRedo,SIGNAL(activated()),currentView,SLOT(redo())); | 187 | connect(editRedo,SIGNAL(activated()),currentView,SLOT(redo())); |
176 | connect(viewIncFontSizes,SIGNAL(activated()), currentView,SLOT(slotIncFontSizes())); | 188 | connect(viewIncFontSizes,SIGNAL(activated()), currentView,SLOT(slotIncFontSizes())); |
177 | connect(viewDecFontSizes,SIGNAL(activated()), currentView,SLOT(slotDecFontSizes())); | 189 | connect(viewDecFontSizes,SIGNAL(activated()), currentView,SLOT(slotDecFontSizes())); |
178 | connect(hlmenu,SIGNAL(activated(int)), currentView,SLOT(setHl(int))); | 190 | connect(hlmenu,SIGNAL(activated(int)), currentView,SLOT(setHl(int))); |
179 | connect(utilSettings,SIGNAL(activated()), currentView,SLOT(configDialog())); | 191 | connect(utilSettings,SIGNAL(activated()), currentView,SLOT(configDialog())); |
180 | 192 | ||
181 | } | 193 | } |
182 | 194 | ||
183 | void TinyKate::slotNew( ) | 195 | void TinyKate::slotNew( ) |
184 | { | 196 | { |
185 | KateDocument *kd= new KateDocument(false, false, this,0,this); | 197 | KateDocument *kd= new KateDocument(false, false, this,0,this); |
186 | KTextEditor::View *kv; | 198 | KTextEditor::View *kv; |
187 | tabwidget->addTab(kv=kd->createView(tabwidget,"BLAH"),"BLAH",tr("Unnamed %1").arg(0)); | 199 | tabwidget->addTab(kv=kd->createView(tabwidget,"BLAH"),"tinykate/tinykate",tr("Unnamed %1").arg(nextUnnamed++)); |
188 | 200 | viewCount++; | |
189 | } | 201 | } |
190 | 202 | ||
191 | void TinyKate::slotClose( ) | 203 | void TinyKate::slotClose( ) |
192 | { | 204 | { |
193 | if (currentView==0) return; | 205 | if (currentView==0) return; |
194 | KTextEditor::View *dv=currentView; | 206 | KTextEditor::View *dv=currentView; |
195 | currentView=0; | 207 | currentView=0; |
196 | tabwidget->removePage(dv); | 208 | tabwidget->removePage(dv); |
197 | delete dv->document(); | 209 | delete dv->document(); |
210 | viewCount--; | ||
211 | if (!viewCount) slotNew(); | ||
198 | } | 212 | } |
199 | 213 | ||