[chronojump] Preferences webcam stop camera controls
- From: Xavier de Blas <xaviblas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [chronojump] Preferences webcam stop camera controls
- Date: Tue, 18 Jun 2019 16:29:55 +0000 (UTC)
commit 39d8ecd39f2974d643cb895fd3ca145560febfcf
Author: Xavier de Blas <xaviblas gmail com>
Date: Tue Jun 18 18:29:28 2019 +0200
Preferences webcam stop camera controls
glade/preferences_win.glade | 132 ++++++++++++++++++++++++++++++++++++++------
src/gui/preferences.cs | 32 ++++++++---
2 files changed, 138 insertions(+), 26 deletions(-)
---
diff --git a/glade/preferences_win.glade b/glade/preferences_win.glade
index 9a36c971..cb0de743 100644
--- a/glade/preferences_win.glade
+++ b/glade/preferences_win.glade
@@ -3976,39 +3976,137 @@ Other</property>
</packing>
</child>
<child>
- <widget class="GtkHBox" id="hbox21">
+ <widget class="GtkFrame" id="frame10">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="spacing">20</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
<child>
- <widget class="GtkButton" id="button_video_check_ffmpeg_ffplay_running">
+ <widget class="GtkAlignment" id="alignment19">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">True</property>
- <signal name="clicked"
handler="on_button_video_check_ffmpeg_ffplay_running_clicked" swapped="no"/>
+ <property name="can_focus">False</property>
+ <property name="left_padding">12</property>
<child>
- <widget class="GtkLabel" id="label11">
+ <widget class="GtkHBox" id="hbox21">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="label" translatable="yes">Check if camera is
running</property>
+ <property name="border_width">8</property>
+ <property name="spacing">20</property>
+ <child>
+ <widget class="GtkButton"
id="button_video_check_ffmpeg_ffplay_running">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked"
handler="on_button_video_check_ffmpeg_ffplay_running_clicked" swapped="no"/>
+ <child>
+ <widget class="GtkLabel" id="label11">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Check if camera is
running</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkTable" id="table_video_advanced_actions">
+ <property name="can_focus">False</property>
+ <property name="n_rows">2</property>
+ <property name="n_columns">3</property>
+ <property name="column_spacing">12</property>
+ <property name="row_spacing">8</property>
+ <child>
+ <widget class="GtkLabel" id="label90">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Capture</property>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label91">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Play</property>
+ </widget>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label_video_check_ffmpeg_running">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label_video_check_ffplay_running">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkButton" id="button_video_ffmpeg_kill">
+ <property name="label" translatable="yes">Force stop</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked"
handler="on_button_video_ffmpeg_kill_clicked" swapped="no"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkButton" id="button_video_ffplay_kill">
+ <property name="label" translatable="yes">Force stop</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked"
handler="on_button_video_ffplay_kill_clicked" swapped="no"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
</widget>
</child>
</widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
</child>
<child>
- <widget class="GtkLabel" id="label_video_check_ffmpeg_ffplay_running">
+ <widget class="GtkLabel" id="label61">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="label"
translatable="yes"><b>Advanced</b></property>
+ <property name="use_markup">True</property>
</widget>
<packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
+ <property name="type">label_item</property>
</packing>
</child>
</widget>
diff --git a/src/gui/preferences.cs b/src/gui/preferences.cs
index 7e7a1ce6..c67b395c 100644
--- a/src/gui/preferences.cs
+++ b/src/gui/preferences.cs
@@ -167,7 +167,11 @@ public class PreferencesWindow
//[Widget] Gtk.VBox vbox_camera_stop_after;
[Widget] Gtk.HBox hbox_camera_stop_after_seconds;
[Widget] Gtk.SpinButton spin_camera_stop_after;
- [Widget] Gtk.Label label_video_check_ffmpeg_ffplay_running;
+ [Widget] Gtk.Table table_video_advanced_actions;
+ [Widget] Gtk.Label label_video_check_ffmpeg_running;
+ [Widget] Gtk.Label label_video_check_ffplay_running;
+ [Widget] Gtk.Button button_video_ffmpeg_kill;
+ [Widget] Gtk.Button button_video_ffplay_kill;
//language tab
[Widget] Gtk.Box hbox_combo_language;
@@ -863,8 +867,10 @@ public class PreferencesWindow
private void on_button_video_check_ffmpeg_ffplay_running_clicked(object o, EventArgs args)
{
- string label_result = "Camera is not running.";
- label_video_check_ffmpeg_ffplay_running.Text = label_result;
+ label_video_check_ffmpeg_running.Text = "Not running";
+ label_video_check_ffplay_running.Text = "Not running";
+ button_video_ffmpeg_kill.Visible = false;
+ button_video_ffplay_kill.Visible = false;
UtilAll.OperatingSystems os = UtilAll.GetOSEnum();
bool runningFfmpeg = false;
@@ -873,19 +879,27 @@ public class PreferencesWindow
if(ExecuteProcess.IsRunning3 (-1, WebcamFfmpeg.GetExecutableCapture(os)))
{
runningFfmpeg = true;
- label_result = "Capture (ffmpeg) is running";
+ label_video_check_ffmpeg_running.Text = "Running";
+ button_video_ffmpeg_kill.Visible = true;
}
if(ExecuteProcess.IsRunning3 (-1, WebcamFfmpeg.GetExecutablePlay(os)))
{
runningFfplay = true;
- if(runningFfmpeg)
- label_result = "Capture (ffmpeg) & Play (ffplay) are running";
- else
- label_result = "Play (ffplay) is running";
+ label_video_check_ffplay_running.Text = "Running";
+ button_video_ffplay_kill.Visible = true;
}
- label_video_check_ffmpeg_ffplay_running.Text = label_result;
+ table_video_advanced_actions.Visible = true;
+ }
+
+ private void on_button_video_ffmpeg_kill_clicked (object o, EventArgs args)
+ {
+ new DialogMessage(Constants.MessageTypes.INFO, "TODO");
+ }
+ private void on_button_video_ffplay_kill_clicked (object o, EventArgs args)
+ {
+ new DialogMessage(Constants.MessageTypes.INFO, "TODO");
}
// ---- end of multimedia stuff
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]