1 /*
2   FXiTe - The Free eXtensIble Text Editor
3   Copyright (c) 2009-2012 Jeffrey Pohlmeyer <yetanothergeek@gmail.com>
4 
5   This program is free software; you can redistribute it and/or modify it
6   under the terms of the GNU General Public License version 3 as
7   published by the Free Software Foundation.
8 
9   This software is distributed in the hope that it will be useful,
10   but WITHOUT ANY WARRANTY; without even the implied warranty of
11   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12   GNU General Public License for more details.
13 
14   You should have received a copy of the GNU General Public License
15   along with this program; if not, write to the Free Software
16   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
17 */
18 #ifndef APPWIN_H
19 #define APPWIN_H
20 
21 #include "appwin_base.h"
22 
23 
24 class TopWindow: public TopWindowBase {
25 private:
FXDECLARE(TopWindow)26   FXDECLARE(TopWindow)
27   TopWindow(){}
28 public:
29   long onTabOrient(      FXObject* o, FXSelector sel, void* p );
30   long onPackTabWidth(   FXObject* o, FXSelector sel, void* p );
31   long onSwitchTabs(     FXObject* o, FXSelector sel, void* p );
32   long onNextTab(        FXObject* o, FXSelector sel, void* p );
33   long onTabActivate(    FXObject* o, FXSelector sel, void* p );
34   long onMoveTab(        FXObject* o, FXSelector sel, void* p );
35   long onFileOpen(       FXObject* o, FXSelector sel, void* p );
36   long onFileSave(       FXObject* o, FXSelector sel, void* p );
37   long onFileSaveAs(     FXObject* o, FXSelector sel, void* p );
38   long onFileSaveAll(    FXObject* o, FXSelector sel, void* p );
39   long onFileSaveACopy(  FXObject* o, FXSelector sel, void* p );
40   long onFileNew(        FXObject* o, FXSelector sel, void* p );
41   long onSelectDir(      FXObject* o, FXSelector sel, void* p );
42   long onQuit(           FXObject* o, FXSelector sel, void* p );
43   long onScintillaCmd(   FXObject* o, FXSelector sel, void* p );
44   long onScintillaPick(  FXObject* o, FXSelector sel, void* p );
45   long onScintillaKey(   FXObject* o, FXSelector sel, void* p );
46   long onCloseTab(       FXObject* o, FXSelector sel, void* p );
47   long onCloseAll(       FXObject* o, FXSelector sel, void* p );
48   long onUndo(           FXObject* o, FXSelector sel, void* p );
49   long onRedo(           FXObject* o, FXSelector sel, void* p );
50   long onCut(            FXObject* o, FXSelector sel, void* p );
51   long onCopy(           FXObject* o, FXSelector sel, void* p );
52   long onPaste(          FXObject* o, FXSelector sel, void* p );
53   long onDeleteChunk(    FXObject* o, FXSelector sel, void* p );
54   long onFind(           FXObject* o, FXSelector sel, void* p );
55   long onFindNext(       FXObject* o, FXSelector sel, void* p );
56   long onFindPrev(       FXObject* o, FXSelector sel, void* p );
57   long onReplace(        FXObject* o, FXSelector sel, void* p );
58   long onGoto(           FXObject* o, FXSelector sel, void* p );
59   long onGotoSelected(   FXObject* o, FXSelector sel, void* p );
60   long onFindSelected(   FXObject* o, FXSelector sel, void* p );
61   long onZoom(           FXObject* o, FXSelector sel, void* p );
62   long onShowStatusBar(  FXObject* o, FXSelector sel, void* p );
63   long onShowMargin(     FXObject* o, FXSelector sel, void* p );
64   long onShowIndent(     FXObject* o, FXSelector sel, void* p );
65   long onShowCaretLine(  FXObject* o, FXSelector sel, void* p );
66   long onShowLineNums(   FXObject* o, FXSelector sel, void* p );
67   long onShowToolbar(    FXObject* o, FXSelector sel, void* p );
68   long onShowWhiteSpace( FXObject* o, FXSelector sel, void* p );
69   long onShowOutputPane( FXObject* o, FXSelector sel, void* p );
70   long onInvertColors(   FXObject* o, FXSelector sel, void* p );
71   long onPrefsDialog(    FXObject* o, FXSelector sel, void* p );
72   long onCtrlTab(        FXObject* o, FXSelector sel, void* p );
73   long onIndent(         FXObject* o, FXSelector sel, void* p );
74   long onFilterSel(      FXObject* o, FXSelector sel, void* p );
75   long onKillCommand(    FXObject* o, FXSelector sel, void* p );
76   long onRunCommand(     FXObject* o, FXSelector sel, void* p );
77   long onGoToError(      FXObject* o, FXSelector sel, void* p );
78   long onBookmark(       FXObject* o, FXSelector sel, void* p );
79   long onSplitChanged(   FXObject* o, FXSelector sel, void* p );
80   long onOutlistFocus(   FXObject* o, FXSelector sel, void* p );
81   long onChangeCase(     FXObject* o, FXSelector sel, void* p );
82   long onSetLanguage(    FXObject* o, FXSelector sel, void* p );
83   long onReload(         FXObject* o, FXSelector sel, void* p );
84   long onReadOnly(       FXObject* o, FXSelector sel, void* p );
85   long onWordWrap(       FXObject* o, FXSelector sel, void* p );
86   long onLoadTags(       FXObject* o, FXSelector sel, void* p );
87   long onUnloadTags(     FXObject* o, FXSelector sel, void* p );
88   long onFindTag(        FXObject* o, FXSelector sel, void* p );
89   long onShowCallTip(    FXObject* o, FXSelector sel, void* p );
90   long onAutoComplete(   FXObject* o, FXSelector sel, void* p );
91   long onUserCmd(        FXObject* o, FXSelector sel, void* p );
92   long onRescanUserMenu( FXObject* o, FXSelector sel, void* p );
93   long onConfigureTools( FXObject* o, FXSelector sel, void* p );
94   long onInsertFile(     FXObject* o, FXSelector sel, void* p );
95   long onMacroRecord(    FXObject* o, FXSelector sel, void* p );
96   long onMacroPlayback(  FXObject* o, FXSelector sel, void* p );
97   long onMacroShow(      FXObject* o, FXSelector sel, void* p );
98   long onHelpAbout(      FXObject* o, FXSelector sel, void* p );
99   long onFileSaved(      FXObject* o, FXSelector sel, void* p );
100   long onOpenPrevious(   FXObject* o, FXSelector sel, void* p );
101   long onOpenSelected(   FXObject* o, FXSelector sel, void* p );
102   long onCycleSplitter(  FXObject* o, FXSelector sel, void* p );
103   long onClearOutput(    FXObject* o, FXSelector sel, void* p );
104   long onFileFormat(     FXObject* o, FXSelector sel, void* p );
105   long onFileExport(     FXObject* o, FXSelector sel, void* p );
106   long onShowHelp(       FXObject* o, FXSelector sel, void* p );
107   long onTBarCustomCmd(  FXObject* o, FXSelector sel, void* p );
108   long onPopupSelectAll( FXObject* o, FXSelector sel, void* p );
109   long onPopupDeleteSel( FXObject* o, FXSelector sel, void* p );
110   long onFoundSearch(    FXObject* o, FXSelector sel, void* p );
111   long onTestSomething(  FXObject* o, FXSelector sel, void* p );
112   enum {
113     ID_TABS_TOP=TopWindowBase::ID_LAST,
114     ID_TABS_BOTTOM,
115     ID_TABS_LEFT,
116     ID_TABS_RIGHT,
117     ID_TABS_UNIFORM,
118     ID_TABS_COMPACT,
119     ID_TABS_BY_POS,
120     ID_TAB_NEXT,
121     ID_TAB_PREV,
122     ID_TAB_SWITCHED,
123     ID_TAB_TOFIRST,
124     ID_TAB_TOLAST,
125     ID_TAB_UP,
126     ID_TAB_DOWN,
127     ID_TAB_ACTIVATE,
128     ID_OPEN_FILES,
129     ID_OPEN_PREVIOUS,
130     ID_OPEN_SELECTED,
131     ID_CLOSE,
132     ID_CLOSEALL,
133     ID_NEW,
134     ID_SAVE,
135     ID_SAVEAS,
136     ID_SAVEALL,
137     ID_SAVECOPY,
138     ID_SELECT_DIR,
139     ID_QUIT,
140     ID_UNDO,
141     ID_REDO,
142     ID_CUT,
143     ID_COPY,
144     ID_PASTE,
145     ID_DEL_WORD_LEFT,
146     ID_DEL_WORD_RIGHT,
147     ID_DEL_LINE_LEFT,
148     ID_DEL_LINE_RIGHT,
149     ID_SHOW_STATUSBAR,
150     ID_FIND,
151     ID_FINDNEXT,
152     ID_FINDPREV,
153     ID_REPLACE_IN_DOC,
154     ID_GOTO,
155     ID_NEXT_SELECTED,
156     ID_PREV_SELECTED,
157     ID_GOTO_SELECTED,
158     ID_GOTO_ERROR,
159     ID_BOOKMARK_SET,
160     ID_BOOKMARK_RETURN,
161     ID_ZOOM_IN,
162     ID_ZOOM_OUT,
163     ID_ZOOM_FAR,
164     ID_ZOOM_NEAR,
165     ID_ZOOM_NONE,
166     ID_SHOW_LINENUMS,
167     ID_SHOW_TOOLBAR,
168     ID_SHOW_WHITESPACE,
169     ID_SHOW_OUTLIST,
170     ID_INVERT_COLORS,
171     ID_SHOW_MARGIN,
172     ID_SHOW_INDENT,
173     ID_SHOW_CARET_LINE,
174     ID_PREFS_DIALOG,
175     ID_CTRL_TAB,
176     ID_INDENT_STEP,
177     ID_INDENT_FULL,
178     ID_UNINDENT_STEP,
179     ID_UNINDENT_FULL,
180     ID_KILL_COMMAND,
181     ID_FILTER_SEL,
182     ID_INSERT_CMD_OUT,
183     ID_RUN_COMMAND,
184     ID_SPLIT_CHANGED,
185     ID_FOCUS_OUTLIST,
186     ID_TOUPPER,
187     ID_TOLOWER,
188     ID_SET_LANGUAGE,
189     ID_RELOAD,
190     ID_READONLY,
191     ID_WORDWRAP,
192     ID_INSERT_FILE,
193     ID_LOAD_TAGS,
194     ID_UNLOAD_TAGS,
195     ID_FIND_TAG,
196     ID_SHOW_CALLTIP,
197     ID_AUTO_COMPLETE,
198     ID_USER_COMMAND,
199     ID_USER_FILTER,
200     ID_USER_SNIPPET,
201     ID_USER_MACRO,
202     ID_RESCAN_USER_MENU,
203     ID_CONFIGURE_TOOLS,
204     ID_MACRO_RECORD,
205     ID_MACRO_PLAYBACK,
206     ID_MACRO_TRANSLATE,
207     ID_HELP_ABOUT,
208     ID_FILE_SAVED,
209     ID_CYCLE_SPLITTER,
210     ID_CLEAR_OUTPUT,
211     ID_EXPORT_PDF,
212     ID_EXPORT_HTML,
213     ID_SHOW_HELP,
214     ID_SHOW_LUA_HELP,
215     ID_FMT_DOS,
216     ID_FMT_MAC,
217     ID_FMT_UNIX,
218     ID_TBAR_CUSTOM_CMD,
219     ID_POPUP_SELECT_ALL,
220     ID_POPUP_DELETE_SEL,
221     ID_FOUND_SEARCH,
222     ID_TEST_SOMETHING,
223     ID_LAST
224   };
225   TopWindow(FXApp* a);
226 };
227 
228 #endif
229 
230