summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJohan B. C. Engelen <jbc.engelen@swissonline.ch>2008-01-26 02:06:29 +0000
committerjohanengelen <johanengelen@users.sourceforge.net>2008-01-26 02:06:29 +0000
commit6b5ae92f592217859dd912d0dcd9badd16cac5b8 (patch)
tree72b6513adeffeb63c82bf9d77e54cd58219d2d9d /src
parentfix strange typo (diff)
downloadinkscape-6b5ae92f592217859dd912d0dcd9badd16cac5b8.tar.gz
inkscape-6b5ae92f592217859dd912d0dcd9badd16cac5b8.zip
gray out widgets when grid is disabled.
(bzr r4594)
Diffstat (limited to 'src')
-rw-r--r--src/display/canvas-grid.cpp8
-rw-r--r--src/ui/dialog/document-properties.cpp8
-rw-r--r--src/ui/widget/registered-widget.cpp4
-rw-r--r--src/ui/widget/registered-widget.h6
4 files changed, 16 insertions, 10 deletions
diff --git a/src/display/canvas-grid.cpp b/src/display/canvas-grid.cpp
index c9aec455e..f4f23764a 100644
--- a/src/display/canvas-grid.cpp
+++ b/src/display/canvas-grid.cpp
@@ -332,7 +332,13 @@ CanvasGrid::newWidget()
vbox->pack_start(*_rcb_enabled, true, true);
vbox->pack_start(*_rcb_visible, true, true);
- vbox->pack_start(*newSpecificWidget(), true, true);
+ Gtk::Widget * gridwdg = newSpecificWidget();
+ vbox->pack_start(*gridwdg, true, true);
+
+ std::list<Gtk::Widget*> slaves;
+ slaves.push_back(_rcb_visible);
+ slaves.push_back(gridwdg);
+ _rcb_enabled->setSlaveWidgets(slaves);
// set widget values
_rcb_visible->setActive(visible);
diff --git a/src/ui/dialog/document-properties.cpp b/src/ui/dialog/document-properties.cpp
index 4ed23d7b2..5ed737cf7 100644
--- a/src/ui/dialog/document-properties.cpp
+++ b/src/ui/dialog/document-properties.cpp
@@ -290,21 +290,21 @@ DocumentProperties::build_snap()
//Other options to locate here: e.g. visual snapping indicators on/off
- std::list<Gtk::ToggleButton*> slaves;
+ std::list<Gtk::Widget*> slaves;
slaves.push_back(&_rcbsnop);
slaves.push_back(&_rcbsnon);
- _rcbsnn.setSlaveButton(slaves);
+ _rcbsnn.setSlaveWidgets(slaves);
slaves.clear();
slaves.push_back(&_rcbsnbbp);
slaves.push_back(&_rcbsnbbn);
- _rcbsnbb.setSlaveButton(slaves);
+ _rcbsnbb.setSlaveWidgets(slaves);
slaves.clear();
slaves.push_back(&_rcbsnn);
slaves.push_back(&_rcbsnbb);
- _rcbsg.setSlaveButton(slaves);
+ _rcbsg.setSlaveWidgets(slaves);
Gtk::Label *label_g = manage (new Gtk::Label);
label_g->set_markup (_("<b>Snapping</b>"));
diff --git a/src/ui/widget/registered-widget.cpp b/src/ui/widget/registered-widget.cpp
index 629de910f..f8abecdbe 100644
--- a/src/ui/widget/registered-widget.cpp
+++ b/src/ui/widget/registered-widget.cpp
@@ -98,7 +98,7 @@ RegisteredCheckButton::setActive (bool b)
setProgrammatically = true;
set_active (b);
//The slave button is greyed out if the master button is unchecked
- for (std::list<Gtk::ToggleButton*>::const_iterator i = _slavebuttons.begin(); i != _slavebuttons.end(); i++) {
+ for (std::list<Gtk::Widget*>::const_iterator i = _slavewidgets.begin(); i != _slavewidgets.end(); i++) {
(*i)->set_sensitive(b);
}
setProgrammatically = false;
@@ -118,7 +118,7 @@ RegisteredCheckButton::on_toggled()
write_to_xml(get_active() ? "true" : "false");
//The slave button is greyed out if the master button is unchecked
- for (std::list<Gtk::ToggleButton*>::const_iterator i = _slavebuttons.begin(); i != _slavebuttons.end(); i++) {
+ for (std::list<Gtk::Widget*>::const_iterator i = _slavewidgets.begin(); i != _slavewidgets.end(); i++) {
(*i)->set_sensitive(get_active());
}
diff --git a/src/ui/widget/registered-widget.h b/src/ui/widget/registered-widget.h
index e6281e0ef..42bcf62d7 100644
--- a/src/ui/widget/registered-widget.h
+++ b/src/ui/widget/registered-widget.h
@@ -179,13 +179,13 @@ public:
void setActive (bool);
- std::list<Gtk::ToggleButton*> _slavebuttons;
+ std::list<Gtk::Widget*> _slavewidgets;
// a slave button is only sensitive when the master button is active
// i.e. a slave button is greyed-out when the master button is not checked
- void setSlaveButton(std::list<Gtk::ToggleButton*> btns) {
- _slavebuttons = btns;
+ void setSlaveWidgets(std::list<Gtk::Widget*> btns) {
+ _slavewidgets = btns;
}
bool setProgrammatically; // true if the value was set by setActive, not changed by the user;