[chronojump] Better encoder capture buttons. Export encoder set in menu
- From: Xavier de Blas <xaviblas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [chronojump] Better encoder capture buttons. Export encoder set in menu
- Date: Thu, 9 Jul 2015 19:54:14 +0000 (UTC)
commit 8c847ecce409dc025c11e9096ec8b1df6ffd1768
Author: Xavier de Blas <xaviblas gmail com>
Date: Thu Jul 9 21:53:47 2015 +0200
Better encoder capture buttons. Export encoder set in menu
glade/chronojump.glade | 270 +++++++++++++++++++++++++++---------------------
src/gui/chronojump.cs | 3 +-
src/gui/encoder.cs | 20 ++--
3 files changed, 167 insertions(+), 126 deletions(-)
---
diff --git a/glade/chronojump.glade b/glade/chronojump.glade
index a8a999e..36639c7 100644
--- a/glade/chronojump.glade
+++ b/glade/chronojump.glade
@@ -118,6 +118,23 @@
</widget>
</child>
<child>
+ <widget class="GtkImageMenuItem" id="menuitem_export_encoder_signal">
+ <property name="label" translatable="yes">Export current encoder set (to raw
data)</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="tooltip" translatable="yes">Export set to CSV
(Spreadsheet)</property>
+ <property name="use_stock">False</property>
+ <signal name="activate" handler="on_button_encoder_export_all_curves_clicked"
swapped="no"/>
+ <child internal-child="image">
+ <widget class="GtkImage" id="image65">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="stock">gtk-convert</property>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ <child>
<widget class="GtkMenuItem" id="menuitem_export_xml">
<property name="sensitive">False</property>
<property name="can_focus">False</property>
@@ -14902,45 +14919,19 @@ on current Chronojump version.</property>
</packing>
</child>
<child>
- <widget class="GtkVBox" id="vbox88">
+ <widget class="GtkHBox" id="hbox58">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="spacing">8</property>
<child>
- <widget class="GtkHBox" id="hbox66">
+ <widget class="GtkHBox" id="hbox168">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="spacing">8</property>
<child>
<widget class="GtkHBox"
id="hbox_encoder_capture_wait">
- <property name="width_request">170</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="spacing">4</property>
- <child>
- <widget class="GtkButton"
id="button_encoder_capture_options">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="can_default">True</property>
- <property name="receives_default">True</property>
- <property name="has_tooltip">True</property>
- <property name="tooltip"
translatable="yes">Options</property>
- <property name="use_underline">True</property>
- <signal name="clicked"
handler="on_button_encoder_capture_options_clicked" swapped="no"/>
- <child>
- <widget class="GtkImage" id="image19">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="stock">gtk-preferences</property>
- <property name="icon-size">2</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
+ <property name="spacing">8</property>
<child>
<widget class="GtkButton"
id="button_encoder_capture">
<property name="visible">True</property>
@@ -14988,101 +14979,98 @@ on current Chronojump version.</property>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
- <property name="position">1</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <widget class="GtkButton"
id="button_encoder_bells">
+ <widget class="GtkVBox" id="vbox57">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">8</property>
+ <child>
+ <widget class="GtkButton"
id="button_encoder_recalculate">
+ <property name="width_request">50</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
+ <property name="can_default">True</property>
<property name="receives_default">True</property>
<property name="has_tooltip">True</property>
- <property name="tooltip"
translatable="yes">Feedback</property>
- <property name="xalign">0</property>
- <signal name="clicked"
handler="on_button_encoder_bells_clicked" swapped="no"/>
+ <property name="tooltip"
translatable="yes">Recalculate set with changed parameters</property>
+ <property name="use_underline">True</property>
+ <signal name="clicked"
handler="on_button_encoder_recalculate_clicked" swapped="no"/>
<child>
- <widget class="GtkImage" id="image_encoder_bell">
+ <widget class="GtkImage" id="image23">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property
name="stock">gtk-missing-image</property>
+ <property name="stock">gtk-refresh</property>
<property name="icon-size">2</property>
</widget>
</child>
</widget>
<packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">2</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <widget class="GtkHBox"
id="hbox_encoder_capture_doing">
- <property name="width_request">170</property>
- <property name="can_focus">False</property>
- <property name="spacing">4</property>
- <child>
- <widget class="GtkProgressBar"
id="encoder_pulsebar_capture">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="activity_mode">True</property>
- <property name="show_text">True</property>
- <property
name="pulse_step">0.050000000000000003</property>
- </widget>
- <packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
- <widget class="GtkButton"
id="button_encoder_capture_cancel">
+ <widget class="GtkButton"
id="button_encoder_load_signal">
+ <property name="width_request">50</property>
<property name="visible">True</property>
- <property name="sensitive">False</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
<property name="receives_default">True</property>
<property name="has_tooltip">True</property>
- <property name="tooltip"
translatable="yes">Cancel process</property>
+ <property name="tooltip" translatable="yes">Load
set</property>
<property name="use_underline">True</property>
- <signal name="clicked"
handler="on_button_encoder_cancel_clicked" swapped="no"/>
+ <signal name="clicked"
handler="on_button_encoder_load_signal_clicked" swapped="no"/>
<child>
- <widget class="GtkImage" id="image8">
+ <widget class="GtkImage"
id="image_encoder_capture_open">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="stock">gtk-cancel</property>
+ <property name="stock">gtk-open</property>
<property name="icon-size">2</property>
</widget>
</child>
</widget>
<packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
<child>
- <widget class="GtkButton"
id="button_encoder_capture_finish">
+ <widget class="GtkVBox" id="vbox60">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">8</property>
+ <child>
+ <widget class="GtkHBox" id="hbox189">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">4</property>
+ <child>
+ <widget class="GtkButton"
id="button_encoder_capture_options">
<property name="visible">True</property>
- <property name="sensitive">False</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
<property name="receives_default">True</property>
<property name="has_tooltip">True</property>
- <property name="tooltip"
translatable="yes">Finish capture</property>
+ <property name="tooltip"
translatable="yes">Options</property>
<property name="use_underline">True</property>
- <signal name="clicked"
handler="on_button_encoder_capture_finish_clicked" swapped="no"/>
+ <signal name="clicked"
handler="on_button_encoder_capture_options_clicked" swapped="no"/>
<child>
- <widget class="GtkImage" id="image13">
+ <widget class="GtkImage" id="image19">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="stock">gtk-goto-last</property>
+ <property name="stock">gtk-preferences</property>
<property name="icon-size">2</property>
</widget>
</child>
@@ -15090,9 +15078,26 @@ on current Chronojump version.</property>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
- <property name="position">2</property>
+ <property name="position">0</property>
</packing>
</child>
+ <child>
+ <widget class="GtkButton"
id="button_encoder_bells">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip"
translatable="yes">Feedback</property>
+ <property name="xalign">0</property>
+ <signal name="clicked"
handler="on_button_encoder_bells_clicked" swapped="no"/>
+ <child>
+ <widget class="GtkImage" id="image_encoder_bell">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property
name="stock">gtk-missing-image</property>
+ <property name="icon-size">2</property>
+ </widget>
+ </child>
</widget>
<packing>
<property name="expand">False</property>
@@ -15108,104 +15113,128 @@ on current Chronojump version.</property>
</packing>
</child>
<child>
- <widget class="GtkHBox" id="hbox58">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="spacing">4</property>
- <child>
- <widget class="GtkButton"
id="button_encoder_load_signal">
+ <widget class="GtkButton"
id="button_encoder_delete_signal">
+ <property name="width_request">50</property>
<property name="visible">True</property>
+ <property name="sensitive">False</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="has_tooltip">True</property>
- <property name="tooltip" translatable="yes">Load
set</property>
- <signal name="clicked"
handler="on_button_encoder_load_signal_clicked" swapped="no"/>
+ <property name="tooltip"
translatable="yes">Delete set</property>
+ <signal name="clicked"
handler="on_button_encoder_delete_signal_clicked" swapped="no"/>
<child>
- <widget class="GtkImage"
id="image_encoder_capture_open">
+ <widget class="GtkImage"
id="image_encoder_signal_delete">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="stock">gtk-open</property>
+ <property name="stock">gtk-delete</property>
<property name="icon-size">2</property>
</widget>
</child>
</widget>
<packing>
- <property name="expand">False</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
- <widget class="GtkButton"
id="button_encoder_recalculate">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="can_default">True</property>
- <property name="receives_default">True</property>
- <property name="has_tooltip">True</property>
- <property name="tooltip"
translatable="yes">Recalculate set with changed parameters</property>
- <property name="use_underline">True</property>
- <signal name="clicked"
handler="on_button_encoder_recalculate_clicked" swapped="no"/>
+ <widget class="GtkVBox"
id="vbox_encoder_capture_doing">
+ <property name="can_focus">False</property>
+ <property name="spacing">8</property>
<child>
- <widget class="GtkImage" id="image23">
+ <widget class="GtkProgressBar"
id="encoder_pulsebar_capture">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="stock">gtk-refresh</property>
- <property name="icon-size">2</property>
- </widget>
- </child>
+ <property name="activity_mode">True</property>
+ <property name="show_text">True</property>
+ <property
name="pulse_step">0.050000000000000003</property>
</widget>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
- <property name="position">1</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <widget class="GtkButton"
id="button_encoder_delete_signal">
+ <widget class="GtkHBox" id="hbox187">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">20</property>
+ <child>
+ <widget class="GtkButton"
id="button_encoder_capture_finish">
+ <property name="width_request">50</property>
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">True</property>
+ <property name="can_default">True</property>
<property name="receives_default">True</property>
<property name="has_tooltip">True</property>
- <property name="tooltip"
translatable="yes">Delete set</property>
- <signal name="clicked"
handler="on_button_encoder_delete_signal_clicked" swapped="no"/>
+ <property name="tooltip"
translatable="yes">Finish capture</property>
+ <property name="use_underline">True</property>
+ <signal name="clicked"
handler="on_button_encoder_capture_finish_clicked" swapped="no"/>
<child>
- <widget class="GtkImage"
id="image_encoder_signal_delete">
+ <widget class="GtkImage" id="image13">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="stock">gtk-delete</property>
+ <property name="stock">gtk-goto-last</property>
<property name="icon-size">2</property>
</widget>
</child>
</widget>
<packing>
<property name="expand">False</property>
- <property name="fill">True</property>
- <property name="pack_type">end</property>
- <property name="position">2</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <widget class="GtkButton"
id="button_encoder_export_all_curves">
+ <widget class="GtkButton"
id="button_encoder_capture_cancel">
+ <property name="width_request">50</property>
<property name="visible">True</property>
+ <property name="sensitive">False</property>
<property name="can_focus">True</property>
+ <property name="can_default">True</property>
<property name="receives_default">True</property>
- <property name="tooltip"
translatable="yes">Export set to CSV (Spreadsheet)</property>
- <signal name="clicked"
handler="on_button_encoder_export_all_curves_clicked" swapped="no"/>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip"
translatable="yes">Cancel process</property>
+ <property name="use_underline">True</property>
+ <signal name="clicked"
handler="on_button_encoder_cancel_clicked" swapped="no"/>
<child>
- <widget class="GtkImage" id="image41">
+ <widget class="GtkImage" id="image8">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="stock">gtk-convert</property>
+ <property name="stock">gtk-cancel</property>
<property name="icon-size">2</property>
</widget>
</child>
</widget>
<packing>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="fill">False</property>
<property name="pack_type">end</property>
- <property name="position">3</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</widget>
@@ -15215,6 +15244,13 @@ on current Chronojump version.</property>
<property name="position">1</property>
</packing>
</child>
+ </widget>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
</widget>
<packing>
<property name="expand">True</property>
diff --git a/src/gui/chronojump.cs b/src/gui/chronojump.cs
index b8c38e9..a909b5b 100644
--- a/src/gui/chronojump.cs
+++ b/src/gui/chronojump.cs
@@ -701,7 +701,8 @@ public partial class ChronoJumpWindow
//open buttons (this is shown better in windows than the default open icon)
pixbuf = new Pixbuf (null, Util.GetImagePath(false) + Constants.FileNameOpen);
image_session_open.Pixbuf = pixbuf;
- image_encoder_capture_open.Pixbuf = pixbuf;
+ //not changed because it's small. TODO: do bigger
+ //image_encoder_capture_open.Pixbuf = pixbuf;
//persons buttons
pixbuf = new Pixbuf (null, Util.GetImagePath(false) + Constants.FileNameNew1);
diff --git a/src/gui/encoder.cs b/src/gui/encoder.cs
index 6aae1e6..5910a49 100644
--- a/src/gui/encoder.cs
+++ b/src/gui/encoder.cs
@@ -56,7 +56,7 @@ public partial class ChronoJumpWindow
[Widget] Gtk.Box hbox_encoder_capture_options;
[Widget] Gtk.Box hbox_encoder_capture_wait;
- [Widget] Gtk.Box hbox_encoder_capture_doing;
+ [Widget] Gtk.Box vbox_encoder_capture_doing;
[Widget] Gtk.Button button_encoder_capture;
[Widget] Gtk.Image image_encoder_bell;
[Widget] Gtk.Button button_encoder_capture_cancel;
@@ -73,7 +73,7 @@ public partial class ChronoJumpWindow
[Widget] Gtk.Box vbox_encoder_signal_comment;
[Widget] Gtk.TextView textview_encoder_signal_comment;
[Widget] Gtk.Button button_encoder_signal_save_comment;
- [Widget] Gtk.Button button_encoder_export_all_curves;
+ [Widget] Gtk.MenuItem menuitem_export_encoder_signal;
[Widget] Gtk.Label label_encoder_curve_action;
[Widget] Gtk.Button button_encoder_delete_signal;
@@ -3823,7 +3823,7 @@ public partial class ChronoJumpWindow
// hbox_encoder_configuration, hbox_encoder_capture_options
//c1 button_encoder_recalculate
//c2 button_encoder_load_signal
- //c3 hbox_encoder_capture_curves_save_all_none, button_encoder_export_all_curves,
+ //c3 hbox_encoder_capture_curves_save_all_none, menuitem_export_encoder_signal
// button_encoder_delete_signal, vbox_encoder_signal_comment,
// and images: image_encoder_capture , image_encoder_analyze.Sensitive. Update: both NOT
managed here
//UNUSED c4 button_encoder_save_curve, entry_encoder_curve_comment
@@ -3889,7 +3889,7 @@ public partial class ChronoJumpWindow
button_encoder_load_signal.Sensitive = Util.IntToBool(table[2]);
hbox_encoder_capture_curves_save_all_none.Sensitive = Util.IntToBool(table[3]);
- button_encoder_export_all_curves.Sensitive = Util.IntToBool(table[3]);
+ menuitem_export_encoder_signal.Sensitive = Util.IntToBool(table[3]);
button_encoder_delete_signal.Sensitive = Util.IntToBool(table[3]);
vbox_encoder_signal_comment.Sensitive = Util.IntToBool(table[3]);
//image_encoder_capture.Sensitive = Util.IntToBool(table[3]);
@@ -4518,8 +4518,7 @@ public partial class ChronoJumpWindow
GLib.Idle.Add (new GLib.IdleHandler (pulseGTKEncoderCaptureIM));
}
- hbox_encoder_capture_wait.Visible = false;
- hbox_encoder_capture_doing.Visible = true;
+ encoderShowCaptureDoingButtons(true);
LogB.Information("encoderThreadStart middle");
encoderButtonsSensitive(encoderSensEnum.PROCESSINGCAPTURE);
@@ -4605,6 +4604,12 @@ public partial class ChronoJumpWindow
}
}
+ //while capturing, some buttons are hidden, others are shown
+ void encoderShowCaptureDoingButtons(bool show) {
+ hbox_encoder_capture_wait.Visible = ! show;
+ vbox_encoder_capture_doing.Visible = show;
+ }
+
void prepareEncoderGraphs(bool eraseFirst) {
LogB.Debug("prepareEncoderGraphs() start (should be on first thread: GTK)");
@@ -5286,8 +5291,7 @@ public partial class ChronoJumpWindow
button_encoder_analyze_table_save.Sensitive = false;
button_encoder_analyze_1RM_save.Sensitive = false;
- hbox_encoder_capture_wait.Visible = true;
- hbox_encoder_capture_doing.Visible = false;
+ encoderShowCaptureDoingButtons(false);
} else { //ANALYZE
if(encoderProcessCancel) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]