annotate mainwindow.h @ 34:43e3b271d293 Version_0.5.2.

Version 0.5.2. Added hg tag, .hgignore editing.
author Jari Korhonen <jtkorhonen@gmail.com>
date Sat, 19 Jun 2010 02:01:36 +0300
parents ff8d64625aa3
children 5986d0758069
rev   line source
jtkorhonen@0 1 /****************************************************************************
jtkorhonen@30 2 ** Copyright (C) Jari Korhonen, 2010 (under lgpl)
jtkorhonen@0 3 ****************************************************************************/
jtkorhonen@0 4
jtkorhonen@0 5 #ifndef MAINWINDOW_H
jtkorhonen@0 6 #define MAINWINDOW_H
jtkorhonen@0 7
jtkorhonen@0 8 #include <QMainWindow>
jtkorhonen@0 9
jtkorhonen@0 10 #include "hgexpwidget.h"
jtkorhonen@0 11 #include "hgrunner.h"
jtkorhonen@0 12 #include "common.h"
jtkorhonen@0 13
jtkorhonen@0 14 QT_BEGIN_NAMESPACE
jtkorhonen@0 15 class QAction;
jtkorhonen@0 16 class QMenu;
jtkorhonen@0 17 QT_END_NAMESPACE
jtkorhonen@0 18
jtkorhonen@0 19 enum HGACTIONS
jtkorhonen@0 20 {
jtkorhonen@0 21 ACT_NONE,
jtkorhonen@0 22 ACT_STAT,
jtkorhonen@0 23 ACT_HEADS,
jtkorhonen@0 24 ACT_PARENTS,
jtkorhonen@0 25 ACT_LOG,
jtkorhonen@0 26 ACT_REMOVE,
jtkorhonen@0 27 ACT_ADD,
jtkorhonen@0 28 ACT_INCOMING,
jtkorhonen@0 29 ACT_PUSH,
jtkorhonen@0 30 ACT_PULL,
jtkorhonen@0 31 ACT_CLONEFROMREMOTE,
jtkorhonen@0 32 ACT_INIT,
jtkorhonen@0 33 ACT_COMMIT,
jtkorhonen@0 34 ACT_ANNOTATE,
jtkorhonen@0 35 ACT_FILEDIFF,
jtkorhonen@0 36 ACT_FOLDERDIFF,
jtkorhonen@0 37 ACT_CHGSETDIFF,
jtkorhonen@0 38 ACT_UPDATE,
jtkorhonen@0 39 ACT_REVERT,
jtkorhonen@0 40 ACT_MERGE,
jtkorhonen@0 41 ACT_RESOLVE_LIST,
jtkorhonen@11 42 ACT_SERVE,
jtkorhonen@33 43 ACT_RESOLVE_MARK,
jtkorhonen@33 44 ACT_RETRY_MERGE,
jtkorhonen@34 45 ACT_TAG,
jtkorhonen@0 46 };
jtkorhonen@0 47
jtkorhonen@0 48
jtkorhonen@0 49 class MainWindow : public QMainWindow
jtkorhonen@0 50 {
jtkorhonen@0 51 Q_OBJECT
jtkorhonen@0 52
jtkorhonen@0 53 public:
jtkorhonen@0 54 MainWindow();
jtkorhonen@0 55 HgExpWidget *hgExp;
jtkorhonen@0 56 void writeSettings();
jtkorhonen@0 57 void enableDisableActions();
jtkorhonen@0 58
jtkorhonen@0 59 //Paths to remote repo & workfolder
jtkorhonen@0 60 //Local repo is directory "./hg/" under work folder
jtkorhonen@0 61 QString remoteRepoPath;
jtkorhonen@0 62 QString workFolderPath;
jtkorhonen@0 63
jtkorhonen@30 64 QString remoteRepoMruList[NUM_PATHS_IN_MRU_LIST];
jtkorhonen@30 65 QString workFolderMruList[NUM_PATHS_IN_MRU_LIST];
jtkorhonen@30 66
jtkorhonen@0 67 //User info for commits
jtkorhonen@0 68 QString userInfo;
jtkorhonen@0 69 bool firstStart;
jtkorhonen@0 70
jtkorhonen@0 71 protected:
jtkorhonen@0 72 void closeEvent(QCloseEvent *event);
jtkorhonen@0 73 void timerEvent(QTimerEvent *event);
jtkorhonen@0 74
jtkorhonen@0 75 public slots:
jtkorhonen@0 76 void hgStat();
jtkorhonen@0 77 void tabChanged(int currTab);
jtkorhonen@0 78
jtkorhonen@0 79 private slots:
jtkorhonen@0 80 void about();
jtkorhonen@0 81 void hgRemove();
jtkorhonen@0 82 void hgAdd();
jtkorhonen@0 83 void hgCommit();
jtkorhonen@0 84 void hgFileDiff();
jtkorhonen@0 85 void hgFolderDiff();
jtkorhonen@0 86 void hgChgSetDiff();
jtkorhonen@0 87 void hgUpdate();
jtkorhonen@0 88 void hgRevert();
jtkorhonen@0 89 void hgMerge();
jtkorhonen@33 90 void hgRetryMerge();
jtkorhonen@0 91 void settings();
jtkorhonen@0 92 void hgCloneFromRemote();
jtkorhonen@0 93 void hgInit();
jtkorhonen@0 94 void hgIncoming();
jtkorhonen@0 95 void hgPush();
jtkorhonen@0 96 void hgPull();
jtkorhonen@0 97 void hgUpdateToRev();
jtkorhonen@0 98 void hgAnnotate();
jtkorhonen@0 99 void hgResolveList();
jtkorhonen@0 100 void hgResolveMark();
jtkorhonen@34 101 void hgTag();
jtkorhonen@11 102 void hgServe();
jtkorhonen@34 103 void hgIgnore();
jtkorhonen@0 104
jtkorhonen@0 105 private:
jtkorhonen@0 106 void hgHeads();
jtkorhonen@0 107 void hgParents();
jtkorhonen@0 108 void hgLog();
jtkorhonen@0 109 void createActions();
jtkorhonen@0 110 void connectActions();
jtkorhonen@0 111 void createMenus();
jtkorhonen@0 112 void createToolBars();
jtkorhonen@0 113 void createStatusBar();
jtkorhonen@0 114 void readSettings();
jtkorhonen@0 115 void splitChangeSets(QStringList *list, QString hgLogOutput);
jtkorhonen@34 116 int getCommentOrTag(QString& commentOrTag, QString question, QString dlgTitle);
jtkorhonen@2 117 void presentLongStdoutToUser(QString stdo);
jtkorhonen@17 118 void countModifications(QListWidget *workList, int& added, int& modified, int& removed, int& notTracked,
jtkorhonen@17 119 int& selected,
jtkorhonen@17 120 int& selectedAdded, int& selectedModified, int& selectedRemoved, int& selectedNotTracked);
jtkorhonen@0 121 bool isSelectedModified(QListWidget *workList);
jtkorhonen@17 122 bool areAllSelectedUntracked(QListWidget *workList);
jtkorhonen@6 123 bool isSelectedDeletable(QListWidget *workList);
jtkorhonen@17 124 bool areAllSelectedCommitable(QListWidget *workList);
jtkorhonen@28 125 QString listAllUpIpV4Addresses();
jtkorhonen@34 126 QString filterTag(QString tag);
jtkorhonen@0 127
jtkorhonen@0 128 //Actions enabled flags
jtkorhonen@0 129 bool remoteRepoActionsEnabled;
jtkorhonen@0 130 bool localRepoActionsEnabled;
jtkorhonen@0 131
jtkorhonen@0 132 //File menu actions
jtkorhonen@0 133 QAction *hgInitAct;
jtkorhonen@0 134 QAction *hgCloneFromRemoteAct;
jtkorhonen@0 135 QAction *settingsAct;
jtkorhonen@0 136 QAction *exitAct;
jtkorhonen@0 137
jtkorhonen@33 138 //Repo actions
jtkorhonen@0 139 QAction *hgIncomingAct;
jtkorhonen@0 140 QAction *hgPushAct;
jtkorhonen@0 141 QAction *hgPullAct;
jtkorhonen@0 142 QAction *hgStatAct;
jtkorhonen@0 143 QAction *hgFileDiffAct;
jtkorhonen@0 144 QAction *hgFolderDiffAct;
jtkorhonen@0 145 QAction *hgChgSetDiffAct;
jtkorhonen@0 146 QAction *hgRevertAct;
jtkorhonen@0 147 QAction *hgAddAct;
jtkorhonen@0 148 QAction *hgRemoveAct;
jtkorhonen@0 149 QAction *hgUpdateAct;
jtkorhonen@0 150 QAction *hgCommitAct;
jtkorhonen@0 151 QAction *hgMergeAct;
jtkorhonen@33 152 QAction *hgRetryMergeAct;
jtkorhonen@0 153 QAction *hgUpdateToRevAct;
jtkorhonen@0 154 QAction *hgAnnotateAct;
jtkorhonen@0 155 QAction *hgResolveListAct;
jtkorhonen@0 156 QAction *hgResolveMarkAct;
jtkorhonen@34 157 QAction *hgTagAct;
jtkorhonen@34 158 QAction *hgIgnoreAct;
jtkorhonen@11 159 QAction *hgServeAct;
jtkorhonen@0 160
jtkorhonen@0 161 //Menus
jtkorhonen@0 162 QMenu *fileMenu;
jtkorhonen@0 163 QMenu *advancedMenu;
jtkorhonen@0 164 QMenu *helpMenu;
jtkorhonen@0 165
jtkorhonen@0 166 //Help menu actions
jtkorhonen@0 167 QAction *aboutAct;
jtkorhonen@0 168 QAction *aboutQtAct;
jtkorhonen@0 169
jtkorhonen@0 170 QToolBar *fileToolBar;
jtkorhonen@0 171 QToolBar *repoToolBar;
jtkorhonen@0 172 QToolBar *workFolderToolBar;
jtkorhonen@0 173
jtkorhonen@0 174 int timerId;
jtkorhonen@0 175 HGACTIONS runningAction;
jtkorhonen@0 176 HgRunner *runner;
jtkorhonen@0 177
jtkorhonen@33 178 int tabPage;
jtkorhonen@0 179 unsigned char initialFileTypesBits;
jtkorhonen@33 180 bool justMerged;
jtkorhonen@0 181 };
jtkorhonen@0 182
jtkorhonen@0 183 #endif