Project

General

Profile

Download (16.8 KB) Statistics
| Branch: | Revision:

examples / src / main / java / org / distorted / examples / TableOfContents.java @ 4dd7ca16

1 bc0a685b Leszek Koltunski
///////////////////////////////////////////////////////////////////////////////////////////////////
2
// Copyright 2016 Leszek Koltunski                                                               //
3
//                                                                                               //
4
// This file is part of Distorted.                                                               //
5
//                                                                                               //
6
// Distorted is free software: you can redistribute it and/or modify                             //
7
// it under the terms of the GNU General Public License as published by                          //
8
// the Free Software Foundation, either version 2 of the License, or                             //
9
// (at your option) any later version.                                                           //
10
//                                                                                               //
11
// Distorted is distributed in the hope that it will be useful,                                  //
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of                                //
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                                 //
14
// GNU General Public License for more details.                                                  //
15
//                                                                                               //
16
// You should have received a copy of the GNU General Public License                             //
17
// along with Distorted.  If not, see <http://www.gnu.org/licenses/>.                            //
18
///////////////////////////////////////////////////////////////////////////////////////////////////
19
20 5068fa06 Leszek Koltunski
package org.distorted.examples;
21 427ab7bf Leszek Koltunski
22
import java.util.ArrayList;
23
import java.util.HashMap;
24
import java.util.List;
25
import java.util.Map;
26
27
import android.app.Activity;
28
import android.app.ListActivity;
29
import android.content.Intent;
30
import android.os.Bundle;
31
import android.util.SparseArray;
32
import android.view.View;
33
import android.widget.AdapterView;
34
import android.widget.AdapterView.OnItemClickListener;
35
import android.widget.SimpleAdapter;
36
37 7ba38011 Leszek Koltunski
import org.distorted.examples.aroundtheworld.AroundTheWorldActivity;
38 5068fa06 Leszek Koltunski
import org.distorted.examples.monalisa.MonaLisaActivity;
39
import org.distorted.examples.sink.SinkActivity;
40 10d53839 Leszek Koltunski
import org.distorted.examples.projection.ProjectionActivity;
41 5068fa06 Leszek Koltunski
import org.distorted.examples.deform.DeformActivity;
42
import org.distorted.examples.listener.ListenerActivity;
43 f988589e Leszek Koltunski
import org.distorted.examples.dynamic.DynamicActivity;
44 5068fa06 Leszek Koltunski
import org.distorted.examples.girl.GirlActivity;
45 f26ab2fd Leszek Koltunski
import org.distorted.examples.catanddog.CatAndDogActivity;
46 5068fa06 Leszek Koltunski
import org.distorted.examples.movingeffects.MovingEffectsActivity;
47
import org.distorted.examples.olimpic.OlimpicActivity;
48
import org.distorted.examples.differenteffects.DifferentEffectsActivity;
49
import org.distorted.examples.differentbitmaps.DifferentBitmapsActivity;
50 758303a3 Leszek Koltunski
import org.distorted.examples.effectqueue.EffectQueueActivity;
51 5068fa06 Leszek Koltunski
import org.distorted.examples.check.CheckActivity;
52
import org.distorted.examples.bean.BeanActivity;
53 3c70973c Leszek Koltunski
import org.distorted.examples.bitmaptree.BitmapTreeActivity;
54 5068fa06 Leszek Koltunski
import org.distorted.examples.starwars.StarWarsActivity;
55
import org.distorted.examples.cubes.CubesActivity;
56
import org.distorted.examples.quaternion.QuaternionActivity;
57 db5d943e Leszek Koltunski
import org.distorted.examples.matrix3d.Matrix3DActivity;
58 76a81b6a Leszek Koltunski
import org.distorted.examples.effects3d.Effects3DActivity;
59 862fcd79 Leszek Koltunski
import org.distorted.examples.plainmonalisa.PlainMonaLisaActivity;
60 a2cb31e9 Leszek Koltunski
import org.distorted.examples.save.SaveActivity;
61 175f355d Leszek Koltunski
import org.distorted.examples.flag.FlagActivity;
62 14122c52 Leszek Koltunski
import org.distorted.examples.wind.WindActivity;
63 03a2fd30 Leszek Koltunski
import org.distorted.examples.mirror.MirrorActivity;
64 43bda3db Leszek Koltunski
import org.distorted.examples.blur.BlurActivity;
65 58059374 Leszek Koltunski
import org.distorted.examples.multiblur.MultiblurActivity;
66 32d08f39 Leszek Koltunski
import org.distorted.examples.stencil.StencilActivity;
67 cb9d104d Leszek Koltunski
import org.distorted.examples.glow.GlowActivity;
68 11298b49 Leszek Koltunski
import org.distorted.examples.movingglow.MovingGlowActivity;
69 427ab7bf Leszek Koltunski
70
///////////////////////////////////////////////////////////////////////////////////////////////////
71
72
public class TableOfContents extends ListActivity 
73
  {
74
  private static final String ITEM_IMAGE = "item_image";
75
  private static final String ITEM_TITLE = "item_title";
76
  private static final String ITEM_SUBTITLE = "item_subtitle"; 
77
78
///////////////////////////////////////////////////////////////////////////////////////////////////
79
   
80
  @Override
81
  public void onCreate(Bundle savedInstanceState) 
82
   {
83
   super.onCreate(savedInstanceState);
84
   setContentView(R.layout.table_of_contents);
85
      
86 a2cb31e9 Leszek Koltunski
   final List<Map<String, Object>> data = new ArrayList<>();
87
   final SparseArray<Class<? extends Activity>> activityMapping = new SparseArray<>();
88 427ab7bf Leszek Koltunski
      
89
   int i = 0;
90 6ce08079 Leszek Koltunski
91 427ab7bf Leszek Koltunski
   {
92 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
93 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_monalisa);
94
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_monalisa));
95
      item.put(ITEM_SUBTITLE, getText(R.string.example_monalisa_subtitle));
