Simplify constructor

pull/30/head
Alinson S. Xavier 10 years ago
parent 49af55a2de
commit 0c00e9ec2d

@ -19,7 +19,6 @@ package org.isoron.uhabits.fragments;
import android.app.Activity; import android.app.Activity;
import android.app.Fragment; import android.app.Fragment;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.graphics.Typeface;
import android.os.Bundle; import android.os.Bundle;
import android.preference.PreferenceManager; import android.preference.PreferenceManager;
import android.view.ActionMode; import android.view.ActionMode;
@ -67,104 +66,66 @@ public class ListHabitsFragment extends Fragment
OnClickListener, HabitListLoader.Listener, AdapterView.OnItemLongClickListener, OnClickListener, HabitListLoader.Listener, AdapterView.OnItemLongClickListener,
HabitSelectionCallback.Listener HabitSelectionCallback.Listener
{ {
public interface OnHabitClickListener
{
void onHabitClicked(Habit habit);
}
private HabitListAdapter adapter;
private DragSortListView listView;
private ReplayableActivity activity;
private TextView tvNameHeader;
private LinearLayout llButtonsHeader;
long lastLongClick = 0; long lastLongClick = 0;
private View llEmpty;
private OnHabitClickListener habitClickListener;
private boolean isShortToggleEnabled; private boolean isShortToggleEnabled;
private HabitListLoader loader;
private boolean showArchived; private boolean showArchived;
private SharedPreferences prefs;
private ActionMode actionMode; private ActionMode actionMode;
private List<Integer> selectedPositions; private HabitListAdapter adapter;
private ProgressBar progressBar; private HabitListLoader loader;
private HintManager hintManager; private HintManager hintManager;
private ListHabitsHelper helper; private ListHabitsHelper helper;
private List<Integer> selectedPositions;
private OnHabitClickListener habitClickListener;
private ReplayableActivity activity;
private SharedPreferences prefs;
private DragSortListView listView;
private LinearLayout llButtonsHeader;
private ProgressBar progressBar;
private View llEmpty;
@Override @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) Bundle savedInstanceState)
{ {
View view = inflater.inflate(R.layout.list_habits_fragment, container, false);
View llHint = view.findViewById(R.id.llHint);
TextView tvStarEmpty = (TextView) view.findViewById(R.id.tvStarEmpty);
listView = (DragSortListView) view.findViewById(R.id.listView);
llButtonsHeader = (LinearLayout) view.findViewById(R.id.llButtonsHeader);
llEmpty = view.findViewById(R.id.llEmpty);
progressBar = (ProgressBar) view.findViewById(R.id.progressBar);
selectedPositions = new LinkedList<>(); selectedPositions = new LinkedList<>();
loader = new HabitListLoader(); loader = new HabitListLoader();
helper = new ListHabitsHelper(activity, loader); helper = new ListHabitsHelper(activity, loader);
hintManager = new HintManager(activity, llHint);
loader.setListener(this); loader.setListener(this);
loader.setCheckmarkCount(helper.getButtonCount()); loader.setCheckmarkCount(helper.getButtonCount());
View view = inflater.inflate(R.layout.list_habits_fragment, container, false);
tvNameHeader = (TextView) view.findViewById(R.id.tvNameHeader);
progressBar = (ProgressBar) view.findViewById(R.id.progressBar);
loader.setProgressBar(progressBar); loader.setProgressBar(progressBar);
llHint.setOnClickListener(this);
tvStarEmpty.setTypeface(helper.getFontawesome());
adapter = new HabitListAdapter(getActivity(), loader); adapter = new HabitListAdapter(getActivity(), loader);
adapter.setSelectedPositions(selectedPositions); adapter.setSelectedPositions(selectedPositions);
adapter.setOnCheckmarkClickListener(this); adapter.setOnCheckmarkClickListener(this);
adapter.setOnCheckmarkLongClickListener(this); adapter.setOnCheckmarkLongClickListener(this);
listView = (DragSortListView) view.findViewById(R.id.listView); DragSortListView.DragListener dragListener = new HabitsDragListener();
DragSortController dragSortController = new HabitsDragSortController();
listView.setAdapter(adapter); listView.setAdapter(adapter);
listView.setOnItemClickListener(this); listView.setOnItemClickListener(this);
listView.setOnItemLongClickListener(this); listView.setOnItemLongClickListener(this);
listView.setDropListener(this); listView.setDropListener(this);
listView.setDragListener(new DragSortListView.DragListener() listView.setDragListener(dragListener);
{
@Override
public void drag(int from, int to)
{
}
@Override
public void startDrag(int position)
{
selectItem(position);
}
});
DragSortController dragSortController = new DragSortController(listView)
{
@Override
public View onCreateFloatView(int position)
{
return adapter.getView(position, null, null);
}
@Override
public void onDestroyFloatView(View floatView)
{
}
};
dragSortController.setRemoveEnabled(false);
listView.setFloatViewManager(dragSortController); listView.setFloatViewManager(dragSortController);
listView.setDragEnabled(true); listView.setDragEnabled(true);
listView.setLongClickable(true); listView.setLongClickable(true);
View llHint = view.findViewById(R.id.llHint);
llHint.setOnClickListener(this);
hintManager = new HintManager(activity, llHint);
((TextView) view.findViewById(R.id.tvStarEmpty)).setTypeface(helper.getFontawesome());
llButtonsHeader = (LinearLayout) view.findViewById(R.id.llButtonsHeader);
llEmpty = view.findViewById(R.id.llEmpty);
loader.updateAllHabits(true); loader.updateAllHabits(true);
setHasOptionsMenu(true); setHasOptionsMenu(true);
@ -405,4 +366,43 @@ public class ListHabitsFragment extends Fragment
adapter.notifyDataSetChanged(); adapter.notifyDataSetChanged();
listView.setDragEnabled(true); listView.setDragEnabled(true);
} }
public interface OnHabitClickListener
{
void onHabitClicked(Habit habit);
}
private class HabitsDragSortController extends DragSortController
{
public HabitsDragSortController()
{
super(ListHabitsFragment.this.listView);
setRemoveEnabled(false);
}
@Override
public View onCreateFloatView(int position)
{
return adapter.getView(position, null, null);
}
@Override
public void onDestroyFloatView(View floatView)
{
}
}
private class HabitsDragListener implements DragSortListView.DragListener
{
@Override
public void drag(int from, int to)
{
}
@Override
public void startDrag(int position)
{
selectItem(position);
}
}
} }

Loading…
Cancel
Save