Project

General

Profile

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

examples / src / main / java / org / distorted / examples / TableOfContents.java @ 11298b49

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 11298b49 Leszek Koltunski
import org.distorted.examples.movingglow.MovingGlowActivity;
68 427ab7bf Leszek Koltunski
69
///////////////////////////////////////////////////////////////////////////////////////////////////
70
71
public class TableOfContents extends ListActivity 
72
  {
73
  private static final String ITEM_IMAGE = "item_image";
74
  private static final String ITEM_TITLE = "item_title";
75
  private static final String ITEM_SUBTITLE = "item_subtitle"; 
76
77
///////////////////////////////////////////////////////////////////////////////////////////////////
78
   
79
  @Override
80
  public void onCreate(Bundle savedInstanceState) 
81
   {
82
   super.onCreate(savedInstanceState);
83
   setContentView(R.layout.table_of_contents);
84
      
85 a2cb31e9 Leszek Koltunski
   final List<Map<String, Object>> data = new ArrayList<>();
86
   final SparseArray<Class<? extends Activity>> activityMapping = new SparseArray<>();
87 427ab7bf Leszek Koltunski
      
88
   int i = 0;
89 6ce08079 Leszek Koltunski
90 427ab7bf Leszek Koltunski
   {
91 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
92 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_monalisa);
93
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_monalisa));
94
      item.put(ITEM_SUBTITLE, getText(R.string.example_monalisa_subtitle));
95
      data.add(item);
96
      activityMapping.put(i++, MonaLisaActivity.class);        
97
   }
98
      
99
   {
100 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
101 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_sink);
102
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_sink));
103
      item.put(ITEM_SUBTITLE, getText(R.string.example_sink_subtitle));
104
      data.add(item);
105
      activityMapping.put(i++, SinkActivity.class);
106
   }
107
   
108
   {
109 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
110 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_bean);
111
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_bean));
112
      item.put(ITEM_SUBTITLE, getText(R.string.example_bean_subtitle));
113
      data.add(item);
114
      activityMapping.put(i++, BeanActivity.class);
115
   }
116
   
117
   {
118 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
119 10d53839 Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_projection);
120
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_projection));
121
      item.put(ITEM_SUBTITLE, getText(R.string.example_projection_subtitle));
122 427ab7bf Leszek Koltunski
      data.add(item);
123 10d53839 Leszek Koltunski
      activityMapping.put(i++, ProjectionActivity.class);
124 427ab7bf Leszek Koltunski
   }
125
         
126
   {
127 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
128 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_deform);
129
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_deform));
130
      item.put(ITEM_SUBTITLE, getText(R.string.example_deform_subtitle));
131
      data.add(item);
132
      activityMapping.put(i++, DeformActivity.class);
133
   }
134
  
135
   {
136 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
137 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_listener);
138
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_listener));
139
      item.put(ITEM_SUBTITLE, getText(R.string.example_listener_subtitle));
140
      data.add(item);
141
      activityMapping.put(i++, ListenerActivity.class);
142
   }
143
   
144
   {
145 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
146 f988589e Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_dynamic);
147
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_dynamic));
148
      item.put(ITEM_SUBTITLE, getText(R.string.example_dynamic_subtitle));
149 427ab7bf Leszek Koltunski
      data.add(item);
150 f988589e Leszek Koltunski
      activityMapping.put(i++, DynamicActivity.class);
151 427ab7bf Leszek Koltunski
   }
152
   
153
   {
154 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
155 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_girl);
156
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_girl));
157
      item.put(ITEM_SUBTITLE, getText(R.string.example_girl_subtitle));
158
      data.add(item);
159
      activityMapping.put(i++, GirlActivity.class);
160
   }
161
   
162
   {
163 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
164 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_macroblock);
165
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_macroblock));
166
      item.put(ITEM_SUBTITLE, getText(R.string.example_macroblock_subtitle));
167
      data.add(item);
168 f26ab2fd Leszek Koltunski
      activityMapping.put(i++, CatAndDogActivity.class);
169 427ab7bf Leszek Koltunski
   }
170
   
171
   {
172 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
173 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_movingeffects);
174
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_movingeffects));
175
      item.put(ITEM_SUBTITLE, getText(R.string.example_movingeffects_subtitle));
176
      data.add(item);
177
      activityMapping.put(i++, MovingEffectsActivity.class);
178
   }
179
   
180
   {
181 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
182 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_differenteffects);
183
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_differenteffects));
184
      item.put(ITEM_SUBTITLE, getText(R.string.example_differenteffects_subtitle));
