Project

General

Profile

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

examples / src / main / java / org / distorted / examples / TableOfContents.java @ 862fcd79

1 5068fa06 Leszek Koltunski
package org.distorted.examples;
2 427ab7bf Leszek Koltunski
3
import java.util.ArrayList;
4
import java.util.HashMap;
5
import java.util.List;
6
import java.util.Map;
7
8
import android.app.Activity;
9
import android.app.ListActivity;
10
import android.content.Intent;
11
import android.os.Bundle;
12
import android.util.SparseArray;
13
import android.view.View;
14
import android.widget.AdapterView;
15
import android.widget.AdapterView.OnItemClickListener;
16
import android.widget.SimpleAdapter;
17
18 5068fa06 Leszek Koltunski
import org.distorted.examples.R;
19
import org.distorted.examples.monalisa.MonaLisaActivity;
20
import org.distorted.examples.sink.SinkActivity;
21
import org.distorted.examples.fov.FOVActivity;
22
import org.distorted.examples.deform.DeformActivity;
23
import org.distorted.examples.listener.ListenerActivity;
24
import org.distorted.examples.interpolator.InterpolatorActivity;
25
import org.distorted.examples.girl.GirlActivity;
26
import org.distorted.examples.macroblock.MacroblockActivity;
27
import org.distorted.examples.movingeffects.MovingEffectsActivity;
28
import org.distorted.examples.olimpic.OlimpicActivity;
29
import org.distorted.examples.differenteffects.DifferentEffectsActivity;
30
import org.distorted.examples.differentbitmaps.DifferentBitmapsActivity;
31
import org.distorted.examples.scratchpad.ScratchpadActivity;
32
import org.distorted.examples.check.CheckActivity;
33
import org.distorted.examples.bean.BeanActivity;
34
import org.distorted.examples.fbo.FBOActivity;
35
import org.distorted.examples.starwars.StarWarsActivity;
36
import org.distorted.examples.cubes.CubesActivity;
37
import org.distorted.examples.quaternion.QuaternionActivity;
38
import org.distorted.examples.effects3d.Effects3DActivity;
39 862fcd79 Leszek Koltunski
import org.distorted.examples.plainmonalisa.PlainMonaLisaActivity;
40 427ab7bf Leszek Koltunski
41
///////////////////////////////////////////////////////////////////////////////////////////////////
42
43
public class TableOfContents extends ListActivity 
44
  {
45
  private static final String ITEM_IMAGE = "item_image";
46
  private static final String ITEM_TITLE = "item_title";
47
  private static final String ITEM_SUBTITLE = "item_subtitle"; 
48
49
///////////////////////////////////////////////////////////////////////////////////////////////////
50
   
51
  @Override
52
  public void onCreate(Bundle savedInstanceState) 
53
   {
54
   super.onCreate(savedInstanceState);
55
   setTitle(R.string.toc);
56
   setContentView(R.layout.table_of_contents);
57
      
58
   final List<Map<String, Object>> data = new ArrayList<Map<String, Object>>();
59
   final SparseArray<Class<? extends Activity>> activityMapping = new SparseArray<Class<? extends Activity>>();
60
      
61
   int i = 0;
62
   
63
   {
64
      final Map<String, Object> item = new HashMap<String, Object>();
65
      item.put(ITEM_IMAGE, R.drawable.icon_example_monalisa);
66
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_monalisa));
67
      item.put(ITEM_SUBTITLE, getText(R.string.example_monalisa_subtitle));
68
      data.add(item);
69
      activityMapping.put(i++, MonaLisaActivity.class);        
70
   }
71
      
72
   {
73
      final Map<String, Object> item = new HashMap<String, Object>();
74
      item.put(ITEM_IMAGE, R.drawable.icon_example_sink);
75
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_sink));
76
      item.put(ITEM_SUBTITLE, getText(R.string.example_sink_subtitle));
77
      data.add(item);
78
      activityMapping.put(i++, SinkActivity.class);
79
   }
80
   
81
   {
82
      final Map<String, Object> item = new HashMap<String, Object>();
83
      item.put(ITEM_IMAGE, R.drawable.icon_example_bean);
84
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_bean));
85
      item.put(ITEM_SUBTITLE, getText(R.string.example_bean_subtitle));
