/**
- * \file QBranches.C
+ * \file QBranches.cpp
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
#include "QBranches.h"
-#include "lcolorcache.h"
-#include "validators.h"
+#include "GuiApplication.h"
+#include "Validator.h"
#include "qt_helpers.h"
#include "bufferparams.h"
#include <QColor>
#include <QColorDialog>
-using std::string;
namespace lyx {
namespace frontend {
{
setupUi(this);
branchesTW->setColumnCount(3);
- branchesTW->headerItem()->setText(0, qt_("Name"));
+ branchesTW->headerItem()->setText(0, qt_("Branch"));
branchesTW->headerItem()->setText(1, qt_("Activated"));
branchesTW->headerItem()->setText(2, qt_("Color"));
-}
-
-QBranches::~QBranches()
-{
+ branchesTW->setSortingEnabled(true);
}
void QBranches::update(BufferParams const & params)
void QBranches::update()
{
-
// store the selected branch
- QTreeWidgetItem * item =
- branchesTW->currentItem();
+ QTreeWidgetItem * item = branchesTW->currentItem();
QString sel_branch;
if (item != 0)
sel_branch = item->text(0);
newItem->setIcon(2, QIcon(coloritem));
}
// restore selected branch
- if (bname == sel_branch)
+ if (bname == sel_branch) {
+ branchesTW->setCurrentItem(newItem);
branchesTW->setItemSelected(newItem, true);
+ }
}
- emit changed();
+ // emit signal
+ changed();
}
void QBranches::apply(BufferParams & params) const
{
QString const new_branch = newBranchLE->text();
if (!new_branch.isEmpty()) {
- branchlist_.add(fromqstr(new_branch));
+ branchlist_.add(qstring_to_ucs4(new_branch));
newBranchLE->clear();
update();
}
if (selItem != 0)
sel_branch = selItem->text(0);
if (!sel_branch.isEmpty()) {
- branchlist_.remove(fromqstr(sel_branch));
+ branchlist_.remove(qstring_to_ucs4(sel_branch));
newBranchLE->clear();
update();
}
void QBranches::on_branchesTW_itemDoubleClicked(QTreeWidgetItem * item, int col)
{
- toggleBranch(item);
+ if (col < 2)
+ toggleBranch(item);
+ else
+ toggleColor(item);
}
QString sel_branch = item->text(0);
if (!sel_branch.isEmpty()) {
bool const selected = item->text(1) == qt_("Yes");
- Branch * branch = branchlist_.find(fromqstr(sel_branch));
+ Branch * branch = branchlist_.find(qstring_to_ucs4(sel_branch));
if (branch && branch->setSelected(!selected)) {
newBranchLE->clear();
update();
void QBranches::on_colorPB_clicked()
{
- QTreeWidgetItem * selItem =
- branchesTW->currentItem();
- QString sel_branch;
- if (selItem != 0)
- sel_branch = selItem->text(0);
+ toggleColor(branchesTW->currentItem());
+}
+
+
+void QBranches::toggleColor(QTreeWidgetItem * item)
+{
+ if (item == 0)
+ return;
+
+ QString sel_branch = item->text(0);
if (!sel_branch.isEmpty()) {
- string current_branch = fromqstr(sel_branch);
+ docstring current_branch = qstring_to_ucs4(sel_branch);
Branch * branch =
branchlist_.find(current_branch);
if (!branch)
return;
QColor const initial = rgb2qcolor(branch->getColor());
- QColor ncol(QColorDialog::getColor(initial, qApp->focusWidget() ? qApp->focusWidget() : qApp->mainWidget()));
+ QColor ncol(QColorDialog::getColor(initial, qApp->focusWidget()));
if (ncol.isValid()){
// add the color to the branchlist
branch->setColor(fromqstr(ncol.name()));
} // namespace frontend
} // namespace lyx
+
+#include "QBranches_moc.cpp"