[chronojump] encoder capture with triggers will show trigger icon and text



commit 95b2e1f37f6ec4fb4a2292b63c8ea743fe076310
Author: Xavier de Blas <xaviblas gmail com>
Date:   Thu Jan 11 00:05:18 2018 +0100

    encoder capture with triggers will show trigger icon and text

 glade/app1.glade           |   76 +++++++++++++++++++++++++++++++++++++++++++-
 images/md/trigger_2x.png   |  Bin 0 -> 1563 bytes
 images/md/trigger_2x.xcf   |  Bin 0 -> 8509 bytes
 src/Makefile.am            |    1 +
 src/gui/chronojumpIcons.cs |    6 +++-
 src/gui/encoder.cs         |   31 ++++++++++-------
 6 files changed, 99 insertions(+), 15 deletions(-)
---
diff --git a/glade/app1.glade b/glade/app1.glade
index 13ddd7f..fa16fe7 100644
--- a/glade/app1.glade
+++ b/glade/app1.glade
@@ -1568,6 +1568,9 @@
                                                             <placeholder/>
                                                             </child>
                                                             <child>
+                                                            <placeholder/>
+                                                            </child>
+                                                            <child>
                                                             <widget class="GtkLabel" 
id="label_start_selector_jumps">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
@@ -16766,7 +16769,13 @@ Concentric</property>
                                                           </packing>
                                                         </child>
                                                         <child>
-                                                          <widget class="GtkVBox" 
id="vbox_encoder_signal_comment">
+                                                          <widget class="GtkNotebook" 
id="notebook_encoder_signal_comment_and_triggers">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">True</property>
+                                                            <property name="show_tabs">False</property>
+                                                            <property name="show_border">False</property>
+                                                            <child>
+                                                            <widget class="GtkVBox" 
id="vbox_encoder_signal_comment">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="spacing">4</property>
@@ -16824,6 +16833,68 @@ Concentric</property>
                                                             <property name="position">1</property>
                                                             </packing>
                                                             </child>
+                                                            </widget>
+                                                            </child>
+                                                            <child>
+                                                            <widget class="GtkLabel" id="label283">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property name="label" translatable="yes">page 
1</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="tab_fill">False</property>
+                                                            <property name="type">tab</property>
+                                                            </packing>
+                                                            </child>
+                                                            <child>
+                                                            <widget class="GtkVBox" id="vbox119">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property name="spacing">2</property>
+                                                            <child>
+                                                            <widget class="GtkImage" 
id="image_encoder_triggers">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property 
name="stock">gtk-missing-image</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="expand">True</property>
+                                                            <property name="fill">False</property>
+                                                            <property name="position">0</property>
+                                                            </packing>
+                                                            </child>
+                                                            <child>
+                                                            <widget class="GtkLabel" id="label285">
+                                                            <property name="width_request">125</property>
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property name="label" 
translatable="yes">Capturing with triggers</property>
+                                                            <property name="wrap">True</property>
+                                                            <property name="width_chars">12</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="expand">True</property>
+                                                            <property name="fill">False</property>
+                                                            <property name="position">1</property>
+                                                            </packing>
+                                                            </child>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="position">1</property>
+                                                            </packing>
+                                                            </child>
+                                                            <child>
+                                                            <widget class="GtkLabel" id="label284">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property name="label" translatable="yes">page 
2</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="position">1</property>
+                                                            <property name="tab_fill">False</property>
+                                                            <property name="type">tab</property>
+                                                            </packing>
+                                                            </child>
                                                           </widget>
                                                           <packing>
                                                             <property name="expand">False</property>
@@ -22458,6 +22529,9 @@ then click this button.</property>
                                                             <child>
                                                             <placeholder/>
                                                             </child>
+                                                            <child>
+                                                            <placeholder/>
+                                                            </child>
                                                             </widget>
                                                             <packing>
                                                             <property name="expand">False</property>
diff --git a/images/md/trigger_2x.png b/images/md/trigger_2x.png
new file mode 100644
index 0000000..e601ca8
Binary files /dev/null and b/images/md/trigger_2x.png differ
diff --git a/images/md/trigger_2x.xcf b/images/md/trigger_2x.xcf
new file mode 100644
index 0000000..a691843
Binary files /dev/null and b/images/md/trigger_2x.xcf differ
diff --git a/src/Makefile.am b/src/Makefile.am
index f9ab798..fc490c4 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -432,6 +432,7 @@ RESOURCES = \
        ../images/md/calibrate.png,calibrate.png \
        ../images/md/ic_folder_check_blue_24dp_1x.png,folder_check.png \
        ../images/md/ic_zoom_blue_24dp_1x.png,zoom.png \
+       ../images/md/trigger_2x.png,image_encoder_triggers.png \
        ../images/chronojump_icon.png,chronojump_icon.png \
        ../images/chronojump_icon_graph.png,chronojump_icon_graph.png \
        ../images/stock_right.png,stock_right.png \