96
      data.add(item);
97
      activityMapping.put(i++, MonaLisaActivity.class);        
98
   }
99
      
100
   {
101 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
102 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_sink);
103
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_sink));
104
      item.put(ITEM_SUBTITLE, getText(R.string.example_sink_subtitle));
105
      data.add(item);
106
      activityMapping.put(i++, SinkActivity.class);
107
   }
108
   
109
   {
110 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
111 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_bean);
112
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_bean));
113
      item.put(ITEM_SUBTITLE, getText(R.string.example_bean_subtitle));
114
      data.add(item);
115
      activityMapping.put(i++, BeanActivity.class);
116
   }
117
   
118
   {
119 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
120 10d53839 Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_projection);
121
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_projection));
122
      item.put(ITEM_SUBTITLE, getText(R.string.example_projection_subtitle));
123 427ab7bf Leszek Koltunski
      data.add(item);
124 10d53839 Leszek Koltunski
      activityMapping.put(i++, ProjectionActivity.class);
125 427ab7bf Leszek Koltunski
   }
126
         
127
   {
128 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
129 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_deform);
130
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_deform));
131
      item.put(ITEM_SUBTITLE, getText(R.string.example_deform_subtitle));
132
      data.add(item);
133
      activityMapping.put(i++, DeformActivity.class);
134
   }
135
  
136
   {
137 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
138 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_listener);
139
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_listener));
140
      item.put(ITEM_SUBTITLE, getText(R.string.example_listener_subtitle));
141
      data.add(item);
142
      activityMapping.put(i++, ListenerActivity.class);
143
   }
144
   
145
   {
146 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
147 f988589e Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_dynamic);
148
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_dynamic));
149
      item.put(ITEM_SUBTITLE, getText(R.string.example_dynamic_subtitle));
150 427ab7bf Leszek Koltunski
      data.add(item);
151 f988589e Leszek Koltunski
      activityMapping.put(i++, DynamicActivity.class);
152 427ab7bf Leszek Koltunski
   }
153
   
154
   {
155 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
156 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_girl);
157
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_girl));
158
      item.put(ITEM_SUBTITLE, getText(R.string.example_girl_subtitle));
159
      data.add(item);
160
      activityMapping.put(i++, GirlActivity.class);
161
   }
162
   
163
   {
164 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
165 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_macroblock);
166
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_macroblock));
167
      item.put(ITEM_SUBTITLE, getText(R.string.example_macroblock_subtitle));
168
      data.add(item);
169 f26ab2fd Leszek Koltunski
      activityMapping.put(i++, CatAndDogActivity.class);
170 427ab7bf Leszek Koltunski
   }
171
   
172
   {
173 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
174 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_movingeffects);
175
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_movingeffects));
176
      item.put(ITEM_SUBTITLE, getText(R.string.example_movingeffects_subtitle));
177
      data.add(item);
178
      activityMapping.put(i++, MovingEffectsActivity.class);
179
   }
180
   
181
   {
182 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
183 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_differenteffects);
184
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_differenteffects));
185
      item.put(ITEM_SUBTITLE, getText(R.string.example_differenteffects_subtitle));
186
      data.add(item);
187
      activityMapping.put(i++, DifferentEffectsActivity.class);
188
   }
189
   
