diff options
| author | Jabiertxof <jabier.arraiza@marker.es> | 2019-06-18 19:18:20 +0000 |
|---|---|---|
| committer | Jabier Arraiza <jabier.arraiza@marker.es> | 2019-07-08 21:01:34 +0000 |
| commit | 6a7e32e1b6bea253f6484136beaf21c3df0de535 (patch) | |
| tree | 3c95f52c150518add2b9e5d2a1d786e78b40f19d /src/ui/widget | |
| parent | Display spiro pen preview right after backspace (diff) | |
| download | inkscape-6a7e32e1b6bea253f6484136beaf21c3df0de535.tar.gz inkscape-6a7e32e1b6bea253f6484136beaf21c3df0de535.zip | |
Initial code to fix
Diffstat (limited to 'src/ui/widget')
| -rw-r--r-- | src/ui/widget/color-picker.cpp | 12 | ||||
| -rw-r--r-- | src/ui/widget/color-picker.h | 12 |
2 files changed, 17 insertions, 7 deletions
diff --git a/src/ui/widget/color-picker.cpp b/src/ui/widget/color-picker.cpp index ad74a10cc..b3b6db451 100644 --- a/src/ui/widget/color-picker.cpp +++ b/src/ui/widget/color-picker.cpp @@ -37,7 +37,6 @@ ColorPicker::ColorPicker (const Glib::ustring& title, const Glib::ustring& tip, _preview.show(); add (_preview); set_tooltip_text (tip); - _selected_color.signal_changed.connect(sigc::mem_fun(this, &ColorPicker::_onSelectedColorChanged)); _selected_color.signal_dragged.connect(sigc::mem_fun(this, &ColorPicker::_onSelectedColorChanged)); _selected_color.signal_released.connect(sigc::mem_fun(this, &ColorPicker::_onSelectedColorChanged)); @@ -58,12 +57,21 @@ void ColorPicker::setupDialog(const Glib::ustring &title) _colorSelectorDialog.set_border_width (4); _color_selector = Gtk::manage(new ColorNotebook(_selected_color)); - + if (_transientwindow) { + Glib::RefPtr<Gdk::Window> window = get_parent_window(); + if (window) { + window->set_transient_for(_transientwindow); + } + } _colorSelectorDialog.get_content_area()->pack_start ( *_color_selector, true, true, 0); _color_selector->show(); } +void ColorPicker::setTransientFor(Glib::RefPtr<Gdk::Window> transientwindow) { _transientwindow = transientwindow; } + +void ColorPicker::setSensitive(bool sensitive) { _color_selector->set_sensitive(sensitive); } + void ColorPicker::setRgba32 (guint32 rgba) { if (_in_use) return; diff --git a/src/ui/widget/color-picker.h b/src/ui/widget/color-picker.h index f0252550b..d4005d397 100644 --- a/src/ui/widget/color-picker.h +++ b/src/ui/widget/color-picker.h @@ -18,11 +18,12 @@ #include <cstddef> -#include <gtkmm/dialog.h> -#include <gtkmm/button.h> -#include <sigc++/sigc++.h> #include "ui/selected-color.h" #include "ui/widget/color-preview.h" +#include <gtkmm/button.h> +#include <gtkmm/dialog.h> +#include <gtkmm/window.h> +#include <sigc++/sigc++.h> struct SPColorSelector; @@ -45,9 +46,9 @@ public: ~ColorPicker() override; void setRgba32 (guint32 rgba); - + void setSensitive(bool sensitive); void closeWindow(); - + void setTransientFor(Glib::RefPtr<Gdk::Window> transientwindow); sigc::connection connectChanged (const sigc::slot<void,guint>& slot) { return _changed_signal.connect (slot); } @@ -70,6 +71,7 @@ protected: //Inkscape::UI::Dialog::Dialog _colorSelectorDialog; Gtk::Dialog _colorSelectorDialog; SelectedColor _selected_color; + Glib::RefPtr<Gdk::Window> _transientwindow; Gtk::Widget *_color_selector; }; |
