Revision a935e9db
Added by Leszek Koltunski almost 6 years ago
src/main/java/org/distorted/examples/triblur/TriblurActivity.java | ||
---|---|---|
23 | 23 |
import android.opengl.GLSurfaceView; |
24 | 24 |
import android.os.Bundle; |
25 | 25 |
import android.view.View; |
26 |
import android.widget.AdapterView; |
|
27 |
import android.widget.ArrayAdapter; |
|
26 | 28 |
import android.widget.CheckBox; |
27 | 29 |
import android.widget.SeekBar; |
30 |
import android.widget.Spinner; |
|
28 | 31 |
|
29 | 32 |
import org.distorted.examples.R; |
30 | 33 |
import org.distorted.library.effect.EffectQuality; |
... | ... | |
32 | 35 |
|
33 | 36 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
34 | 37 |
|
35 |
public class TriblurActivity extends Activity implements SeekBar.OnSeekBarChangeListener |
|
38 |
public class TriblurActivity extends Activity implements SeekBar.OnSeekBarChangeListener, AdapterView.OnItemSelectedListener
|
|
36 | 39 |
{ |
37 | 40 |
private int mQuality; |
38 | 41 |
private int mBackground; |
... | ... | |
45 | 48 |
super.onCreate(savedState); |
46 | 49 |
setContentView(R.layout.triblurlayout); |
47 | 50 |
|
48 |
SeekBar radiusBar0 = (SeekBar)findViewById(R.id.triblurSeek0);
|
|
49 |
SeekBar radiusBar1 = (SeekBar)findViewById(R.id.triblurSeek1);
|
|
50 |
SeekBar radiusBar2 = (SeekBar)findViewById(R.id.triblurSeek2);
|
|
51 |
SeekBar radiusBar0 = findViewById(R.id.triblurSeek0); |
|
52 |
SeekBar radiusBar1 = findViewById(R.id.triblurSeek1); |
|
53 |
SeekBar radiusBar2 = findViewById(R.id.triblurSeek2); |
|
51 | 54 |
|
52 | 55 |
radiusBar0.setOnSeekBarChangeListener(this); |
53 | 56 |
radiusBar1.setOnSeekBarChangeListener(this); |
... | ... | |
62 | 65 |
privateQuality(1); |
63 | 66 |
privateBackgroundColor(1); |
64 | 67 |
} |
68 |
|
|
69 |
Spinner typeSpinner = findViewById(R.id.triblur_spinnerQuality); |
|
70 |
typeSpinner.setOnItemSelectedListener(this); |
|
71 |
|
|
72 |
String[] objectType = new String[] {"Quality Highiest", "Quality High", "Quality Medium", "Quality Low"}; |
|
73 |
|
|
74 |
ArrayAdapter<String> adapterType = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, objectType); |
|
75 |
adapterType.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
|
76 |
typeSpinner.setAdapter(adapterType); |
|
77 |
|
|
78 |
Spinner bitmapSpinner = findViewById(R.id.triblur_spinnerMode); |
|
79 |
bitmapSpinner.setOnItemSelectedListener(this); |
|
80 |
|
|
81 |
String[] objectBitmap = new String[] { "Render: Normal", "Render: OIT" }; |
|
82 |
|
|
83 |
ArrayAdapter<String> adapterBitmap = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, objectBitmap); |
|
84 |
adapterBitmap.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
|
85 |
bitmapSpinner.setAdapter(adapterBitmap); |
|
86 |
} |
|
87 |
|
|
88 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
89 |
|
|
90 |
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) |
|
91 |
{ |
|
92 |
switch(parent.getId()) |
|
93 |
{ |
|
94 |
case R.id.triblur_spinnerQuality: privateQuality(pos); |
|
95 |
break; |
|
96 |
case R.id.triblur_spinnerMode : TriblurSurfaceView v = this.findViewById(R.id.triblurSurfaceView); |
|
97 |
TriblurRenderer renderer = v.getRenderer(); |
|
98 |
renderer.setRenderModeToOIT(pos==1); |
|
99 |
break; |
|
100 |
} |
|
101 |
} |
|
102 |
|
|
103 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
104 |
|
|
105 |
public void onNothingSelected(AdapterView<?> parent) |
|
106 |
{ |
|
65 | 107 |
} |
66 | 108 |
|
67 | 109 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
... | ... | |
69 | 111 |
@Override |
70 | 112 |
protected void onPause() |
71 | 113 |
{ |
72 |
GLSurfaceView view = (GLSurfaceView) this.findViewById(R.id.triblurSurfaceView);
|
|
114 |
GLSurfaceView view = this.findViewById(R.id.triblurSurfaceView); |
|
73 | 115 |
view.onPause(); |
74 | 116 |
Distorted.onPause(); |
75 | 117 |
super.onPause(); |
... | ... | |
81 | 123 |
protected void onResume() |
82 | 124 |
{ |
83 | 125 |
super.onResume(); |
84 |
GLSurfaceView view = (GLSurfaceView) this.findViewById(R.id.triblurSurfaceView);
|
|
126 |
GLSurfaceView view = this.findViewById(R.id.triblurSurfaceView); |
|
85 | 127 |
view.onResume(); |
86 | 128 |
} |
87 | 129 |
|
... | ... | |
101 | 143 |
{ |
102 | 144 |
super.onSaveInstanceState(savedInstanceState); |
103 | 145 |
|
104 |
TriblurSurfaceView view = (TriblurSurfaceView) this.findViewById(R.id.triblurSurfaceView);
|
|
146 |
TriblurSurfaceView view = this.findViewById(R.id.triblurSurfaceView); |
|
105 | 147 |
TriblurRenderer renderer = view.getRenderer(); |
106 | 148 |
|
107 | 149 |
savedInstanceState.putBooleanArray("checkboxes", renderer.getChecked() ); |
... | ... | |
118 | 160 |
|
119 | 161 |
boolean[] checkboxes = savedInstanceState.getBooleanArray("checkboxes"); |
120 | 162 |
|
121 |
TriblurSurfaceView view = (TriblurSurfaceView) this.findViewById(R.id.triblurSurfaceView);
|
|
163 |
TriblurSurfaceView view = this.findViewById(R.id.triblurSurfaceView); |
|
122 | 164 |
TriblurRenderer renderer = view.getRenderer(); |
123 | 165 |
|
124 | 166 |
if( checkboxes!=null ) |
... | ... | |
142 | 184 |
{ |
143 | 185 |
switch (bar.getId()) |
144 | 186 |
{ |
145 |
case R.id.triblurSeek0: TriblurSurfaceView view0 = (TriblurSurfaceView) this.findViewById(R.id.triblurSurfaceView);
|
|
187 |
case R.id.triblurSeek0: TriblurSurfaceView view0 = this.findViewById(R.id.triblurSurfaceView); |
|
146 | 188 |
view0.getRenderer().setRange(0,progress); |
147 | 189 |
break; |
148 |
case R.id.triblurSeek1: TriblurSurfaceView view1 = (TriblurSurfaceView) this.findViewById(R.id.triblurSurfaceView);
|
|
190 |
case R.id.triblurSeek1: TriblurSurfaceView view1 = this.findViewById(R.id.triblurSurfaceView); |
|
149 | 191 |
view1.getRenderer().setRange(1,progress); |
150 | 192 |
break; |
151 |
case R.id.triblurSeek2: TriblurSurfaceView view2 = (TriblurSurfaceView) this.findViewById(R.id.triblurSurfaceView);
|
|
193 |
case R.id.triblurSeek2: TriblurSurfaceView view2 = this.findViewById(R.id.triblurSurfaceView); |
|
152 | 194 |
view2.getRenderer().setRange(2,progress); |
153 | 195 |
break; |
154 | 196 |
} |
... | ... | |
168 | 210 |
{ |
169 | 211 |
CheckBox box = (CheckBox)view; |
170 | 212 |
boolean checked = box.isChecked(); |
171 |
TriblurSurfaceView sView = (TriblurSurfaceView) this.findViewById(R.id.triblurSurfaceView);
|
|
213 |
TriblurSurfaceView sView = this.findViewById(R.id.triblurSurfaceView); |
|
172 | 214 |
|
173 | 215 |
switch(box.getId()) |
174 | 216 |
{ |
... | ... | |
190 | 232 |
} |
191 | 233 |
} |
192 | 234 |
|
193 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
194 |
|
|
195 |
public void quality(View v) |
|
196 |
{ |
|
197 |
switch(v.getId()) |
|
198 |
{ |
|
199 |
case R.id.triblurRadioQuality0: privateQuality(0); break; |
|
200 |
case R.id.triblurRadioQuality1: privateQuality(1); break; |
|
201 |
case R.id.triblurRadioQuality2: privateQuality(2); break; |
|
202 |
case R.id.triblurRadioQuality3: privateQuality(3); break; |
|
203 |
} |
|
204 |
} |
|
205 |
|
|
206 | 235 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
207 | 236 |
|
208 | 237 |
private void privateBackgroundColor(int index) |
209 | 238 |
{ |
210 |
TriblurSurfaceView view = (TriblurSurfaceView) this.findViewById(R.id.triblurSurfaceView);
|
|
239 |
TriblurSurfaceView view = this.findViewById(R.id.triblurSurfaceView); |
|
211 | 240 |
TriblurRenderer renderer = view.getRenderer(); |
212 | 241 |
|
213 | 242 |
switch(index) |
... | ... | |
222 | 251 |
|
223 | 252 |
private void privateQuality(int index) |
224 | 253 |
{ |
225 |
TriblurSurfaceView view = (TriblurSurfaceView) this.findViewById(R.id.triblurSurfaceView);
|
|
254 |
TriblurSurfaceView view = this.findViewById(R.id.triblurSurfaceView); |
|
226 | 255 |
TriblurRenderer renderer = view.getRenderer(); |
227 | 256 |
|
228 | 257 |
switch(index) |
Also available in: Unified diff
Correct a recently introduced bug.