[chronojump] hpaned_contacts_main resize/shrinks ok when menu/changes
- From: Xavier de Blas <xaviblas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [chronojump] hpaned_contacts_main resize/shrinks ok when menu/changes
- Date: Tue, 24 Mar 2020 10:43:18 +0000 (UTC)
commit fe1ae7f929b4c11692f3774fc1fe2d008313266e
Author: Xavier de Blas <xaviblas gmail com>
Date: Tue Mar 24 11:41:53 2020 +0100
hpaned_contacts_main resize/shrinks ok when menu/changes
glade/app1.glade | 25 +++++++++++++----
src/gui/app1/chronojump.cs | 6 ++--
src/gui/app1/menu.cs | 69 ++++++++++++++++++++++++++++++++++++----------
src/gui/preferences.cs | 8 ------
4 files changed, 76 insertions(+), 32 deletions(-)
---
diff --git a/glade/app1.glade b/glade/app1.glade
index 454639a1..9e6ce2c2 100644
--- a/glade/app1.glade
+++ b/glade/app1.glade
@@ -756,7 +756,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<child>
- <widget class="GtkAlignment" id="alignment13">
+ <widget class="GtkAlignment" id="alignment_viewport_menu_top">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="bottom_padding">2</property>
@@ -985,12 +985,12 @@
<property name="top_padding">6</property>
<property name="left_padding">16</property>
<child>
- <widget class="GtkVBox"
id="vbox_manage_persons2">
+ <widget class="GtkVBox"
id="vbox_manage_sessions">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">6</property>
<child>
- <widget class="GtkButton"
id="button_person_add_single2">
+ <widget class="GtkButton"
id="button_menu_session_new">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
@@ -1038,7 +1038,7 @@
</packing>
</child>
<child>
- <widget class="GtkButton"
id="button_person_add_multiple2">
+ <widget class="GtkButton"
id="button_menu_session_load">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
@@ -1086,7 +1086,7 @@
</packing>
</child>
<child>
- <widget class="GtkButton"
id="button_edit_session">
+ <widget class="GtkButton"
id="button_menu_session_edit">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">True</property>
@@ -1135,7 +1135,7 @@
</packing>
</child>
<child>
- <widget class="GtkButton"
id="button_delete_session">
+ <widget class="GtkButton"
id="button_menu_session_delete">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">True</property>
@@ -1535,6 +1535,7 @@
</child>
<child>
<widget class="GtkAlignment"
id="alignment_menu_help_options">
+ <property name="visible">True</property>
<property name="can_focus">False</property>
<property name="top_padding">8</property>
<property name="left_padding">16</property>
@@ -24546,6 +24547,12 @@ Concentric</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
<packing>
<property name="expand">False</property>
@@ -34386,6 +34393,12 @@ then click this button.</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
<packing>
<property name="expand">False</property>
diff --git a/src/gui/app1/chronojump.cs b/src/gui/app1/chronojump.cs
index ce3f4dae..691c9348 100644
--- a/src/gui/app1/chronojump.cs
+++ b/src/gui/app1/chronojump.cs
@@ -206,8 +206,6 @@ public partial class ChronoJumpWindow
//menu session
[Widget] Gtk.MenuItem menuitem_edit_session;
[Widget] Gtk.MenuItem menuitem_delete_session;
- [Widget] Gtk.Button button_edit_session;
- [Widget] Gtk.Button button_delete_session;
[Widget] Gtk.MenuItem menuitem_export_csv;
[Widget] Gtk.MenuItem menuitem_encoder_session_overview;
[Widget] Gtk.Button button_menu_encoder_session_overview;
@@ -7276,8 +7274,8 @@ LogB.Debug("mc finished 5");
{
//menuitem_edit_session.Sensitive = option;
//menuitem_delete_session.Sensitive = option;
- button_edit_session.Sensitive = option;
- button_delete_session.Sensitive = option;
+ button_menu_session_edit.Sensitive = option;
+ button_menu_session_delete.Sensitive = option;
menuitem_export_csv.Sensitive = option;
//menuitem_export_xml.Sensitive = option; not implemented yet
menuitem_encoder_session_overview.Sensitive = option;
diff --git a/src/gui/app1/menu.cs b/src/gui/app1/menu.cs
index f6e37da4..39cc160e 100644
--- a/src/gui/app1/menu.cs
+++ b/src/gui/app1/menu.cs
@@ -24,6 +24,7 @@ using System;
using Gtk;
//using Gdk;
using Glade;
+using System.Collections.Generic; //List
//provar checkbuttons enlloc dels togglebuttons que igual no van be
@@ -39,7 +40,8 @@ public partial class ChronoJumpWindow
[Widget] Gtk.Arrow arrow_menu_show_help_down;
[Widget] Gtk.Button button_show_menu;
[Widget] Gtk.Button button_show_modes;
- //[Widget] Gtk.HPaned hpaned_contacts_main;
+ [Widget] Gtk.HPaned hpaned_contacts_main;
+ [Widget] Gtk.Alignment alignment_viewport_menu_top;
[Widget] Gtk.Viewport viewport_hpaned_contacts_main;
[Widget] Gtk.Viewport viewport_start_modes;
[Widget] Gtk.Viewport viewport_menu_top;
@@ -60,6 +62,15 @@ public partial class ChronoJumpWindow
[Widget] Gtk.Alignment alignment_menu_encoder_options;
[Widget] Gtk.Alignment alignment_menu_help_options;
+ [Widget] Gtk.Button button_menu_session_new;
+ [Widget] Gtk.Button button_menu_session_load;
+ [Widget] Gtk.Button button_menu_session_edit;
+ [Widget] Gtk.Button button_menu_session_delete;
+ [Widget] Gtk.Button button_menu_preferences;
+ [Widget] Gtk.Button button_menu_help_documents;
+ [Widget] Gtk.Button button_menu_help_accelerators;
+ [Widget] Gtk.Button button_menu_help_about;
+
//menu icons
[Widget] Gtk.Image image_button_show_menu;
[Widget] Gtk.Image image_button_show_modes;
@@ -95,6 +106,38 @@ public partial class ChronoJumpWindow
{
menuSetTextAndIcons();
menuSetColors();
+
+ //LogB.Information("hpaned MinPosition: " + hpaned_contacts_main.MinPosition.ToString());
+
+ //unselect menu_help if selected
+ if(check_menu_help.Active)
+ check_menu_help.Active = false;
+ alignment_menu_help_options.Visible = false;
+
+ /*
+ //do 1 and then 2 to ensure menu is shrinked after changing to icons
+ //1
+ hpaned_contacts_main = new Gtk.HPaned();
+ hpaned_contacts_main.Pack1(alignment_viewport_menu_top, false, false);
+ hpaned_contacts_main.Pack2(notebook_sup, true, false);
+ hpaned_contacts_main.Show();
+ */
+
+ //2 (1 seems not needed)
+ //this is done to ensure hidden buttons will be shown (because also submenu items seems to
have Allocation=1)
+ //if we need it, pass also the other buttons but without the +16
+ List <Gtk.Button> l = new List<Gtk.Button>();
+ l.Add(button_menu_session_new);
+ l.Add(button_menu_session_load);
+ l.Add(button_menu_session_edit);
+ l.Add(button_menu_session_delete);
+ l.Add(button_menu_help_documents);
+ l.Add(button_menu_help_accelerators);
+ l.Add(button_menu_help_about);
+ int maxWidth = getMenuButtonsMaxWidth(l);
+ viewport_menu_top.SetSizeRequest(maxWidth + 16 + 4 + 6, -1); //16, 4, 6 are alignements
spaces. -1 is height
+
+ //TODO: check also viewport_persons.Width (at least at preferences.MenuTypes.ALL and ICONS)
}
private void menuSetTextAndIcons ()
@@ -179,7 +222,6 @@ public partial class ChronoJumpWindow
viewport_persons.Visible = false;
else
viewport_persons.Visible = (currentSession != null);
- //hpaned_contacts_main.Show();
}
private void on_check_menu_session_clicked (object o, EventArgs args)
@@ -190,6 +232,7 @@ public partial class ChronoJumpWindow
check_menu_encoder.Active = false;
check_menu_help.Active = false;
alignment_menu_session_options.Visible = true;
+
alignment_menu_session_options.Show();
} else
alignment_menu_session_options.Visible = false;
@@ -218,22 +261,20 @@ public partial class ChronoJumpWindow
alignment_menu_help_options.Visible = false;
}
+ private int getMenuButtonsMaxWidth(List<Gtk.Button> l)
+ {
+ int max = 0;
+ foreach(Gtk.Button b in l)
+ if(b.SizeRequest().Width > max)
+ max = b.SizeRequest().Width;
+
+ return max;
+ }
+
private void on_button_show_modes_clicked (object o, EventArgs args)
{
show_start_page();
button_show_modes.Sensitive = false;
-
- /*
- //to care about viewport_menu_top being lower width allocated and a bit hidden by
hpaned_contacts_main
- LogB.Information("viewport_menu_top.Allocation.Width: " +
viewport_menu_top.Allocation.Width.ToString());
- LogB.Information("viewport_menu_top.SizeRequest.Width: " +
viewport_menu_top.SizeRequest().Width.ToString());
-
- LogB.Information("button_show_menu.Allocation.Width: " +
button_show_menu.Allocation.Width.ToString());
- LogB.Information("button_show_menu.SizeRequest.Width: " +
button_show_menu.SizeRequest().Width.ToString());
-
- LogB.Information("button_show_modes.Allocation.Width: " +
button_show_modes.Allocation.Width.ToString());
- LogB.Information("button_show_modes.SizeRequest.Width: " +
button_show_modes.SizeRequest().Width.ToString());
- */
}
}
diff --git a/src/gui/preferences.cs b/src/gui/preferences.cs
index c0559932..f852485b 100644
--- a/src/gui/preferences.cs
+++ b/src/gui/preferences.cs
@@ -656,14 +656,6 @@ public class PreferencesWindow
private void on_radio_menu_show_toggled (object o, EventArgs args)
{
- /*
- if(radio_menu_show_all.Active)
- {
- check_example_menu_all.Visible = true;
- check_example_menu_text.Visible = false;
- check_example_menu_icons.Visible = false;
- }
- */
check_example_menu_all.Visible = (o == (object) radio_menu_show_all &&
radio_menu_show_all.Active);
check_example_menu_text.Visible = (o == (object) radio_menu_show_text &&
radio_menu_show_text.Active);
check_example_menu_icons.Visible = (o == (object) radio_menu_show_icons &&
radio_menu_show_icons.Active);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]