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();
83 void fileExportLaTeX();
84 void fileExportKDEBookmarks();
85 void fileExportTaskjuggler();
86 void fileExportOOPresentation();
94 void gotoHistoryStep (int);
99 void editOpenFindWindow();
100 void editFind(QString);
101 void editFindChanged();
103 void openTabs(QStringList);
106 void editOpenURLTab();
108 void editOpenMultipleURLTabs();
110 void editHeading2URL();
111 void editBugzilla2URL();
113 void openVymLinks(const QStringList &);
115 void editOpenMultipleVymLinks();
116 void editHeadingFinished();
119 void editOpenVymLink();
121 void editDeleteVymLink();
122 void editToggleHideExport();
126 void editToggleScroll();
127 void editUnscrollChilds();
128 void editNewBranch();
129 void editNewBranchBefore();
130 void editNewBranchAbove();
131 void editNewBranchBelow();
132 void editImportAdd();
133 void editImportReplace();
134 void editSaveBranch();
135 void editDeleteKeepChilds();
136 void editDeleteChilds();
137 void editDeleteSelection();
138 void editUpperBranch();
139 void editLowerBranch();
140 void editLeftBranch();
141 void editRightBranch();
142 void editFirstBranch();
143 void editLastBranch();
144 void editLoadImage();
145 void editSaveImage();
146 void editFollowXLink (QAction *);
147 void editEditXLink (QAction *);
149 void formatSelectColor();
150 void formatPickColor();
151 void colorChanged(QColor);
152 void formatColorBranch();
153 void formatColorSubtree();
154 void formatLinkStyleLine();
155 void formatLinkStyleParabel();
156 void formatLinkStylePolyLine();
157 void formatLinkStylePolyParabel();
158 void formatSelectBackColor();
159 void formatSelectBackImage();
160 void formatSelectLinkColor();
161 void formatSelectSelectionColor();
162 void formatToggleLinkColorHint();
163 void formatHideLinkUnselected();
165 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 &);
195 void windowNextEditor();
196 void windowPreviousEditor();
197 void windowShowNoteEditor();
198 void windowHideNoteEditor();
200 void standardFlagChanged();
212 QTabWidget *tabWidget;
213 FindWindow *findWindow;
214 QProcess *procBrowser;
216 QStringList imageTypes;
218 QLineEdit *lineedit; // to enter headings of branches
219 QString prevSelection;
221 HistoryWindow *historyWindow;
223 BranchPropertyWindow *branchPropertyWindow;
224 SimpleScriptEditor *scriptEditor;
226 QList <QAction*> actionListBranches;
230 QMenu *recentFilesMenu;
231 enum { MaxRecentFiles = 9 };
232 QAction *recentFileActions[MaxRecentFiles];
234 QAction *macroActions[12];
237 QAction* actionFileSave;
238 QAction* actionFilePrint;
239 QAction* actionEditUndo;
240 QAction* actionEditRedo;
241 QAction *actionEditCopy;
242 QAction *actionEditCut;
243 QAction *actionEditPaste;
244 QAction *actionEditMoveUp;
245 QAction *actionEditMoveDown;
246 QAction *actionEditToggleScroll;
247 QAction* actionEditOpenURL;
248 QAction* actionEditOpenURLTab;
249 QAction* actionEditOpenMultipleURLTabs;
250 QAction* actionEditURL;
251 QAction* actionEditHeading2URL;
252 QAction* actionEditBugzilla2URL;
253 QAction* actionEditFATE2URL;
254 QAction *actionEditOpenVymLink;
255 QAction *actionEditOpenMultipleVymLinks;
256 QAction *actionEditVymLink;
257 QAction *actionEditDeleteVymLink;
258 QAction *actionEditToggleHideExport;
259 QAction *actionEditMapInfo;
260 QAction *actionEditHeading;
261 QAction *actionEditDelete;
262 QAction *actionEditAddBranch;
263 QAction *actionEditAddBranchBefore;
264 QAction *actionEditAddBranchAbove;
265 QAction *actionEditAddBranchBelow;
266 QAction *actionEditDeleteKeepChilds;
267 QAction *actionEditDeleteChilds;
268 QAction *actionEditImportAdd;
269 QAction *actionEditImportReplace;
270 QAction *actionEditSaveBranch;
271 QAction *actionEditSelectFirst;
272 QAction *actionEditSelectLast;
273 QAction *actionEditLoadImage;
275 QAction* actionFormatColor;
276 QAction* actionFormatPickColor;
277 QAction* actionFormatColorBranch;
278 QAction* actionFormatColorSubtree;
279 QAction* actionFormatLinkColorHint;
280 QAction* actionFormatBackColor;
281 QAction* actionFormatBackImage;
282 QAction* actionFormatLinkColor;
283 QAction* actionFormatSelectionColor;
285 QActionGroup* actionGroupModModes;
286 QAction* actionModModeColor;
287 QAction* actionModModeXLink;
288 QAction* actionModModeCopy;
290 QActionGroup *actionGroupFormatFrameTypes;
293 QActionGroup *actionGroupFormatLinkStyles;
294 QAction *actionFormatLinkStyleLine;
295 QAction *actionFormatLinkStyleParabel;
296 QAction *actionFormatLinkStylePolyLine;
297 QAction *actionFormatLinkStylePolyParabel;
298 QAction *actionFormatHideLinkUnselected;
300 QAction *actionViewToggleNoteEditor;
301 QAction *actionViewToggleHistoryWindow;
302 QAction *actionViewTogglePropertyWindow;
303 QAction *actionViewToggleAntiAlias;
304 QAction *actionViewToggleSmoothPixmapTransform;
306 QAction* actionSettingsAutoEdit;
307 QAction* actionSettingsAutoSelectHeading;
308 QAction* actionSettingsAutoSelectText;
309 QAction* actionSettingsUseDelKey;
310 QAction* actionSettingsUseFlagGroups;
311 QAction* actionSettingsUseHideExport;
312 QAction* actionSettingsAutosaveToggle;
313 QAction* actionSettingsAutosaveTime;