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 bool reallyWriteDirectory(const QString&);
57 QString browseDirectory(const QString&);
58 MapEditor* currentMapEditor() const;
61 void editorChanged(QWidget*);
63 ErrorCode fileLoad(QString ,const LoadMode &);
64 void fileLoad(const LoadMode &);
66 void fileLoadRecent();
67 void addRecentMap (const QString &);
68 void fileSave(MapEditor*, const SaveMode & );
71 void fileSave(MapEditor *); // autosave from MapEditor
73 void fileSaveAs(const SaveMode &);
75 void fileImportKDEBookmarks();
76 void fileImportFirefoxBookmarks();
80 void fileExportXHTML();
81 void fileExportImage();
82 void fileExportASCII();
84 void fileExportLaTeX();
85 void fileExportKDEBookmarks();
86 void fileExportTaskjuggler();
87 void fileExportOOPresentation();
95 void gotoHistoryStep (int);
100 void editOpenFindWindow();
101 void editFind(QString);
102 void editFindChanged();
104 void openTabs(QStringList);
107 void editOpenURLTab();
109 void editOpenMultipleURLTabs();
111 void editHeading2URL();
112 void editBugzilla2URL();
114 void openVymLinks(const QStringList &);
116 void editOpenMultipleVymLinks();
117 void editHeadingFinished();
120 void editOpenVymLink();
122 void editDeleteVymLink();
123 void editToggleHideExport();
127 void editToggleScroll();
128 void editUnscrollChilds();
129 void editNewBranch();
130 void editNewBranchBefore();
131 void editNewBranchAbove();
132 void editNewBranchBelow();
133 void editImportAdd();
134 void editImportReplace();
135 void editSaveBranch();
136 void editDeleteKeepChilds();
137 void editDeleteChilds();
138 void editDeleteSelection();
139 void editUpperBranch();
140 void editLowerBranch();
141 void editLeftBranch();
142 void editRightBranch();
143 void editFirstBranch();
144 void editLastBranch();
145 void editLoadImage();
146 void editSaveImage();
147 void editFollowXLink (QAction *);
148 void editEditXLink (QAction *);
150 void formatSelectColor();
151 void formatPickColor();
152 void colorChanged(QColor);
153 void formatColorBranch();
154 void formatColorSubtree();
155 void formatLinkStyleLine();
156 void formatLinkStyleParabel();
157 void formatLinkStylePolyLine();
158 void formatLinkStylePolyParabel();
159 void formatSelectBackColor();
160 void formatSelectBackImage();
161 void formatSelectLinkColor();
162 void formatSelectSelectionColor();
163 void formatToggleLinkColorHint();
164 void formatHideLinkUnselected();
166 void viewZoomReset();
173 void settingsMacroDir();
174 void settingsToggleDelKey();
175 void settingsUndoLevels();
176 void settingsAutosaveToggle();
177 void settingsAutosaveTime();
179 void windowToggleNoteEditor();
180 void windowToggleHistory();
181 void windowToggleProperty();
182 void updateHistory(SimpleSettings &);
183 void windowToggleAntiAlias();
184 void windowToggleSmoothPixmap();
185 void updateNoteFlag();
186 void updateSatellites(MapEditor *);
187 void updateActions();
188 ModMode getModMode();
190 bool autoSelectHeading();
191 bool useFlagGroups();
192 void setScript(const QString &);
193 void runScript(const QString &);
194 void runScriptEverywhere (const QString &);
197 void windowNextEditor();
198 void windowPreviousEditor();
199 void windowShowNoteEditor();
200 void windowHideNoteEditor();
202 void standardFlagChanged();
215 QTabWidget *tabWidget;
216 FindWindow *findWindow;
217 QProcess *procBrowser;
219 QStringList imageTypes;
221 QLineEdit *lineedit; // to enter headings of branches
222 QString prevSelection;
224 HistoryWindow *historyWindow;
226 BranchPropertyWindow *branchPropertyWindow;
227 SimpleScriptEditor *scriptEditor;
229 QList <QAction*> actionListBranches;
233 QMenu *recentFilesMenu;
234 enum { MaxRecentFiles = 9 };
235 QAction *recentFileActions[MaxRecentFiles];
237 QAction *macroActions[12];
240 QAction* actionFileSave;
241 QAction* actionFilePrint;
242 QAction* actionEditUndo;
243 QAction* actionEditRedo;
244 QAction *actionEditCopy;
245 QAction *actionEditCut;
246 QAction *actionEditPaste;
247 QAction *actionEditMoveUp;
248 QAction *actionEditMoveDown;
249 QAction *actionEditToggleScroll;
250 QAction* actionEditOpenURL;
251 QAction* actionEditOpenURLTab;
252 QAction* actionEditOpenMultipleURLTabs;
253 QAction* actionEditURL;
254 QAction* actionEditHeading2URL;
255 QAction* actionEditBugzilla2URL;
256 QAction* actionEditFATE2URL;
257 QAction *actionEditOpenVymLink;
258 QAction *actionEditOpenMultipleVymLinks;
259 QAction *actionEditVymLink;
260 QAction *actionEditDeleteVymLink;
261 QAction *actionEditToggleHideExport;
262 QAction *actionEditMapInfo;
263 QAction *actionEditHeading;
264 QAction *actionEditDelete;
265 QAction *actionEditAddBranch;
266 QAction *actionEditAddBranchBefore;
267 QAction *actionEditAddBranchAbove;
268 QAction *actionEditAddBranchBelow;
269 QAction *actionEditDeleteKeepChilds;
270 QAction *actionEditDeleteChilds;
271 QAction *actionEditImportAdd;
272 QAction *actionEditImportReplace;
273 QAction *actionEditSaveBranch;
274 QAction *actionEditSelectFirst;
275 QAction *actionEditSelectLast;
276 QAction *actionEditLoadImage;
278 QAction* actionFormatColor;
279 QAction* actionFormatPickColor;
280 QAction* actionFormatColorBranch;
281 QAction* actionFormatColorSubtree;
282 QAction* actionFormatLinkColorHint;
283 QAction* actionFormatBackColor;
284 QAction* actionFormatBackImage;
285 QAction* actionFormatLinkColor;
286 QAction* actionFormatSelectionColor;
288 QActionGroup* actionGroupModModes;
289 QAction* actionModModeColor;
290 QAction* actionModModeXLink;
291 QAction* actionModModeCopy;
293 QActionGroup *actionGroupFormatFrameTypes;
296 QActionGroup *actionGroupFormatLinkStyles;
297 QAction *actionFormatLinkStyleLine;
298 QAction *actionFormatLinkStyleParabel;
299 QAction *actionFormatLinkStylePolyLine;
300 QAction *actionFormatLinkStylePolyParabel;
301 QAction *actionFormatHideLinkUnselected;
303 QAction *actionViewToggleNoteEditor;
304 QAction *actionViewToggleHistoryWindow;
305 QAction *actionViewTogglePropertyWindow;
306 QAction *actionViewToggleAntiAlias;
307 QAction *actionViewToggleSmoothPixmapTransform;
309 QAction* actionSettingsAutoEdit;
310 QAction* actionSettingsAutoSelectHeading;
311 QAction* actionSettingsAutoSelectText;
312 QAction* actionSettingsUseDelKey;
313 QAction* actionSettingsUseFlagGroups;
314 QAction* actionSettingsUseHideExport;
315 QAction* actionSettingsAutosaveToggle;
316 QAction* actionSettingsAutosaveTime;