annotate historywidget.h @ 133:aaeab914f2a3

* Better attempt at retaining current visible area when history scene changes; first cut at highlighting new items
author Chris Cannam
date Tue, 30 Nov 2010 12:45:34 +0000
parents 4986642800f0
children 1208d9688a8f
rev   line source
Chris@116 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@116 2
Chris@116 3 /*
Chris@116 4 EasyMercurial
Chris@116 5
Chris@116 6 Based on HgExplorer by Jari Korhonen
Chris@116 7 Copyright (c) 2010 Jari Korhonen
Chris@116 8 Copyright (c) 2010 Chris Cannam
Chris@116 9 Copyright (c) 2010 Queen Mary, University of London
Chris@116 10
Chris@116 11 This program is free software; you can redistribute it and/or
Chris@116 12 modify it under the terms of the GNU General Public License as
Chris@116 13 published by the Free Software Foundation; either version 2 of the
Chris@116 14 License, or (at your option) any later version. See the file
Chris@116 15 COPYING included with this distribution for more information.
Chris@116 16 */
Chris@116 17
Chris@116 18 #ifndef HISTORYWIDGET_H
Chris@116 19 #define HISTORYWIDGET_H
Chris@116 20
Chris@116 21 #include "changeset.h"
Chris@116 22
Chris@116 23 #include <QWidget>
Chris@133 24 #include <QSet>
Chris@116 25
Chris@116 26 class Panned;
Chris@116 27 class Panner;
Chris@129 28 class UncommittedItem;
Chris@116 29
Chris@116 30 class HistoryWidget : public QWidget
Chris@116 31 {
Chris@116 32 Q_OBJECT
Chris@116 33
Chris@116 34 public:
Chris@116 35 HistoryWidget();
Chris@116 36 virtual ~HistoryWidget();
Chris@116 37
Chris@128 38 void setCurrent(QStringList ids);
Chris@128 39 void showUncommittedChanges(bool);
Chris@128 40
Chris@120 41 void parseNewLog(QString log);
Chris@120 42 void parseIncrementalLog(QString log);
Chris@116 43
Chris@116 44 private:
Chris@116 45 Changesets m_changesets;
Chris@128 46 QStringList m_currentIds;
Chris@133 47 QSet<QString> m_newIds;
Chris@129 48 UncommittedItem *m_uncommitted;
Chris@116 49
Chris@116 50 Panned *m_panned;
Chris@116 51 Panner *m_panner;
Chris@116 52
Chris@116 53 void clearChangesets();
Chris@133 54 void replaceChangesets(Changesets);
Chris@133 55 void addChangesets(Changesets);
Chris@120 56 void layoutAll();
Chris@122 57 void setChangesetParents();
Chris@133 58 void updateNewAndCurrentItems();
Chris@116 59 };
Chris@116 60
Chris@116 61 #endif