6 #include "branchpropwindow.h"
8 #include "findwindow.h"
9 #include "historywindow.h"
10 #include "mapeditor.h"
11 #include "simplescripteditor.h"
12 #include "texteditor.h"
15 class Main : public QMainWindow
20 /*! Modifier modes are used when CTRL together with a mouse button is pressed */
22 ModModeNone, //!< Unused
23 ModModeColor, //!< Pick color from object
24 ModModeCopy, //!< Copy object
25 ModModeXLink //!< Create a XLink (XLinkObj) from selected object
28 Main(QWidget* parent=0, const char* name=0, Qt::WFlags f=0);
31 void statusMessage (const QString &);
38 void closeEvent( QCloseEvent* );
41 void setupFileActions();
42 void setupEditActions();
43 void setupFormatActions();
44 void setupViewActions();
45 void setupModeActions();
46 void setupWindowActions();
47 void setupFlagActions();
48 void setupSettingsActions();
49 void setupTestActions();
50 void setupHelpActions();
51 void setupContextMenus();
52 void setupRecentMapsMenu();
54 void hideEvent (QHideEvent * );
55 void showEvent (QShowEvent * );
56 MapEditor* currentMapEditor() const;
59 void editorChanged(QWidget*);
61 ErrorCode fileLoad(QString ,const LoadMode &);
62 void fileLoad(const LoadMode &);
64 void fileLoadRecent();
65 void addRecentMap (const QString &);
66 void fileSave(MapEditor*, const SaveMode & );
69 void fileSave(MapEditor *); // autosave from MapEditor
71 void fileSaveAs(const SaveMode &);
73 void fileImportKDEBookmarks();
74 void fileImportFirefoxBookmarks();
78 void fileExportXHTML();
79 void fileExportImage();
80 void fileExportASCII();
82 void fileExportLaTeX();
83 void fileExportKDEBookmarks();
84 void fileExportTaskjuggler();
85 void fileExportOOPresentation();
93 void gotoHistoryStep (int);
98 void editOpenFindWindow();
99 void editFind(QString);
100 void editFindChanged();
102 void openTabs(QStringList);
105 void editOpenURLTab();
107 void editOpenMultipleURLTabs();
109 void editHeading2URL();
110 void editBugzilla2URL();
112 void openVymLinks(const QStringList &);
114 void editOpenMultipleVymLinks();
115 void editHeadingFinished();
118 void editOpenVymLink();
120 void editDeleteVymLink();
121 void editToggleHideExport();
125 void editToggleScroll();
126 void editUnscrollChilds();
127 void editNewBranch();
128 void editNewBranchBefore();
129 void editNewBranchAbove();
130 void editNewBranchBelow();
131 void editImportAdd();
132 void editImportReplace();
133 void editSaveBranch();
134 void editDeleteKeepChilds();
135 void editDeleteChilds();
136 void editDeleteSelection();
137 void editUpperBranch();
138 void editLowerBranch();
139 void editLeftBranch();
140 void editRightBranch();
141 void editFirstBranch();
142 void editLastBranch();
143 void editLoadImage();
144 void editSaveImage();
145 void editFollowXLink (QAction *);
146 void editEditXLink (QAction *);
148 void formatSelectColor();
149 void formatPickColor();
150 void colorChanged(QColor);
151 void formatColorBranch();
152 void formatColorSubtree();
153 void formatLinkStyleLine();
154 void formatLinkStyleParabel();
155 void formatLinkStylePolyLine();
156 void formatLinkStylePolyParabel();
157 void formatSelectBackColor();
158 void formatSelectBackImage();
159 void formatSelectLinkColor();
160 void formatSelectSelectionColor();
161 void formatToggleLinkColorHint();
162 void formatHideLinkUnselected();
164 void viewZoomReset();
172 void settingsMacroDir();
173 void settingsToggleDelKey();
174 void settingsUndoLevels();
175 void settingsAutosaveToggle();
176 void settingsAutosaveTime();
178 void windowToggleNoteEditor();
179 void windowToggleHistory();
180 void windowToggleProperty();
181 void updateHistory(SimpleSettings &);
182 void windowToggleAntiAlias();
183 void windowToggleSmoothPixmap();
184 void updateNoteFlag();
185 void updateSatellites(MapEditor *);
186 void updateActions();
187 ModMode getModMode();
189 bool autoSelectHeading();
190 bool useFlagGroups();
191 void setScript(const QString &);
192 void runScript(const QString &);
193 void runScriptEverywhere (const QString &);
196 void windowNextEditor();
197 void windowPreviousEditor();
198 void windowShowNoteEditor();
199 void windowHideNoteEditor();
201 void standardFlagChanged();
214 QTabWidget *tabWidget;
215 FindWindow *findWindow;
216 QProcess *procBrowser;
218 QStringList imageTypes;
220 QLineEdit *lineedit; // to enter headings of branches
221 QString prevSelection;
223 HistoryWindow *historyWindow;
225 BranchPropertyWindow *branchPropertyWindow;
226 SimpleScriptEditor *scriptEditor;
228 QList <QAction*> actionListBranches;
232 QMenu *recentFilesMenu;
233 enum { MaxRecentFiles = 9 };
234 QAction *recentFileActions[MaxRecentFiles];
236 QAction *macroActions[12];
239 QAction* actionFileSave;
240 QAction* actionFilePrint;
241 QAction* actionEditUndo;
242 QAction* actionEditRedo;
243 QAction *actionEditCopy;
244 QAction *actionEditCut;
245 QAction *actionEditPaste;
246 QAction *actionEditMoveUp;
247 QAction *actionEditMoveDown;
248 QAction *actionEditToggleScroll;
249 QAction* actionEditOpenURL;
250 QAction* actionEditOpenURLTab;
251 QAction* actionEditOpenMultipleURLTabs;
252 QAction* actionEditURL;
253 QAction* actionEditHeading2URL;
254 QAction* actionEditBugzilla2URL;
255 QAction* actionEditFATE2URL;
256 QAction *actionEditOpenVymLink;
257 QAction *actionEditOpenMultipleVymLinks;
258 QAction *actionEditVymLink;
259 QAction *actionEditDeleteVymLink;
260 QAction *actionEditToggleHideExport;
261 QAction *actionEditMapInfo;
262 QAction *actionEditHeading;
263 QAction *actionEditDelete;
264 QAction *actionEditAddBranch;
265 QAction *actionEditAddBranchBefore;
266 QAction *actionEditAddBranchAbove;
267 QAction *actionEditAddBranchBelow;
268 QAction *actionEditDeleteKeepChilds;
269 QAction *actionEditDeleteChilds;
270 QAction *actionEditImportAdd;
271 QAction *actionEditImportReplace;
272 QAction *actionEditSaveBranch;
273 QAction *actionEditSelectFirst;
274 QAction *actionEditSelectLast;
275 QAction *actionEditLoadImage;
277 QAction* actionFormatColor;
278 QAction* actionFormatPickColor;
279 QAction* actionFormatColorBranch;
280 QAction* actionFormatColorSubtree;
281 QAction* actionFormatLinkColorHint;
282 QAction* actionFormatBackColor;
283 QAction* actionFormatBackImage;
284 QAction* actionFormatLinkColor;
285 QAction* actionFormatSelectionColor;
287 QActionGroup* actionGroupModModes;
288 QAction* actionModModeColor;
289 QAction* actionModModeXLink;
290 QAction* actionModModeCopy;
292 QActionGroup *actionGroupFormatFrameTypes;
295 QActionGroup *actionGroupFormatLinkStyles;
296 QAction *actionFormatLinkStyleLine;
297 QAction *actionFormatLinkStyleParabel;
298 QAction *actionFormatLinkStylePolyLine;
299 QAction *actionFormatLinkStylePolyParabel;
300 QAction *actionFormatHideLinkUnselected;
302 QAction *actionViewToggleNoteEditor;
303 QAction *actionViewToggleHistoryWindow;
304 QAction *actionViewTogglePropertyWindow;
305 QAction *actionViewToggleAntiAlias;
306 QAction *actionViewToggleSmoothPixmapTransform;
307 QAction* actionViewCenter;
309 QAction* actionSettingsAutoEdit;
310 QAction* actionSettingsAutoSelectHeading;
311 QAction* actionSettingsAutoSelectText;
312 QAction* actionSettingsUseDelKey;
313 QAction* actionSettingsUseFlagGroups;
314 QAction* actionSettingsUseHideExport;
315 QAction* actionSettingsAutosaveToggle;
316 QAction* actionSettingsAutosaveTime;