[chronojump] Experimental Impress change slide using force sensor
- From: Xavier de Blas <xaviblas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [chronojump] Experimental Impress change slide using force sensor
- Date: Sat, 15 Apr 2017 12:57:28 +0000 (UTC)
commit cbe51a2da020bf82b6a6c3ba0c854a341ab22093
Author: Xavier de Blas <xaviblas gmail com>
Date: Sat Apr 15 08:36:17 2017 +0200
Experimental Impress change slide using force sensor
src/gui/forceSensor.cs | 45 +++++++++++++++++++++++++++++++++++++++++++
testing-stuff/slideNext.sh | 7 ++++++
testing-stuff/slidePrior.sh | 7 ++++++
3 files changed, 59 insertions(+), 0 deletions(-)
---
diff --git a/src/gui/forceSensor.cs b/src/gui/forceSensor.cs
index 1e7f71e..510896c 100644
--- a/src/gui/forceSensor.cs
+++ b/src/gui/forceSensor.cs
@@ -25,6 +25,7 @@ using System.Threading;
using Gtk;
using Glade;
using System.Text; //StringBuilder
+//using System.Collections.Generic; //List<T>
public partial class ChronoJumpWindow
{
@@ -118,6 +119,7 @@ public partial class ChronoJumpWindow
//non GTK on this method
private void forceSensorCaptureDo()
{
+ //lastChangedTime = 0;
SerialPort port = new SerialPort(forceSensorPortName, 115200);
port.Open();
Thread.Sleep(2500); //sleep to let arduino start reading
@@ -151,6 +153,8 @@ public partial class ChronoJumpWindow
writer.WriteLine(time.ToString() + ";" + force.ToString());
forceSensorLast = force;
+
+ //changeSlideIfNeeded(time, force);
}
port.WriteLine("Stop");
writer.Flush();
@@ -237,5 +241,46 @@ public partial class ChronoJumpWindow
else
new DialogMessage(Constants.MessageTypes.WARNING, Constants.DirectoryCannotOpen);
}
+
+
+ /*
+ double lastChangedTime; //changeSlideCode
+ private void changeSlideIfNeeded(double time, double force)
+ {
+ if(force > 100) {
+ //changeSlide if one second or more elapsed since last change
+ if(time - lastChangedTime >= 1)
+ {
+ changeSlide(true);
+ lastChangedTime = time;
+ }
+ }
+ if(force < -100) {
+ //changeSlide if one second or more elapsed since last change
+ if(time - lastChangedTime >= 1)
+ {
+ changeSlide(false);
+ lastChangedTime = time;
+ }
+ }
+ }
+ private bool changeSlide(bool next)
+ {
+ string executable = "";
+ if(next)
+ executable = "pathTo/testing-stuff/" + "slideNext.sh";
+ else
+ executable = "pathTo/testing-stuff/" + "slidePrior.sh";
+ List<string> parameters = new List<string>();
+
+ LogB.Information("\nCalling slide ----->");
+
+ ExecuteProcess.Result execute_result = ExecuteProcess.run (executable, parameters);
+
+ LogB.Information("\n<------ Done calling slide");
+ return execute_result.success;
+ }
+ */
+
}
diff --git a/testing-stuff/slideNext.sh b/testing-stuff/slideNext.sh
new file mode 100755
index 0000000..b4fba47
--- /dev/null
+++ b/testing-stuff/slideNext.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+export DISPLAY=:0.0
+WINDOW=`xdotool search --name "Impress"`
+#WINDOW=52428837
+xdotool windowactivate $WINDOW
+xdotool windowfocus $WINDOW
+xdotool key Next
diff --git a/testing-stuff/slidePrior.sh b/testing-stuff/slidePrior.sh
new file mode 100755
index 0000000..e1d590e
--- /dev/null
+++ b/testing-stuff/slidePrior.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+export DISPLAY=:0.0
+WINDOW=`xdotool search --name "Impress"`
+#WINDOW=52428837
+xdotool windowactivate $WINDOW
+xdotool windowfocus $WINDOW
+xdotool key Prior
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]