summaryrefslogtreecommitdiff
path: root/platform/java/src/kankan/wheel/widget/adapters/AbstractWheelTextAdapter.java
diff options
context:
space:
mode:
authorFred Ross-Perry <fred.ross-perry@artifex.com>2016-09-16 13:53:07 -0700
committerRobin Watts <robin.watts@artifex.com>2016-09-23 16:31:28 +0100
commita5db7f3bba96a1550daab9255f66a63b918df515 (patch)
tree7bf9df3186ffa9e95ba28cc17f5b43a6d83d23d2 /platform/java/src/kankan/wheel/widget/adapters/AbstractWheelTextAdapter.java
parent4af3e0db09623289f48c1c954455807a391b8870 (diff)
downloadmupdf-a5db7f3bba96a1550daab9255f66a63b918df515.tar.xz
Android example: move kankan module.
Out of platform/java and into the platform/android/example.
Diffstat (limited to 'platform/java/src/kankan/wheel/widget/adapters/AbstractWheelTextAdapter.java')
-rw-r--r--platform/java/src/kankan/wheel/widget/adapters/AbstractWheelTextAdapter.java268
1 files changed, 0 insertions, 268 deletions
diff --git a/platform/java/src/kankan/wheel/widget/adapters/AbstractWheelTextAdapter.java b/platform/java/src/kankan/wheel/widget/adapters/AbstractWheelTextAdapter.java
deleted file mode 100644
index 620c8e74..00000000
--- a/platform/java/src/kankan/wheel/widget/adapters/AbstractWheelTextAdapter.java
+++ /dev/null
@@ -1,268 +0,0 @@
-/*
- * Copyright 2011 Yuri Kanivets
- *
- * 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 kankan.wheel.widget.adapters;
-
-import android.content.Context;
-import android.graphics.Typeface;
-import android.util.Log;
-import android.view.Gravity;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.TextView;
-
-/**
- * Abstract wheel adapter provides common functionality for adapters.
- */
-public abstract class AbstractWheelTextAdapter extends AbstractWheelAdapter {
-
- /** Text view resource. Used as a default view for adapter. */
- public static final int TEXT_VIEW_ITEM_RESOURCE = -1;
-
- /** No resource constant. */
- protected static final int NO_RESOURCE = 0;
-
- /** Default text color */
- public static final int DEFAULT_TEXT_COLOR = 0xFF101010;
-
- /** Default text color */
- public static final int LABEL_COLOR = 0xFF700070;
-
- /** Default text size */
- public static final int DEFAULT_TEXT_SIZE = 24;
-
- // Text settings
- private int textColor = DEFAULT_TEXT_COLOR;
- private int textSize = DEFAULT_TEXT_SIZE;
-
- // Current context
- protected Context context;
- // Layout inflater
- protected LayoutInflater inflater;
-
- // Items resources
- protected int itemResourceId;
- protected int itemTextResourceId;
-
- // Empty items resources
- protected int emptyItemResourceId;
-
- /**
- * Constructor
- * @param context the current context
- */
- protected AbstractWheelTextAdapter(Context context) {
- this(context, TEXT_VIEW_ITEM_RESOURCE);
- }
-
- /**
- * Constructor
- * @param context the current context
- * @param itemResource the resource ID for a layout file containing a TextView to use when instantiating items views
- */
- protected AbstractWheelTextAdapter(Context context, int itemResource) {
- this(context, itemResource, NO_RESOURCE);
- }
-
- /**
- * Constructor
- * @param context the current context
- * @param itemResource the resource ID for a layout file containing a TextView to use when instantiating items views
- * @param itemTextResource the resource ID for a text view in the item layout
- */
- protected AbstractWheelTextAdapter(Context context, int itemResource, int itemTextResource) {
- this.context = context;
- itemResourceId = itemResource;
- itemTextResourceId = itemTextResource;
-
- inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
- }
-
- /**
- * Gets text color
- * @return the text color
- */
- public int getTextColor() {
- return textColor;
- }
-
- /**
- * Sets text color
- * @param textColor the text color to set
- */
- public void setTextColor(int textColor) {
- this.textColor = textColor;
- }
-
- /**
- * Gets text size
- * @return the text size
- */
- public int getTextSize() {
- return textSize;
- }
-
- /**
- * Sets text size
- * @param textSize the text size to set
- */
- public void setTextSize(int textSize) {
- this.textSize = textSize;
- }
-
- /**
- * Gets resource Id for items views
- * @return the item resource Id
- */
- public int getItemResource() {
- return itemResourceId;
- }
-
- /**
- * Sets resource Id for items views
- * @param itemResourceId the resource Id to set
- */
- public void setItemResource(int itemResourceId) {
- this.itemResourceId = itemResourceId;
- }
-
- /**
- * Gets resource Id for text view in item layout
- * @return the item text resource Id
- */
- public int getItemTextResource() {
- return itemTextResourceId;
- }
-
- /**
- * Sets resource Id for text view in item layout
- * @param itemTextResourceId the item text resource Id to set
- */
- public void setItemTextResource(int itemTextResourceId) {
- this.itemTextResourceId = itemTextResourceId;
- }
-
- /**
- * Gets resource Id for empty items views
- * @return the empty item resource Id
- */
- public int getEmptyItemResource() {
- return emptyItemResourceId;
- }
-
- /**
- * Sets resource Id for empty items views
- * @param emptyItemResourceId the empty item resource Id to set
- */
- public void setEmptyItemResource(int emptyItemResourceId) {
- this.emptyItemResourceId = emptyItemResourceId;
- }
-
-
- /**
- * Returns text for specified item
- * @param index the item index
- * @return the text of specified items
- */
- protected abstract CharSequence getItemText(int index);
-
- @Override
- public View getItem(int index, View convertView, ViewGroup parent) {
- if (index >= 0 && index < getItemsCount()) {
- if (convertView == null) {
- convertView = getView(itemResourceId, parent);
- }
- TextView textView = getTextView(convertView, itemTextResourceId);
- if (textView != null) {
- CharSequence text = getItemText(index);
- if (text == null) {
- text = "";
- }
- textView.setText(text);
-
- if (itemResourceId == TEXT_VIEW_ITEM_RESOURCE) {
- configureTextView(textView);
- }
- }
- return convertView;
- }
- return null;
- }
-
- @Override
- public View getEmptyItem(View convertView, ViewGroup parent) {
- if (convertView == null) {
- convertView = getView(emptyItemResourceId, parent);
- }
- if (emptyItemResourceId == TEXT_VIEW_ITEM_RESOURCE && convertView instanceof TextView) {
- configureTextView((TextView)convertView);
- }
-
- return convertView;
- }
-
- /**
- * Configures text view. Is called for the TEXT_VIEW_ITEM_RESOURCE views.
- * @param view the text view to be configured
- */
- protected void configureTextView(TextView view) {
- view.setTextColor(textColor);
- view.setGravity(Gravity.CENTER);
- view.setTextSize(textSize);
- view.setLines(1);
-// view.setTypeface(Typeface.SANS_SERIF, Typeface.BOLD);
- view.setTypeface(Typeface.SANS_SERIF, Typeface.NORMAL);
- }
-
- /**
- * Loads a text view from view
- * @param view the text view or layout containing it
- * @param textResource the text resource Id in layout
- * @return the loaded text view
- */
- private TextView getTextView(View view, int textResource) {
- TextView text = null;
- try {
- if (textResource == NO_RESOURCE && view instanceof TextView) {
- text = (TextView) view;
- } else if (textResource != NO_RESOURCE) {
- text = (TextView) view.findViewById(textResource);
- }
- } catch (ClassCastException e) {
- Log.e("AbstractWheelAdapter", "You must supply a resource ID for a TextView");
- throw new IllegalStateException(
- "AbstractWheelAdapter requires the resource ID to be a TextView", e);
- }
-
- return text;
- }
-
- /**
- * Loads view from resources
- * @param resource the resource Id
- * @return the loaded view or null if resource is not set
- */
- private View getView(int resource, ViewGroup parent) {
- switch (resource) {
- case NO_RESOURCE:
- return null;
- case TEXT_VIEW_ITEM_RESOURCE:
- return new TextView(context);
- default:
- return inflater.inflate(resource, parent, false);
- }
- }
-}