6 #include "branchpropwindow.h"
7 #include "extrainfodialog.h"
9 #include "findwindow.h"
10 #include "historywindow.h"
11 #include "mapeditor.h"
12 #include "simplescripteditor.h"
13 #include "texteditor.h"
15 class VymView : public QSplitter
19 class Main : public QMainWindow
24 /*! Modifier modes are used when CTRL together with a mouse button is pressed */
26 ModModeNone, //!< Unused
27 ModModeColor, //!< Pick color from object
28 ModModeCopy, //!< Copy object
29 ModModeXLink //!< Create a XLink (XLinkObj) from selected object
32 Main(QWidget* parent=0, const char* name=0, Qt::WFlags f=0);
35 void statusMessage (const QString &);
38 VymView* createView (VymModel*);
45 void closeEvent( QCloseEvent* );
48 void setupFileActions();
49 void setupEditActions();
50 void setupFormatActions();
51 void setupViewActions();
52 void setupModeActions();
53 void setupWindowActions();
54 void setupFlag(FlagObj *fo, QToolBar *tb, bool aw, const QString &name, const QString &tooltip);
55 void setupFlagActions();
56 void setupNetworkActions();
57 void setupSettingsActions();
58 void setupTestActions();
59 void setupHelpActions();
60 void setupContextMenus();
61 void setupRecentMapsMenu();
63 void hideEvent (QHideEvent * );
64 void showEvent (QShowEvent * );
65 MapEditor* currentMapEditor() const;
66 VymModel* currentModel() const;
69 void editorChanged(QWidget*);
71 ErrorCode fileLoad(QString ,const LoadMode &, const FileType & ftype=VymMap);
72 void fileLoad(const LoadMode &);
74 void fileLoadRecent();
75 void addRecentMap (const QString &);
76 void fileSave(VymModel*, const SaveMode & );
79 void fileSave(VymModel*); // autosave from MapEditor
81 void fileSaveAs(const SaveMode &);
83 void fileImportKDEBookmarks();
84 void fileImportFirefoxBookmarks();
85 void fileImportFreemind();
89 void fileExportXHTML();
90 void fileExportImage();
91 void fileExportASCII();
93 void fileExportLaTeX();
94 void fileExportKDEBookmarks();
95 void fileExportTaskjuggler();
96 void fileExportOOPresentation();
104 void gotoHistoryStep (int);
109 void editOpenFindWindow();
110 void editFind(QString);
111 void editFindChanged();
113 void openTabs(QStringList);
116 void editOpenURLTab();
118 void editOpenMultipleURLTabs();
121 void editHeading2URL();
122 void editBugzilla2URL();
124 void openVymLinks(const QStringList &);
126 void editOpenMultipleVymLinks();
127 void editAttributeFinished();
129 void editHeadingFinished(VymModel *m);
130 // void editHeading();
131 void editAttribute();
132 void editOpenVymLink();
134 void editDeleteVymLink();
135 void editToggleHideExport();
139 void editSortChildren();
140 void editToggleScroll();
141 void editUnscrollChildren();
142 void editAddMapCenter();
143 void editNewBranch();
144 void editNewBranchBefore();
145 void editNewBranchAbove();
146 void editNewBranchBelow();
147 void editImportAdd();
148 void editImportReplace();
149 void editSaveBranch();
150 void editDeleteKeepChildren();
151 void editDeleteChildren();
152 void editDeleteSelection();
153 void editUpperBranch();
154 void editLowerBranch();
155 void editLeftBranch();
156 void editRightBranch();
157 void editFirstBranch();
158 void editLastBranch();
159 void editLoadImage();
160 void editSaveImage();
161 void editFollowXLink (QAction *);
162 void editEditXLink (QAction *);
164 void formatSelectColor();
165 void formatPickColor();
166 void colorChanged(QColor);
167 void formatColorBranch();
168 void formatColorSubtree();
169 void formatLinkStyleLine();
170 void formatLinkStyleParabel();
171 void formatLinkStylePolyLine();
172 void formatLinkStylePolyParabel();
173 void formatSelectBackColor();
174 void formatSelectBackImage();
175 void formatSelectLinkColor();
176 void formatSelectSelectionColor();
177 void formatToggleLinkColorHint();
178 void formatHideLinkUnselected();
180 void viewZoomReset();
186 void networkStartServer();
187 void networkConnect();
190 void settingsMacroDir();
191 void settingsToggleDelKey();
192 void settingsUndoLevels();
193 void settingsAutosaveToggle();
194 void settingsAutosaveTime();
195 void settingsWriteBackupFileToggle();
196 void settingsToggleAnimation();
198 void windowToggleNoteEditor();
199 void windowToggleHistory();
200 void windowToggleProperty();
201 void updateHistory(SimpleSettings &);
202 void windowToggleAntiAlias();
203 void windowToggleSmoothPixmap();
204 void updateNoteFlag();
205 void updateSatellites(VymModel*);
206 void updateActions();
207 ModMode getModMode();
208 bool autoEditNewBranch();
209 bool autoSelectNewBranch();
210 bool useFlagGroups();
211 void setScript(const QString &);
212 void runScript(const QString &);
213 void runScriptEverywhere (const QString &);
216 void windowNextEditor();
217 void windowPreviousEditor();
218 void windowShowNoteEditor();
219 void windowHideNoteEditor();
221 void standardFlagChanged();
223 void testFunction1();
224 void testFunction2();
235 QTabWidget *tabWidget;
236 FindWindow *findWindow;
237 QProcess *procBrowser;
239 QStringList imageTypes;
241 QList <VymModel*> tabModel; //!< the corresponding model to a tab
243 QString prevSelection;
245 HistoryWindow *historyWindow;
247 BranchPropertyWindow *branchPropertyWindow;
248 SimpleScriptEditor *scriptEditor;
250 QList <QAction*> actionListBranches;
256 QMenu *recentFilesMenu;
257 enum { MaxRecentFiles = 9 };
258 QAction *recentFileActions[MaxRecentFiles];
260 QAction *macroActions[12];
263 QAction* actionFileNewCopy;
264 QAction* actionFileSave;
265 QAction* actionFilePrint;
270 QAction *actionPaste;
271 QAction *actionMoveUp;
272 QAction *actionMoveDown;
273 QAction *actionSortChildren;
274 QAction *actionToggleScroll;
275 QAction* actionOpenURL;
276 QAction* actionOpenURLTab;
277 QAction* actionOpenMultipleURLTabs;
279 QAction* actionLocalURL;
280 QAction* actionHeading2URL;
281 QAction* actionBugzilla2URL;
282 QAction* actionFATE2URL;
283 QAction *actionOpenVymLink;
284 QAction *actionOpenMultipleVymLinks;
285 QAction *actionVymLink;
286 QAction *actionDeleteVymLink;
287 QAction *actionToggleHideExport;
288 QAction *actionMapInfo;
289 QAction *actionHeading;
290 QAction *actionDelete;
293 QAction *actionAddMapCenter;
296 QAction *actionAddBranch;
297 QAction *actionAddBranchBefore;
298 QAction *actionAddBranchAbove;
299 QAction *actionAddBranchBelow;
300 QAction *actionDeleteKeepChildren;
301 QAction *actionDeleteChildren;
302 QAction *actionImportAdd;
303 QAction *actionImportReplace;
304 QAction *actionSaveBranch;
305 QAction *actionSelectFirst;
306 QAction *actionSelectLast;
307 QAction *actionLoadImage;
309 QAction* actionFormatColor;
310 QAction* actionFormatPickColor;
311 QAction* actionFormatColorBranch;
312 QAction* actionFormatColorSubtree;
313 QAction* actionFormatLinkColorHint;
314 QAction* actionFormatBackColor;
315 QAction* actionFormatBackImage;
316 QAction* actionFormatLinkColor;
317 QAction* actionFormatSelectionColor;
319 QActionGroup* actionGroupModModes;
320 QAction* actionModModeColor;
321 QAction* actionModModeXLink;
322 QAction* actionModModeCopy;
324 QActionGroup *actionGroupFormatFrameTypes;
327 QActionGroup *actionGroupFormatLinkStyles;
328 QAction *actionFormatLinkStyleLine;
329 QAction *actionFormatLinkStyleParabel;
330 QAction *actionFormatLinkStylePolyLine;
331 QAction *actionFormatLinkStylePolyParabel;
332 QAction *actionFormatHideLinkUnselected;
334 QAction *actionViewToggleNoteEditor;
335 QAction *actionViewToggleHistoryWindow;
336 QAction *actionViewTogglePropertyWindow;
337 QAction *actionViewToggleAntiAlias;
338 QAction *actionViewToggleSmoothPixmapTransform;
339 QAction* actionViewCenter;
341 QAction* actionSettingsAutoEditNewBranch;
342 QAction* actionSettingsAutoSelectNewBranch;
343 QAction* actionSettingsAutoSelectText;
344 QAction* actionSettingsUseDelKey;
345 QAction* actionSettingsUseFlagGroups;
346 QAction* actionSettingsUseHideExport;
347 QAction* actionSettingsAutosaveToggle;
348 QAction* actionSettingsAutosaveTime;
349 QAction* actionSettingsWriteBackupFile;
350 QAction* actionSettingsUseAnimation;