diff options
-rw-r--r-- | res/layout/photopage_progress_bar.xml | 40 | ||||
-rw-r--r-- | res/values/strings.xml | 4 | ||||
-rw-r--r-- | src/com/android/gallery3d/app/PhotoPageProgressBar.java | 50 | ||||
-rw-r--r-- | src_pd/com/android/gallery3d/app/StitchingProgressManager.java | 21 |
4 files changed, 99 insertions, 16 deletions
diff --git a/res/layout/photopage_progress_bar.xml b/res/layout/photopage_progress_bar.xml new file mode 100644 index 000000000..778feb365 --- /dev/null +++ b/res/layout/photopage_progress_bar.xml @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="utf-8"?> +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/photopage_progress_bar" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_alignParentBottom="true" + android:layout_alignParentLeft="true" + android:padding="25dp" + android:visibility="invisible"> + <View + android:id="@+id/photopage_progress_background" + android:background="#ff000000" + android:layout_width="match_parent" + android:layout_height="8dp" + android:layout_alignParentBottom="true" + android:visibility="visible"/> + <View + android:id="@+id/photopage_progress_foreground" + android:background="#ff33b5e5" + android:layout_width="10dp" + android:layout_height="8dp" + android:layout_alignParentLeft="true" + android:layout_alignParentBottom="true" + android:visibility="visible"/> + <TextView + android:id="@+id/photopage_progress_bar_text" + android:text="@string/pano_progress_text" + android:textColor="#ffffffff" + android:textSize="14dp" + android:shadowColor="#ff000000" + android:shadowDx="0" + android:shadowDy="0" + android:shadowRadius="2" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_alignParentRight="true" + android:layout_above="@id/photopage_progress_background" + android:paddingBottom="8dp" + android:visibility="visible"/> +</RelativeLayout> diff --git a/res/values/strings.xml b/res/values/strings.xml index c6ef704d7..92d4308d1 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -496,4 +496,8 @@ <!-- Toast if the trimmed video is the same as the original one. [CHAR LIMIT=80] --> <string name="trim_too_long">Did not trim : the same length as origin</string> + + <!-- Text to show with progress bar while stitching in Gallery --> + <string name="pano_progress_text">Rendering panorama</string> + </resources> diff --git a/src/com/android/gallery3d/app/PhotoPageProgressBar.java b/src/com/android/gallery3d/app/PhotoPageProgressBar.java new file mode 100644 index 000000000..141fea698 --- /dev/null +++ b/src/com/android/gallery3d/app/PhotoPageProgressBar.java @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2012 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.gallery3d.app; + +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.view.ViewGroup.LayoutParams; +import android.widget.RelativeLayout; + +import com.android.gallery3d.R; + +public class PhotoPageProgressBar { + private ViewGroup mContainer; + private View mProgress; + + public PhotoPageProgressBar(Context context, RelativeLayout parentLayout) { + LayoutInflater inflater = (LayoutInflater) context + .getSystemService(Context.LAYOUT_INFLATER_SERVICE); + mContainer = (ViewGroup) inflater.inflate(R.layout.photopage_progress_bar, parentLayout, + false); + parentLayout.addView(mContainer); + mProgress = mContainer.findViewById(R.id.photopage_progress_foreground); + } + + public void setProgress(int progressPercent) { + mContainer.setVisibility(View.VISIBLE); + LayoutParams layoutParams = mProgress.getLayoutParams(); + layoutParams.width = mContainer.getWidth() * progressPercent / 100; + mProgress.setLayoutParams(layoutParams); + } + + public void hideProgress() { + mContainer.setVisibility(View.INVISIBLE); + } +} diff --git a/src_pd/com/android/gallery3d/app/StitchingProgressManager.java b/src_pd/com/android/gallery3d/app/StitchingProgressManager.java index d0e2a6961..73868478e 100644 --- a/src_pd/com/android/gallery3d/app/StitchingProgressManager.java +++ b/src_pd/com/android/gallery3d/app/StitchingProgressManager.java @@ -16,30 +16,19 @@ package com.android.gallery3d.app; -import com.android.gallery3d.data.MediaItem; - -import java.util.ArrayList; +import android.net.Uri; public class StitchingProgressManager { - public void addChangeListener(StitchingChangeListener l) { - } - - public void removeChangeListener(StitchingChangeListener l) { + public StitchingProgressManager(GalleryApp app) { } - public int getItemCount() { - return 0; + public void addChangeListener(StitchingChangeListener l) { } - public MediaItem getItem(int i) { - return null; + public void removeChangeListener(StitchingChangeListener l) { } - public ArrayList<MediaItem> getAllItems() { + public Integer getProgress(Uri uri) { return null; } - - public int getProgress(String filePath) { - return 100; - } } |