[chronojump] Easier chronopic connection
- From: Xavier de Blas <xaviblas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [chronojump] Easier chronopic connection
- Date: Mon, 16 Jun 2014 10:54:41 +0000 (UTC)
commit 68e9c9aade9850d52abb2e2e94134fe49942837c
Author: Xavier de Blas <xaviblas gmail com>
Date: Mon Jun 16 12:54:23 2014 +0200
Easier chronopic connection
glade/chronojump.glade | 169 +++++++++++++++++++++++++++++++++++++++-
src/Makefile.am | 1 -
src/gui/chronopic.cs | 90 ++++++++++++++-------
src/gui/chronopicConnection.cs | 138 --------------------------------
4 files changed, 226 insertions(+), 172 deletions(-)
---
diff --git a/glade/chronojump.glade b/glade/chronojump.glade
index 4c8343f..968bb05 100644
--- a/glade/chronojump.glade
+++ b/glade/chronojump.glade
@@ -5988,6 +5988,9 @@ Second Chronopic to platforms.</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
<packing>
<property name="expand">True</property>
@@ -6604,6 +6607,9 @@ Second Chronopic to platforms.</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
</child>
<child>
@@ -7354,6 +7360,9 @@ Second Chronopic to platforms.</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
<packing>
<property name="position">2</property>
@@ -7863,6 +7872,9 @@ Second Chronopic to platforms.</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
<packing>
<property name="position">4</property>
@@ -15328,6 +15340,114 @@ Evaluator can use real name or nickname.</property>
<property name="position">2</property>
</packing>
</child>
+ <child>
+ <widget class="GtkFrame" id="frame_connection">
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="label_yalign">0.69999998807907104</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment5">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">8</property>
+ <property name="bottom_padding">8</property>
+ <property name="left_padding">12</property>
+ <property name="right_padding">12</property>
+ <child>
+ <widget class="GtkVBox" id="vbox109">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">10</property>
+ <child>
+ <widget class="GtkHBox" id="hbox238">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">8</property>
+ <child>
+ <widget class="GtkLabel" id="label_title">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Please touch the platform
or click Chronopic <i>TEST</i> button</property>
+ <property name="use_markup">True</property>
+ <property name="wrap">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</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="GtkTable" id="table1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="n_columns">2</property>
+ <property name="column_spacing">8</property>
+ <property name="row_spacing">8</property>
+ <child>
+ <widget class="GtkProgressBar" id="progressbar">
+ <property name="width_request">150</property>
+ <property name="height_request">22</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="pulse_step">0.10000000149</property>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkButton" id="button_cancel">
+ <property name="label">gtk-cancel</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_stock">True</property>
+ <signal name="clicked" handler="on_button_cancel_clicked"
swapped="no"/>
+ <accelerator key="Escape" signal="clicked"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label4">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label"
translatable="yes"><b>Connection</b></property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="type">label_item</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
</widget>
</child>
</widget>
@@ -15551,8 +15671,8 @@ Just select and then close this window.</property>
</child>
</widget>
<packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
<property name="position">2</property>
</packing>
</child>
@@ -17119,6 +17239,9 @@ by you</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
</child>
</widget>
@@ -17533,6 +17656,9 @@ by you</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
</child>
</widget>
@@ -18375,6 +18501,12 @@ by you</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
<packing>
<property name="expand">True</property>
@@ -25904,6 +26036,24 @@ options</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
</child>
</widget>
@@ -27707,6 +27857,9 @@ To differentiate between male and female, use the values 1/0, or m/f, or M/F on
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
</child>
</widget>
@@ -28180,6 +28333,9 @@ To differentiate between male and female, use the values 1/0, or m/f, or M/F on
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
</child>
</widget>
@@ -30113,6 +30269,9 @@ show elevation as:</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
<packing>
<property name="left_attach">2</property>
@@ -30191,6 +30350,9 @@ show elevation as:</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
</child>
</widget>
@@ -30284,6 +30446,9 @@ show elevation as:</property>
<child>
<placeholder/>
</child>
+ <child>
+ <placeholder/>
+ </child>
</widget>
</child>
</widget>
diff --git a/src/Makefile.am b/src/Makefile.am
index 4b81f9a..5b943ea 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -36,7 +36,6 @@ SOURCES = \
gui/dialogImageTest.cs\
gui/language.cs\
gui/repetitiveConditions.cs\
- gui/chronopicConnection.cs\
gui/convertWeight.cs\
gui/genericWindow.cs\
gui/splash.cs\
diff --git a/src/gui/chronopic.cs b/src/gui/chronopic.cs
index 14a8744..d07adc6 100644
--- a/src/gui/chronopic.cs
+++ b/src/gui/chronopic.cs
@@ -46,7 +46,7 @@ public class ChronopicWindow
{
[Widget] Gtk.Window chronopic_window;
static ChronopicWindow ChronopicWindowBox;
- ChronopicConnection chronopicConnectionWin;
+ //ChronopicConnection chronopicConnectionWin;
[Widget] Gtk.Notebook notebook_main;
//[Widget] Gtk.Image image_contact_modular;
@@ -87,6 +87,12 @@ public class ChronopicWindow
[Widget] Gtk.Table table_multi_chronopic;
//[Widget] Gtk.Button button_reload;
+ //frame_connections
+ [Widget] Gtk.Frame frame_connection;
+ [Widget] Gtk.Label label_title;
+ [Widget] Gtk.ProgressBar progressbar;
+ [Widget] Gtk.Button button_cancel;
+
[Widget] Gtk.Image chronopic_image;
[Widget] Gtk.TextView textview_ports_found_explanation;
@@ -117,6 +123,9 @@ public class ChronopicWindow
bool volumeOn;
int currentCp; //1 to 4
bool cancelledByUser;
+
+ //in order to cancel before close window
+ static bool connecting;
//cp1
Chronopic cp;
@@ -490,32 +499,60 @@ Log.WriteLine("bbb");
{
if(needUpdateChronopicWin || ! thread.IsAlive) {
fakeConnectionButton.Click();
+ pulseEnd();
Log.Write("dying");
return false;
}
//need to do this, if not it crashes because chronopicConnectionWin gets died by thread ending
- chronopicConnectionWin = ChronopicConnection.Show();
- chronopicConnectionWin.Pulse();
+ //chronopicConnectionWin = ChronopicConnection.Show();
+ //chronopicConnectionWin.Pulse();
+ progressbar.Pulse();
Thread.Sleep (50);
Log.Write(thread.ThreadState.ToString());
return true;
}
+
+ private void pulseEnd() {
+ button_cancel.Sensitive = false;
+ connecting = false;
+ }
private void updateChronopicWin(bool state, string message) {
Log.WriteLine("updateChronopicWin-1");
//need to do this, if not it crashes because chronopicConnectionWin gets died by thread ending
- chronopicConnectionWin = ChronopicConnection.Show();
+ //chronopicConnectionWin = ChronopicConnection.Show();
Log.WriteLine("updateChronopicWin-2");
- if(state)
- chronopicConnectionWin.Connected(message);
+ if(state) {
+ //chronopicConnectionWin.Connected(message);
+ sensitivityConnected(message);
+ progressbar.Fraction = 1.0;
+ }
else
- chronopicConnectionWin.Disconnected(message);
+ //chronopicConnectionWin.Disconnected(message);
+ sensitivityDisconnected(message);
needUpdateChronopicWin = false;
}
+
+ private void sensitivityConnected(string message) {
+ Log.WriteLine("CONNECTED!!");
+ label_title.Text = message;
+ label_title.UseMarkup = true;
+ button_cancel.Sensitive = false;
+ }
+
+ private void sensitivityDisconnected(string message) {
+ Log.WriteLine("DISCONNECTED!!");
+ label_title.Text = message;
+ button_cancel.Sensitive = false;
+ }
+
+ private void on_button_help_ports_clicked (object o, EventArgs args) {
+ new HelpPorts();
+ }
//chronopic init should not touch gtk, for the threads
//private Chronopic chronopicInit (out Chronopic myCp, out SerialPort mySp, Chronopic.Plataforma
myPS, string myPort, out string returnString, out bool success)
@@ -589,7 +626,6 @@ Log.WriteLine("bbb");
connected = false;
}
}
-// return myCp;
}
private void on_checkbutton_multi_show_clicked(object o, EventArgs args) {
@@ -645,16 +681,16 @@ Log.WriteLine("bbb");
void prepareChronopicConnection() {
- chronopicConnectionWin = ChronopicConnection.Show();
- chronopicConnectionWin.LabelFeedBackReset();
-
-// chronopicConnectionWin.Button_cancel.Clicked += new EventHandler(on_chronopic_cancelled);
+ frame_connection.Visible = true;
+
+ button_cancel.Sensitive = true;
+ cancelledByUser = false;
fakeConnectionButton = new Gtk.Button();
fakeConnectionButton.Clicked += new EventHandler(on_chronopic_detection_ended);
+ connecting = true;
needUpdateChronopicWin = false;
- cancelledByUser = false;
thread = new Thread(new ThreadStart(waitChronopicStart));
GLib.Idle.Add (new GLib.IdleHandler (PulseGTK));
thread.Start();
@@ -663,8 +699,6 @@ Log.WriteLine("bbb");
static Chronopic cpDoing;
protected void waitChronopicStart ()
{
- chronopicConnectionWin.Button_cancel.Clicked += new EventHandler(on_chronopic_cancelled);
-
if(currentCp == 1) {
// simulated = false;
// SqlitePreferences.Update("simulated", simulated.ToString(), false);
@@ -807,10 +841,12 @@ Log.WriteLine("bbb");
}
- private void on_chronopic_cancelled (object o, EventArgs args) {
+ private void on_button_cancel_clicked (object o, EventArgs args) {
Log.WriteLine("cancelled-----");
//fakeButtonCancelled.Click(); //just to show message of crashing on windows exiting
+ button_cancel.Sensitive = false;
+
cpDoing.AbortFlush = true;
cancelledByUser = true;
@@ -833,23 +869,22 @@ Log.WriteLine("bbb");
void on_button_close_clicked (object o, EventArgs args)
{
+ if(connecting)
+ button_cancel.Click();
+
Log.WriteLine("CLOSE");
fakeWindowDone.Click();
ChronopicWindowBox.chronopic_window.Hide();
}
- /*
- private void on_button_reload_clicked (object o, EventArgs args) {
- Log.WriteLine("RELOAD");
- fakeWindowReload.Click();
- //ChronopicWindowBox.chronopic_window.Hide();
- }
- */
-
void on_delete_event (object o, DeleteEventArgs args)
{
//nice: this makes windows no destroyed, then it works like button_close
fakeWindowDone.Click();
+
+ if(connecting)
+ button_cancel.Click();
+
args.RetVal = true;
ChronopicWindowBox.chronopic_window.Hide();
}
@@ -901,13 +936,6 @@ Log.WriteLine("bbb");
public Button FakeWindowDone {
get { return fakeWindowDone; }
}
-
- /*
- public Button FakeWindowReload
- {
- get { return fakeWindowReload; }
- }
- */
//public Gtk.Button FakeButtonCancelled {
// get { return fakeButtonCancelled; }
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]