Subversion Repositories Projects

Rev

Rev 212 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 212 Rev 219
1
 
1
 
2
package org.ligi.android;
2
package org.ligi.android;
3
 
3
 
4
import android.app.ListActivity;
4
import android.app.ListActivity;
5
import android.content.Intent;
5
import android.content.Intent;
6
import android.content.pm.PackageManager;
6
import android.content.pm.PackageManager;
7
import android.content.pm.ResolveInfo;
7
import android.content.pm.ResolveInfo;
8
import android.os.Bundle;
8
import android.os.Bundle;
9
import android.view.View;
9
import android.view.View;
10
import android.widget.ListView;
10
import android.widget.ListView;
11
import android.widget.SimpleAdapter;
11
import android.widget.SimpleAdapter;
12
 
12
 
13
 
13
 
14
import android.util.Log;
14
import android.util.Log;
15
 
15
 
16
import android.app.Activity;
16
import android.app.Activity;
17
import android.os.Bundle;
17
import android.os.Bundle;
18
 
18
 
19
 
19
 
20
import android.view.View;
20
import android.view.View;
21
import android.widget.ListView;
21
import android.widget.ListView;
22
import android.widget.SimpleAdapter;
22
import android.widget.SimpleAdapter;
23
 
23
 
24
import java.text.Collator;
24
import java.text.Collator;
25
import java.util.ArrayList;
25
import java.util.ArrayList;
26
import java.util.Collections;
26
import java.util.Collections;
27
import java.util.Comparator;
27
import java.util.Comparator;
28
import java.util.HashMap;
28
import java.util.HashMap;
29
import java.util.List;
29
import java.util.List;
30
import java.util.Map;
30
import java.util.Map;
31
import android.net.Uri;
31
import android.net.Uri;
32
 
32
 
33
import java.net.URISyntaxException;
33
import java.net.URISyntaxException;
34
import android.widget.ArrayAdapter;
34
import android.widget.ArrayAdapter;
35
import android.content.DialogInterface;
35
import android.content.DialogInterface;
36
import android.content.Context.*;
36
import android.content.Context.*;
37
import android.widget.EditText;
37
import android.widget.EditText;
38
import android.text.method.NumberKeyListener;
38
import android.text.method.NumberKeyListener;
39
 
39
 
40
 
40
 
41
import com.google.android.maps.MapView;
41
import com.google.android.maps.MapView;
42
 
42
 
43
import          android.app.AlertDialog.*;
43
import          android.app.AlertDialog.*;
44
import          android.app.AlertDialog;
44
import          android.app.AlertDialog;
45
 
45
 
46
import android.content.SharedPreferences;
46
import android.content.SharedPreferences;
47
 
47
 
48
import org.ligi.ufo.*;
48
import org.ligi.ufo.*;
49
 
49
 