190
   {
191 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
192 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_differentbitmaps);
193
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_differentbitmaps));
194
      item.put(ITEM_SUBTITLE, getText(R.string.example_differentbitmaps_subtitle));
195
      data.add(item);
196
      activityMapping.put(i++, DifferentBitmapsActivity.class);
197
   }
198
   
199
   {
200 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
201 758303a3 Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_effectqueue);
202
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_effectqueue));
203
      item.put(ITEM_SUBTITLE, getText(R.string.example_effectqueue_subtitle));
204 427ab7bf Leszek Koltunski
      data.add(item);
205 758303a3 Leszek Koltunski
      activityMapping.put(i++, EffectQueueActivity.class);
206 427ab7bf Leszek Koltunski
   }
207
   
208
   {
209 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
210 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_check);
211
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_check));
212
      item.put(ITEM_SUBTITLE, getText(R.string.example_check_subtitle));
213
      data.add(item);
214
      activityMapping.put(i++, CheckActivity.class);
215
   }
216
   
217
   {
218 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
219 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_fbo);
220 3c70973c Leszek Koltunski
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_bitmaptree));
221
      item.put(ITEM_SUBTITLE, getText(R.string.example_bitmaptree_subtitle));
222 427ab7bf Leszek Koltunski
      data.add(item);
223 3c70973c Leszek Koltunski
      activityMapping.put(i++, BitmapTreeActivity.class);
224 427ab7bf Leszek Koltunski
   }
225
      
226
   {
227 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
228 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_starwars);
229
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_starwars));
230
      item.put(ITEM_SUBTITLE, getText(R.string.example_starwars_subtitle));
231
      data.add(item);
232
      activityMapping.put(i++, StarWarsActivity.class);
233
   }
234
         
235
   {
236 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
237 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_olimpic);
238
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_olimpic));
239
      item.put(ITEM_SUBTITLE, getText(R.string.example_olimpic_subtitle));
240
      data.add(item);
241
      activityMapping.put(i++, OlimpicActivity.class);
242
   }
243
   
244
   {
245 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
246 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_quaternion);
247
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_quaternion));
248
      item.put(ITEM_SUBTITLE, getText(R.string.example_quaternion_subtitle));
249
      data.add(item);
250
      activityMapping.put(i++, QuaternionActivity.class);
251
   }
252
   
253
   {
254 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
255 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_cubes);
256
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_cubes));
257
      item.put(ITEM_SUBTITLE, getText(R.string.example_cubes_subtitle));
258
      data.add(item);
259
      activityMapping.put(i++, CubesActivity.class);
260
   }
261
   
262
   {
263 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
264 db5d943e Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_matrix3d);
265
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_matrix3d));
266
      item.put(ITEM_SUBTITLE, getText(R.string.example_matrix3d_subtitle));
267 427ab7bf Leszek Koltunski
      data.add(item);
268 db5d943e Leszek Koltunski
      activityMapping.put(i++, Matrix3DActivity.class);
269 427ab7bf Leszek Koltunski
   }
270 862fcd79 Leszek Koltunski
271 08f92d82 Leszek Koltunski
   {
272
      final Map<String, Object> item = new HashMap<>();
273 76a81b6a Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_effects3d);
274
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_effects3d));
275
      item.put(ITEM_SUBTITLE, getText(R.string.example_effects3d_subtitle));
276 08f92d82 Leszek Koltunski
      data.add(item);
277 76a81b6a Leszek Koltunski
      activityMapping.put(i++, Effects3DActivity.class);
278 df77c72c Leszek Koltunski
   }
279
280 862fcd79 Leszek Koltunski
   {
281 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
282 862fcd79 Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_monalisa);
283
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_plainmonalisa));
284
      item.put(ITEM_SUBTITLE, getText(R.string.example_plainmonalisa_subtitle));
285
      data.add(item);
286
      activityMapping.put(i++, PlainMonaLisaActivity.class);
287
   }
288 a2cb31e9 Leszek Koltunski
289
   {
290
      final Map<String, Object> item = new HashMap<>();
291
      item.put(ITEM_IMAGE, R.drawable.icon_example_girl);
292
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_save));
293
      item.put(ITEM_SUBTITLE, getText(R.string.example_save_subtitle));
294
      data.add(item);
295
      activityMapping.put(i++, SaveActivity.class);
296
   }
297
298 175f355d Leszek Koltunski
   {
299
      final Map<String, Object> item = new HashMap<>();
300
      item.put(ITEM_IMAGE, R.drawable.icon_example_flag);
301
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_flag));
302
      item.put(ITEM_SUBTITLE, getText(R.string.example_flag_subtitle));
