]> git.lyx.org Git - lyx.git/blob - src/frontends/qt4/GuiBranches.h
* fix spelling in comments to please John.
[lyx.git] / src / frontends / qt4 / GuiBranches.h
1 // -*- C++ -*-
2 /**
3  * \file GuiBranches.h
4  * This file is part of LyX, the document processor.
5  * Licence details can be found in the file COPYING.
6  *
7  * \author Edwin Leuven
8  *
9  * Full author contact details are available in file CREDITS.
10  */
11
12 #ifndef GUIBRANCHES_H
13 #define GUIBRANCHES_H
14
15 #include "Buffer.h"
16 #include "GuiDocument.h"
17 #include "ui_BranchesUnknownUi.h"
18 #include "ui_BranchesUi.h"
19 #include "BranchList.h"
20
21 #include <QWidget>
22
23 class QTreeWidgetItem;
24
25 namespace lyx {
26
27 class BufferParams;
28
29 namespace frontend {
30
31 class BranchesUnknownDialog : public QDialog, public Ui::BranchesUnknownUi
32 {
33 public:
34         BranchesUnknownDialog(QWidget * parent) : QDialog(parent)
35         {
36                 Ui::BranchesUnknownUi::setupUi(this);
37                 QDialog::setModal(true);
38         }
39 };
40
41 class GuiBranches : public QWidget, public Ui::BranchesUi
42 {
43         Q_OBJECT
44 public:
45         GuiBranches(QWidget * parent = 0);
46
47         void update(BufferParams const & params);
48         void apply(BufferParams & params) const;
49         void setUnknownBranches(QStringList const & b) { unknown_branches_ = b; }
50
51 Q_SIGNALS:
52         void changed();
53         void renameBranches(docstring const &, docstring const &);
54
55 protected:
56         void toggleBranch(QTreeWidgetItem *);
57         void toggleColor(QTreeWidgetItem *);
58         void toggleSuffix(QTreeWidgetItem *);
59         void updateView();
60
61 protected Q_SLOTS:
62         void on_addBranchPB_pressed();
63         void on_removePB_pressed();
64         void on_renamePB_pressed();
65         void on_activatePB_pressed();
66         void on_branchesTW_itemDoubleClicked(QTreeWidgetItem *, int);
67         void on_branchesTW_itemSelectionChanged();
68         void on_colorPB_clicked();
69         void on_suffixPB_pressed();
70         void on_unknownPB_pressed();
71         void addUnknown();
72         void addAllUnknown();
73         void unknownBranchSelChanged();
74
75 private:
76         /// Contains all legal branches for this doc
77         BranchList branchlist_;
78         ///
79         BranchesUnknownDialog * undef_;
80         ///
81         ButtonController undef_bc_;
82         ///
83         QStringList unknown_branches_;
84 };
85
86 } // namespace frontend
87 } // namespace lyx
88
89 #endif // GUIBRANCHES_H