86
      data.add(item);
87
      activityMapping.put(i++, BeanActivity.class);
88
   }
89
   
90
   {
91
      final Map<String, Object> item = new HashMap<String, Object>();
92
      item.put(ITEM_IMAGE, R.drawable.icon_example_fov);
93
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_fov));
94
      item.put(ITEM_SUBTITLE, getText(R.string.example_fov_subtitle));
95
      data.add(item);
96
      activityMapping.put(i++, FOVActivity.class);
97
   }
98
         
99
   {
100
      final Map<String, Object> item = new HashMap<String, Object>();
101
      item.put(ITEM_IMAGE, R.drawable.icon_example_deform);
102
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_deform));
103
      item.put(ITEM_SUBTITLE, getText(R.string.example_deform_subtitle));
104
      data.add(item);
105
      activityMapping.put(i++, DeformActivity.class);
106
   }
107
  
108
   {
109
      final Map<String, Object> item = new HashMap<String, Object>();
110
      item.put(ITEM_IMAGE, R.drawable.icon_example_listener);
111
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_listener));
112
      item.put(ITEM_SUBTITLE, getText(R.string.example_listener_subtitle));
113
      data.add(item);
114
      activityMapping.put(i++, ListenerActivity.class);
115
   }
116
   
117
   {
118
      final Map<String, Object> item = new HashMap<String, Object>();
119
      item.put(ITEM_IMAGE, R.drawable.icon_example_interpolator);
120
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_interpolator));
121
      item.put(ITEM_SUBTITLE, getText(R.string.example_interpolator_subtitle));
122
      data.add(item);
123
      activityMapping.put(i++, InterpolatorActivity.class);
124
   }
125
   
126
   {
127
      final Map<String, Object> item = new HashMap<String, Object>();
128
      item.put(ITEM_IMAGE, R.drawable.icon_example_girl);
129
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_girl));
130
      item.put(ITEM_SUBTITLE, getText(R.string.example_girl_subtitle));
131
      data.add(item);
132
      activityMapping.put(i++, GirlActivity.class);
133
   }
134
   
135
   {
136
      final Map<String, Object> item = new HashMap<String, Object>();
137
      item.put(ITEM_IMAGE, R.drawable.icon_example_macroblock);
138
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_macroblock));
139
      item.put(ITEM_SUBTITLE, getText(R.string.example_macroblock_subtitle));
140
      data.add(item);
141
      activityMapping.put(i++, MacroblockActivity.class);
142
   }
143
   
144
   {
145
      final Map<String, Object> item = new HashMap<String, Object>();
146
      item.put(ITEM_IMAGE, R.drawable.icon_example_movingeffects);
147
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_movingeffects));
148
      item.put(ITEM_SUBTITLE, getText(R.string.example_movingeffects_subtitle));
149
      data.add(item);
150
      activityMapping.put(i++, MovingEffectsActivity.class);
151
   }
152
   
153
   {
154
      final Map<String, Object> item = new HashMap<String, Object>();
155
      item.put(ITEM_IMAGE, R.drawable.icon_example_differenteffects);
156
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_differenteffects));
157
      item.put(ITEM_SUBTITLE, getText(R.string.example_differenteffects_subtitle));
158
      data.add(item);
159
      activityMapping.put(i++, DifferentEffectsActivity.class);
160
   }
161
   
162
   {
163
      final Map<String, Object> item = new HashMap<String, Object>();
164
      item.put(ITEM_IMAGE, R.drawable.icon_example_differentbitmaps);
165
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_differentbitmaps));
166
      item.put(ITEM_SUBTITLE, getText(R.string.example_differentbitmaps_subtitle));
167
      data.add(item);
168
      activityMapping.put(i++, DifferentBitmapsActivity.class);
169
   }
170
   
171
   {
172
      final Map<String, Object> item = new HashMap<String, Object>();
173
      item.put(ITEM_IMAGE, R.drawable.icon_example_scratchpad);
174
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_scratchpad));
175
      item.put(ITEM_SUBTITLE, getText(R.string.example_scratchpad_subtitle));
