From f22a3af4831b54c586b293e4d2d9d09c2292f78f Mon Sep 17 00:00:00 2001 From: Alexander Smorkalov <alexander.smorkalov@itseez.com> Date: Tue, 11 Sep 2012 17:04:01 +0400 Subject: [PATCH] Issue #2345 Adapt OpenCV Manager UI for different screen resolution partially fixed. Layout for small resolution added. Layout for small display resolution added. --- .../service/engine/res/layout-small/info.xml | 61 +++++++++ .../service/engine/res/layout-small/main.xml | 120 ++++++++++++++++++ android/service/engine/res/layout/main.xml | 3 +- .../engine/manager/ManagerActivity.java | 2 +- .../engine/manager/PackageListAdapter.java | 6 +- 5 files changed, 189 insertions(+), 3 deletions(-) create mode 100644 android/service/engine/res/layout-small/info.xml create mode 100644 android/service/engine/res/layout-small/main.xml diff --git a/android/service/engine/res/layout-small/info.xml b/android/service/engine/res/layout-small/info.xml new file mode 100644 index 000000000..cd2e874a0 --- /dev/null +++ b/android/service/engine/res/layout-small/info.xml @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="fill_parent" + android:layout_height="fill_parent" + android:focusable="false" + android:orientation="vertical" > + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" > + + <TextView + android:id="@+id/InfoName" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Large Text" + android:textAppearance="?android:attr/textAppearanceMedium" /> + + </LinearLayout> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" > + + <TextView + android:id="@+id/textView1" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Version: " + android:textAppearance="?android:attr/textAppearanceSmall" /> + + <TextView + android:id="@+id/InfoVersion" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Small Text" + android:textAppearance="?android:attr/textAppearanceSmall" /> + + </LinearLayout> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" > + + <TextView + android:id="@+id/textView2" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Target hardware: " + android:textAppearance="?android:attr/textAppearanceSmall" /> + + <TextView + android:id="@+id/InfoHardware" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Small Text" + android:textAppearance="?android:attr/textAppearanceSmall" /> + + </LinearLayout> + +</LinearLayout> \ No newline at end of file diff --git a/android/service/engine/res/layout-small/main.xml b/android/service/engine/res/layout-small/main.xml new file mode 100644 index 000000000..6f8611f50 --- /dev/null +++ b/android/service/engine/res/layout-small/main.xml @@ -0,0 +1,120 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="fill_parent" + android:layout_height="fill_parent" + android:orientation="vertical" > + + <TextView + android:id="@+id/textView4" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="About" + android:textAppearance="?android:attr/textAppearanceMedium" /> + + <TextView + android:id="@+id/textView2" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:autoLink="web" + android:text="OpenCV is Open Computer Vision library. OpenCV Manager provides the best version of the OpenCV for your hardware. See www.opencv.org for details." + android:textAppearance="?android:attr/textAppearanceSmall" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" > + + <TextView + android:id="@+id/EngineVersionCaption" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Version: " + android:textAppearance="?android:attr/textAppearanceSmall" /> + + <TextView + android:id="@+id/EngineVersionValue" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="version" + android:textAppearance="?android:attr/textAppearanceSmall" /> + </LinearLayout> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" > + + </LinearLayout> + + <TextView + android:id="@+id/textView3" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Device information" + android:textAppearance="?android:attr/textAppearanceMedium" android:layout_marginTop="15dp"/> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical" > + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" > + + <TextView + android:id="@+id/HardwareCaption" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Hardware: " + android:textAppearance="?android:attr/textAppearanceSmall" /> + + <TextView + android:id="@+id/HardwareValue" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Hardware" + android:textAppearance="?android:attr/textAppearanceSmall" /> + + </LinearLayout> + + </LinearLayout> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" > + + <TextView + android:id="@+id/OsVersionCaption" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="OS version: " + android:textAppearance="?android:attr/textAppearanceSmall" /> + + <TextView + android:id="@+id/OsVersionValue" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Os Specification" + android:textAppearance="?android:attr/textAppearanceSmall" /> + + </LinearLayout> + + <TextView + android:id="@+id/textView1" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Installed packages" + android:textAppearance="?android:attr/textAppearanceMedium" android:layout_marginTop="15dp"/> + + <ListView + android:id="@+id/InstalledPackageList" + android:layout_width="match_parent" + android:layout_height="wrap_content" android:layout_weight="1"> + </ListView> + + <Button + android:id="@+id/CheckEngineUpdate" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:text="Check for update" /> + +</LinearLayout> \ No newline at end of file diff --git a/android/service/engine/res/layout/main.xml b/android/service/engine/res/layout/main.xml index c02e0e2e5..c26013140 100644 --- a/android/service/engine/res/layout/main.xml +++ b/android/service/engine/res/layout/main.xml @@ -15,7 +15,8 @@ android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="OpenCV library (www.opencv.org) is used by other applications for image enhancement, panorama stitching, object detection, recognition and tracking and so on. OpenCV Manager provides the best version of the OpenCV for your hardware." + android:autoLink="web" + android:text="OpenCV library is used by other applications for image enhancement, panorama stitching, object detection, recognition and tracking and so on. OpenCV Manager provides the best version of the OpenCV for your hardware. See www.opencv.org for details." android:textAppearance="?android:attr/textAppearanceMedium" /> <LinearLayout diff --git a/android/service/engine/src/org/opencv/engine/manager/ManagerActivity.java b/android/service/engine/src/org/opencv/engine/manager/ManagerActivity.java index d31680559..06d93d490 100644 --- a/android/service/engine/src/org/opencv/engine/manager/ManagerActivity.java +++ b/android/service/engine/src/org/opencv/engine/manager/ManagerActivity.java @@ -290,7 +290,7 @@ public class ManagerActivity extends Activity if (null != ActivePackagePath && ActivePackagePath.indexOf(mInstalledPackageInfo[i].packageName) >= 0) { temp.put("Activity", "y"); - PublicName += " (Active)"; + PublicName += " (in use)"; } else { diff --git a/android/service/engine/src/org/opencv/engine/manager/PackageListAdapter.java b/android/service/engine/src/org/opencv/engine/manager/PackageListAdapter.java index cbc0acad6..b684ce1e7 100644 --- a/android/service/engine/src/org/opencv/engine/manager/PackageListAdapter.java +++ b/android/service/engine/src/org/opencv/engine/manager/PackageListAdapter.java @@ -24,10 +24,14 @@ public class PackageListAdapter extends SimpleAdapter { @SuppressWarnings("unchecked") Map<String, String> item = (Map<String, String>)getItem(position); Log.d("PackageListAdapter", item.get("Activity")); - if (item.get("Activity") != "n") + if (item.get("Activity") == "y") { view.setBackgroundColor(0x50ffffff); } + else + { + view.setBackgroundColor(0xff000000); + } return view; }