Chris@119
|
1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
|
Chris@119
|
2
|
Chris@119
|
3 /*
|
Chris@119
|
4 EasyMercurial
|
Chris@119
|
5
|
Chris@119
|
6 Based on HgExplorer by Jari Korhonen
|
Chris@119
|
7 Copyright (c) 2010 Jari Korhonen
|
Chris@244
|
8 Copyright (c) 2011 Chris Cannam
|
Chris@244
|
9 Copyright (c) 2011 Queen Mary, University of London
|
Chris@119
|
10
|
Chris@119
|
11 This program is free software; you can redistribute it and/or
|
Chris@119
|
12 modify it under the terms of the GNU General Public License as
|
Chris@119
|
13 published by the Free Software Foundation; either version 2 of the
|
Chris@119
|
14 License, or (at your option) any later version. See the file
|
Chris@119
|
15 COPYING included with this distribution for more information.
|
Chris@119
|
16 */
|
Chris@119
|
17
|
Chris@119
|
18 #ifndef CHANGESETSCENE_H
|
Chris@119
|
19 #define CHANGESETSCENE_H
|
Chris@119
|
20
|
Chris@119
|
21 #include <QGraphicsScene>
|
Chris@119
|
22
|
Chris@119
|
23 class ChangesetItem;
|
Chris@289
|
24 class Changeset;
|
Chris@141
|
25 class UncommittedItem;
|
Chris@168
|
26 class DateItem;
|
Chris@119
|
27
|
Chris@119
|
28 class ChangesetScene : public QGraphicsScene
|
Chris@119
|
29 {
|
Chris@119
|
30 Q_OBJECT
|
Chris@119
|
31
|
Chris@119
|
32 public:
|
Chris@119
|
33 ChangesetScene();
|
Chris@119
|
34
|
Chris@141
|
35 void addChangesetItem(ChangesetItem *item);
|
Chris@141
|
36 void addUncommittedItem(UncommittedItem *item);
|
Chris@168
|
37 void addDateItem(DateItem *item);
|
Chris@141
|
38
|
Chris@281
|
39 ChangesetItem *getItemById(QString id); // Slow: traversal required
|
Chris@281
|
40
|
Chris@141
|
41 signals:
|
Chris@141
|
42 void commit();
|
Chris@141
|
43 void revert();
|
Chris@141
|
44 void diffWorkingFolder();
|
Chris@168
|
45 void showSummary();
|
Chris@153
|
46 void showWork();
|
Chris@311
|
47 void newBranch();
|
Chris@311
|
48 void noBranch();
|
Chris@141
|
49
|
Chris@141
|
50 void updateTo(QString id);
|
Chris@148
|
51 void diffToParent(QString id, QString parent);
|
Chris@289
|
52 void showSummary(Changeset *);
|
Chris@141
|
53 void diffToCurrent(QString id);
|
Chris@141
|
54 void mergeFrom(QString id);
|
Chris@278
|
55 void newBranch(QString id);
|
Chris@141
|
56 void tag(QString id);
|
Chris@141
|
57
|
Chris@168
|
58 private slots:
|
Chris@119
|
59 void changesetDetailShown();
|
Chris@168
|
60 void changesetDetailHidden();
|
Chris@168
|
61 void dateItemClicked();
|
Chris@119
|
62
|
Chris@119
|
63 private:
|
Chris@119
|
64 ChangesetItem *m_detailShown;
|
Chris@119
|
65 };
|
Chris@119
|
66
|
Chris@119
|
67 #endif
|