OSDN Git Service

add support for black and white filters, add rotation API to tiny planet
[android-x86/packages-apps-Gallery2.git] / res / layout / filtershow_activity.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <!--
3      Copyright (C) 2012 The Android Open Source Project
4
5      Licensed under the Apache License, Version 2.0 (the "License");
6      you may not use this file except in compliance with the License.
7      You may obtain a copy of the License at
8
9           http://www.apache.org/licenses/LICENSE-2.0
10
11      Unless required by applicable law or agreed to in writing, software
12      distributed under the License is distributed on an "AS IS" BASIS,
13      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14      See the License for the specific language governing permissions and
15      limitations under the License.
16 -->
17
18 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
19     android:layout_width="match_parent"
20     android:layout_height="match_parent"
21     android:id="@+id/mainView"
22     android:background="@color/background_screen" >
23
24     <LinearLayout
25         android:id="@+id/imageStatePanel"
26         android:layout_width="200dip"
27         android:layout_height="match_parent"
28         android:layout_gravity="right"
29         android:orientation="vertical"
30         android:visibility="invisible" >
31
32         <TextView
33             android:layout_width="match_parent"
34             android:layout_height="wrap_content"
35             android:background="@android:color/transparent"
36             android:gravity="center"
37             android:padding="2dip"
38             android:text="@string/imageState"
39             android:textColor="@android:color/white"
40             android:textSize="24sp"
41             android:textStyle="bold" />
42
43         <ListView
44             android:id="@+id/imageStateList"
45             android:layout_width="match_parent"
46             android:layout_height="wrap_content"
47             android:layout_weight="1" >
48         </ListView>
49     </LinearLayout>
50
51     <LinearLayout
52         android:id="@+id/mainPanel"
53         android:layout_width="match_parent"
54         android:layout_height="match_parent"
55         android:layerType="hardware"
56         android:orientation="vertical" >
57
58         <FrameLayout
59             android:layout_width="match_parent"
60             android:layout_height="wrap_content"
61             android:layout_weight="1" >
62
63             <com.android.gallery3d.filtershow.imageshow.ImageShow
64                 android:id="@+id/imageShow"
65                 android:layout_width="match_parent"
66                 android:layout_height="wrap_content" />
67
68             <com.android.gallery3d.filtershow.imageshow.ImageStraighten
69                 android:id="@+id/imageStraighten"
70                 android:layout_width="match_parent"
71                 android:layout_height="wrap_content"
72                 android:visibility="gone" />
73
74             <com.android.gallery3d.filtershow.imageshow.ImageCrop
75                 android:id="@+id/imageCrop"
76                 android:layout_width="match_parent"
77                 android:layout_height="wrap_content"
78                 android:visibility="gone" />
79
80             <com.android.gallery3d.filtershow.imageshow.ImageRotate
81                 android:id="@+id/imageRotate"
82                 android:layout_width="match_parent"
83                 android:layout_height="wrap_content"
84                 android:visibility="gone" />
85
86             <com.android.gallery3d.filtershow.imageshow.ImageFlip
87                 android:id="@+id/imageFlip"
88                 android:layout_width="match_parent"
89                 android:layout_height="wrap_content"
90                 android:visibility="gone" />
91
92             <com.android.gallery3d.filtershow.ui.ImageCurves
93                 android:id="@+id/imageCurves"
94                 android:layout_width="match_parent"
95                 android:layout_height="wrap_content"
96                 android:layerType="software"
97                 android:visibility="gone" />
98
99             <com.android.gallery3d.filtershow.imageshow.ImageBorder
100                 android:id="@+id/imageBorder"
101                 android:layout_width="match_parent"
102                 android:layout_height="wrap_content"
103                 android:visibility="gone" />
104
105             <com.android.gallery3d.filtershow.imageshow.ImageZoom
106                 android:id="@+id/imageZoom"
107                 android:layout_width="match_parent"
108                 android:layout_height="wrap_content"
109                 android:visibility="gone" />
110
111             <!--
112             <ImageButton
113                 android:id="@+id/showOriginalButton"
114                 android:layout_width="64dip"
115                 android:layout_height="64dip"
116                 android:layout_gravity="bottom"
117                 android:scaleType="centerInside"
118                 android:src="@drawable/filtershow_button_show_original" />
119                  -->
120
121             <com.android.gallery3d.filtershow.CenteredLinearLayout
122               xmlns:custom="http://schemas.android.com/apk/res/com.android.gallery3d"
123               android:layout_width="match_parent"
124               android:layout_height="wrap_content"
125               android:layout_gravity="center_horizontal|bottom"
126               android:background="@android:color/transparent"
127               custom:max_width="600dip"
128               android:orientation="vertical">
129
130               <SeekBar
131                   android:id="@+id/filterSeekBar"
132                   android:layout_width="match_parent"
133                   android:layout_height="wrap_content"
134                   android:layout_gravity="bottom"
135                   android:padding="16dip"
136                   android:visibility="gone" />
137
138             </com.android.gallery3d.filtershow.CenteredLinearLayout>
139         </FrameLayout>
140
141         <com.android.gallery3d.filtershow.CenteredLinearLayout
142               xmlns:custom="http://schemas.android.com/apk/res/com.android.gallery3d"
143               android:id="@+id/mainPanel"
144               android:layout_width="match_parent"
145               android:layout_height="wrap_content"
146               android:layout_gravity="center"
147               android:background="@color/background_main_toolbar"
148               custom:max_width="600dip"
149               android:orientation="vertical">
150
151         <FrameLayout
152             android:id="@+id/secondRowPanel"
153             android:layout_width="fill_parent"
154             android:layout_height="wrap_content" >
155
156             <LinearLayout
157                 android:id="@+id/filterButtonsList"
158                 android:layout_width="fill_parent"
159                 android:layout_height="@dimen/thumbnail_size"
160                 android:background="@color/background_main_toolbar"
161                 android:orientation="horizontal"
162                 android:visibility="gone" >
163
164                 <FrameLayout
165                     android:layout_width="fill_parent"
166                     android:layout_height="fill_parent" >
167                     <com.android.gallery3d.filtershow.ui.FramedTextButton
168                         android:id="@+id/aspect"
169                         android:layout_width="64dip"
170                         android:layout_height="64dip"
171                         android:layout_gravity="center_vertical|left"
172                         android:background="@android:color/transparent"
173                         android:scaleType="centerInside"
174                         android:visibility="gone"
175                         android:text="@string/aspectOriginal_effect" />
176
177                     <com.android.gallery3d.filtershow.ui.FramedTextButton
178                         android:id="@+id/pickCurvesChannel"
179                         android:layout_width="64dip"
180                         android:layout_height="64dip"
181                         android:layout_gravity="center_vertical|left"
182                         android:background="@android:color/transparent"
183                         android:scaleType="centerInside"
184                         android:visibility="gone"
185                         android:text="@string/curves_channel_rgb" />
186
187                     <Button
188                         android:id="@+id/applyEffect"
189                         android:layout_width="wrap_content"
190                         android:layout_height="94dip"
191                         android:layout_gravity="center"
192                         android:layout_weight="1"
193                         android:background="@android:color/transparent"
194                         android:gravity="center"
195                         android:text="@string/apply_effect"
196                         android:textSize="18dip" />
197                 </FrameLayout>
198
199             </LinearLayout>
200
201             <HorizontalScrollView
202                 android:id="@+id/fxList"
203                 android:layout_width="match_parent"
204                 android:layout_height="@dimen/thumbnail_size"
205                 android:scrollbars="none" >
206
207                 <LinearLayout
208                     android:id="@+id/listFilters"
209                     android:layout_width="wrap_content"
210                     android:layout_height="match_parent"
211                     android:layout_marginLeft="@dimen/thumbnail_margin"
212                     android:orientation="horizontal" >
213                 </LinearLayout>
214             </HorizontalScrollView>
215
216             <HorizontalScrollView
217                 android:id="@+id/bordersList"
218                 android:layout_width="match_parent"
219                 android:layout_height="@dimen/thumbnail_size"
220                 android:visibility="gone"
221                 android:scrollbars="none" >
222
223                 <LinearLayout
224                     android:id="@+id/listBorders"
225                     android:layout_width="wrap_content"
226                     android:layout_height="match_parent"
227                     android:layout_marginLeft="@dimen/thumbnail_margin"
228                     android:orientation="horizontal" >
229                 </LinearLayout>
230             </HorizontalScrollView>
231
232             <HorizontalScrollView
233                 android:id="@+id/geometryList"
234                 android:layout_width="fill_parent"
235                 android:layout_height="@dimen/thumbnail_size"
236                 android:background="@color/background_main_toolbar"
237                 android:visibility="gone"
238                 android:scrollbars="none" >
239
240                 <LinearLayout
241                     android:id="@+id/listGeometry"
242                     android:layout_width="wrap_content"
243                     android:layout_height="fill_parent"
244                     android:layout_gravity="center"
245                     android:orientation="horizontal">
246
247                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
248                         android:id="@+id/straightenButton"
249                         style="@style/FilterShowBottomButton"
250                         android:src="@drawable/filtershow_button_geometry_straighten"
251                         android:text="@string/straighten" />
252
253                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
254                         android:id="@+id/cropButton"
255                         style="@style/FilterShowBottomButton"
256                         android:src="@drawable/filtershow_button_geometry_crop"
257                         android:text="@string/crop" />
258
259                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
260                         android:id="@+id/rotateButton"
261                         style="@style/FilterShowBottomButton"
262                         android:src="@drawable/filtershow_button_geometry_rotate"
263                         android:text="@string/rotate" />
264
265                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
266                         android:id="@+id/flipButton"
267                         style="@style/FilterShowBottomButton"
268                         android:src="@drawable/filtershow_button_geometry_flip"
269                         android:text="@string/mirror" />
270
271                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
272                         android:id="@+id/redEyeButton"
273                         style="@style/FilterShowBottomButton"
274                         android:src="@drawable/photoeditor_effect_redeye"
275                         android:text="@string/redeye"
276                         android:visibility="gone" />
277
278                 </LinearLayout>
279             </HorizontalScrollView>
280
281             <HorizontalScrollView
282                 android:id="@+id/colorsFxList"
283                 android:layout_width="fill_parent"
284                 android:layout_height="@dimen/thumbnail_size"
285                 android:background="@color/background_main_toolbar"
286                 android:visibility="gone"
287                 android:scrollbars="none" >
288
289                 <LinearLayout
290                     android:id="@+id/listColorsFx"
291                     android:layout_width="wrap_content"
292                     android:layout_height="wrap_content"
293                     android:layout_marginLeft="@dimen/thumbnail_margin"
294                     android:orientation="horizontal" >
295                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
296                         android:id="@+id/tinyplanetButton"
297                         style="@style/FilterShowBottomButton"
298                         android:src="@drawable/filtershow_button_colors_contrast"
299                         android:text="@string/tinyplanet" />
300
301                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
302                         android:id="@+id/wbalanceButton"
303                         style="@style/FilterShowBottomButton"
304                         android:src="@drawable/filtershow_button_colors_contrast"
305                         android:text="@string/wbalance" />
306
307                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
308                         android:id="@+id/exposureButton"
309                         style="@style/FilterShowBottomButton"
310                         android:src="@drawable/filtershow_button_colors_contrast"
311                         android:text="@string/exposure" />
312
313                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
314                         android:id="@+id/vignetteButton"
315                         style="@style/FilterShowBottomButton"
316                         android:src="@drawable/filtershow_button_colors_vignette"
317                         android:text="@string/vignette" />
318
319                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
320                         android:id="@+id/contrastButton"
321                         style="@style/FilterShowBottomButton"
322                         android:src="@drawable/filtershow_button_colors_contrast"
323                         android:text="@string/contrast" />
324
325                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
326                         android:id="@+id/shadowRecoveryButton"
327                         style="@style/FilterShowBottomButton"
328                         android:src="@drawable/filtershow_button_colors_contrast"
329                         android:text="@string/shadow_recovery" />
330
331                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
332                         android:id="@+id/vibranceButton"
333                         style="@style/FilterShowBottomButton"
334                         android:src="@drawable/filtershow_button_colors_contrast"
335                         android:text="@string/vibrance" />
336
337                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
338                         android:id="@+id/sharpenButton"
339                         style="@style/FilterShowBottomButton"
340                         android:src="@drawable/filtershow_button_colors_sharpen"
341                         android:text="@string/sharpness" />
342
343                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
344                         android:id="@+id/curvesButtonRGB"
345                         style="@style/FilterShowBottomButton"
346                         android:src="@drawable/filtershow_button_colors_curve"
347                         android:text="@string/curvesRGB" />
348
349                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
350                         android:id="@+id/hueButton"
351                         style="@style/FilterShowBottomButton"
352                         android:src="@drawable/filtershow_button_colors_contrast"
353                         android:text="@string/hue" />
354
355                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
356                         android:id="@+id/saturationButton"
357                         style="@style/FilterShowBottomButton"
358                         android:src="@drawable/filtershow_button_colors_contrast"
359                         android:text="@string/saturation" />
360
361                     <com.android.gallery3d.filtershow.ui.ImageButtonTitle
362                         android:id="@+id/bwfilterButton"
363                         style="@style/FilterShowBottomButton"
364                         android:src="@drawable/filtershow_button_colors_contrast"
365                         android:text="@string/bwfilter" />
366
367                 </LinearLayout>
368             </HorizontalScrollView>
369         </FrameLayout>
370
371         <View
372             android:background="@color/toolbar_separation_line"
373             android:layout_height="1dip"
374             android:layout_width="match_parent" />
375
376         <com.android.gallery3d.filtershow.CenteredLinearLayout
377               xmlns:custom="http://schemas.android.com/apk/res/com.android.gallery3d"
378               android:id="@+id/mainPanel"
379               android:layout_width="match_parent"
380               android:layout_height="wrap_content"
381               android:layout_gravity="center"
382               custom:max_width="400dip"
383               android:orientation="vertical">
384
385         <LinearLayout
386             android:layout_width="match_parent"
387             android:layout_height="48dip"
388             android:background="@color/background_main_toolbar" >
389
390             <ImageButton
391                 android:id="@+id/fxButton"
392                 android:layout_width="@dimen/thumbnail_size"
393                 android:layout_height="match_parent"
394                 android:layout_weight="1"
395                 android:background="@drawable/filtershow_button_background"
396                 android:scaleType="centerInside"
397                 android:src="@drawable/ic_photoeditor_effects" />
398
399             <ImageButton
400                 android:id="@+id/borderButton"
401                 android:layout_width="@dimen/thumbnail_size"
402                 android:layout_height="match_parent"
403                 android:layout_weight="1"
404                 android:background="@drawable/filtershow_button_background"
405                 android:padding="2dip"
406                 android:scaleType="centerInside"
407                 android:src="@drawable/ic_photoeditor_border" />
408
409             <ImageButton
410                 android:id="@+id/geometryButton"
411                 android:layout_width="@dimen/thumbnail_size"
412                 android:layout_height="match_parent"
413                 android:layout_weight="1"
414                 android:background="@drawable/filtershow_button_background"
415                 android:padding="2dip"
416                 android:scaleType="centerInside"
417                 android:src="@drawable/ic_photoeditor_fix" />
418
419             <ImageButton
420                 android:id="@+id/colorsButton"
421                 android:layout_width="@dimen/thumbnail_size"
422                 android:layout_height="match_parent"
423                 android:layout_weight="1"
424                 android:background="@drawable/filtershow_button_background"
425                 android:padding="2dip"
426                 android:scaleType="centerInside"
427                 android:src="@drawable/ic_photoeditor_color" />
428         </LinearLayout>
429
430         </com.android.gallery3d.filtershow.CenteredLinearLayout>
431
432         </com.android.gallery3d.filtershow.CenteredLinearLayout>
433     </LinearLayout>
434
435     <LinearLayout
436         android:id="@+id/historyPanel"
437         android:layout_width="200dip"
438         android:layout_height="match_parent"
439         android:layout_gravity="right"
440         android:orientation="vertical"
441         android:visibility="invisible" >
442
443         <TextView
444             android:layout_width="match_parent"
445             android:layout_height="wrap_content"
446             android:background="@android:color/transparent"
447             android:gravity="center"
448             android:padding="2dip"
449             android:text="@string/history"
450             android:textColor="@android:color/white"
451             android:textSize="24sp"
452             android:textStyle="bold" />
453
454         <ListView
455             android:id="@+id/operationsList"
456             android:layout_width="match_parent"
457             android:layout_height="wrap_content"
458             android:layout_weight="1" >
459         </ListView>
460
461         <LinearLayout
462             android:layout_width="match_parent"
463             android:layout_height="wrap_content"
464             android:orientation="horizontal" >
465
466             <Button
467                 android:id="@+id/resetOperationsButton"
468                 style="@style/FilterShowHistoryButton"
469                 android:gravity="center"
470                 android:text="@string/reset" />
471
472             <Button
473                 android:id="@+id/saveOperationsButton"
474                 style="@style/FilterShowHistoryButton"
475                 android:text="@string/save"
476                 android:visibility="gone" />
477         </LinearLayout>
478     </LinearLayout>
479
480 </FrameLayout>