185
      data.add(item);
186
      activityMapping.put(i++, DifferentEffectsActivity.class);
187
   }
188
   
189
   {
190 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
191 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_differentbitmaps);
192
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_differentbitmaps));
193
      item.put(ITEM_SUBTITLE, getText(R.string.example_differentbitmaps_subtitle));
194
      data.add(item);
195
      activityMapping.put(i++, DifferentBitmapsActivity.class);
196
   }
197
   
198
   {
199 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
200 758303a3 Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_effectqueue);
201
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_effectqueue));
202
      item.put(ITEM_SUBTITLE, getText(R.string.example_effectqueue_subtitle));
203 427ab7bf Leszek Koltunski
      data.add(item);
204 758303a3 Leszek Koltunski
      activityMapping.put(i++, EffectQueueActivity.class);
205 427ab7bf Leszek Koltunski
   }
206
   
207
   {
208 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
209 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_check);
210
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_check));
211
      item.put(ITEM_SUBTITLE, getText(R.string.example_check_subtitle));
212
      data.add(item);
213
      activityMapping.put(i++, CheckActivity.class);
214
   }
215
   
216
   {
217 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
218 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_fbo);
219 3c70973c Leszek Koltunski
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_bitmaptree));
220
      item.put(ITEM_SUBTITLE, getText(R.string.example_bitmaptree_subtitle));
221 427ab7bf Leszek Koltunski
      data.add(item);
222 3c70973c Leszek Koltunski
      activityMapping.put(i++, BitmapTreeActivity.class);
223 427ab7bf Leszek Koltunski
   }
224
      
225
   {
226 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
227 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_starwars);
228
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_starwars));
229
      item.put(ITEM_SUBTITLE, getText(R.string.example_starwars_subtitle));
230
      data.add(item);
231
      activityMapping.put(i++, StarWarsActivity.class);
232
   }
233
         
234
   {
235 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
236 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_olimpic);
237
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_olimpic));
238
      item.put(ITEM_SUBTITLE, getText(R.string.example_olimpic_subtitle));
239
      data.add(item);
240
      activityMapping.put(i++, OlimpicActivity.class);
241
   }
242
   
243
   {
244 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
245 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_quaternion);
246
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_quaternion));
247
      item.put(ITEM_SUBTITLE, getText(R.string.example_quaternion_subtitle));
248
      data.add(item);
249
      activityMapping.put(i++, QuaternionActivity.class);
250
   }
251
   
252
   {
253 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
254 427ab7bf Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_cubes);
255
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_cubes));
256
      item.put(ITEM_SUBTITLE, getText(R.string.example_cubes_subtitle));
257
      data.add(item);
258
      activityMapping.put(i++, CubesActivity.class);
259
   }
260
   
261
   {
262 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
263 db5d943e Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_matrix3d);
264
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_matrix3d));
265
      item.put(ITEM_SUBTITLE, getText(R.string.example_matrix3d_subtitle));
266 427ab7bf Leszek Koltunski
      data.add(item);
267 db5d943e Leszek Koltunski
      activityMapping.put(i++, Matrix3DActivity.class);
268 427ab7bf Leszek Koltunski
   }
269 862fcd79 Leszek Koltunski
270 08f92d82 Leszek Koltunski
   {
271
      final Map<String, Object> item = new HashMap<>();
272 76a81b6a Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_effects3d);
273
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_effects3d));
274
      item.put(ITEM_SUBTITLE, getText(R.string.example_effects3d_subtitle));
275 08f92d82 Leszek Koltunski
      data.add(item);
276 76a81b6a Leszek Koltunski
      activityMapping.put(i++, Effects3DActivity.class);
277 df77c72c Leszek Koltunski
   }
278
279 862fcd79 Leszek Koltunski
   {
280 a2cb31e9 Leszek Koltunski
      final Map<String, Object> item = new HashMap<>();
281 862fcd79 Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_monalisa);
282
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_plainmonalisa));
283
      item.put(ITEM_SUBTITLE, getText(R.string.example_plainmonalisa_subtitle));
284
      data.add(item);
285
      activityMapping.put(i++, PlainMonaLisaActivity.class);
286
   }
287 a2cb31e9 Leszek Koltunski
288
   {
289
      final Map<String, Object> item = new HashMap<>();
290
      item.put(ITEM_IMAGE, R.drawable.icon_example_girl);
291
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_save));
292
      item.put(ITEM_SUBTITLE, getText(R.string.example_save_subtitle));
