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 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 18 xmlns:tools="http://schemas.android.com/tools" 19 android:layout_width="fill_parent" 20 android:layout_height="fill_parent" 21 android:orientation="horizontal" > 22 23 <LinearLayout 24 android:id="@+id/preview_column" 25 android:layout_width="0dp" 26 android:layout_height="fill_parent" 27 android:layout_weight="6" 28 android:animateLayoutChanges="false" 29 android:orientation="vertical" 30 android:visibility="visible" > 31 32 <SurfaceView 33 android:id="@+id/preview" 34 android:layout_width="fill_parent" 35 android:layout_height="0dp" 36 android:layout_weight="@integer/preview_only_weight" 37 tools:ignore="NestedWeights" /> 38 39 <SurfaceView 40 android:id="@+id/callback_view" 41 android:layout_width="fill_parent" 42 android:layout_height="0dp" 43 android:layout_weight="@integer/preview_with_callback_weight" 44 android:visibility="gone" /> 45 46 <TextView 47 android:id="@+id/log" 48 android:layout_width="fill_parent" 49 android:layout_height="10dp" 50 android:layout_weight="1" 51 android:freezesText="true" 52 android:minLines="3" 53 android:typeface="normal" /> 54 55 </LinearLayout> 56 57 <ScrollView 58 android:id="@+id/control_bar" 59 android:layout_width="0dp" 60 android:layout_height="match_parent" 61 android:layout_weight="2" 62 android:fadingEdgeLength="100dp" 63 android:requiresFadingEdge="vertical" 64 android:scrollbarAlwaysDrawVerticalTrack="true" > 65 66 <LinearLayout 67 android:id="@+id/control_bar_contents" 68 android:layout_width="match_parent" 69 android:layout_height="wrap_content" 70 android:layout_marginLeft="5dp" 71 android:orientation="vertical" > 72 73 <TextView 74 android:id="@+id/camera_spinner_label" 75 android:layout_width="wrap_content" 76 android:layout_height="wrap_content" 77 android:layout_marginTop="5dp" 78 android:layout_weight="1" 79 android:text="@string/camera_selection_prompt" 80 android:textAppearance="?android:attr/textAppearanceSmall" /> 81 82 <Spinner 83 android:id="@+id/camera_spinner" 84 android:layout_width="fill_parent" 85 android:layout_height="wrap_content" 86 android:layout_weight="1" 87 android:prompt="@string/camera_selection_prompt" /> 88 89 <CheckBox 90 android:id="@+id/keep_open_checkbox" 91 android:layout_width="wrap_content" 92 android:layout_height="wrap_content" 93 android:layout_weight="1" 94 android:text="@string/keep_open_prompt" /> 95 96 <Button 97 android:id="@+id/info_button" 98 style="?android:attr/buttonStyleSmall" 99 android:layout_width="fill_parent" 100 android:layout_height="wrap_content" 101 android:layout_gravity="center" 102 android:layout_weight="1" 103 android:text="@string/show_info" /> 104 105 <View 106 android:id="@+id/horizontal_rule_1" 107 android:layout_width="fill_parent" 108 android:layout_height="1dip" 109 android:layout_marginBottom="@dimen/horiz_rule_btm_margin" 110 android:layout_marginTop="@dimen/horiz_rule_top_margin" 111 android:background="@color/horiz_rule_color" /> 112 113 <TextView 114 android:id="@+id/preview_size_spinner_label" 115 android:layout_width="wrap_content" 116 android:layout_height="wrap_content" 117 android:layout_weight="1" 118 android:text="@string/preview_resolution_prompt" 119 android:textAppearance="?android:attr/textAppearanceSmall" /> 120 121 <Spinner 122 android:id="@+id/preview_size_spinner" 123 android:layout_width="fill_parent" 124 android:layout_height="wrap_content" 125 android:layout_weight="1" 126 android:prompt="@string/preview_resolution_prompt" /> 127 128 <TextView 129 android:id="@+id/preview_frame_rate_label" 130 android:layout_width="wrap_content" 131 android:layout_height="wrap_content" 132 android:layout_weight="1" 133 android:text="@string/preview_frame_rate_prompt" 134 android:textAppearance="?android:attr/textAppearanceSmall" /> 135 136 <Spinner 137 android:id="@+id/preview_frame_rate_spinner" 138 android:layout_width="match_parent" 139 android:layout_height="wrap_content" 140 android:layout_weight="1" /> 141 142 <ToggleButton 143 android:id="@+id/hdr_mode" 144 android:layout_width="fill_parent" 145 android:layout_height="wrap_content" 146 android:layout_gravity="center" 147 android:layout_weight="1" 148 android:textColorLink="@android:color/holo_blue_light" 149 android:textOff="@string/hdr_off_label" 150 android:textOn="@string/hdr_on_label" /> 151 152 <ToggleButton 153 android:id="@+id/start_preview" 154 android:layout_width="fill_parent" 155 android:layout_height="wrap_content" 156 android:layout_gravity="center" 157 android:layout_weight="1" 158 android:textColorLink="@android:color/holo_blue_light" 159 android:textOff="@string/preview_off_label" 160 android:textOn="@string/preview_on_label" /> 161 162 <View 163 android:id="@+id/horizontal_rule_2" 164 android:layout_width="fill_parent" 165 android:layout_height="1dip" 166 android:layout_marginBottom="@dimen/horiz_rule_btm_margin" 167 android:layout_marginTop="@dimen/horiz_rule_top_margin" 168 android:layout_weight="1" 169 android:background="@color/horiz_rule_color" /> 170 171 <TextView 172 android:id="@+id/af_mode_spinner_label" 173 android:layout_width="wrap_content" 174 android:layout_height="wrap_content" 175 android:layout_weight="1" 176 android:text="@string/af_mode_prompt" 177 android:textAppearance="?android:attr/textAppearanceSmall" /> 178 179 <Spinner 180 android:id="@+id/af_mode_spinner" 181 android:layout_width="match_parent" 182 android:layout_height="wrap_content" 183 android:layout_weight="1" /> 184 185 <Button 186 android:id="@+id/af_button" 187 style="?android:attr/buttonStyleSmall" 188 android:layout_width="wrap_content" 189 android:layout_height="wrap_content" 190 android:layout_gravity="center" 191 android:layout_weight="1" 192 android:text="@string/trigger_autofocus" /> 193 194 <Button 195 android:id="@+id/af_cancel_button" 196 style="?android:attr/buttonStyleSmall" 197 android:layout_width="wrap_content" 198 android:layout_height="wrap_content" 199 android:layout_gravity="center" 200 android:layout_weight="1" 201 android:text="@string/cancel_autofocus" /> 202 203 <TextView 204 android:id="@+id/flash_mode_spinner_label" 205 android:layout_width="wrap_content" 206 android:layout_height="wrap_content" 207 android:layout_weight="1" 208 android:text="@string/flash_mode_label" 209 android:textAppearance="?android:attr/textAppearanceSmall" /> 210 211 <Spinner 212 android:id="@+id/flash_mode_spinner" 213 android:layout_width="match_parent" 214 android:layout_height="wrap_content" 215 android:layout_weight="1" /> 216 217 <TextView 218 android:id="@+id/exposure_label" 219 android:layout_width="wrap_content" 220 android:layout_height="wrap_content" 221 android:layout_weight="1" 222 android:text="@string/exposure_label" 223 android:textAppearance="?android:attr/textAppearanceSmall" /> 224 225 <ToggleButton 226 android:id="@+id/exposure_lock" 227 android:layout_width="fill_parent" 228 android:layout_height="wrap_content" 229 android:layout_weight="1" 230 android:textColorLink="@android:color/holo_blue_light" 231 android:textOff="@string/exposure_lock_off_label" 232 android:textOn="@string/exposure_lock_on_label" /> 233 234 <TextView 235 android:id="@+id/zoom_label" 236 android:layout_width="wrap_content" 237 android:layout_height="wrap_content" 238 android:layout_weight="1" 239 android:text="@string/zoom_label" 240 android:textAppearance="?android:attr/textAppearanceSmall" /> 241 242 <SeekBar 243 android:id="@+id/zoom_seekbar" 244 android:layout_width="fill_parent" 245 android:layout_height="wrap_content" 246 android:layout_weight="1" 247 android:progress="0" 248 style="?android:attr/progressBarStyleHorizontal" /> 249 250 <View 251 android:id="@+id/horizontal_rule_3" 252 android:layout_width="fill_parent" 253 android:layout_height="1dip" 254 android:layout_marginBottom="@dimen/horiz_rule_btm_margin" 255 android:layout_marginTop="@dimen/horiz_rule_top_margin" 256 android:layout_weight="1" 257 android:background="@color/horiz_rule_color" /> 258 259 <TextView 260 android:id="@+id/snapshot_size_spinner_label" 261 android:layout_width="wrap_content" 262 android:layout_height="wrap_content" 263 android:layout_weight="1" 264 android:text="@string/snapshot_size_prompt" 265 android:textAppearance="?android:attr/textAppearanceSmall" /> 266 267 <Spinner 268 android:id="@+id/snapshot_size_spinner" 269 android:layout_width="match_parent" 270 android:layout_height="wrap_content" 271 android:layout_weight="1" /> 272 273 <Button 274 android:id="@+id/take_picture" 275 style="?android:attr/buttonStyleSmall" 276 android:layout_width="fill_parent" 277 android:layout_height="wrap_content" 278 android:layout_weight="1" 279 android:text="@string/take_picture_label" /> 280 281 <View 282 android:id="@+id/horizontal_rule_4" 283 android:layout_width="fill_parent" 284 android:layout_height="1dip" 285 android:layout_marginBottom="@dimen/horiz_rule_btm_margin" 286 android:layout_marginTop="@dimen/horiz_rule_top_margin" 287 android:layout_weight="1" 288 android:background="@color/horiz_rule_color" /> 289 290 <TextView 291 android:id="@+id/camcorder_profile_spinner_label" 292 android:layout_width="wrap_content" 293 android:layout_height="wrap_content" 294 android:layout_weight="1" 295 android:text="@string/camcorder_profile_prompt" 296 android:textAppearance="?android:attr/textAppearanceSmall" /> 297 298 <Spinner 299 android:id="@+id/camcorder_profile_spinner" 300 android:layout_width="match_parent" 301 android:layout_height="wrap_content" 302 android:layout_weight="1" /> 303 304 <TextView 305 android:id="@+id/video_record_size_spinner_label" 306 android:layout_width="wrap_content" 307 android:layout_height="wrap_content" 308 android:layout_weight="1" 309 android:text="@string/video_record_size_prompt" 310 android:textAppearance="?android:attr/textAppearanceSmall" /> 311 312 <Spinner 313 android:id="@+id/video_record_size_spinner" 314 android:layout_width="match_parent" 315 android:layout_height="wrap_content" 316 android:layout_weight="1" /> 317 318 <TextView 319 android:id="@+id/video_frame_rate_label" 320 android:layout_width="wrap_content" 321 android:layout_height="wrap_content" 322 android:layout_weight="1" 323 android:text="@string/video_frame_rate_prompt" 324 android:textAppearance="?android:attr/textAppearanceSmall" /> 325 326 <Spinner 327 android:id="@+id/video_frame_rate_spinner" 328 android:layout_width="match_parent" 329 android:layout_height="wrap_content" 330 android:layout_weight="1" /> 331 332 <ToggleButton 333 android:id="@+id/start_record" 334 android:layout_width="fill_parent" 335 android:layout_height="wrap_content" 336 android:layout_weight="1" 337 android:textColorLink="@android:color/holo_red_dark" 338 android:textOff="@string/record_off_label" 339 android:textOn="@string/record_on_label" /> 340 341 <CheckBox 342 android:id="@+id/record_handoff_checkbox" 343 android:layout_width="wrap_content" 344 android:layout_height="wrap_content" 345 android:layout_weight="1" 346 android:text="@string/record_handoff_prompt" /> 347 348 <ToggleButton 349 android:id="@+id/record_stabilization" 350 android:layout_width="fill_parent" 351 android:layout_height="wrap_content" 352 android:layout_weight="1" 353 android:textColorLink="@android:color/holo_blue_dark" 354 android:textOff="@string/record_stabilization_off_label" 355 android:textOn="@string/record_stabilization_on_label" /> 356 357 <ToggleButton 358 android:id="@+id/record_hint" 359 android:layout_width="fill_parent" 360 android:layout_height="wrap_content" 361 android:layout_weight="1" 362 android:textColorLink="@android:color/holo_blue_dark" 363 android:textOff="@string/record_hint_off_label" 364 android:textOn="@string/record_hint_on_label" /> 365 366 <ToggleButton 367 android:id="@+id/lock_camera" 368 android:layout_width="fill_parent" 369 android:layout_height="wrap_content" 370 android:layout_weight="1" 371 android:textColorLink="@android:color/holo_blue_dark" 372 android:textOff="@string/lock_camera_off_label" 373 android:textOn="@string/lock_camera_on_label" /> 374 375 <View 376 android:id="@+id/horizontal_rule_5" 377 android:layout_width="fill_parent" 378 android:layout_height="1dip" 379 android:layout_marginBottom="@dimen/horiz_rule_btm_margin" 380 android:layout_marginTop="@dimen/horiz_rule_top_margin" 381 android:layout_weight="1" 382 android:background="@color/horiz_rule_color" /> 383 384 <TextView 385 android:id="@+id/callback_format_spinner_label" 386 android:layout_width="wrap_content" 387 android:layout_height="wrap_content" 388 android:layout_weight="1" 389 android:text="@string/callback_format_prompt" 390 android:textAppearance="?android:attr/textAppearanceSmall" /> 391 392 <Spinner 393 android:id="@+id/callback_format_spinner" 394 android:layout_width="match_parent" 395 android:layout_height="wrap_content" 396 android:layout_weight="1" /> 397 398 <ToggleButton 399 android:id="@+id/enable_callbacks" 400 android:layout_width="wrap_content" 401 android:layout_height="wrap_content" 402 android:layout_weight="1" 403 android:textOff="@string/callbacks_off_label" 404 android:textOn="@string/callbacks_on_label" /> 405 406 <View 407 android:id="@+id/horizontal_rule_6" 408 android:layout_width="fill_parent" 409 android:layout_height="1dip" 410 android:layout_marginBottom="@dimen/horiz_rule_btm_margin" 411 android:layout_marginTop="@dimen/horiz_rule_top_margin" 412 android:layout_weight="1" 413 android:background="@color/horiz_rule_color" /> 414 415 <TextView 416 android:id="@+id/color_effect_spinner_label" 417 android:layout_width="wrap_content" 418 android:layout_height="wrap_content" 419 android:layout_weight="1" 420 android:text="@string/color_effect_prompt" 421 android:textAppearance="?android:attr/textAppearanceSmall" /> 422 423 <Spinner 424 android:id="@+id/color_effect_spinner" 425 android:layout_width="match_parent" 426 android:layout_height="wrap_content" 427 android:layout_weight="1" /> 428 429 430 </LinearLayout> 431 </ScrollView> 432 433 </LinearLayout> 434