aboutsummaryrefslogtreecommitdiff
path: root/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay
diff options
context:
space:
mode:
Diffstat (limited to 'sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay')
-rw-r--r--sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayActivity.java60
-rw-r--r--sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayLargeFragment.java43
-rw-r--r--sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayRegionFragment.java48
-rw-r--r--sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayRotateFragment.java50
4 files changed, 201 insertions, 0 deletions
diff --git a/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayActivity.java b/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayActivity.java
new file mode 100644
index 0000000..d871ee4
--- /dev/null
+++ b/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayActivity.java
@@ -0,0 +1,60 @@
+/*
+Copyright 2014 David Morrissey
+
+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.davemorrissey.labs.subscaleview.test.imagedisplay;
+
+import android.support.v4.app.Fragment;
+import android.util.Log;
+
+import com.davemorrissey.labs.subscaleview.test.AbstractFragmentsActivity;
+import com.davemorrissey.labs.subscaleview.test.Page;
+import com.davemorrissey.labs.subscaleview.test.R.id;
+
+import java.util.Arrays;
+import java.util.List;
+
+import static com.davemorrissey.labs.subscaleview.test.R.string.*;
+import static com.davemorrissey.labs.subscaleview.test.R.layout.*;
+
+public class ImageDisplayActivity extends AbstractFragmentsActivity {
+
+ private static final List<Class<? extends Fragment>> FRAGMENTS = Arrays.asList(
+ ImageDisplayLargeFragment.class,
+ ImageDisplayRotateFragment.class,
+ ImageDisplayRegionFragment.class
+ );
+
+ public ImageDisplayActivity() {
+ super(display_title, fragments_activity, Arrays.asList(
+ new Page(display_p1_subtitle, display_p1_text),
+ new Page(display_p2_subtitle, display_p2_text),
+ new Page(display_p3_subtitle, display_p3_text)
+ ));
+ }
+
+ @Override
+ protected void onPageChanged(int page) {
+ try {
+ getSupportFragmentManager()
+ .beginTransaction()
+ .replace(id.frame, FRAGMENTS.get(page).newInstance())
+ .commit();
+ } catch (Exception e) {
+ Log.e(ImageDisplayActivity.class.getName(), "Failed to load fragment", e);
+ }
+ }
+
+}
diff --git a/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayLargeFragment.java b/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayLargeFragment.java
new file mode 100644
index 0000000..ada7aa6
--- /dev/null
+++ b/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayLargeFragment.java
@@ -0,0 +1,43 @@
+/*
+Copyright 2014 David Morrissey
+
+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.davemorrissey.labs.subscaleview.test.imagedisplay;
+
+import android.os.Bundle;
+import android.support.v4.app.Fragment;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import com.davemorrissey.labs.subscaleview.ImageSource;
+import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView;
+import com.davemorrissey.labs.subscaleview.test.R.id;
+import com.davemorrissey.labs.subscaleview.test.R.layout;
+
+public class ImageDisplayLargeFragment extends Fragment {
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ View rootView = inflater.inflate(layout.imagedisplay_large_fragment, container, false);
+ rootView.findViewById(id.next).setOnClickListener(new View.OnClickListener() {
+ @Override public void onClick(View v) { ((ImageDisplayActivity) ImageDisplayLargeFragment.this.getActivity()).next(); }
+ });
+ SubsamplingScaleImageView imageView = rootView.findViewById(id.imageView);
+ imageView.setImage(ImageSource.asset("card.png"));
+ return rootView;
+ }
+
+}
diff --git a/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayRegionFragment.java b/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayRegionFragment.java
new file mode 100644
index 0000000..889e064
--- /dev/null
+++ b/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayRegionFragment.java
@@ -0,0 +1,48 @@
+/*
+Copyright 2014 David Morrissey
+
+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.davemorrissey.labs.subscaleview.test.imagedisplay;
+
+import android.graphics.Rect;
+import android.os.Bundle;
+import android.support.v4.app.Fragment;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import com.davemorrissey.labs.subscaleview.ImageSource;
+import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView;
+import com.davemorrissey.labs.subscaleview.test.R.id;
+import com.davemorrissey.labs.subscaleview.test.R.layout;
+
+public class ImageDisplayRegionFragment extends Fragment {
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ View rootView = inflater.inflate(layout.imagedisplay_region_fragment, container, false);
+ final SubsamplingScaleImageView imageView = rootView.findViewById(id.imageView);
+ imageView.setOrientation(SubsamplingScaleImageView.ORIENTATION_90);
+ imageView.setImage(ImageSource.asset("card.png").region(new Rect(0, 0, 3778, 2834)));
+ rootView.findViewById(id.previous).setOnClickListener(new View.OnClickListener() {
+ @Override public void onClick(View v) { ((ImageDisplayActivity) ImageDisplayRegionFragment.this.getActivity()).previous(); }
+ });
+ rootView.findViewById(id.rotate).setOnClickListener(new View.OnClickListener() {
+ @Override public void onClick(View v) { imageView.setOrientation((imageView.getOrientation() + 90) % 360); }
+ });
+ return rootView;
+ }
+
+}
diff --git a/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayRotateFragment.java b/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayRotateFragment.java
new file mode 100644
index 0000000..15632db
--- /dev/null
+++ b/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/imagedisplay/ImageDisplayRotateFragment.java
@@ -0,0 +1,50 @@
+/*
+Copyright 2014 David Morrissey
+
+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.davemorrissey.labs.subscaleview.test.imagedisplay;
+
+import android.os.Bundle;
+import android.support.v4.app.Fragment;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import com.davemorrissey.labs.subscaleview.ImageSource;
+import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView;
+import com.davemorrissey.labs.subscaleview.test.R.id;
+import com.davemorrissey.labs.subscaleview.test.R.layout;
+
+public class ImageDisplayRotateFragment extends Fragment {
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ View rootView = inflater.inflate(layout.imagedisplay_rotate_fragment, container, false);
+ final SubsamplingScaleImageView imageView = rootView.findViewById(id.imageView);
+ imageView.setImage(ImageSource.asset("eagle.jpg"));
+ imageView.setOrientation(90);
+ rootView.findViewById(id.previous).setOnClickListener(new View.OnClickListener() {
+ @Override public void onClick(View v) { ((ImageDisplayActivity) ImageDisplayRotateFragment.this.getActivity()).previous(); }
+ });
+ rootView.findViewById(id.next).setOnClickListener(new View.OnClickListener() {
+ @Override public void onClick(View v) { ((ImageDisplayActivity) ImageDisplayRotateFragment.this.getActivity()).next(); }
+ });
+ rootView.findViewById(id.rotate).setOnClickListener(new View.OnClickListener() {
+ @Override public void onClick(View v) { imageView.setOrientation((imageView.getOrientation() + 90) % 360); }
+ });
+ return rootView;
+ }
+
+}