summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-reader/QTReaderApp.h
Unidiff
Diffstat (limited to 'noncore/apps/opie-reader/QTReaderApp.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-reader/QTReaderApp.h237
1 files changed, 140 insertions, 97 deletions
diff --git a/noncore/apps/opie-reader/QTReaderApp.h b/noncore/apps/opie-reader/QTReaderApp.h
index fe3eebf..5ecc42d 100644
--- a/noncore/apps/opie-reader/QTReaderApp.h
+++ b/noncore/apps/opie-reader/QTReaderApp.h
@@ -34,65 +34,54 @@
34#include <qlist.h> 34#include <qlist.h>
35//#include <qpe/filemanager.h> 35//#include <qpe/filemanager.h>
36#include <qmap.h> 36#include <qmap.h>
37#include <qlineedit.h> 37#include <qlineedit.h>
38#include <qstack.h> 38#include <qstack.h>
39#include <qlistbox.h> 39#include <qlistbox.h>
40#ifdef USEQPE
41#include <qpe/qpeapplication.h>
42#endif
43#include "orkey.h"
40//#include "Queue.h" 44//#include "Queue.h"
45#include "BGType.h"
41 46
47class QBoxLayout;
42class QWidgetStack; 48class QWidgetStack;
43class QToolButton; 49class QToolButton;
44class QPopupMenu; 50class QPopupMenu;
45class QToolBar; 51class QToolBar;
46#ifdef USEQPE 52#ifdef USEQPE
47class QToolBar; 53class QPEToolBar;
48class QMenuBar; 54class QPEMenuBar;
49#endif 55#endif
56class QScrollBar;
50class CBkmkSelector; 57class CBkmkSelector;
51class QProgressBar; 58class QProgressBar;
52class QAction; 59class QAction;
53class CAnnoEdit; 60class CAnnoEdit;
54class QFloatBar; 61class QFloatBar;
55class CDrawBuffer; 62class CDrawBuffer;
56class QTReader; 63class QTReader;
57class QImage; 64class QImage;
58class Config; 65class Config;
66class CButtonPrefs;
59 67
60enum ActionTypes 68#ifdef USEQPE
61{
62 cesNone = 0,
63 cesOpenFile,
64 cesAutoScroll,
65 cesActionMark,
66 cesActionAnno,
67 cesFullScreen,
68 cesZoomIn,
69 cesZoomOut,
70 cesBack,
71 cesForward,
72 cesHome,
73 cesPageUp,
74 cesPageDown,
75 cesLineUp,
76 cesLineDown,
77 cesStartDoc,
78 cesEndDoc
79};
80/*
81*m_preferences_action, *m_close_action *m_info_action, *m_touch_action,
82*m_find_action, *m_jump_action, *m_setfont_action *m_goto_action,
83*m_delete_action; *m_autogen_action, *m_clear_action, *m_save_action;
84*m_tidy_action, *m_startBlock_action, *m_endBlock_action;
85*m_setenc_action, *m_setmono_action;
86*/
87enum ToolbarPolicy 69enum ToolbarPolicy
88{ 70{
89 cesSingle = 0, 71 cesSingle = 0,
90 cesMenuTool, 72 cesMenuTool,
91 cesMultiple 73 cesMultiple
92}; 74};
75#else
76enum ToolbarPolicy
77{
78 cesMenuTool = 0,
79 cesMultiple
80};
81#endif
93 82
94enum regedit_type 83enum regedit_type
95{ 84{
96 cAutoGen, 85 cAutoGen,
97 cAddBkmk, 86 cAddBkmk,
98 cJump, 87 cJump,
@@ -101,24 +90,26 @@ enum regedit_type
101#ifdef _SCROLLPIPE 90#ifdef _SCROLLPIPE
102 cSetPipeTarget, 91 cSetPipeTarget,
103#endif 92#endif
104 cSetConfigName, 93 cSetConfigName,
105 cMargin, 94 cMargin,
106 cExtraSpace, 95 cExtraSpace,
107 cExtraLead 96 cExtraLead,
97 cRepara
108}; 98};
109 99
110enum bkmk_action 100enum bkmk_action
111{ 101{
112 cOpenFile, 102 cOpenFile,
113 cGotoBkmk, 103 cGotoBkmk,
114 cDelBkmk, 104 cDelBkmk,
115 cRmBkmkFile, 105 cRmBkmkFile,
116 cLdConfig, 106 cLdConfig,
117 cRmConfig, 107 cRmConfig,
118 cExportLinks 108 cExportLinks,
109 cLdTheme
119}; 110};
120 111
121enum fontselector_action 112enum fontselector_action
122{ 113{
123 cChooseFont, 114 cChooseFont,
124 cChooseEncoding 115 cChooseEncoding
@@ -137,122 +128,168 @@ class infowin;
137class GraphicWin; 128class GraphicWin;
138 129
139class QTReaderApp : public QMainWindow 130class QTReaderApp : public QMainWindow
140{ 131{
141 Q_OBJECT 132 Q_OBJECT
142 133
134 QColor getcolour(int c);
135
136 QMap<orKey, int> kmap;
143 unsigned long m_savedpos; 137 unsigned long m_savedpos;
144 int m_debounce; 138 int m_debounce;
139 bool m_kmapchanged;
140 bground m_bgtype;
145 timeb m_lastkeytime; 141 timeb m_lastkeytime;
142 QScrollBar* m_scrollbar;
143 QScrollBar* scrollbar;
144 int m_qtscroll, m_localscroll;
145 bool m_hidebars, m_scrollishidden, m_statusishidden;
146 QBoxLayout *m_layout;
147 QLabel* m_prog;
146 bool m_annoIsEditing; 148 bool m_annoIsEditing;
147 bool m_propogatefontchange, m_bFloatingDialog; 149 bool m_propogatefontchange, m_bFloatingDialog;
148 bool m_url_clipboard, m_url_localfile, m_url_globalfile; 150 bool m_url_clipboard, m_url_localfile, m_url_globalfile;
151 CButtonPrefs* m_buttonprefs;
149 fontselector_action m_fontAction; 152 fontselector_action m_fontAction;
150 void doAction(ActionTypes a, QKeyEvent* e); 153 void doAction(QKeyEvent* e);
151 154
152 public: 155 public:
153 QTReaderApp( QWidget *parent = 0, const char *name = 0, WFlags f = 0 ); 156 QTReaderApp( QWidget *parent = 0, const char *name = 0, WFlags f = 0 );
154 ~QTReaderApp(); 157 ~QTReaderApp();
155 158
156 void handlekey(QKeyEvent* e);
157 void hideEvent(QHideEvent*) 159 void hideEvent(QHideEvent*)
158 { 160 {
159 suspend(); 161#ifdef USEQPE
160 } 162 if (m_grabkeyboard)
161 163 {
164 ((QPEApplication*)qApp)->ungrabKeyboard();
165 }
166#endif
167 suspend();
168 }
169#ifdef USEQPE
170 void showEvent(QShowEvent*)
171 {
172 if (m_grabkeyboard)
173 {
174 ((QPEApplication*)qApp)->grabKeyboard();
175 }
176 }
177#endif
162 void suspend(); 178 void suspend();
163 void openFile( const QString & ); 179 void openFile( const QString & );
164 180
165 void setScrollState(bool _b);
166 181
167 protected: 182 protected:
168 void setfontHelper(const QString& lcn, int size = 0); 183 void setfontHelper(const QString& lcn, int size = 0);
169 QAction* m_bkmkAvail, *m_actFullscreen; 184 QAction* m_bkmkAvail, *m_actFullscreen;
170 CAnnoEdit* m_annoWin; 185 CAnnoEdit* m_annoWin;
171 Bkmk* m_anno; 186 Bkmk* m_anno;
187 int m_scrollcolor, m_scrollbarcolor, m_background, m_foreground;
172// void resizeEvent(QResizeEvent* e); 188// void resizeEvent(QResizeEvent* e);
173 void closeEvent( QCloseEvent *e ); 189 void closeEvent( QCloseEvent *e );
174 void readbkmks(); 190#ifdef NEWFULLSCREEN
175 void do_mono(const QString&); 191 void resizeEvent(QResizeEvent *);
176 void do_jump(const QString&); 192 void focusInEvent(QFocusEvent*);
177 void do_settarget(const QString&); 193 void enableFullscreen();
194#endif
195 void readbkmks();
196 void do_mono(const QString&);
197 void do_jump(const QString&);
198 void do_reparastring(const QString&);
199 void do_settarget(const QString&);
178#ifdef _SCROLLPIPE 200#ifdef _SCROLLPIPE
179// void do_setpipetarget(const QString&); 201 //void do_setpipetarget(const QString&);
202#endif
203 void do_saveconfig(const QString&, bool);
204 bool readconfig(const QString&, const QString&, bool);
205 bool PopulateConfig(const char*, bool usedirs = false);
206 ActionTypes ActNameToInt(const QString&);
207#ifdef USEQPE
208 bool m_grabkeyboard;
180#endif 209#endif
181 void do_saveconfig(const QString&, bool);
182 bool readconfig(const QString&, bool);
183 bool PopulateConfig(const char*);
184 ActionTypes ActNameToInt(const QString&);
185 bool m_doAnnotation; 210 bool m_doAnnotation;
186 bool m_doDictionary; 211 bool m_doDictionary;
187 bool m_doClipboard; 212 bool m_doClipboard;
188 bool m_fullscreen; 213 bool m_fullscreen;
189 bool m_loadedconfig; 214 bool m_loadedconfig;
190 public: 215 public:
191 void saveprefs(); 216 void saveprefs();
192public slots: 217public slots:
218 void setBackgroundBitmap();
219 void UpdateStatus();
220 void setScrollState(bool _b);
221 void handlekey(QKeyEvent* e);
222 void forceopen(const QString& filename);
193 void setDocument(const QString&); 223 void setDocument(const QString&);
194private slots: 224private slots:
195#ifdef _SCRIPT 225#ifdef _SCRIPT
196// void RunScript(); 226// void RunScript();
197#endif 227#endif
228 void actionscroll(int v);
198 void SaveConfig(); 229 void SaveConfig();
230 void LoadTheme();
199 void LoadConfig(); 231 void LoadConfig();
200 void TidyConfig(); 232 void TidyConfig();
201 void ExportLinks(); 233 void ExportLinks();
202 void zoomin(); 234 void zoomin();
203 void zoomout(); 235 void zoomout();
204 void chooseencoding(); 236 void chooseencoding();
205 void setfullscreen(bool sfs); 237 void setfullscreen(bool sfs);
238 void setrotated(bool sfs);
239 void setinverted(bool sfs);
240 void setgrab(bool sfs);
206// void setcontinuous(bool sfs); 241// void setcontinuous(bool sfs);
207 void setTwoTouch(bool _b); 242 void setTwoTouch(bool _b);
208 void restoreFocus(); 243 void restoreFocus();
209 void OnAnnotation(bool _b) 244 void OnAnnotation(bool _b)
210 { 245 {
211 m_doAnnotation = _b; 246 m_doAnnotation = _b;
212 } 247 }
213 void OnDictionary(bool _b) 248 void OnDictionary(bool _b)
214 { 249 {
215 m_doDictionary = _b; 250 m_doDictionary = _b;
216 } 251 }
217 void OnClipboard(bool _b) 252 void OnClipboard(bool _b)
218 { 253 {
219 m_doClipboard = _b; 254 m_doClipboard = _b;
220 } 255 }
221 void OnWordSelected(const QString&, size_t, const QString&); 256 void OnWordSelected(const QString&, size_t, size_t, const QString&);
222 void OnURLSelected(const QString& href); 257 void OnURLSelected(const QString& href, const size_t tgt);
223 void showgraphic(QImage&); 258 void showgraphic(QImage&);
224 void addAnno(const QString&, const QString&, size_t); 259 void addAnno(const QString&, const QString&, size_t, size_t);
225 void addAnno(const QString&, const QString&); 260 void addAnno(const QString&, const QString&);
226 void addanno(); 261 void addanno();
227 void showAnnotation(); 262 void showAnnotation();
228 void do_setencoding(int i); 263 void do_setencoding(int i);
229 void do_setfont(const QString&); 264 void do_setfont(const QString&);
230 void buttonActionSelected(QAction*); 265 //void buttonActionSelected(QAction*);
231// void msgHandler(const QCString&, const QByteArray&); 266 void msgHandler(const QCString&, const QByteArray&);
232 void monospace(bool); 267 void monospace(bool);
233 void jump(); 268 void jump();
234 void settarget(); 269 void reparastring();
270 void settarget();
235#ifdef _SCROLLPIPE 271#ifdef _SCROLLPIPE
236// void setpipetarget(); 272 //void setpipetarget();
237// void setpause(bool); 273 //void setpause(bool);
238#endif 274#endif
239// void setspacing(); 275 //void setspacing();
240 void setfont(); 276 void setfont();
241 void clearBkmkList(); 277 void clearBkmkList();
242 void listBkmkFiles(); 278 void listBkmkFiles();
243 void editMark(); 279 void editMark();
244 void autoScroll(bool); 280 void autoScroll(bool);
245 void addbkmk(); 281 void addbkmk();
246 void savebkmks(); 282 void savebkmks();
247// void importFiles(); 283 //void importFiles();
248 void showprefs(); 284 void showprefs();
249 void showtoolbarprefs(); 285 void showtoolbarprefs();
250 void infoClose(); 286 void showbuttonprefs();
251 // void oldFile(); 287 void infoClose();
252 void showinfo(); 288 // void oldFile();
289 void showinfo();
253 290
254// void indentplus(); 291// void indentplus();
255// void indentminus(); 292// void indentminus();
256 293
257 void fileOpen(); 294 void fileOpen();
258 void fileClose(); 295 void fileClose();
@@ -279,15 +316,13 @@ private slots:
279 316
280 void showEditTools(); 317 void showEditTools();
281 318
282// void stripcr(bool); 319// void stripcr(bool);
283// void setfulljust(bool); 320// void setfulljust(bool);
284// void onespace(bool); 321// void onespace(bool);
285#ifdef REPALM
286// void repalm(bool); 322// void repalm(bool);
287#endif
288// void peanut(bool _b); 323// void peanut(bool _b);
289// void remap(bool); 324// void remap(bool);
290// void embolden(bool); 325// void embolden(bool);
291// void autofmt(bool); 326// void autofmt(bool);
292// void textfmt(bool); 327// void textfmt(bool);
293// void striphtml(bool); 328// void striphtml(bool);
@@ -305,25 +340,31 @@ private slots:
305 void do_delmark(); 340 void do_delmark();
306 void do_autogen(); 341 void do_autogen();
307 void do_regaction(); 342 void do_regaction();
308 void OnRedraw(); 343 void OnRedraw();
309 344
310 private: 345 private:
346 void setscrollcolour();
347 void setscrollbarcolour();
311 void writeUrl(const QString& file, const QString& href); 348 void writeUrl(const QString& file, const QString& href);
312 QAction *m_preferences_action, *m_open_action, *m_close_action; 349 QAction *m_preferences_action, *m_open_action, *m_close_action;
313 QAction *m_info_action, *m_touch_action, *m_find_action, *m_start_action; 350 QAction *m_info_action, *m_touch_action, *m_find_action, *m_start_action;
314 QAction *m_end_action, *m_jump_action, *m_pageline_action; 351 QAction *m_end_action, *m_jump_action, *m_pageline_action;
315 QAction *m_pageup_action, *m_pagedn_action, *m_back_action; 352 QAction *m_pageup_action, *m_pagedn_action, *m_back_action;
316 QAction *m_home_action, *m_forward_action, *m_zoomin_action; 353 QAction *m_home_action, *m_forward_action, *m_zoomin_action;
317 QAction *m_zoomout_action, *m_setfont_action, *m_mark_action; 354 QAction *m_zoomout_action, *m_setfont_action, *m_mark_action;
318 QAction *m_annotate_action, *m_goto_action, *m_delete_action; 355 QAction *m_annotate_action, *m_goto_action, *m_delete_action;
319 QAction *m_autogen_action, *m_clear_action, *m_save_action; 356 QAction *m_autogen_action, *m_clear_action, *m_save_action;
320 QAction *m_tidy_action, *m_startBlock_action, *m_endBlock_action; 357 QAction *m_tidy_action, *m_startBlock_action, *m_endBlock_action;
321 QAction *m_setenc_action, *m_setmono_action, *m_saveconfig_action; 358 QAction *m_setenc_action, *m_setmono_action, *m_saveconfig_action;
322 QAction *m_loadconfig_action, *m_toolbarprefs_action, *m_tidyconfig_action; 359 QAction *m_loadconfig_action, *m_loadtheme_action, *m_toolbarprefs_action, *m_tidyconfig_action;
323 QAction *m_exportlinks_action; 360 QAction *m_exportlinks_action, *m_rotate_action, *m_buttonprefs_action, *m_inverse_action;
361 QAction *m_repara_action;
362#ifdef USEQPE
363 QAction *m_grab_action;
364#endif
324 void addtoolbars(Config* config); 365 void addtoolbars(Config* config);
325 ToolbarPolicy m_tbpol, m_tbpolsave; 366 ToolbarPolicy m_tbpol, m_tbpolsave;
326 ToolBarDock m_tbposition; 367 ToolBarDock m_tbposition;
327 bool m_tbmove, m_tbmovesave; 368 bool m_tbmove, m_tbmovesave;
328 QToolBar* filebar(); 369 QToolBar* filebar();
329 QToolBar* viewbar(); 370 QToolBar* viewbar();
@@ -344,13 +385,13 @@ private slots:
344*/ 385*/
345 void fileOpen2(); 386 void fileOpen2();
346 void readfilelist(); 387 void readfilelist();
347 void savefilelist(); 388 void savefilelist();
348 void updatefileinfo(); 389 void updatefileinfo();
349 bool openfrombkmk(Bkmk*); 390 bool openfrombkmk(Bkmk*);
350 QString m_targetapp, m_targetmsg; 391 QString m_targetapp, m_targetmsg, m_statusstring, m_themename;
351 bool listbkmk(CList<Bkmk>*, const QString& _lab = QString::null); 392 bool listbkmk(CList<Bkmk>*, const QString& _lab = QString::null);
352 QString usefilebrowser(); 393 QString usefilebrowser();
353 void do_regedit(); 394 void do_regedit();
354 void colorChanged( const QColor &c ); 395 void colorChanged( const QColor &c );
355 void clear(); 396 void clear();
356 void updateCaption(); 397 void updateCaption();
@@ -363,47 +404,49 @@ private slots:
363 QAction* m_scrollButton; 404 QAction* m_scrollButton;
364 405
365 QAction* m_buttonAction[MAX_ACTIONS]; 406 QAction* m_buttonAction[MAX_ACTIONS];
366 407
367 CBkmkSelector* bkmkselector; 408 CBkmkSelector* bkmkselector;
368 409
369 ActionTypes m_spaceTarget, m_escapeTarget, m_returnTarget, m_leftTarget, m_rightTarget, 410 // ActionTypes m_spaceTarget, m_escapeTarget, m_returnTarget, m_leftTarget, m_rightTarget,
370 m_upTarget, m_downTarget; 411 //m_upTarget, m_downTarget;
371 bool m_leftScroll, m_rightScroll, m_upScroll, m_downScroll; 412 //bool m_leftScroll, m_rightScroll, m_upScroll, m_downScroll;
372 bool m_bcloseDisabled, m_disableesckey; 413 bool m_bcloseDisabled, m_disableesckey;
373 size_t searchStart; 414 size_t searchStart;
374#ifdef __ISEARCH 415#ifdef __ISEARCH
375 QStack<searchrecord>* searchStack; 416 QStack<searchrecord>* searchStack;
376 bool dosearch(size_t start, CDrawBuffer& test, const QString& arg); 417 bool dosearch(size_t start, CDrawBuffer& test, const QString& arg);
377#else 418#else
378 bool dosearch(size_t start, CDrawBuffer& test, const QRegExp& arg); 419 bool dosearch(size_t start, CDrawBuffer& test, const QRegExp& arg);
379#endif 420#endif
380 QWidgetStack *editorStack; 421 QWidgetStack *editorStack;
381 QTReader* reader; 422 QTReader* reader;
382 QComboBox* m_fontSelector; 423 QComboBox* m_fontSelector;
383// QToolBar /* *menu,*/ *fileBar; 424// QPEToolBar /* *menu,*/ *fileBar;
384 QToolBar *menubar, *fileBar, *navBar, *viewBar, *markBar;
385#ifdef USEQPE 425#ifdef USEQPE
386 QMenuBar *mb; 426 QToolBar *menubar;
427#endif
428 QToolBar *fileBar, *navBar, *viewBar, *markBar;
429#ifdef USEQPE
430 QPEMenuBar *mb;
387#else 431#else
388 QMenuBar *mb; 432 QMenuBar *mb;
389#endif 433#endif
390 QFloatBar *searchBar, *regBar/*, *m_fontBar*/; 434 QFloatBar *searchBar, *regBar/*, *m_fontBar*/;
391 QToolBar /* *searchBar, *regBar,*/ *m_fontBar; 435 QToolBar /* *searchBar, *regBar,*/ *m_fontBar;
392 QLineEdit *searchEdit, *regEdit; 436 QLineEdit *searchEdit, *regEdit;
393 bool searchVisible; 437 bool searchVisible;
394 bool regVisible; 438 bool regVisible;
395 bool m_fontVisible, m_twoTouch; 439 bool m_fontVisible, m_twoTouch;
396 bool bFromDocView;
397 static unsigned long m_uid; 440 static unsigned long m_uid;
398 long unsigned get_unique_id() { return m_uid++; } 441 long unsigned get_unique_id() { return m_uid++; }
399 /* 442 /*
400 void resizeEvent( QResizeEvent * r) 443 void resizeEvent( QResizeEvent * r)
401 { 444 {
402// odebug << "resize:(" << r->oldSize().width() << "," << r->oldSize().height() << ")" << oendl; 445// qDebug("resize:(%u,%u)", r->oldSize().width(), r->oldSize().height());
403// odebug << "resize:(" << r->size().width() << "," << r->size().height() << ")" << oendl; 446// qDebug("resize:(%u,%u)", r->size().width(), r->size().height());
404 // bgroup->move( width()-bgroup->width(), 0 ); 447 // bgroup->move( width()-bgroup->width(), 0 );
405 } 448 }
406 */ 449 */
407 CList<Bkmk>* pBkmklist; 450 CList<Bkmk>* pBkmklist;
408 CList<Bkmk>* pOpenlist; 451 CList<Bkmk>* pOpenlist;
409 infowin* m_infoWin; 452 infowin* m_infoWin;