50
public class DUBwise extends ListActivity
50
public class DUBwise extends ListActivity
51
{
51
{
52
 
52
 
53
 
53
 
54
    DUBwiseView canvas;
54
    DUBwiseView canvas;
55
    boolean do_sound;
55
    boolean do_sound;
56
    boolean fullscreen;
56
    boolean fullscreen;
57
    MKCommunicator mk;
57
    MKCommunicator mk;
58
    String[] menu_items = new String[]{"Connection", "Old Interface" , "View On Maps", "Flight Settings","RCData","Motor Test", "About","Quit"};
58
    String[] menu_items = new String[]{"Settings","Connection", "Old Interface" , "View On Maps", "Flight Settings","RCData","Motor Test", "About","Quit"};
59
    int[] menu_actions= new int[]{ACTIONID_CONN , ACTIONID_OLDINTERFACE , ACTIONID_MAPS ,ACTIONID_FLIGHTSETTINGS,ACTIONID_RCDATA,ACTIONID_MOTORTEST, ACTIONID_ABOUT , ACTIONID_QUIT };
59
    int[] menu_actions= new int[]{ACTIONID_SETTINGS,ACTIONID_CONN , ACTIONID_OLDINTERFACE , ACTIONID_MAPS ,ACTIONID_FLIGHTSETTINGS,ACTIONID_RCDATA,ACTIONID_MOTORTEST, ACTIONID_ABOUT , ACTIONID_QUIT };
60
 
60
 
61
    public final static int ACTIONID_CONN=0;
61
    public final static int ACTIONID_CONN=0;
62
    public final static int ACTIONID_MAPS=1;
62
    public final static int ACTIONID_MAPS=1;
63
    public final static int ACTIONID_ABOUT=2;
63
    public final static int ACTIONID_ABOUT=2;
64
    public final static int ACTIONID_OLDINTERFACE=3;
64
    public final static int ACTIONID_OLDINTERFACE=3;
65
    public final static int ACTIONID_FLIGHTSETTINGS=4;
65
    public final static int ACTIONID_FLIGHTSETTINGS=4;
66
    public final static int ACTIONID_MOTORTEST=5;
66
    public final static int ACTIONID_MOTORTEST=5;
67
    public final static int ACTIONID_RCDATA=6;
67
    public final static int ACTIONID_RCDATA=6;
-
 
68
    public final static int ACTIONID_SETTINGS=7;
68
    public final static int ACTIONID_QUIT=100;
69
    public final static int ACTIONID_QUIT=100;
69
 
70
 
70
    SharedPreferences settings;
71
    SharedPreferences settings;
71
    //    public MapView map;
72
    //    public MapView map;
72
    /** Called when the activity is first created. */
73
    /** Called when the activity is first created. */
73
    @Override
74
    @Override
74
    public void onCreate(Bundle savedInstanceState)
75
    public void onCreate(Bundle savedInstanceState)
75
    {
76
    {
76
        super.onCreate(savedInstanceState);
77
        super.onCreate(savedInstanceState);
77
 
78
 
78
        settings = getSharedPreferences("DUBwise", 0);
79
        settings = getSharedPreferences("DUBwise", 0);
79
        //      menu_items[0]=settings.getString("conn_host","--");
80
        //      menu_items[0]=settings.getString("conn_host","--");
80
        //      mk=new MKCommunicator();        
81
        //      mk=new MKCommunicator();        
81
        this.setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, menu_items));
82
        this.setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, menu_items));
82
    }
83
    }
83
 
84
 
84
 
85
 
85
 
86
 
86
 
87
 
87
    public void log(String msg)
88
    public void log(String msg)
88
    {
89
    {
89
        Log.d("DUWISE",msg);
90
        Log.d("DUWISE",msg);
90
    }
91
    }
91
 
92
 
92
    public void quit()
93
    public void quit()
93
    {
94
    {
94
        this.setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, menu_items));
95
        this.setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, menu_items));
95
        //      setContentView(this);
96
        //      setContentView(this);
96
    }
97
    }
97
 
98
 
