Tool menu fixed, GTK3 behaves different than GTK2...

presentation
Andreas Butti 7 years ago
parent 1077814f34
commit d071dae431
  1. 24
      src/gui/toolbarMenubar/AbstractItem.cpp
  2. 22
      ui/main.glade

@ -16,6 +16,7 @@ AbstractItem::AbstractItem(string id, ActionHandler* handler, ActionType action,
if (menuitem)
{
// Other signal available: "toggled", currently not sure, if this may fix some bugs or generate other...
menuSignalHandler = g_signal_connect(menuitem, "activate", G_CALLBACK(&menuCallback), this);
g_object_ref(G_OBJECT(menuitem));
this->menuitem = menuitem;
@ -94,20 +95,15 @@ void AbstractItem::activated(GdkEvent* event, GtkMenuItem* menuitem, GtkToolButt
if (menuitem)
{
return;
// if (menuitem && GTK_IS_RADIO_MENU_ITEM(menuitem))
// {
// selected = gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(menuitem));
// if (!selected)
// {
// // Ignore radio unselect event
// return;
// }
// }
// else if (menuitem && GTK_IS_CHECK_MENU_ITEM(menuitem))
// {
// selected = gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(menuitem));
// }
if (GTK_IS_CHECK_MENU_ITEM(menuitem))
{
selected = gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(menuitem));
if (!selected && gtk_check_menu_item_get_draw_as_radio(GTK_CHECK_MENU_ITEM(menuitem)))
{
// Unselect radio menu item
return;
}
}
}
else if (toolbutton && GTK_IS_TOGGLE_TOOL_BUTTON(toolbutton))
{

@ -87,8 +87,8 @@
<property name="can_focus">False</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
<accelerator key="u" signal="activate" modifiers="GDK_CONTROL_MASK"/>
<accelerator key="s" signal="activate" modifiers="GDK_SHIFT_MASK | GDK_CONTROL_MASK"/>
<accelerator key="u" signal="activate" modifiers="GDK_CONTROL_MASK"/>
</object>
</child>
<child>
@ -112,8 +112,8 @@
<property name="can_focus">False</property>
<property name="label" translatable="yes">Export as...</property>
<property name="use_underline">True</property>
<accelerator key="i" signal="activate" modifiers="GDK_CONTROL_MASK"/>
<accelerator key="e" signal="activate" modifiers="GDK_SHIFT_MASK | GDK_CONTROL_MASK"/>
<accelerator key="i" signal="activate" modifiers="GDK_CONTROL_MASK"/>
</object>
</child>
<child>
@ -354,8 +354,8 @@
<property name="can_focus">False</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
<accelerator key="KP_Add" signal="activate" modifiers="GDK_CONTROL_MASK"/>
<accelerator key="plus" signal="activate" modifiers="GDK_CONTROL_MASK"/>
<accelerator key="KP_Add" signal="activate" modifiers="GDK_CONTROL_MASK"/>
</object>
</child>
<child>
@ -365,8 +365,8 @@
<property name="can_focus">False</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
<accelerator key="KP_Subtract" signal="activate" modifiers="GDK_CONTROL_MASK"/>
<accelerator key="minus" signal="activate" modifiers="GDK_CONTROL_MASK"/>
<accelerator key="KP_Subtract" signal="activate" modifiers="GDK_CONTROL_MASK"/>
</object>
</child>
<child>
@ -746,7 +746,7 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<object class="GtkRadioMenuItem" id="menuToolsPen">
<object class="GtkCheckMenuItem" id="menuToolsPen">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">_Pen</property>
@ -756,46 +756,42 @@
</object>
</child>
<child>
<object class="GtkRadioMenuItem" id="menuToolsEraser">
<object class="GtkCheckMenuItem" id="menuToolsEraser">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">_Eraser</property>
<property name="use_underline">True</property>
<property name="draw_as_radio">True</property>
<property name="group">menuToolsPen</property>
<accelerator key="e" signal="activate" modifiers="GDK_SHIFT_MASK | GDK_CONTROL_MASK"/>
</object>
</child>
<child>
<object class="GtkRadioMenuItem" id="menuToolsHighlighter">
<object class="GtkCheckMenuItem" id="menuToolsHighlighter">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">_Highlighter</property>
<property name="use_underline">True</property>
<property name="draw_as_radio">True</property>
<property name="group">menuToolsPen</property>
<accelerator key="h" signal="activate" modifiers="GDK_SHIFT_MASK | GDK_CONTROL_MASK"/>
</object>
</child>
<child>
<object class="GtkRadioMenuItem" id="menuToolsText">
<object class="GtkCheckMenuItem" id="menuToolsText">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">_Text</property>
<property name="use_underline">True</property>
<property name="draw_as_radio">True</property>
<property name="group">menuToolsPen</property>
<accelerator key="t" signal="activate" modifiers="GDK_SHIFT_MASK | GDK_CONTROL_MASK"/>
</object>
</child>
<child>
<object class="GtkRadioMenuItem" id="menuToolsImage">
<object class="GtkCheckMenuItem" id="menuToolsImage">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">_Image</property>
<property name="use_underline">True</property>
<property name="draw_as_radio">True</property>
<property name="group">menuToolsPen</property>
<accelerator key="i" signal="activate" modifiers="GDK_SHIFT_MASK | GDK_CONTROL_MASK"/>
</object>
</child>

Loading…
Cancel
Save