diff --git a/src/gui/chronojumpIcons.cs b/src/gui/chronojumpIcons.cs
index 9424e4f..6d57dfe 100644
--- a/src/gui/chronojumpIcons.cs
+++ b/src/gui/chronojumpIcons.cs
@@ -103,6 +103,7 @@ public partial class ChronoJumpWindow
        [Widget] Gtk.Image image_inertial_extended;
        [Widget] Gtk.Image image_encoder_calibrate;
        [Widget] Gtk.Image image_encoder_recalibrate;
+       [Widget] Gtk.Image image_encoder_triggers;
 
        //force sensor
        [Widget] Gtk.Image image_selector_start_force_sensor;
@@ -532,7 +533,10 @@ public partial class ChronoJumpWindow
                image_encoder_analyze_time_to_pp.Pixbuf = pixbuf;
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + 
Constants.FileNameEncoderInertialInstructions);
                image_encoder_inertial_instructions.Pixbuf = pixbuf;
-               
+
+               pixbuf = new Pixbuf (null, Util.GetImagePath(false) + "image_encoder_triggers.png");
+               image_encoder_triggers.Pixbuf = pixbuf;
+
                //auto mode
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + Constants.FileNameAutoPersonSkipIcon);
                image_auto_person_skip.Pixbuf = pixbuf;
diff --git a/src/gui/encoder.cs b/src/gui/encoder.cs
index 7e355df..da28ec2 100644
--- a/src/gui/encoder.cs
+++ b/src/gui/encoder.cs
@@ -100,6 +100,7 @@ public partial class ChronoJumpWindow
        [Widget] Gtk.Image image_encoder_capture;
        [Widget] Gtk.ProgressBar encoder_pulsebar_capture;
        [Widget] Gtk.VBox vbox_encoder_signal_comment;
+       [Widget] Gtk.Notebook notebook_encoder_signal_comment_and_triggers;
        [Widget] Gtk.TextView textview_encoder_signal_comment;
        [Widget] Gtk.Button button_encoder_signal_save_comment;
        [Widget] Gtk.MenuItem menuitem_export_encoder_signal;
@@ -2500,21 +2501,13 @@ public partial class ChronoJumpWindow
 
        //this is called by non gtk thread. Don't do gtk stuff here
        //I suppose reading gtk is ok, changing will be the problem
-       private void encoderDoCaptureCsharp () 
+       private void encoderDoCaptureCsharp ()
        {
-               bool cutByTriggers = false;
-               //triggers only work on gravitatory, concentric
-               if(preferences.encoderCaptureCutByTriggers &&
-                               currentEncoderGI == Constants.EncoderGI.GRAVITATORY && eCapture.Eccon == "c")
-                       cutByTriggers = true;
-
-               encoderRProcCapture.CutByTriggers = cutByTriggers;
-
                bool capturedOk = eCapture.Capture(
                                UtilEncoder.GetEncoderDataTempFileName(),
                                encoderRProcCapture,
                                configChronojump.Compujump,
-                               cutByTriggers
+                               encoderRProcCapture.CutByTriggers
                                );
 
                //wait to ensure capture thread has ended
@@ -2548,10 +2541,8 @@ public partial class ChronoJumpWindow
        //this is called by non gtk thread. Don't do gtk stuff here
        //don't change properties like setting a Visibility status: Gtk.Widget.set_Visible
        //I suppose reading gtk is ok, changing will be the problem
-       private void encoderDoCaptureCsharpIM () 
+       private void encoderDoCaptureCsharpIM ()
        {
-               encoderRProcCapture.CutByTriggers = false; //do not cutByTriggers on inertial, yet.
-
                bool capturedOk = eCapture.Capture(
                                UtilEncoder.GetEncoderDataTempFileName(),
                                encoderRProcCapture,
@@ -5253,6 +5244,16 @@ public partial class ChronoJumpWindow
                                                eCaptureInertialBG.SimulatedReset();
                                }
 
+                               bool cutByTriggers = false;
+                               //triggers only work on gravitatory, concentric
+                               if(preferences.encoderCaptureCutByTriggers &&
+                                               currentEncoderGI == Constants.EncoderGI.GRAVITATORY && 
eCapture.Eccon == "c")
+                               {
+                                       cutByTriggers = true;
+                                       notebook_encoder_signal_comment_and_triggers.Page = 1;
+                               }
+                               encoderRProcCapture.CutByTriggers = cutByTriggers;
+
                                encoderThread = new Thread(new ThreadStart(encoderDoCaptureCsharp));
                                GLib.Idle.Add (new GLib.IdleHandler (pulseGTKEncoderCaptureAndCurves));
                        }
@@ -5272,6 +5273,8 @@ public partial class ChronoJumpWindow
                                                false
                                                );
 
+                               encoderRProcCapture.CutByTriggers = false; //do not cutByTriggers on 
inertial, yet.
+
                                encoderThread = new Thread(new ThreadStart(encoderDoCaptureCsharpIM));
                                GLib.Idle.Add (new GLib.IdleHandler (pulseGTKEncoderCaptureIM));
                        }
@@ -5699,6 +5702,8 @@ public partial class ChronoJumpWindow
 
                        finishPulsebar(encoderActions.CURVES_AC);
 
+                       notebook_encoder_signal_comment_and_triggers.Page = 0;
+
                        if(encoderProcessCancel) {
                                //stop video            
                                encoderStopVideoRecord();


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]