98
@Override
99
@Override
99
    protected void onListItemClick(ListView l, View v, int position, long id){
100
    protected void onListItemClick(ListView l, View v, int position, long id){
100
     super.onListItemClick(l, v, position, id);
101
     super.onListItemClick(l, v, position, id);
101
     
102
     
102
     // Get the item that was clicked
103
     // Get the item that was clicked
103
     Object o = this.getListAdapter().getItem(position);
104
     Object o = this.getListAdapter().getItem(position);
104
     //String keyword = o.toString();
105
     //String keyword = o.toString();
105
 
106
 
106
     // Create an VIEW intent
107
     // Create an VIEW intent
107
     Intent myIntent = null;
108
     Intent myIntent = null;
108
 
109
 
109
     try {
110
     try {
110
         
111
         
111
 
112
 
112
         switch(menu_actions[position])
113
         switch(menu_actions[position])
113
             {
114
             {
-
 
115
 
-
 
116
             case ACTIONID_SETTINGS:
-
 
117
                 //              setContentView(new ConnectionView(this));
-
 
118
 
-
 
119
                 startActivity(new Intent(this, SettingsActivity.class));
-
 
120
                 break;
114
 
121
 
115
             case ACTIONID_CONN:
122
             case ACTIONID_CONN:
116
                 //              setContentView(new ConnectionView(this));
123
                 //              setContentView(new ConnectionView(this));
117
 
124
 
118
                 startActivity(new Intent(this, ConnectionActivity.class));
125
                 startActivity(new Intent(this, ConnectionActivity.class));
119
                 break;
126
                 break;
120
             case ACTIONID_MOTORTEST:
127
             case ACTIONID_MOTORTEST:
121
                 //              setContentView(new ConnectionView(this));
128
                 //              setContentView(new ConnectionView(this));
122
                 startActivity(new Intent(this, MotorTestActivity.class));
129
                 startActivity(new Intent(this, MotorTestActivity.class));
123
 
130
 
124
                 break;
131
                 break;
125
 
132
 
126
             case ACTIONID_RCDATA:
133
             case ACTIONID_RCDATA:
127
                 //              setContentView(new ConnectionView(this));
134
                 //              setContentView(new ConnectionView(this));
128
                 startActivity(new Intent(this, RCDataActivity.class));
135
                 startActivity(new Intent(this, RCDataActivity.class));
129
 
136
 
130
                 break;
137
                 break;
131
             case ACTIONID_FLIGHTSETTINGS:
138
             case ACTIONID_FLIGHTSETTINGS:
132
                 //              setContentView(new ConnectionView(this));
139
                 //              setContentView(new ConnectionView(this));
133
                 startActivity(new Intent(this, FlightSettingsActivity.class));
140
                 startActivity(new Intent(this, FlightSettingsActivity.class));
134
 
141
 
135
 
142
 
136
 
143
 
137
                 /*              EditText edit_host=(EditText)findViewById( R.id.edit_host);
144
                 /*              EditText edit_host=(EditText)findViewById( R.id.edit_host);
138
                 edit_host.setKeyListener(new NumberKeyListener(){
145
                 edit_host.setKeyListener(new NumberKeyListener(){
139
   @Override
146
   @Override
140
   protected char[] getAcceptedChars() {
147
   protected char[] getAcceptedChars() {
141
      char[] numberChars = {'1','2','3'};
148
      char[] numberChars = {'1','2','3'};
142
      return numberChars;
149
      return numberChars;
143
   }
150
   }
144
   });*/
151
   });*/
145
       
152
       
146
 
153
 
147
                 //              edit_host.setText("foobar");
154
                 //              edit_host.setText("foobar");
148
                 break;
155
                 break;
149
             case ACTIONID_OLDINTERFACE:
156
             case ACTIONID_OLDINTERFACE:
150
                 mk.connect_to(settings.getString("conn_host","10.0.2.2")+":"+(settings.getString("conn_port","9876")),"unnamed");
157
                 mk.connect_to(settings.getString("conn_host","10.0.2.2")+":"+(settings.getString("conn_port","9876")),"unnamed");
151
                 canvas=new DUBwiseView(this);
158
                 canvas=new DUBwiseView(this);
152
                 setContentView(canvas);
159
                 setContentView(canvas);
153
                 break;
160
                 break;
154
             case ACTIONID_MAPS:
161
             case ACTIONID_MAPS:
155
                 //              setActivity(new DUBwiseMapActivity(this));
162
                 //              setActivity(new DUBwiseMapActivity(this));
156
                 startActivity(new Intent(this, DUBwiseMapActivity.class));
163
                 startActivity(new Intent(this, DUBwiseMapActivity.class));
157
 
164
 
158
 
165
 
159
                 // new AlertDialog.Builder(this).setTitle("foo").setMessage("bar").setPositiveButton("OK",null).create().show();
166
                 // new AlertDialog.Builder(this).setTitle("foo").setMessage("bar").setPositiveButton("OK",null).create().show();
160
 
167
 
161
                 //              showAlert("A funny title", "MessageBoxes rule extremely!", "Hit Me!", false);
168
                 //              showAlert("A funny title", "MessageBoxes rule extremely!", "Hit Me!", false);
162
                 /*
169
                 /*
163
               // The intent will open our anddev.org-board and search for the keyword clicked.
170
               // The intent will open our anddev.org-board and search for the keyword clicked.
164
               myIntent = new Intent("android.intent.action.DUBWISEMAP",
171
               myIntent = new Intent("android.intent.action.DUBWISEMAP",
165
                    Uri.parse("http://www.ligi.de/"));
172
                    Uri.parse("http://www.ligi.de/"));
166
                    startActivity(myIntent);*/
173
                    startActivity(myIntent);*/
167
                 break;
174
                 break;
168
 
175
 
169
             case ACTIONID_ABOUT:
176
             case ACTIONID_ABOUT:
170
                 startActivity( new Intent("android.intent.action.VIEW", Uri.parse("http://www.ligi.de/")));
177
                 startActivity( new Intent("android.intent.action.VIEW", Uri.parse("http://www.ligi.de/")));
171
                 break;
178
                 break;
172
 
179
 
173
             case ACTIONID_QUIT:
180
             case ACTIONID_QUIT:
174
                 finish();
181
                 finish();
175
                 break;
182
                 break;
176
             }
183
             }
177
          } catch (Exception e) {
184
          } catch (Exception e) {
178
               e.printStackTrace();
185
               e.printStackTrace();
179
          }
186
          }
180
          // Start the activity
187
          // Start the activity
181
 
188
 
182
    }
189
    }
183
 
190
 
184
 
191
 
185
 
192
 
186
}
193
}
187
 
194