summaryrefslogtreecommitdiffstats
path: root/src/ui/widget/page-sizer.cpp
diff options
context:
space:
mode:
authorJabiertxo Arraiza Cenoz <jtx@jtx-desktop.markerlab.es>2017-11-16 16:15:37 +0000
committerJabiertxo Arraiza Cenoz <jtx@jtx-desktop.markerlab.es>2017-11-16 16:15:37 +0000
commitf72cca74858a0b6e5227f18b9be82203aab551c9 (patch)
treed7ef77386ec8cb7e22e3bea780b63bdddb45782d /src/ui/widget/page-sizer.cpp
parentFix unincilizated value that not work in release mode. also remove duplicate ... (diff)
downloadinkscape-f72cca74858a0b6e5227f18b9be82203aab551c9.tar.gz
inkscape-f72cca74858a0b6e5227f18b9be82203aab551c9.zip
Add tooggle icon button intead checkbox
Diffstat (limited to 'src/ui/widget/page-sizer.cpp')
-rw-r--r--src/ui/widget/page-sizer.cpp21
1 files changed, 16 insertions, 5 deletions
diff --git a/src/ui/widget/page-sizer.cpp b/src/ui/widget/page-sizer.cpp
index bed86089c..b9c5b34ba 100644
--- a/src/ui/widget/page-sizer.cpp
+++ b/src/ui/widget/page-sizer.cpp
@@ -219,7 +219,8 @@ PageSizer::PageSizer(Registry & _wr)
_dimensionUnits( _("U_nits:"), "units", _wr ),
_dimensionWidth( _("_Width:"), _("Width of paper"), "width", _dimensionUnits, _wr ),
_dimensionHeight( _("_Height:"), _("Height of paper"), "height", _dimensionUnits, _wr ),
- _marginLock( _("L_ock"), _("Lock margins"), "lock-margins", _wr ),
+ _marginLock( _(""), _("Lock margins"), "lock-margins", _wr, false, NULL, NULL),
+ _lock_icon(),
_marginTop( _("T_op margin:"), _("Top margin"), "fit-margin-top", _wr ),
_marginLeft( _("L_eft:"), _("Left margin"), "fit-margin-left", _wr),
_marginRight( _("Ri_ght:"), _("Right margin"), "fit-margin-right", _wr),
@@ -249,7 +250,6 @@ PageSizer::PageSizer(Registry & _wr)
_viewboxY.setDigits(2);
_viewboxW.setDigits(2);
_viewboxH.setDigits(2);
-
_dimensionWidth.setRange( 0.00001, 10000000 );
_dimensionHeight.setRange( 0.00001, 10000000 );
_scaleX.setRange( 0.00001, 100000 );
@@ -370,7 +370,6 @@ PageSizer::PageSizer(Registry & _wr)
//## Set up margin settings
_marginTable.set_border_width(4);
-
_marginTable.set_row_spacing(4);
_marginTable.set_column_spacing(4);
@@ -384,10 +383,19 @@ PageSizer::PageSizer(Registry & _wr)
_marginLeft.set_hexpand();
_marginLeft.set_vexpand();
_marginTable.attach(_marginLeft, 0, 1, 1, 1);
-
+
+ _marginLock.set_active(false);
_marginLock.set_halign(Gtk::ALIGN_CENTER);
_marginLock.set_hexpand();
_marginLock.set_vexpand();
+
+ //_lock_icon = new Gtk::Image();
+ _lock_icon.set_halign(Gtk::ALIGN_CENTER);
+ _lock_icon.set_valign(Gtk::ALIGN_START);
+ _lock_icon.set_from_icon_name("object-unlocked", Gtk::ICON_SIZE_LARGE_TOOLBAR);
+ _lock_icon.show();
+ _marginLock.add(_lock_icon);
+
_marginTable.attach(_marginLock, 1, 1, 1, 1);
_marginRight.set_halign(Gtk::ALIGN_CENTER);
@@ -481,7 +489,7 @@ PageSizer::init ()
_changedvy_connection = _viewboxY.signal_value_changed().connect (sigc::mem_fun (*this, &PageSizer::on_viewbox_changed));
_changedvw_connection = _viewboxW.signal_value_changed().connect (sigc::mem_fun (*this, &PageSizer::on_viewbox_changed));
_changedvh_connection = _viewboxH.signal_value_changed().connect (sigc::mem_fun (*this, &PageSizer::on_viewbox_changed));
- _changedlk_connection = _marginLock.signal_clicked().connect (sigc::mem_fun (*this, &PageSizer::on_margin_lock_changed));
+ _changedlk_connection = _marginLock.signal_toggled().connect (sigc::mem_fun (*this, &PageSizer::on_margin_lock_changed));
_changedmt_connection = _marginTop.signal_value_changed().connect (sigc::bind<RegisteredScalar*>(sigc::mem_fun (*this, &PageSizer::on_margin_changed), &_marginTop));
_changedmb_connection = _marginBottom.signal_value_changed().connect (sigc::bind<RegisteredScalar*>(sigc::mem_fun (*this, &PageSizer::on_margin_changed), &_marginBottom));
_changedml_connection = _marginLeft.signal_value_changed().connect (sigc::bind<RegisteredScalar*>(sigc::mem_fun (*this, &PageSizer::on_margin_changed), &_marginLeft));
@@ -908,6 +916,7 @@ void
PageSizer::on_margin_lock_changed()
{
if (_marginLock.get_active()) {
+ _lock_icon.set_from_icon_name("object-locked", Gtk::ICON_SIZE_LARGE_TOOLBAR);
double left = _marginLeft.getValue();
double right = _marginRight.getValue();
double top = _marginTop.getValue();
@@ -925,6 +934,8 @@ PageSizer::on_margin_lock_changed()
on_margin_changed(&_marginLeft);
}
}
+ } else {
+ _lock_icon.set_from_icon_name("object-unlocked", Gtk::ICON_SIZE_LARGE_TOOLBAR);
}
}