Subversion Repositories Projects

Rev

Rev 229 | Rev 245 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 229 Rev 233
1
/***************************************************************
1
/***************************************************************
2
 *
2
 *
3
 * Settings related Part of DUBwise
3
 * Settings related Part of DUBwise
4
 *  ( e.g. saving to / reading from RMS )
4
 *  ( e.g. saving to / reading from RMS )
5
 *                                                          
5
 *                                                          
6
 * Author:        Marcus -LiGi- Bueschleb
6
 * Author:        Marcus -LiGi- Bueschleb
7
 * Mailto:        LiGi @at@ LiGi DOTT de                    
7
 * Mailto:        LiGi @at@ LiGi DOTT de                    
8
 *
8
 *
9
***************************************************************/
9
***************************************************************/
10
 
10
 
11
import javax.microedition.rms.*;
11
import javax.microedition.rms.*;
12
 
12
 
13
import java.io.*;
13
import java.io.*;
14
 
14
 
15
public class DUBwiseSettings
15
public class DUBwiseSettings
16
    extends org.ligi.ufo.ParamsClass
16
    extends org.ligi.ufo.ParamsClass
17
    implements org.ligi.ufo.DUBwiseDefinitions,DUBwiseUIDefinitions
17
    implements org.ligi.ufo.DUBwiseDefinitions,DUBwiseUIDefinitions
