summaryrefslogtreecommitdiffstats
path: root/src/widgets/desktop-widget.cpp
diff options
context:
space:
mode:
authorTavmjong Bah <tavmjong@free.fr>2019-06-29 08:24:25 +0000
committerTavmjong Bah <tavmjong@free.fr>2019-06-29 12:01:19 +0000
commit6131ca23c145f769898ad074523c0a10b1caa8f6 (patch)
tree9cbc30e5b1c44da6acff4267d1a53869891d9816 /src/widgets/desktop-widget.cpp
parentMake tick color the symbolic icon color if symbolic icons are used. (diff)
downloadinkscape-6131ca23c145f769898ad074523c0a10b1caa8f6.tar.gz
inkscape-6131ca23c145f769898ad074523c0a10b1caa8f6.zip
Remove gimp ruler.
Diffstat (limited to 'src/widgets/desktop-widget.cpp')
-rw-r--r--src/widgets/desktop-widget.cpp65
1 files changed, 14 insertions, 51 deletions
diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp
index 60b2c4673..be477baf4 100644
--- a/src/widgets/desktop-widget.cpp
+++ b/src/widgets/desktop-widget.cpp
@@ -73,7 +73,6 @@
#include "util/units.h"
// We're in the "widgets" directory, so no need to explicitly prefix these:
-#include "gimp/ruler.h"
#include "spinbutton-events.h"
#include "spw-utilities.h"
#include "toolbox.h"
@@ -391,23 +390,13 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
Inkscape::Util::Unit const *pt = unit_table.getUnit("pt");
/* Horizontal ruler */
- dtw->_hruler2 = Gtk::manage(new Inkscape::UI::Widget::Ruler(Gtk::ORIENTATION_HORIZONTAL));
- dtw->_hruler2->set_unit(pt);
-
- dtw->_hruler = Glib::wrap(sp_ruler_new(GTK_ORIENTATION_HORIZONTAL));
- dtw->_hruler->set_name("HorizontalRuler");
- sp_ruler_set_unit(SP_RULER(dtw->_hruler->gobj()), pt);
+ dtw->_hruler = Gtk::manage(new Inkscape::UI::Widget::Ruler(Gtk::ORIENTATION_HORIZONTAL));
+ dtw->_hruler->set_unit(pt);
+ // We should probably get rid of this and attach the signals directly rulers.
dtw->_hruler_box = Gtk::manage(new Gtk::EventBox());
dtw->_hruler_box->set_tooltip_text(gettext(pt->name_plural.c_str()));
- // dtw->_hruler_box->add(*dtw->_hruler);
-
- auto vbox = Gtk::manage(new Gtk::Box(Gtk::ORIENTATION_VERTICAL));
-
- vbox->pack_start(*dtw->_hruler, true, true);
- vbox->pack_start(*dtw->_hruler2, true, true);
- dtw->_hruler_box->add(*vbox);
-
+ dtw->_hruler_box->add(*dtw->_hruler);
dtw->_hruler_box->signal_button_press_event().connect(sigc::bind(sigc::mem_fun(*dtw, &SPDesktopWidget::on_ruler_box_button_press_event), dtw->_hruler_box, true));
dtw->_hruler_box->signal_button_release_event().connect(sigc::bind(sigc::mem_fun(*dtw, &SPDesktopWidget::on_ruler_box_button_release_event), dtw->_hruler_box, true));
dtw->_hruler_box->signal_motion_notify_event().connect(sigc::bind(sigc::mem_fun(*dtw, &SPDesktopWidget::on_ruler_box_motion_notify_event), dtw->_hruler_box, true));
@@ -415,22 +404,12 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
dtw->_canvas_tbl->attach(*dtw->_hruler_box, 1, 0, 1, 1);
/* Vertical ruler */
- dtw->_vruler = Glib::wrap(sp_ruler_new(GTK_ORIENTATION_VERTICAL));
- dtw->_vruler->set_name("VerticalRuler");
+ dtw->_vruler = Gtk::manage(new Inkscape::UI::Widget::Ruler(Gtk::ORIENTATION_VERTICAL));
+ dtw->_vruler->set_unit(pt);
+
dtw->_vruler_box = Gtk::manage(new Gtk::EventBox());
- sp_ruler_set_unit (SP_RULER (dtw->_vruler->gobj()), pt);
dtw->_vruler_box->set_tooltip_text(gettext(pt->name_plural.c_str()));
- // dtw->_vruler_box->add(*dtw->_vruler);
-
- auto hbox = Gtk::manage(new Gtk::Box(Gtk::ORIENTATION_HORIZONTAL));
- dtw->_vruler2 = Gtk::manage(new Inkscape::UI::Widget::Ruler(Gtk::ORIENTATION_VERTICAL));
- dtw->_vruler2->set_unit(pt);
-
- hbox->pack_start(*dtw->_vruler, true, true);
- hbox->pack_start(*dtw->_vruler2, true, true);
- dtw->_vruler_box->add(*hbox);
-
-
+ dtw->_vruler_box->add(*dtw->_vruler);
dtw->_vruler_box->signal_button_press_event().connect(sigc::bind(sigc::mem_fun(*dtw, &SPDesktopWidget::on_ruler_box_button_press_event), dtw->_vruler_box, false));
dtw->_vruler_box->signal_button_release_event().connect(sigc::bind(sigc::mem_fun(*dtw, &SPDesktopWidget::on_ruler_box_button_release_event), dtw->_vruler_box, false));
dtw->_vruler_box->signal_motion_notify_event().connect(sigc::bind(sigc::mem_fun(*dtw, &SPDesktopWidget::on_ruler_box_motion_notify_event), dtw->_vruler_box, false));
@@ -514,10 +493,8 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw )
#endif // defined(HAVE_LIBLCMS2)
gtk_widget_set_can_focus (GTK_WIDGET (dtw->_canvas), TRUE);
- sp_ruler_add_track_widget(SP_RULER(dtw->_hruler->gobj()), GTK_WIDGET(dtw->_canvas));
- sp_ruler_add_track_widget(SP_RULER(dtw->_vruler->gobj()), GTK_WIDGET(dtw->_canvas));
- dtw->_hruler2->add_track_widget(*Glib::wrap(GTK_WIDGET(dtw->_canvas)));
- dtw->_vruler2->add_track_widget(*Glib::wrap(GTK_WIDGET(dtw->_canvas)));
+ dtw->_hruler->add_track_widget(*Glib::wrap(GTK_WIDGET(dtw->_canvas)));
+ dtw->_vruler->add_track_widget(*Glib::wrap(GTK_WIDGET(dtw->_canvas)));
auto css_provider = gtk_css_provider_new();
auto style_context = gtk_widget_get_style_context(GTK_WIDGET(dtw->_canvas));
@@ -773,10 +750,6 @@ SPDesktopWidget::dispose(GObject *object)
dtw->desktop->destroy();
Inkscape::GC::release (dtw->desktop);
dtw->desktop = nullptr;
-
- // Rulers
- sp_ruler_remove_track_widget(SP_RULER(dtw->_hruler->gobj()), GTK_WIDGET(dtw->_canvas));
- sp_ruler_remove_track_widget(SP_RULER(dtw->_vruler->gobj()), GTK_WIDGET(dtw->_canvas));
}
dtw->modified_connection.~connection();
@@ -1770,22 +1743,14 @@ SPDesktopWidget::update_rulers()
double lower_x = _dt2r * (viewbox.left() - _ruler_origin[Geom::X]);
double upper_x = _dt2r * (viewbox.right() - _ruler_origin[Geom::X]);
- sp_ruler_set_range(SP_RULER(_hruler->gobj()),
- lower_x,
- upper_x,
- upper_x - lower_x);
- _hruler2->set_range(lower_x, upper_x);
+ _hruler->set_range(lower_x, upper_x);
double lower_y = _dt2r * (viewbox.bottom() - _ruler_origin[Geom::Y]);
double upper_y = _dt2r * (viewbox.top() - _ruler_origin[Geom::Y]);
if (desktop->is_yaxisdown()) {
std::swap(lower_y, upper_y);
}
- sp_ruler_set_range(SP_RULER(_vruler->gobj()),
- lower_y,
- upper_y,
- upper_y - lower_y);
- _vruler2->set_range(lower_y, upper_y);
+ _vruler->set_range(lower_y, upper_y);
}
@@ -1797,10 +1762,8 @@ void SPDesktopWidget::namedviewModified(SPObject *obj, guint flags)
_dt2r = 1. / nv->display_units->factor;
_ruler_origin = Geom::Point(0,0); //nv->gridorigin; Why was the grid origin used here?
- sp_ruler_set_unit(SP_RULER(_vruler->gobj()), nv->getDisplayUnit());
- sp_ruler_set_unit(SP_RULER(_hruler->gobj()), nv->getDisplayUnit());
- _vruler2->set_unit(nv->getDisplayUnit());
- _hruler2->set_unit(nv->getDisplayUnit());
+ _vruler->set_unit(nv->getDisplayUnit());
+ _hruler->set_unit(nv->getDisplayUnit());
/* This loops through all the grandchildren of aux toolbox,
* and for each that it finds, it performs an sp_search_by_data_recursive(),