summaryrefslogtreecommitdiff
path: root/quellcode/demo1/Controller/MainWindow.cs
diff options
context:
space:
mode:
authorManuel Traut <manut@mecka.net>2014-03-31 16:53:55 +0200
committerManuel Traut <manut@mecka.net>2014-03-31 16:53:55 +0200
commit1adba473e6917b227e1b0a1118148101dca202e7 (patch)
tree13180ede9564ba50c528b274ee5719b4e030ef06 /quellcode/demo1/Controller/MainWindow.cs
parenteacbf5bb4d57af21c731f41251015d3b991ad490 (diff)
add quellcodeHEADmaster
Signed-off-by: Manuel Traut <manut@mecka.net>
Diffstat (limited to 'quellcode/demo1/Controller/MainWindow.cs')
-rwxr-xr-xquellcode/demo1/Controller/MainWindow.cs56
1 files changed, 56 insertions, 0 deletions
diff --git a/quellcode/demo1/Controller/MainWindow.cs b/quellcode/demo1/Controller/MainWindow.cs
new file mode 100755
index 0000000..3aae87b
--- /dev/null
+++ b/quellcode/demo1/Controller/MainWindow.cs
@@ -0,0 +1,56 @@
+using System;
+using Gtk;
+public class MainWindow: Gtk.Window {
+ // NameService (falls nichts in Feld eingetragen wird)
+ private string currentHost = "192.168.0.253";
+ // selected Mode
+ private string selected = "uninitialized";
+ // CORBAHandle <module>.<Interface>.CorbaHandler
+ private manut.Executor.CorbaHandler corba;
+ private int counter = 0; //0 =IP NS, sonst IP CORBA Server
+ public MainWindow (): base ("") {
+ Stetic.Gui.Build (this, typeof(MainWindow));
+ }
+ // set info text
+ public void display(string txt) {
+ labelCurrent.Text = txt;
+ }
+ // window closed
+ protected void OnDeleteEvent (object sender, DeleteEventArgs a) {
+ Application.Quit ();
+ a.RetVal = true;
+ }
+ // submit new mode to executor
+ protected virtual void OnButtonSubmitClicked(object sender, System.EventArgs e){
+ if(selected =="Move") corba.setMode(1);
+ else if (selected == "Blink") corba.setMode(2);
+ else if (selected == "Flash") corba.setMode(3);
+ else Console.WriteLine("unallowed selection");
+ Console.WriteLine("Sent: "+selected);
+ }
+
+ protected virtual void OnButtonConnectClicked(object sender, System.EventArgs e){
+ if(counter == 0){ // Register Display Object at NS
+ Console.Write("connecting to: "+currentHost);
+ corba = new manut.Executor.CorbaHandler(currentHost, 2809, this);
+ // host display object
+ corba.serve();
+ counter++;
+ } else { // Connect to ExecCmd Interface
+ Console.WriteLine("connecting to: "+currentHost);
+ corba.connect();
+ }
+ }
+ // new mode selected
+ protected virtual void OnComboboxModeChanged(object sender, System.EventArgs e) {
+ selected = ((ComboBox)sender).ActiveText;
+ Console.WriteLine("Selected: "+ selected);
+ labelCurrent.Text = selected;
+ }
+ // new host entered
+ protected virtual void OnEntryHostChanged(object sender, System.EventArgs e) {
+ currentHost = ((Entry)sender).Text;
+ }
+ [Glade.Widget]
+ private Label labelCurrent;
+}