18
{
18
{
19
    // name/handle for the recordStore to memorize some stuff
19
    // name/handle for the recordStore to memorize some stuff
20
    private final static String RECORD_STORE_NAME="DUBSETT_V4";
20
    private final static String RECORD_STORE_NAME="DUBSETT_V4";
21
 
21
 
22
    /* all settings hold here */
22
    /* all settings hold here */
23
    //holds id of actual skin
23
    //holds id of actual skin
24
    public byte act_skin=SKINID_DARK;
24
    public byte act_skin=SKINID_DARK;
25
 
25
 
26
 
26
 
27
 
27
 
28
    public int key_back;
28
    public int key_back;
29
    public int key_fullscreen;
29
    public int key_fullscreen;
30
    public int key_clear;
30
    public int key_clear;
31
 
31
 
32
    public int voice_delay;
32
    public int voice_delay;
33
    public int voice_volume;
33
    public int voice_volume;
34
 
34
 
35
 
35
 
36
 
36
 
37
    public int remote_cam_stick;
37
    public int remote_cam_stick;
38
 
38
 
39
    public String connection_name="";
39
    public String connection_name="";
40
    public String connection_url="";
40
    public String connection_url="";
41
 
41
 
42
    public boolean do_vibra=true;
42
    public boolean do_vibra=true;
43
    public boolean do_sound=true;
43
    public boolean do_sound=true;
44
    public boolean fullscreen=false;
44
    public boolean fullscreen=false;
45
    public boolean do_scrollbg=false;
45
    public boolean do_scrollbg=false;
46
    public boolean expert_mode=false;
46
    public boolean expert_mode=false;
47
 
47
 
48
    public boolean reload_settings=false;
48
    public boolean reload_settings=false;
49
 
49
 
50
 
50
 
51
    public boolean graph_legend;
51
    public boolean graph_legend;
52
    public boolean graph_scale;
52
    public boolean graph_scale;
53
 
53
 
54
//#if devicecontrol=="on"
54
//#if devicecontrol=="on"
55
    public boolean keep_lighton=false;
55
    public boolean keep_lighton=false;
56
//#endif
56
//#endif
57
 
57
 
58
    int[] act_proxy_ip=default_ip; // { ip , ip , ip , ip , port }
58
    int[] act_proxy_ip=default_ip; // { ip , ip , ip , ip , port }
59
    int[] act_conn_ip=default_ip; // { ip , ip , ip , ip , port }
59
    int[] act_conn_ip=default_ip; // { ip , ip , ip , ip , port }
60
 
60
 
61
 
61
 
62
    public byte gps_format=GPS_FORMAT_DECIMAL;
62
    public byte gps_format=GPS_FORMAT_DECIMAL;
63
    public byte speed_format=SPEED_FORMAT_KMH;
63
    public byte speed_format=SPEED_FORMAT_KMH;
64
 
64
 
65
 
65
 
66
    int[] settings_field;
66
    int[] settings_field;
67
 
67
 
68
    public int get_field_from_act(int pos) { return settings_field[pos];}
68
    public int get_field_from_act(int pos) { return settings_field[pos];}
69
    public void set_field_from_act(int pos,int val){
69
    public void set_field_from_act(int pos,int val){
70
 
70
 
71
        settings_field[pos]=val;
71
        settings_field[pos]=val;
72
        field2setting(pos,val);
72
        field2setting(pos,val);
73
    }
73
    }
74
 
74
 
75
    public void toggle_fullscreen()
75
    public void toggle_fullscreen()
76
    {
76
    {
77
        //      fullscreen=!fullscreen;
77
        //      fullscreen=!fullscreen;
78
         set_field_from_act(1,settings_field[1]^1);
78
         set_field_from_act(1,settings_field[1]^1);
79
         //     if (fullscreen)canvas.setFullScreenMode(true);
79
         //     if (fullscreen)canvas.setFullScreenMode(true);
80
    }
80
    }
81
 
81
 
82
    public final static int SETTINGS_POS_SKIN=0;
82
    public final static int SETTINGS_POS_SKIN=0;
83
    public final static int SETTINGS_POS_BITFIELD1=1;
83
    public final static int SETTINGS_POS_BITFIELD1=1;
84
    public final static int SETTINGS_POS_GPS_FORMAT=2;
84
    public final static int SETTINGS_POS_GPS_FORMAT=2;
85
    public final static int SETTINGS_POS_SPEED_FORMAT=3;
85
    public final static int SETTINGS_POS_SPEED_FORMAT=3;
86
    public final static int SETTINGS_POS_EXTERN_NICK=4;
86
    public final static int SETTINGS_POS_EXTERN_NICK=4;
87
    public final static int SETTINGS_POS_EXTERN_ROLL=5;
87
    public final static int SETTINGS_POS_EXTERN_ROLL=5;
88
    public final static int SETTINGS_POS_EXTERN_GIER=6;
88
    public final static int SETTINGS_POS_EXTERN_GIER=6;
89
    public final static int SETTINGS_POS_EXTERN_GAS=7;
89
    public final static int SETTINGS_POS_EXTERN_GAS=7;
90
    public final static int SETTINGS_POS_EXTERN_HIGHT=8;
90
    public final static int SETTINGS_POS_EXTERN_HIGHT=8;
91
    public final static int SETTINGS_POS_KEY_BACK=9;
91
    public final static int SETTINGS_POS_KEY_BACK=9;
92
    public final static int SETTINGS_POS_KEY_FULL=10;
92
    public final static int SETTINGS_POS_KEY_FULL=10;
93
    public final static int SETTINGS_POS_KEY_CLEAR=11;
93
    public final static int SETTINGS_POS_KEY_CLEAR=11;
94
    public final static int SETTINGS_POS_VOICEVOLUME=12;
94
    public final static int SETTINGS_POS_VOICEVOLUME=12;
95
    public final static int SETTINGS_POS_VOICEDELAY=13;
95
    public final static int SETTINGS_POS_VOICEDELAY=13;
96
    public final static int SETTINGS_POS_BITFIELD2=14;
96
    public final static int SETTINGS_POS_BITFIELD2=14;
97
 
97
 
98
 
98
 
99
    public void field2setting(int pos,int val)
99
    public void field2setting(int pos,int val)
100
    {
100
    {
101
       
101
       
102
        if (pos==SETTINGS_POS_SKIN)
102
        if (pos==SETTINGS_POS_SKIN)
103
            {
103
            {
104
                act_skin=(byte)val;
104
                act_skin=(byte)val;
105
                canvas.load_skin_images();
105
                canvas.load_skin_images();
106
            }
106
            }
107
 
107
 
108
        if ((pos==SETTINGS_POS_BITFIELD1)&&((val&1)==1)&&(!fullscreen))
108
        if ((pos==SETTINGS_POS_BITFIELD1)&&((val&1)==1)&&(!fullscreen))
109
            {
109
            {
110
                fullscreen=true;
110
                fullscreen=true;
111
                canvas.setFullScreenMode(fullscreen);
111
                canvas.setFullScreenMode(fullscreen);
112
            }
112
            }
113
 
113
 
114
        if ((pos==SETTINGS_POS_BITFIELD1)&&((val&1)==0)&&(fullscreen))
114
        if ((pos==SETTINGS_POS_BITFIELD1)&&((val&1)==0)&&(fullscreen))
115
            {
115
            {
116
                fullscreen=false;
116
                fullscreen=false;
117
                canvas.setFullScreenMode(fullscreen);
117
                canvas.setFullScreenMode(fullscreen);
118
            }
118
            }
119
 
119
 
120
        if ((pos==SETTINGS_POS_BITFIELD1)&&((val&2)==2)&&(!do_scrollbg))
120
        if ((pos==SETTINGS_POS_BITFIELD1)&&((val&2)==2)&&(!do_scrollbg))
121
            {
121
            {
122
                do_scrollbg=true;
122
                do_scrollbg=true;
123
                canvas.load_skin_images();
123
                canvas.load_skin_images();
124
            }
124
            }
125
 
125
 
126
        if ((pos==SETTINGS_POS_BITFIELD1)&&((val&2)==0)&&(do_scrollbg))
126
        if ((pos==SETTINGS_POS_BITFIELD1)&&((val&2)==0)&&(do_scrollbg))
127
            {
127
            {
128
                do_scrollbg=false;
128
                do_scrollbg=false;
129
                canvas.load_skin_images();
129
                canvas.load_skin_images();
130
            }
130
            }
131
 
131
 
132
                   
132
                   
133
        if (pos==SETTINGS_POS_BITFIELD1)
133
        if (pos==SETTINGS_POS_BITFIELD1)
134
            do_sound=((val&4)!=0);
134
            do_sound=((val&4)!=0);
135
 
135
 
136
        if (pos==SETTINGS_POS_BITFIELD1)
136
        if (pos==SETTINGS_POS_BITFIELD1)
137
            do_vibra=((val&8)!=0);
137
            do_vibra=((val&8)!=0);
138
 
138
 
139
        if (pos==SETTINGS_POS_BITFIELD1)
139
        if (pos==SETTINGS_POS_BITFIELD1)
140
            expert_mode=((val&16)!=0);
140
            expert_mode=((val&16)!=0);
141
 
141
 
142
        if (pos==SETTINGS_POS_BITFIELD1)
142
        if (pos==SETTINGS_POS_BITFIELD1)
143
            keep_lighton=((val&32)!=0);
143
            keep_lighton=((val&32)!=0);
144
 
144
 
145
        if (pos==SETTINGS_POS_BITFIELD1)
145
        if (pos==SETTINGS_POS_BITFIELD1)
146
            graph_legend=((val&64)!=0);
146
            graph_legend=((val&64)!=0);
147
 
147
 
148
        if (pos==SETTINGS_POS_BITFIELD1)
148
        if (pos==SETTINGS_POS_BITFIELD1)
149
            graph_scale=((val&128)!=0);
149
            graph_scale=((val&128)!=0);
150
 
150
 
151
 
151
 
152
 
152
 
153
        if (pos==SETTINGS_POS_GPS_FORMAT)
153
        if (pos==SETTINGS_POS_GPS_FORMAT)
154
            gps_format=(byte)val;
154
            gps_format=(byte)val;
155
 
155
 
156
        if (pos==SETTINGS_POS_SPEED_FORMAT)
156
        if (pos==SETTINGS_POS_SPEED_FORMAT)
157
            speed_format=(byte)val;
157
            speed_format=(byte)val;
158
 
158
 
159
        if (pos==SETTINGS_POS_EXTERN_NICK)
159
        if (pos==SETTINGS_POS_EXTERN_NICK)
160
            default_extern_control[EXTERN_CONTROL_NICK]=(byte)val;         
160
            default_extern_control[EXTERN_CONTROL_NICK]=(byte)val;         
161
 
161
 
162
        if (pos==SETTINGS_POS_EXTERN_ROLL)
162
        if (pos==SETTINGS_POS_EXTERN_ROLL)
163
            default_extern_control[EXTERN_CONTROL_ROLL]=(byte)val;         
163
            default_extern_control[EXTERN_CONTROL_ROLL]=(byte)val;         
164
 
164
 
165
        if (pos==SETTINGS_POS_EXTERN_GIER)
165
        if (pos==SETTINGS_POS_EXTERN_GIER)
166
            default_extern_control[EXTERN_CONTROL_GIER]=(byte)val;         
166
            default_extern_control[EXTERN_CONTROL_GIER]=(byte)val;         
167
 
167
 
168
        if (pos==SETTINGS_POS_EXTERN_GAS)
168
        if (pos==SETTINGS_POS_EXTERN_GAS)
169
            default_extern_control[EXTERN_CONTROL_GAS]=(byte)val;          
169
            default_extern_control[EXTERN_CONTROL_GAS]=(byte)val;          
170
 
170
 
171
        if (pos==SETTINGS_POS_EXTERN_HIGHT)
171
        if (pos==SETTINGS_POS_EXTERN_HIGHT)
172
            default_extern_control[EXTERN_CONTROL_HIGHT]=(byte)val;        
172
            default_extern_control[EXTERN_CONTROL_HIGHT]=(byte)val;        
173
 
173
 
174
 
174
 
175
        if (pos==SETTINGS_POS_KEY_BACK)
175
        if (pos==SETTINGS_POS_KEY_BACK)
176
            key_back=val;          
176
            key_back=val;          
177
 
177
 
178
        if (pos==SETTINGS_POS_KEY_FULL)
178
        if (pos==SETTINGS_POS_KEY_FULL)
179
            key_fullscreen=val;
179
            key_fullscreen=val;
180
 
180
 
181
        if (pos==SETTINGS_POS_KEY_CLEAR)
181
        if (pos==SETTINGS_POS_KEY_CLEAR)
182
            key_clear=val;
182
            key_clear=val;
183
 
183
 
184
        if (pos==12)
184
        if (pos==12)
185
            remote_cam_stick=val;
185
            remote_cam_stick=val;
186
 
186
 
187
 
187
 
188
        if(pos==SETTINGS_POS_VOICEVOLUME)
188
        if(pos==SETTINGS_POS_VOICEVOLUME)
189
            {
189
            {
190
            voice_volume=val;
190
            voice_volume=val;
191
//#if voice_mode!="no_voice"
191
//#if voice_mode!="no_voice"
192
            canvas.status_voice.volume=voice_volume;
192
            canvas.status_voice.volume=voice_volume;
193
               
193
               
194
//#endif
194
//#endif
195
            }
195
            }
196
        if(pos==SETTINGS_POS_VOICEDELAY)
196
        if(pos==SETTINGS_POS_VOICEDELAY)
197
            {
197
            {
198
            voice_delay=val;
198
            voice_delay=val;
199
//#if voice_mode!="no_voice"
199
//#if voice_mode!="no_voice"
200
            canvas.status_voice.delay=voice_delay;
200
            canvas.status_voice.delay=voice_delay;
201
               
201
               
202
//#endif
202
//#endif
203
            }
203
            }
204
 
204
 
205
        if (pos==SETTINGS_POS_BITFIELD2)
205
        if (pos==SETTINGS_POS_BITFIELD2)
206
            do_sound=((val&1)!=0);      // TODO: FIXME - extra var
206
            do_sound=((val&1)!=0);      // TODO: FIXME - extra var
207
 
207
 
208
        if (pos==SETTINGS_POS_BITFIELD2)
208
        if (pos==SETTINGS_POS_BITFIELD2)
209
            reload_settings=((val&2)!=0);    
209
            reload_settings=((val&2)!=0);    
210
    }
210
    }
211
 
211
 
212
 
212
 
213
    public byte[] default_extern_control;//=default_extern_keycontrol ;
213
    public byte[] default_extern_control;//=default_extern_keycontrol ;
214
 
214
 
215
 
215
 
216
    /* end of all settings hold here */
216
    /* end of all settings hold here */
217
 
217
 
218
    public String[] _tab_names={"User Interface","GPS","Keycontrol","Special Keys","Graph","Voice","Other" };
218
    public String[] _tab_names={"User Interface","GPS","Keycontrol","Special Keys","Graph","Voice","Other" };
219
 
219
 
220
    public String[][] _field_names={ { "Skin","Fullscreen","Scroll Background"
220
    public String[][] _field_names={ { "Skin","Fullscreen","Scroll Background"
221
//#if devicecontrol=="on"
221
//#if devicecontrol=="on"
222
                                       ,"Permanent Light"
222
                                       ,"Permanent Light"
223
//#endif
223
//#endif
224
 } , {"GPS Format","Speed Format"},{"Nick","Roll","Gier","Gas Increase","Height Increase"},{"Back to Main-Menu","Fullscreen","Clear"},{"Legend","Scale-Grid"},{"Volts Output","Delay in Seconds","Volume"},{"Sound","Vibra","Remote Cam Stick","Always Reload Params","Expert-Mode"} };
224
 } , {"GPS Format","Speed Format"},{"Nick","Roll","Gier","Gas Increase","Height Increase"},{"Back to Main-Menu","Fullscreen","Clear"},{"Legend","Scale-Grid"},{"Volts Output","Delay in Seconds","Volume"},{"Sound","Vibra","Remote Cam Stick","Always Reload Params","Expert-Mode"} };
225
 
225
 
226
    public String[][] _choice_strings={ { "Dark","Light" } , {"km/h","mp/h","cm/s"},{"decimal","min sec"}} ;
226
    public String[][] _choice_strings={ { "Dark","Light" } , {"km/h","mp/h","cm/s"},{"decimal","min sec"}} ;
227
    public int[][] _field_positions={ {SETTINGS_POS_SKIN,8,9
227
    public int[][] _field_positions={ {SETTINGS_POS_SKIN,8,9
228
//#if devicecontrol=="on"
228
//#if devicecontrol=="on"
229
                                       ,13
229
                                       ,13
230
//#endif
230
//#endif
231
} , {2,3} , {4,5,6,7,8} , {9,10,11},{SETTINGS_POS_BITFIELD1*8 +6,SETTINGS_POS_BITFIELD1*8 +7} ,{SETTINGS_POS_BITFIELD2+0,SETTINGS_POS_VOICEDELAY,SETTINGS_POS_VOICEVOLUME },  {10,11,12,SETTINGS_POS_BITFIELD2+1,12}};
231
} , {2,3} , {4,5,6,7,8} , {9,10,11},{SETTINGS_POS_BITFIELD1*8 +6,SETTINGS_POS_BITFIELD1*8 +7} ,{SETTINGS_POS_BITFIELD2*8+0,SETTINGS_POS_VOICEDELAY,SETTINGS_POS_VOICEVOLUME },  {10,11,12,SETTINGS_POS_BITFIELD2*8+1,12}};
232
    public int[][] _field_types={ {PARAMTYPE_CHOICE+0,PARAMTYPE_BITSWITCH,PARAMTYPE_BITSWITCH
232
    public int[][] _field_types={ {PARAMTYPE_CHOICE+0,PARAMTYPE_BITSWITCH,PARAMTYPE_BITSWITCH
233
//#if devicecontrol=="on"
233
//#if devicecontrol=="on"
234
                                   ,PARAMTYPE_BITSWITCH
234
                                   ,PARAMTYPE_BITSWITCH
235
//#endif
235
//#endif
236
} , {PARAMTYPE_CHOICE+1,PARAMTYPE_CHOICE+2} , {PARAMTYPE_BYTE,PARAMTYPE_BYTE,PARAMTYPE_BYTE,PARAMTYPE_BYTE,PARAMTYPE_BYTE}, {PARAMTYPE_KEY,PARAMTYPE_KEY,PARAMTYPE_KEY} , {PARAMTYPE_BITSWITCH,PARAMTYPE_BITSWITCH}, {PARAMTYPE_BITSWITCH,PARAMTYPE_BYTE,PARAMTYPE_BYTE}, {PARAMTYPE_BITSWITCH,PARAMTYPE_BITSWITCH,PARAMTYPE_STICK,PARAMTYPE_BITSWITCH,PARAMTYPE_BITSWITCH}};
236
} , {PARAMTYPE_CHOICE+1,PARAMTYPE_CHOICE+2} , {PARAMTYPE_BYTE,PARAMTYPE_BYTE,PARAMTYPE_BYTE,PARAMTYPE_BYTE,PARAMTYPE_BYTE}, {PARAMTYPE_KEY,PARAMTYPE_KEY,PARAMTYPE_KEY} , {PARAMTYPE_BITSWITCH,PARAMTYPE_BITSWITCH}, {PARAMTYPE_BITSWITCH,PARAMTYPE_BYTE,PARAMTYPE_BYTE}, {PARAMTYPE_BITSWITCH,PARAMTYPE_BITSWITCH,PARAMTYPE_STICK,PARAMTYPE_BITSWITCH,PARAMTYPE_BITSWITCH}};
237
    DUBwiseCanvas canvas;
237
    DUBwiseCanvas canvas;
238
 
238
 
239
 
239
 
240
 
240
 
241
    public final static int SETTINGS_FIELD_LENGTH=42;
241
    public final static int SETTINGS_FIELD_LENGTH=42;
242
    public DUBwiseSettings(DUBwiseCanvas _canvas)
242
    public DUBwiseSettings(DUBwiseCanvas _canvas)
243
    {
243
    {
244
        canvas= _canvas;
244
        canvas= _canvas;
245
        settings_field=new int[SETTINGS_FIELD_LENGTH];
245
        settings_field=new int[SETTINGS_FIELD_LENGTH];
246
        default_extern_control=new byte[11];
246
        default_extern_control=new byte[11];
247
        // set defaults
247
        // set defaults
248
        settings_field[4]=42; // nick
248
        settings_field[4]=42; // nick
249
        settings_field[5]=42; // roll
249
        settings_field[5]=42; // roll
250
        settings_field[6]=42; // gier
250
        settings_field[6]=42; // gier
251
        settings_field[7]=1; // fas
251
        settings_field[7]=1; // fas
252
        settings_field[8]=1; // hight
252
        settings_field[8]=1; // hight
253
 
253
 
254
 
254
 
255
        settings_field[9]=-4242; //  no key
255
        settings_field[9]=-4242; //  no key
256
        settings_field[10]=-4242; // no key
256
        settings_field[10]=-4242; // no key
257
        settings_field[11]=-4242; // no key
257
        settings_field[11]=-4242; // no key
258
 
258
 
259
    }
259
    }
260
       
260
       
261
    public void load()
261
    public void load()
262
    {
262
    {
263
 
263
 
264
        tab_names=_tab_names;
264
        tab_names=_tab_names;
265
        field_names=_field_names;
265
        field_names=_field_names;
266
        field_positions=_field_positions;
266
        field_positions=_field_positions;
267
        field_types=_field_types;
267
        field_types=_field_types;
268
        choice_strings=_choice_strings;
268
        choice_strings=_choice_strings;
269
        try
269
        try
270
            {
270
            {
271
                RecordStore recStore = RecordStore.openRecordStore(RECORD_STORE_NAME , true );
271
                RecordStore recStore = RecordStore.openRecordStore(RECORD_STORE_NAME , true );
272
 
272
 
273
                if (recStore.getNumRecords()==1)
273
                if (recStore.getNumRecords()==1)
274
                    {
274
                    {
275
                        ByteArrayInputStream bin = new ByteArrayInputStream(recStore.getRecord(1));
275
                        ByteArrayInputStream bin = new ByteArrayInputStream(recStore.getRecord(1));
276
                        DataInputStream      din = new   DataInputStream( bin );
276
                        DataInputStream      din = new   DataInputStream( bin );
277
 
277
 
278
 
278
 
279
                        connection_url=din.readUTF();
279
                        connection_url=din.readUTF();
280
                        connection_name=din.readUTF();
280
                        connection_name=din.readUTF();
281
                        // reserve utf's
281
                        // reserve utf's
282
                        din.readUTF();
282
                        din.readUTF();
283
                        din.readUTF();
283
                        din.readUTF();
284
                        din.readUTF();
284
                        din.readUTF();
285
 
285
 
286
 
286
 
287
 
287
 
288
                        for ( int i=0;i<SETTINGS_FIELD_LENGTH;i++)
288
                        for ( int i=0;i<SETTINGS_FIELD_LENGTH;i++)
289
                            settings_field[i]=din.readInt();
289
                            settings_field[i]=din.readInt();
290
 
290
 
291
                        for ( int i=0;i<5;i++)
291
                        for ( int i=0;i<5;i++)
292
 
292
 
293
                            {
293
                            {
294
                                act_proxy_ip[i]=din.readInt();
294
                                act_proxy_ip[i]=din.readInt();
295
                                act_conn_ip[i]=din.readInt();
295
                                act_conn_ip[i]=din.readInt();
296
                            }
296
                            }
297
 
297
 
298
                    }
298
                    }
299
                recStore.closeRecordStore();
299
                recStore.closeRecordStore();
300
            }
300
            }
301
        catch (Exception e)
301
        catch (Exception e)
302
            {       }
302
            {       }
303
 
303
 
304
 
304
 
305
        for ( int i=0;i<SETTINGS_FIELD_LENGTH;i++)
305
        for ( int i=0;i<SETTINGS_FIELD_LENGTH;i++)
306
            field2setting(i,settings_field[i]);
306
            field2setting(i,settings_field[i]);
307
 
307
 
308
    }
308
    }
309
 
309
 
310
 
310
 
311
    public void save()
311
    public void save()
312
    {
312
    {
313
        try
313
        try
314
            {
314
            {
315
                RecordStore.deleteRecordStore(RECORD_STORE_NAME);
315
                RecordStore.deleteRecordStore(RECORD_STORE_NAME);
316
            }
316
            }
317
        catch (Exception e)
317
        catch (Exception e)
318
            { }
318
            { }
319
 
319
 
320
        try {
320
        try {
321
                RecordStore recStore = RecordStore.openRecordStore(RECORD_STORE_NAME, true );
321
                RecordStore recStore = RecordStore.openRecordStore(RECORD_STORE_NAME, true );
322
 
322
 
323
                ByteArrayOutputStream bout = new ByteArrayOutputStream();
323
                ByteArrayOutputStream bout = new ByteArrayOutputStream();
324
                DataOutputStream      dout = new   DataOutputStream( bout );
324
                DataOutputStream      dout = new   DataOutputStream( bout );
325
 
325
 
326
                dout.writeUTF(connection_url);
326
                dout.writeUTF(connection_url);
327
                dout.writeUTF(connection_name);
327
                dout.writeUTF(connection_name);
328
 
328
 
329
                dout.writeUTF("");
329
                dout.writeUTF("");
330
                dout.writeUTF("");
330
                dout.writeUTF("");
331
                dout.writeUTF("");
331
                dout.writeUTF("");
332
 
332
 
333
 
333
 
334
                for ( int i=0;i<SETTINGS_FIELD_LENGTH;i++)
334
                for ( int i=0;i<SETTINGS_FIELD_LENGTH;i++)
335
                    dout.writeInt(settings_field[i]);
335
                    dout.writeInt(settings_field[i]);
336
                for ( int i=0;i<5;i++)
336
                for ( int i=0;i<5;i++)
337
                    {
337
                    {
338
                        dout.writeInt(act_proxy_ip[i]);
338
                        dout.writeInt(act_proxy_ip[i]);
339
                        dout.writeInt(act_conn_ip[i]);
339
                        dout.writeInt(act_conn_ip[i]);
340
                    }
340
                    }
341
                recStore.addRecord(bout.toByteArray(),0,bout.size());
341
                recStore.addRecord(bout.toByteArray(),0,bout.size());
342
 
342
 
343
                recStore.closeRecordStore();
343
                recStore.closeRecordStore();
344
 
344
 
345
 
345
 
346
            }
346
            }
347
        catch (Exception e)
347
        catch (Exception e)
348
            {       }
348
            {       }
349
 
349
 
350
    }
350
    }
351
 
351
 
352
}
352
}
353
 
353