176
      data.add(item);
177
      activityMapping.put(i++, ScratchpadActivity.class);
178
   }
179
   
180
   {
181
      final Map<String, Object> item = new HashMap<String, Object>();
182
      item.put(ITEM_IMAGE, R.drawable.icon_example_check);
183
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_check));
184
      item.put(ITEM_SUBTITLE, getText(R.string.example_check_subtitle));
185
      data.add(item);
186
      activityMapping.put(i++, CheckActivity.class);
187
   }
188
   
189
   {
190
      final Map<String, Object> item = new HashMap<String, Object>();
191
      item.put(ITEM_IMAGE, R.drawable.icon_example_fbo);
192
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_fbo));
193
      item.put(ITEM_SUBTITLE, getText(R.string.example_fbo_subtitle));
194
      data.add(item);
195
      activityMapping.put(i++, FBOActivity.class);
196
   }
197
      
198
   {
199
      final Map<String, Object> item = new HashMap<String, Object>();
200
      item.put(ITEM_IMAGE, R.drawable.icon_example_starwars);
201
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_starwars));
202
      item.put(ITEM_SUBTITLE, getText(R.string.example_starwars_subtitle));
203
      data.add(item);
204
      activityMapping.put(i++, StarWarsActivity.class);
205
   }
206
         
207
   {
208
      final Map<String, Object> item = new HashMap<String, Object>();
209
      item.put(ITEM_IMAGE, R.drawable.icon_example_olimpic);
210
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_olimpic));
211
      item.put(ITEM_SUBTITLE, getText(R.string.example_olimpic_subtitle));
212
      data.add(item);
213
      activityMapping.put(i++, OlimpicActivity.class);
214
   }
215
   
216
   {
217
      final Map<String, Object> item = new HashMap<String, Object>();
218
      item.put(ITEM_IMAGE, R.drawable.icon_example_quaternion);
219
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_quaternion));
220
      item.put(ITEM_SUBTITLE, getText(R.string.example_quaternion_subtitle));
221
      data.add(item);
222
      activityMapping.put(i++, QuaternionActivity.class);
223
   }
224
   
225
   {
226
      final Map<String, Object> item = new HashMap<String, Object>();
227
      item.put(ITEM_IMAGE, R.drawable.icon_example_cubes);
228
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_cubes));
229
      item.put(ITEM_SUBTITLE, getText(R.string.example_cubes_subtitle));
230
      data.add(item);
231
      activityMapping.put(i++, CubesActivity.class);
232
   }
233
   
234
   {
235
      final Map<String, Object> item = new HashMap<String, Object>();
236
      item.put(ITEM_IMAGE, R.drawable.icon_example_matrix3d);
237
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_effects3d));
238
      item.put(ITEM_SUBTITLE, getText(R.string.example_effects3d_subtitle));
239
      data.add(item);
240
      activityMapping.put(i++, Effects3DActivity.class);
241
   }
242 862fcd79 Leszek Koltunski
243
   {
244
      final Map<String, Object> item = new HashMap<String, Object>();
245
      item.put(ITEM_IMAGE, R.drawable.icon_example_monalisa);
246
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_plainmonalisa));
247
      item.put(ITEM_SUBTITLE, getText(R.string.example_plainmonalisa_subtitle));
248
      data.add(item);
249
      activityMapping.put(i++, PlainMonaLisaActivity.class);
250
   }
251 427ab7bf Leszek Koltunski
     
252
   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});
253
   setListAdapter(dataAdapter);  
254
      
255
   getListView().setOnItemClickListener(new OnItemClickListener() 
256
     {
257
     @Override
258
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) 
259
      {
260
      final Class<? extends Activity> activityToLaunch = activityMapping.get(position);
261
            
262
      if (activityToLaunch != null)
263
        {
264
        final Intent launchIntent = new Intent(TableOfContents.this, activityToLaunch);
265
        startActivity(launchIntent);
266
        }            
267
      }
268
     });
269
   }  
270
  }
271
272
///////////////////////////////////////////////////////////////////////////////////////////////////