Project

General

Profile

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

examples / src / main / java / org / distortedandroid / examples / TableOfContents.java @ 427ab7bf

1
package org.distortedandroid.examples;
2

    
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
import org.distortedandroid.examples.R;
19
import org.distortedandroid.examples.monalisa.MonaLisaActivity;
20
import org.distortedandroid.examples.sink.SinkActivity;
21
import org.distortedandroid.examples.fov.FOVActivity;
22
import org.distortedandroid.examples.deform.DeformActivity;
23
import org.distortedandroid.examples.listener.ListenerActivity;
24
import org.distortedandroid.examples.interpolator.InterpolatorActivity;
25
import org.distortedandroid.examples.girl.GirlActivity;
26
import org.distortedandroid.examples.macroblock.MacroblockActivity;
27
import org.distortedandroid.examples.movingeffects.MovingEffectsActivity;
28
import org.distortedandroid.examples.olimpic.OlimpicActivity;
29
import org.distortedandroid.examples.differenteffects.DifferentEffectsActivity;
30
import org.distortedandroid.examples.differentbitmaps.DifferentBitmapsActivity;
31
import org.distortedandroid.examples.scratchpad.ScratchpadActivity;
32
import org.distortedandroid.examples.check.CheckActivity;
33
import org.distortedandroid.examples.bean.BeanActivity;
34
import org.distortedandroid.examples.fbo.FBOActivity;
35
import org.distortedandroid.examples.starwars.StarWarsActivity;
36
import org.distortedandroid.examples.cubes.CubesActivity;
37
import org.distortedandroid.examples.quaternion.QuaternionActivity;
38
import org.distortedandroid.examples.effects3d.Effects3DActivity;
39

    
40
///////////////////////////////////////////////////////////////////////////////////////////////////
41

    
42
public class TableOfContents extends ListActivity 
43
  {
44
  private static final String ITEM_IMAGE = "item_image";
45
  private static final String ITEM_TITLE = "item_title";
46
  private static final String ITEM_SUBTITLE = "item_subtitle"; 
47

    
48
///////////////////////////////////////////////////////////////////////////////////////////////////
49
   
50
  @Override
51
  public void onCreate(Bundle savedInstanceState) 
52
   {
53
   super.onCreate(savedInstanceState);
54
   setTitle(R.string.toc);
55
   setContentView(R.layout.table_of_contents);
56
      
57
   final List<Map<String, Object>> data = new ArrayList<Map<String, Object>>();
58
   final SparseArray<Class<? extends Activity>> activityMapping = new SparseArray<Class<? extends Activity>>();
59
      
60
   int i = 0;
61
   
62
   {
63
      final Map<String, Object> item = new HashMap<String, Object>();
64
      item.put(ITEM_IMAGE, R.drawable.icon_example_monalisa);
65
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_monalisa));
66
      item.put(ITEM_SUBTITLE, getText(R.string.example_monalisa_subtitle));
67
      data.add(item);
68
      activityMapping.put(i++, MonaLisaActivity.class);        
69
   }
70
      
71
   {
72
      final Map<String, Object> item = new HashMap<String, Object>();
73
      item.put(ITEM_IMAGE, R.drawable.icon_example_sink);
74
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_sink));
75
      item.put(ITEM_SUBTITLE, getText(R.string.example_sink_subtitle));
76
      data.add(item);
77
      activityMapping.put(i++, SinkActivity.class);
78
   }
79
   
80
   {
81
      final Map<String, Object> item = new HashMap<String, Object>();
82
      item.put(ITEM_IMAGE, R.drawable.icon_example_bean);
83
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_bean));
84
      item.put(ITEM_SUBTITLE, getText(R.string.example_bean_subtitle));
85
      data.add(item);
86
      activityMapping.put(i++, BeanActivity.class);
87
   }
88
   
89
   {
90
      final Map<String, Object> item = new HashMap<String, Object>();
91
      item.put(ITEM_IMAGE, R.drawable.icon_example_fov);
92
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_fov));
93
      item.put(ITEM_SUBTITLE, getText(R.string.example_fov_subtitle));
94
      data.add(item);
95
      activityMapping.put(i++, FOVActivity.class);
96
   }
97
         
98
   {
99
      final Map<String, Object> item = new HashMap<String, Object>();
100
      item.put(ITEM_IMAGE, R.drawable.icon_example_deform);
101
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_deform));
102
      item.put(ITEM_SUBTITLE, getText(R.string.example_deform_subtitle));
103
      data.add(item);
104
      activityMapping.put(i++, DeformActivity.class);
105
   }
106
  
107
   {
108
      final Map<String, Object> item = new HashMap<String, Object>();
109
      item.put(ITEM_IMAGE, R.drawable.icon_example_listener);
110
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_listener));
111
      item.put(ITEM_SUBTITLE, getText(R.string.example_listener_subtitle));
112
      data.add(item);
113
      activityMapping.put(i++, ListenerActivity.class);
114
   }
115
   
116
   {
117
      final Map<String, Object> item = new HashMap<String, Object>();
118
      item.put(ITEM_IMAGE, R.drawable.icon_example_interpolator);
119
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_interpolator));
120
      item.put(ITEM_SUBTITLE, getText(R.string.example_interpolator_subtitle));
121
      data.add(item);
122
      activityMapping.put(i++, InterpolatorActivity.class);
123
   }
124
   
125
   {
126
      final Map<String, Object> item = new HashMap<String, Object>();
127
      item.put(ITEM_IMAGE, R.drawable.icon_example_girl);
128
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_girl));
129
      item.put(ITEM_SUBTITLE, getText(R.string.example_girl_subtitle));
130
      data.add(item);
