summaryrefslogtreecommitdiff
path: root/noncore/apps/tinykate/tinykate.cpp
Unidiff
Diffstat (limited to 'noncore/apps/tinykate/tinykate.cpp') (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/tinykate/tinykate.cpp22
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
37TinyKate::TinyKate( QWidget *parent, const char *name, WFlags f) : 38TinyKate::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
143void TinyKate::slotOpen( ) 149void 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
157void 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
155void TinyKate::slotCurrentChanged( QWidget * view) 167void 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
183void TinyKate::slotNew( ) 195void 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
191void TinyKate::slotClose( ) 203void 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