Solving issue 735 : "Zooming with mouse wheel should zoom where the mouse is".
The scroll wheel is now used for scrolling the editor's tab content. If you want to change the spin button's/slider's value or combobox entry, press the SHIFT key while using the scroll wheel. This patch also: - reduce the spin buttons size (50px wide, instead of 70px) - reduce the minimum size of the combobox (tool panels can now be narrower before showing the horizontal scrollbar) Note to developers: ------------------- When creating GUI for editor tools, please use the MyComboBox, MyComboBoxText, MySpinButton and MyFileChooserButton derived class only in order to handle the scroll wheel properly (-> #include <guiutils.h>). Known bug: The MyFileChooserButton thas is a FILE_CHOOSER_ACTION_SELECT_FOLDER does not respond correctly to the new behaviour.
This commit is contained in:
@@ -71,4 +71,42 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
class MyComboBox : public Gtk::ComboBox {
|
||||
|
||||
bool on_scroll_event (GdkEventScroll* event);
|
||||
|
||||
public:
|
||||
MyComboBox ();
|
||||
};
|
||||
|
||||
class MyComboBoxText : public Gtk::ComboBoxText {
|
||||
|
||||
bool on_scroll_event (GdkEventScroll* event);
|
||||
|
||||
public:
|
||||
MyComboBoxText ();
|
||||
};
|
||||
|
||||
class MySpinButton : public Gtk::SpinButton {
|
||||
|
||||
bool on_scroll_event (GdkEventScroll* event);
|
||||
|
||||
public:
|
||||
MySpinButton ();
|
||||
};
|
||||
|
||||
class MyHScale : public Gtk::HScale {
|
||||
|
||||
bool on_scroll_event (GdkEventScroll* event);
|
||||
};
|
||||
|
||||
class MyFileChooserButton : public Gtk::FileChooserButton {
|
||||
|
||||
protected:
|
||||
bool on_scroll_event (GdkEventScroll* event);
|
||||
|
||||
public:
|
||||
MyFileChooserButton (const Glib::ustring& title, Gtk::FileChooserAction action=Gtk::FILE_CHOOSER_ACTION_OPEN);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user