131
      activityMapping.put(i++, GirlActivity.class);
132
   }
133
   
134
   {
135
      final Map<String, Object> item = new HashMap<String, Object>();
136
      item.put(ITEM_IMAGE, R.drawable.icon_example_macroblock);
137
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_macroblock));
138
      item.put(ITEM_SUBTITLE, getText(R.string.example_macroblock_subtitle));
139
      data.add(item);
140
      activityMapping.put(i++, MacroblockActivity.class);
141
   }
142
   
143
   {
144
      final Map<String, Object> item = new HashMap<String, Object>();
145
      item.put(ITEM_IMAGE, R.drawable.icon_example_movingeffects);
146
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_movingeffects));
147
      item.put(ITEM_SUBTITLE, getText(R.string.example_movingeffects_subtitle));
148
      data.add(item);
149
      activityMapping.put(i++, MovingEffectsActivity.class);
150
   }
151
   
152
   {
153
      final Map<String, Object> item = new HashMap<String, Object>();
154
      item.put(ITEM_IMAGE, R.drawable.icon_example_differenteffects);
155
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_differenteffects));
156
      item.put(ITEM_SUBTITLE, getText(R.string.example_differenteffects_subtitle));
157
      data.add(item);
158
      activityMapping.put(i++, DifferentEffectsActivity.class);
159
   }
160
   
161
   {
162
      final Map<String, Object> item = new HashMap<String, Object>();
163
      item.put(ITEM_IMAGE, R.drawable.icon_example_differentbitmaps);
164
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_differentbitmaps));
165
      item.put(ITEM_SUBTITLE, getText(R.string.example_differentbitmaps_subtitle));
166
      data.add(item);
167
      activityMapping.put(i++, DifferentBitmapsActivity.class);
168
   }
169
   
170
   {
171
      final Map<String, Object> item = new HashMap<String, Object>();
172
      item.put(ITEM_IMAGE, R.drawable.icon_example_scratchpad);
173
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_scratchpad));
174
      item.put(ITEM_SUBTITLE, getText(R.string.example_scratchpad_subtitle));
175
      data.add(item);
176
      activityMapping.put(i++, ScratchpadActivity.class);
177
   }
178
   
179
   {
180
      final Map<String, Object> item = new HashMap<String, Object>();
181
      item.put(ITEM_IMAGE, R.drawable.icon_example_check);
182
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_check));
183
      item.put(ITEM_SUBTITLE, getText(R.string.example_check_subtitle));
184
      data.add(item);
185
      activityMapping.put(i++, CheckActivity.class);
186
   }
187
   
188
   {
189
      final Map<String, Object> item = new HashMap<String, Object>();
190
      item.put(ITEM_IMAGE, R.drawable.icon_example_fbo);
191
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_fbo));
192
      item.put(ITEM_SUBTITLE, getText(R.string.example_fbo_subtitle));
193
      data.add(item);
194
      activityMapping.put(i++, FBOActivity.class);
195
   }
196
      
197
   {
198
      final Map<String, Object> item = new HashMap<String, Object>();
199
      item.put(ITEM_IMAGE, R.drawable.icon_example_starwars);
200
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_starwars));
201
      item.put(ITEM_SUBTITLE, getText(R.string.example_starwars_subtitle));
202
      data.add(item);
203
      activityMapping.put(i++, StarWarsActivity.class);
204
   }
205
         
206
   {
207
      final Map<String, Object> item = new HashMap<String, Object>();
208
      item.put(ITEM_IMAGE, R.drawable.icon_example_olimpic);
209
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_olimpic));
210
      item.put(ITEM_SUBTITLE, getText(R.string.example_olimpic_subtitle));
211
      data.add(item);
212
      activityMapping.put(i++, OlimpicActivity.class);
213
   }
214
   
215
   {
216
      final Map<String, Object> item = new HashMap<String, Object>();
217
      item.put(ITEM_IMAGE, R.drawable.icon_example_quaternion);
218
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_quaternion));
219
      item.put(ITEM_SUBTITLE, getText(R.string.example_quaternion_subtitle));
220
      data.add(item);
221
      activityMapping.put(i++, QuaternionActivity.class);
222
   }
223
   
224
   {
225
      final Map<String, Object> item = new HashMap<String, Object>();
226
      item.put(ITEM_IMAGE, R.drawable.icon_example_cubes);
227
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_cubes));
228
      item.put(ITEM_SUBTITLE, getText(R.string.example_cubes_subtitle));
229
      data.add(item);
230
      activityMapping.put(i++, CubesActivity.class);
231
   }
232
   
233
   {
234
      final Map<String, Object> item = new HashMap<String, Object>();
235
      item.put(ITEM_IMAGE, R.drawable.icon_example_matrix3d);
236
      item.put(ITEM_TITLE, (i+1)+". "+getText(R.string.example_effects3d));
237
      item.put(ITEM_SUBTITLE, getText(R.string.example_effects3d_subtitle));
238
      data.add(item);
239
      activityMapping.put(i++, Effects3DActivity.class);
240
   }
241
     
242
   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});
243
   setListAdapter(dataAdapter);  
244
      
245
   getListView().setOnItemClickListener(new OnItemClickListener() 
246
     {
247
     @Override
248
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) 
249
      {
250
      final Class<? extends Activity> activityToLaunch = activityMapping.get(position);
251
            
252
      if (activityToLaunch != null)
253
        {
254
        final Intent launchIntent = new Intent(TableOfContents.this, activityToLaunch);
255
        startActivity(launchIntent);
256
        }            
257
      }
258
     });
259
   }  
260
  }
261

    
262
///////////////////////////////////////////////////////////////////////////////////////////////////
    (1-1/1)