293
      data.add(item);
294
      activityMapping.put(i++, SaveActivity.class);
295
   }
296
297 175f355d Leszek Koltunski
   {
298
      final Map<String, Object> item = new HashMap<>();
299
      item.put(ITEM_IMAGE, R.drawable.icon_example_flag);
300
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_flag));
301
      item.put(ITEM_SUBTITLE, getText(R.string.example_flag_subtitle));
302
      data.add(item);
303
      activityMapping.put(i++, FlagActivity.class);
304
   }
305
306 14122c52 Leszek Koltunski
   {
307
      final Map<String, Object> item = new HashMap<>();
308
      item.put(ITEM_IMAGE, R.drawable.icon_example_wind);
309
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_wind));
310
      item.put(ITEM_SUBTITLE, getText(R.string.example_wind_subtitle));
311
      data.add(item);
312
      activityMapping.put(i++, WindActivity.class);
313
   }
314
315 7ba38011 Leszek Koltunski
   {
316
      final Map<String, Object> item = new HashMap<>();
317
      item.put(ITEM_IMAGE, R.drawable.icon_example_aroundtheworld);
318
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_aroundtheworld));
319
      item.put(ITEM_SUBTITLE, getText(R.string.example_aroundtheworld_subtitle));
320
      data.add(item);
321
      activityMapping.put(i++, AroundTheWorldActivity.class);
322
   }
323
324 03a2fd30 Leszek Koltunski
   {
325
      final Map<String, Object> item = new HashMap<>();
326
      item.put(ITEM_IMAGE, R.drawable.icon_example_mirror);
327
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_mirror));
328
      item.put(ITEM_SUBTITLE, getText(R.string.example_mirror_subtitle));
329
      data.add(item);
330
      activityMapping.put(i++, MirrorActivity.class);
331
   }
332
333 43bda3db Leszek Koltunski
   {
334
      final Map<String, Object> item = new HashMap<>();
335
      item.put(ITEM_IMAGE, R.drawable.icon_example_blur);
336
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_blur));
337
      item.put(ITEM_SUBTITLE, getText(R.string.example_blur_subtitle));
338
      data.add(item);
339
      activityMapping.put(i++, BlurActivity.class);
340
   }
341
342 58059374 Leszek Koltunski
   {
343
      final Map<String, Object> item = new HashMap<>();
344
      item.put(ITEM_IMAGE, R.drawable.icon_example_multiblur);
345
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_multiblur));
346
      item.put(ITEM_SUBTITLE, getText(R.string.example_multiblur_subtitle));
347
      data.add(item);
348
      activityMapping.put(i++, MultiblurActivity.class);
349
   }
350
351 0ab55f0c Leszek Koltunski
   {
352
      final Map<String, Object> item = new HashMap<>();
353 32d08f39 Leszek Koltunski
      item.put(ITEM_IMAGE, R.drawable.icon_example_stencil);
354
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_stencil));
355
      item.put(ITEM_SUBTITLE, getText(R.string.example_stencil_subtitle));
356 0ab55f0c Leszek Koltunski
      data.add(item);
357 32d08f39 Leszek Koltunski
      activityMapping.put(i++, StencilActivity.class);
358 0ab55f0c Leszek Koltunski
   }
359
360 08602667 Leszek Koltunski
  {
361
      final Map<String, Object> item = new HashMap<>();
362
      item.put(ITEM_IMAGE, R.drawable.icon_example_glow);
363 11298b49 Leszek Koltunski
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_moving_glow));
364
      item.put(ITEM_SUBTITLE, getText(R.string.example_moving_glow_subtitle));
365 08602667 Leszek Koltunski
      data.add(item);
366 11298b49 Leszek Koltunski
      activityMapping.put(i++, MovingGlowActivity.class);
367 08602667 Leszek Koltunski
   }
368
369 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});
370
   setListAdapter(dataAdapter);  
371
      
372
   getListView().setOnItemClickListener(new OnItemClickListener() 
373
     {
374
     @Override
375
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) 
376
      {
377
      final Class<? extends Activity> activityToLaunch = activityMapping.get(position);
378
            
379
      if (activityToLaunch != null)
380
        {
381
        final Intent launchIntent = new Intent(TableOfContents.this, activityToLaunch);
382
        startActivity(launchIntent);
383
        }            
384
      }
385
     });
386
   }  
387
  }
388
389
///////////////////////////////////////////////////////////////////////////////////////////////////