First version of licence viewer

Project: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/commit/b05192ba
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/b05192ba
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/b05192ba

Branch: refs/heads/master
Commit: b05192ba70c9d668abe2f2a42a3a62643990b4f6
Parents: a3ef86f
Author: Ian Dunlop <ian.dun...@manchester.ac.uk>
Authored: Tue Oct 11 15:53:44 2016 +0100
Committer: Ian Dunlop <ian.dun...@manchester.ac.uk>
Committed: Tue Oct 11 15:53:44 2016 +0100

----------------------------------------------------------------------
 .../activities/DashboardMainActivity.java       | 21 ++++++++++-
 .../mobile/ui/licences/LicenceFragment.java     | 38 ++++----------------
 .../ui/licences/LicenceRecyclerViewAdapter.java | 18 ++++------
 .../ui/licences/licence/LicenceContent.java     | 17 ++-------
 .../main/res/layout/fragment_licence_list.xml   |  2 +-
 app/src/main/res/menu/drawer_view.xml           |  4 +++
 app/src/main/res/values/strings.xml             |  1 +
 7 files changed, 42 insertions(+), 59 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b05192ba/app/src/main/java/org/apache/taverna/mobile/activities/DashboardMainActivity.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/activities/DashboardMainActivity.java
 
b/app/src/main/java/org/apache/taverna/mobile/activities/DashboardMainActivity.java
index 511ab2c..3d88865 100644
--- 
a/app/src/main/java/org/apache/taverna/mobile/activities/DashboardMainActivity.java
+++ 
b/app/src/main/java/org/apache/taverna/mobile/activities/DashboardMainActivity.java
@@ -55,14 +55,16 @@ import org.apache.taverna.mobile.data.DataManager;
 import org.apache.taverna.mobile.data.local.PreferencesHelper;
 import org.apache.taverna.mobile.ui.anouncements.AnnouncementFragment;
 import 
org.apache.taverna.mobile.ui.favouriteworkflow.FavouriteWorkflowsFragment;
+import org.apache.taverna.mobile.ui.licences.licence.LicenceContent;
 import org.apache.taverna.mobile.ui.myworkflows.MyWorkflowFragment;
+import org.apache.taverna.mobile.ui.licences.LicenceFragment;
 import org.apache.taverna.mobile.ui.workflow.WorkflowFragment;
 import org.apache.taverna.mobile.utils.ActivityUtils;
 import org.apache.taverna.mobile.utils.WorkflowOpen;
 
 import java.io.File;
 
