summaryrefslogtreecommitdiffstats
path: root/src/ui/dialog/cssdialog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui/dialog/cssdialog.cpp')
-rw-r--r--src/ui/dialog/cssdialog.cpp59
1 files changed, 33 insertions, 26 deletions
diff --git a/src/ui/dialog/cssdialog.cpp b/src/ui/dialog/cssdialog.cpp
index fa266b012..a5736513f 100644
--- a/src/ui/dialog/cssdialog.cpp
+++ b/src/ui/dialog/cssdialog.cpp
@@ -3,8 +3,10 @@
*/
/* Authors:
* Kamalpreet Kaur Grewal
+ * Tavmjong Bah
*
* Copyright (C) Kamalpreet Kaur Grewal 2016 <grewalkamal005@gmail.com>
+ * Copyright (C) Tavmjong Bah 2017 <tavmjong@free.fr>
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
@@ -22,23 +24,6 @@ namespace UI {
namespace Dialog {
/**
- * @brief CssDialog::_styleButton
- * @param btn
- * @param iconName
- * @param tooltip
- * This function sets the style of '+'button at the bottom of dialog.
- */
-void CssDialog::_styleButton(Gtk::Button& btn, char const* iconName,
- char const* tooltip)
-{
- GtkWidget *child = sp_icon_new(Inkscape::ICON_SIZE_SMALL_TOOLBAR, iconName);
- gtk_widget_show(child);
- btn.add(*manage(Glib::wrap(child)));
- btn.set_relief(Gtk::RELIEF_NONE);
- btn.set_tooltip_text(tooltip);
-}
-
-/**
* Constructor
* A treeview whose each row corresponds to a CSS property of selector selected.
* New CSS property can be added by clicking '+' at bottom of the CSS pane. '-'
@@ -53,18 +38,17 @@ CssDialog::CssDialog():
{
set_size_request(20, 15);
_mainBox.pack_start(_scrolledWindow, Gtk::PACK_EXPAND_WIDGET);
- _treeView.set_headers_visible(false);
+ _treeView.set_headers_visible(true);
_scrolledWindow.add(_treeView);
_scrolledWindow.set_policy(Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC);
_store = Gtk::ListStore::create(_cssColumns);
_treeView.set_model(_store);
- Inkscape::UI::Widget::AddToIcon * addRenderer = manage(new Inkscape::UI::
- Widget::AddToIcon());
+ Inkscape::UI::Widget::AddToIcon * addRenderer = manage(new Inkscape::UI::Widget::AddToIcon());
addRenderer->property_active() = false;
- int addCol = _treeView.append_column("Unset Property", *addRenderer) - 1;
+ int addCol = _treeView.append_column("", *addRenderer) - 1;
Gtk::TreeViewColumn *col = _treeView.get_column(addCol);
if (col) {
col->add_attribute(addRenderer->property_active(), _cssColumns._colUnsetProp);
@@ -72,8 +56,12 @@ CssDialog::CssDialog():
_textRenderer = Gtk::manage(new Gtk::CellRendererText());
_textRenderer->property_editable() = true;
- int nameColNum = _treeView.append_column("Property", *_textRenderer) - 1;
+ int nameColNum = _treeView.append_column("CSS Property", *_textRenderer) - 1;
_propCol = _treeView.get_column(nameColNum);
+ if (_propCol) {
+ _propCol->add_attribute(_textRenderer->property_text(),
+ _cssColumns._propertyLabel);
+ }
Gtk::Button* create = manage(new Gtk::Button());
_styleButton(*create, "list-add", "Add a new property");
@@ -83,12 +71,12 @@ CssDialog::CssDialog():
_getContents()->pack_start(_mainBox, Gtk::PACK_EXPAND_WIDGET);
- _targetDesktop = getDesktop();
- setDesktop(_targetDesktop);
+ setDesktop(getDesktop());
create->signal_clicked().connect(sigc::mem_fun(*this, &CssDialog::_addProperty));
}
+
/**
* @brief CssDialog::~CssDialog
* Class destructor
@@ -98,6 +86,7 @@ CssDialog::~CssDialog()
setDesktop(NULL);
}
+
/**
* @brief CssDialog::setDesktop
* @param desktop
@@ -108,16 +97,34 @@ void CssDialog::setDesktop(SPDesktop* desktop)
_desktop = desktop;
}
+
+/**
+ * @brief CssDialog::_styleButton
+ * @param btn
+ * @param iconName
+ * @param tooltip
+ * This function sets the style of '+'button at the bottom of dialog.
+ */
+void CssDialog::_styleButton(Gtk::Button& btn, char const* iconName,
+ char const* tooltip)
+{
+ GtkWidget *child = sp_icon_new(Inkscape::ICON_SIZE_SMALL_TOOLBAR, iconName);
+ gtk_widget_show(child);
+ btn.add(*manage(Glib::wrap(child)));
+ btn.set_relief(Gtk::RELIEF_NONE);
+ btn.set_tooltip_text(tooltip);
+}
+
+
/**
* @brief CssDialog::_addProperty
* This function is a slot to signal_clicked for '+' button at the bottom of CSS
* panel. A new row is added, double clicking which text for new property can be
- * added. _newProperty is set to true in which case the value is appended.
+ * added.
*/
void CssDialog::_addProperty()
{
_propRow = *(_store->append());
- _newProperty = true;
}
} // namespace Dialog