r4038 - trunk/src/target/OM-2007.2/applications/openmoko-terminal2/src

mickey at sita.openmoko.org mickey at sita.openmoko.org
Sun Feb 10 15:09:20 CET 2008


Author: mickey
Date: 2008-02-10 15:09:19 +0100 (Sun, 10 Feb 2008)
New Revision: 4038

Modified:
   trunk/src/target/OM-2007.2/applications/openmoko-terminal2/src/mainwindow.vala
Log:
openmoko-terminal2: improve -e command line parsing (patch by H?\195?\165ko)


Modified: trunk/src/target/OM-2007.2/applications/openmoko-terminal2/src/mainwindow.vala
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-terminal2/src/mainwindow.vala	2008-02-10 11:42:46 UTC (rev 4037)
+++ trunk/src/target/OM-2007.2/applications/openmoko-terminal2/src/mainwindow.vala	2008-02-10 14:09:19 UTC (rev 4038)
@@ -36,7 +36,7 @@
     private ToolButton btn_zoom_out;
     private ToolButton btn_paste;
 
-    private string initial_command;
+    private static string initial_command;
 
     public MainWindow()
     {
@@ -205,17 +205,25 @@
         Gtk.main();
     }
 
+    const OptionEntry[] options = {
+        { "command", 'e', 0, OptionArg.STRING, out initial_command, "Execute COMMAND inside the terminal.", "COMMAND"},
+        { null }
+    };
+
     static int main (string[] args) {
-        if ( args.length == 2 || args.length > 3 )
+        try {
+            Gtk.init_with_args(ref args.length, ref args, " - a lightweight terminal for the OpenMoko environment", options, null);
+        } catch (Error e)
         {
-            stdout.printf( "Usage: %s [ -e <initial command> ]\n", args[0] );
-            return 0;
+            stderr.printf("Error: %s\n", e.message);
+            return 1; 
         }
 
-        Gtk.init(ref args);
         var window = new MainWindow();
-        if ( args.length == 3 && args[1] == "-e" )
-            window.setup_command( args[2] );
+        if ( initial_command != null )
+        {
+            window.setup_command( initial_command );
+        }
         window.run();
 
         return 0;





More information about the commitlog mailing list