-public class DashboardMainActivity extends AppCompatActivity {
+public class DashboardMainActivity extends AppCompatActivity implements 
LicenceFragment.OnListFragmentInteractionListener {
 
     public static final String APP_DIRECTORY_NAME = "TavernaMobile";
     private final int SELECT_WORKFLOW = 10;
@@ -226,6 +228,19 @@ public class DashboardMainActivity extends 
AppCompatActivity {
                                 mDrawerLayout.closeDrawers();
                                 return true;
 
+                            case R.id.os_licences:
+
+                                fragment = new LicenceFragment();
+                                ActivityUtils
+                                        .addFragmentToActivity(
+                                                getSupportFragmentManager(),
+                                                fragment,
+                                                R.id.frame_container);
+
+                                menuItem.setChecked(true);
+                                mDrawerLayout.closeDrawers();
+                                return true;
+
                             case R.id.nav_settings:
 
                                 startActivity(new 
Intent(getApplicationContext(),
@@ -372,4 +387,8 @@ public class DashboardMainActivity extends 
AppCompatActivity {
         return super.onOptionsItemSelected(item);
     }
 
+    @Override
+    public void onListFragmentInteraction(LicenceContent.LicenceItem item) {
+
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b05192ba/app/src/main/java/org/apache/taverna/mobile/ui/licences/LicenceFragment.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/ui/licences/LicenceFragment.java 
b/app/src/main/java/org/apache/taverna/mobile/ui/licences/LicenceFragment.java
index f97be38..ae68460 100644
--- 
a/app/src/main/java/org/apache/taverna/mobile/ui/licences/LicenceFragment.java
+++ 
b/app/src/main/java/org/apache/taverna/mobile/ui/licences/LicenceFragment.java
@@ -3,30 +3,23 @@ package org.apache.taverna.mobile.ui.licences;
 import android.content.Context;
 import android.os.Bundle;
 import android.support.v4.app.Fragment;
-import android.support.v7.widget.GridLayoutManager;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 
-import mobile.taverna.apache.org.tavernamobile.R;
-
-import org.apache.taverna.mobile.ui.licences.dummy.DummyContent;
-import org.apache.taverna.mobile.ui.licences.dummy.DummyContent.DummyItem;
+import org.apache.taverna.mobile.R;
 
+import org.apache.taverna.mobile.ui.licences.licence.LicenceContent;
 /**
- * A fragment representing a list of Items.
+ * A fragment representing a list of Licence Items.
  * <p/>
  * Activities containing this fragment MUST implement the {@link 
OnListFragmentInteractionListener}
  * interface.
  */
 public class LicenceFragment extends Fragment {
 
-    // TODO: Customize parameter argument names
-    private static final String ARG_COLUMN_COUNT = "column-count";
-    // TODO: Customize parameters
-    private int mColumnCount = 1;
     private OnListFragmentInteractionListener mListener;
 
     /**
@@ -36,23 +29,9 @@ public class LicenceFragment extends Fragment {
     public LicenceFragment() {
     }
 
-    // TODO: Customize parameter initialization
-    @SuppressWarnings("unused")
-    public static LicenceFragment newInstance(int columnCount) {
-        LicenceFragment fragment = new LicenceFragment();
-        Bundle args = new Bundle();
-        args.putInt(ARG_COLUMN_COUNT, columnCount);
-        fragment.setArguments(args);
-        return fragment;
-    }
-
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
-
-        if (getArguments() != null) {
-            mColumnCount = getArguments().getInt(ARG_COLUMN_COUNT);
-        }
     }
 
     @Override
@@ -64,12 +43,8 @@ public class LicenceFragment extends Fragment {
         if (view instanceof RecyclerView) {
             Context context = view.getContext();
             RecyclerView recyclerView = (RecyclerView) view;
-            if (mColumnCount <= 1) {
-                recyclerView.setLayoutManager(new 
LinearLayoutManager(context));
-            } else {
-                recyclerView.setLayoutManager(new GridLayoutManager(context, 
mColumnCount));
-            }
-            recyclerView.setAdapter(new 
MyLicenceRecyclerViewAdapter(DummyContent.ITEMS, mListener));
+            recyclerView.setLayoutManager(new LinearLayoutManager(context));
+            recyclerView.setAdapter(new 
LicenceRecyclerViewAdapter(LicenceContent.ITEMS, mListener));
         }
         return view;
     }
@@ -103,7 +78,6 @@ public class LicenceFragment extends Fragment {
      * >Communicating with Other Fragments</a> for more information.
      */
     public interface OnListFragmentInteractionListener {
-        // TODO: Update argument type and name
-        void onListFragmentInteraction(DummyItem item);
+        void onListFragmentInteraction(LicenceContent.LicenceItem item);
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b05192ba/app/src/main/java/org/apache/taverna/mobile/ui/licences/LicenceRecyclerViewAdapter.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/ui/licences/LicenceRecyclerViewAdapter.java
 
b/app/src/main/java/org/apache/taverna/mobile/ui/licences/LicenceRecyclerViewAdapter.java
index 85ff0b5..e3b66d3 100644
--- 
a/app/src/main/java/org/apache/taverna/mobile/ui/licences/LicenceRecyclerViewAdapter.java
+++ 
b/app/src/main/java/org/apache/taverna/mobile/ui/licences/LicenceRecyclerViewAdapter.java
@@ -8,21 +8,20 @@ import android.widget.TextView;
 
 import org.apache.taverna.mobile.R;
 import 
org.apache.taverna.mobile.ui.licences.LicenceFragment.OnListFragmentInteractionListener;
-import org.apache.taverna.mobile.ui.licences.licence.LicenceContent.DummyItem;
+import 
org.apache.taverna.mobile.ui.licences.licence.LicenceContent.LicenceItem;
 
 import java.util.List;
 
 /**
- * {@link RecyclerView.Adapter} that can display a {@link DummyItem} and makes 
a call to the
+ * {@link RecyclerView.Adapter} that can display a {@link LicenceItem} and 
makes a call to the
  * specified {@link OnListFragmentInteractionListener}.
- * TODO: Replace the implementation with code for your data type.
  */
 public class LicenceRecyclerViewAdapter extends 
RecyclerView.Adapter<LicenceRecyclerViewAdapter.ViewHolder> {
 
-    private final List<DummyItem> mValues;
+    private final List<LicenceItem> mValues;
     private final OnListFragmentInteractionListener mListener;
 
-    public LicenceRecyclerViewAdapter(List<DummyItem> items, 
OnListFragmentInteractionListener listener) {
+    public LicenceRecyclerViewAdapter(List<LicenceItem> items, 
OnListFragmentInteractionListener listener) {
         mValues = items;
         mListener = listener;
     }
@@ -30,15 +29,14 @@ public class LicenceRecyclerViewAdapter extends 
RecyclerView.Adapter<LicenceRecy
     @Override
     public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
         View view = LayoutInflater.from(parent.getContext())
-                .inflate(R.layout.fragment_item, parent, false);
+                .inflate(R.layout.fragment_licence, parent, false);
         return new ViewHolder(view);
     }
 
     @Override
     public void onBindViewHolder(final ViewHolder holder, int position) {
         holder.mItem = mValues.get(position);
-        holder.mIdView.setText(mValues.get(position).id);
-        holder.mContentView.setText(mValues.get(position).content);
+        holder.mContentView.setText(mValues.get(position).toString());
 
         holder.mView.setOnClickListener(new View.OnClickListener() {
             @Override
@@ -59,14 +57,12 @@ public class LicenceRecyclerViewAdapter extends 
RecyclerView.Adapter<LicenceRecy
 
     public class ViewHolder extends RecyclerView.ViewHolder {
         public final View mView;
-        public final TextView mIdView;
         public final TextView mContentView;
-        public DummyItem mItem;
+        public LicenceItem mItem;
 
         public ViewHolder(View view) {
             super(view);
             mView = view;
-            mIdView = (TextView) view.findViewById(R.id.id);
             mContentView = (TextView) view.findViewById(R.id.content);
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b05192ba/app/src/main/java/org/apache/taverna/mobile/ui/licences/licence/LicenceContent.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/ui/licences/licence/LicenceContent.java
 
b/app/src/main/java/org/apache/taverna/mobile/ui/licences/licence/LicenceContent.java
index 3b403ff..e5131c4 100644
--- 
a/app/src/main/java/org/apache/taverna/mobile/ui/licences/licence/LicenceContent.java
+++ 
b/app/src/main/java/org/apache/taverna/mobile/ui/licences/licence/LicenceContent.java
@@ -10,26 +10,16 @@ import java.util.List;
 import java.util.Map;
 
 /**
- * Helper class for providing sample content for user interfaces created by
- * Android template wizards.
- * <p>
- * TODO: Replace all uses of this class before publishing your app.
+ * Create licence items from JSON string and add to list
  */
 public class LicenceContent {
 
     /**
-     * An array of sample (dummy) items.
+     * An array of licence items.
      */
     public static final List<LicenceItem> ITEMS = new ArrayList<LicenceItem>();
     private static String licence_json = "[{'library': 
'dropbox-android-sdk','version': '1.6.3'}, {'library': 'json_simple','version': 
'1.1'}, {'libary': 'sjxp','version': '2.2'}, {'library': 
'com.android.support:appcompat','version': 'v7:23.3.0'}, {'library': 
'com.android.support:cardview','version': 'v7:23.3.0'}, {'library': 
'com.android.support:recyclerview','version': 'v7:23.3.0'}, {'library': 
'com.android.support:support','version': 'v4:23.3.0'}, {'library': 
'com.android.support:design','version': ':23.3.0'}, {'library': 
'com.squareup.retrofit2:retrofit','version': '2.0.2'}, {'library': 
'com.squareup.retrofit2:adapter-rxjava',    'version': '2.0.2'}, {    
'library': 'com.squareup.okhttp3:logging-interceptor',    'version': '3.2.0'}, 
{    'library': 'com.squareup.retrofit2:converter-simplexml',    'version': 
'2.0.2'}, {    'library': 'com.jakewharton:butterknife',    'version': 
'8.0.1'}, {    'library': 'com.jakewharton:butterknife-compiler',    'version': 
'8.0.1'}, {'library': 
 'io.reactivex:rxandroid', 'version': '1.2.0'}, {'library': 
'io.reactivex:rxjava', 'version': '1.1.4'}, {'library': 
'org.simpleframework:simple-xml',    'version': '2.7. +'}, {    'library': 
'com.github.bumptech.glide:glide',    'version': '3.6.0'}, {    'libray': 
'com.caverock:androidsvg',    'version': '1.2.1'}, {    'library': 
'com.github.Raizlabs.DBFlow:dbflow-processor',    'version': '3.0.1'}, {    
'library': 'com.github.Raizlabs.DBFlow:dbflow-core',    'version': '3.0.1'}, {  
  'library': 'com.github.Raizlabs.DBFlow:dbflow',    'version': '3.0.1'}, {    
'library': 'com.facebook.stetho:stetho',    'version': '1.3.1'}, {    
'library': 'com.facebook.stetho:stetho-okhttp',    'version': '3: 1.3.1'}, {    
'library': 'com.github.chrisbanes:PhotoView',    'version': '1.2.6'}, {    
'library': 'com.androidsupport:multidex','version': '1.0.0'}, {'library': 
'com.google.code.gson:gson','version': '2.7'}, {'library': 
'com.squareup.retrofit2:converter-gson','version': '2.0.2'}, {'library': 
 'com.anton46:stepsview','version': '0.0.2'}]";
 
-    /**
-     * A map of sample (dummy) items, by ID.
-     */
-    public static final Map<String, LicenceItem> ITEM_MAP = new 
HashMap<String, LicenceItem>();
-
-    private static final int COUNT = 25;
-
     static {
         JSONArray licenceList = null;
         try {
@@ -51,7 +41,6 @@ public class LicenceContent {
 
     private static void addItem(LicenceItem item) {
         ITEMS.add(item);
-        ITEM_MAP.put(item.id, item);
     }
 
     private static LicenceItem createLicenceItem(int position, String name, 
String version) {
@@ -59,7 +48,7 @@ public class LicenceContent {
     }
 
     /**
-     * A dummy item representing a piece of content.
+     * A licence item containing info about a library used by the app.
      */
     public static class LicenceItem {
         public final String id;

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b05192ba/app/src/main/res/layout/fragment_licence_list.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/fragment_licence_list.xml 
b/app/src/main/res/layout/fragment_licence_list.xml
index 350829d..97a6935 100644
--- a/app/src/main/res/layout/fragment_licence_list.xml
+++ b/app/src/main/res/layout/fragment_licence_list.xml
@@ -9,5 +9,5 @@
     android:layout_marginLeft="16dp"
     android:layout_marginRight="16dp"
     app:layoutManager="LinearLayoutManager"
-    
tools:context="org.apache.taverna.mobile.ui.org.apache.taverna.mobile.ui.licences.LicenceFragment"
+    tools:context=".ui.licences.LicenceFragment"
     tools:listitem="@layout/fragment_licence" />

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b05192ba/app/src/main/res/menu/drawer_view.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/menu/drawer_view.xml 
b/app/src/main/res/menu/drawer_view.xml
index 93337df..9cd5a26 100644
--- a/app/src/main/res/menu/drawer_view.xml
+++ b/app/src/main/res/menu/drawer_view.xml
@@ -48,6 +48,10 @@
                        android:icon="@drawable/ic_about_web"
                        android:title="About"/>
                <item
+                       android:id="@+id/os_licences"
+                       android:icon="@drawable/ic_about_web"
+                       android:title="@string/os_licences"/>
+               <item
                        android:id="@+id/nav_settings"
                        android:icon="@drawable/ic_setting_workflows_web"
                        android:title="Settings"/>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b05192ba/app/src/main/res/values/strings.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/values/strings.xml 
b/app/src/main/res/values/strings.xml
index 8e531ae..d58fe29 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -13,6 +13,7 @@ See the License for the specific language governing 
permissions and
 limitations under the License.
 -->
 <resources>
+    <string name="os_licences">Licence info</string>
     <string name="app_name">Taverna Mobile</string>
     <string name="hello_world">Empty</string>
     <string name="action_settings">Settings</string>

Reply via email to