303
      data.add(item);
304
      activityMapping.put(i++, FlagActivity.class);
305
   }
306
307 14122c52 Leszek Koltunski
   {
308
      final Map<String, Object> item = new HashMap<>();
309
      item.put(ITEM_IMAGE, R.drawable.icon_example_wind);
310
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_wind));
311
      item.put(ITEM_SUBTITLE, getText(R.string.example_wind_subtitle));
312
      data.add(item);
313
      activityMapping.put(i++, WindActivity.class);
314
   }
315
316 7ba38011 Leszek Koltunski
   {
317
      final Map<String, Object> item = new HashMap<>();
318
      item.put(ITEM_IMAGE, R.drawable.icon_example_aroundtheworld);
319
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_aroundtheworld));
320
      item.put(ITEM_SUBTITLE, getText(R.string.example_aroundtheworld_subtitle));
321
      data.add(item);
322
      activityMapping.put(i++, AroundTheWorldActivity.class);
323
   }
324
325 03a2fd30 Leszek Koltunski
   {
326
      final Map<String, Object> item = new HashMap<>();
327
      item.put(ITEM_IMAGE, R.drawable.icon_example_mirror);
328
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_mirror));
329
      item.put(ITEM_SUBTITLE, getText(R.string.example_mirror_subtitle));
330
      data.add(item);
331
      activityMapping.put(i++, MirrorActivity.class);
332
   }
333
334 43bda3db Leszek Koltunski
   {
335
      final Map<String, Object> item = new HashMap<>();
336
      item.put(ITEM_IMAGE, R.drawable.icon_example_blur);
337
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_blur));
338
      item.put(ITEM_SUBTITLE, getText(R.string.example_blur_subtitle));
339
      data.add(item);
340
      activityMapping.put(i++, BlurActivity.class);
341
   }
342
343 58059374 Leszek Koltunski
   {
344
      final Map<String, Object> item = new HashMap<>();
345
      item.put(ITEM_IMAGE, R.drawable.icon_example_multiblur);
346
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_multiblur));
347
      item.put(ITEM_SUBTITLE, getText(R.string.example_multiblur_subtitle));
348
      data.add(item);
349
      activityMapping.put(i++, MultiblurActivity.class);
350
   }
351
352 0ab55f0c Leszek Koltunski
   {
353
      final Map<String, Object> item = new HashMap<>();
354 32d08f39 Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_stencil);
355
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_stencil));
356
      item.put(ITEM_SUBTITLE, getText(R.string.example_stencil_subtitle));
357 0ab55f0c Leszek Koltunski
      data.add(item);
358 32d08f39 Leszek Koltunski
      activityMapping.put(i++, StencilActivity.class);
359 0ab55f0c Leszek Koltunski
   }
360
361 cb9d104d Leszek Koltunski
   {
362 08602667 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
363
      item.put(ITEM_IMAGE, R.drawable.icon_example_glow);
364 cb9d104d Leszek Koltunski
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_glow));
365
      item.put(ITEM_SUBTITLE, getText(R.string.example_glow_subtitle));
366
      data.add(item);
367
      activityMapping.put(i++, GlowActivity.class);
368
   }
369
370
   {
371
      final Map<String, Object> item = new HashMap<>();
372
      item.put(ITEM_IMAGE, R.drawable.icon_example_movingglow);
373 11298b49 Leszek Koltunski
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_moving_glow));
374
      item.put(ITEM_SUBTITLE, getText(R.string.example_moving_glow_subtitle));
375 08602667 Leszek Koltunski
      data.add(item);
376 11298b49 Leszek Koltunski
      activityMapping.put(i++, MovingGlowActivity.class);
377 08602667 Leszek Koltunski
   }
378
379 427ab7bf Leszek Koltunski
   final SimpleAdapter dataAdapter = new SimpleAdapter(this, data, R.layout.toc_item, new String[] {ITEM_IMAGE, ITEM_TITLE, ITEM_SUBTITLE}, new int[] {R.id.Image, R.id.Title, R.id.SubTitle});
380
   setListAdapter(dataAdapter);  
381
      
382
   getListView().setOnItemClickListener(new OnItemClickListener() 
383
     {
384
     @Override
385
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) 
386
      {
387
      final Class<? extends Activity> activityToLaunch = activityMapping.get(position);
388
            
389
      if (activityToLaunch != null)
390
        {
391
        final Intent launchIntent = new Intent(TableOfContents.this, activityToLaunch);
392
        startActivity(launchIntent);
393
        }            
394
      }
395
     });
396
   }  
397
  }
398
399
///////////////////////////////////////////////////////////////////////////////////////////////////