// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov. // Jad home page: http://www.geocities.com/kpdus/jad.html // Decompiler options: braces fieldsfirst space lnc package com.oliodevices.assist.app.fragments; import android.content.res.Resources; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Button; import android.widget.ListView; import android.widget.ToggleButton; import butterknife.ButterKnife; import com.olio.data.object.user.ActivityTimeBuilder; import com.olio.data.object.user.ActivityTimes; import com.oliodevices.assist.app.activities.AssistantActivityCallbacks; import com.oliodevices.assist.app.adapters.CircularAdapter; import com.oliodevices.assist.app.adapters.TimeUnitAdapter; import com.oliodevices.assist.app.core.ActivityTimeUtils; import com.oliodevices.assist.app.views.TimeViewScrollListener; import java.util.ArrayList; // Referenced classes of package com.oliodevices.assist.app.fragments: // AssistantBaseFragment public class AssistantSleepTimesFragment extends AssistantBaseFragment { private static final int DEFAULT_SLEEPING_HOUR = 10; private static final int DEFAULT_SLEEPING_MINUTE = 0; private static final boolean DEFAULT_SLEEP_IS_PM = true; private static final boolean DEFAULT_WAKE_IS_PM = false; private static final int DEFAULT_WAKING_HOUR = 6; private static final int DEFAULT_WAKING_MINUTE = 30; private int mPixelOffset; Button mProceedButton; private TimeViewScrollListener mSleepingHourScrollListener; ListView mSleepingHourView; ToggleButton mSleepingMeridianIndicator; private TimeViewScrollListener mSleepingMinuteScrollListener; ListView mSleepingMinuteView; private TimeViewScrollListener mWakingHourScrollListener; ListView mWakingHourView; ToggleButton mWakingMeridianIndicator; private TimeViewScrollListener mWakingMinuteScrollListener; ListView mWakingMinuteView; public AssistantSleepTimesFragment() { } private TimeViewScrollListener addScrollListenerToListView(ListView listview) { TimeViewScrollListener timeviewscrolllistener = new TimeViewScrollListener(mPixelOffset); listview.setOnScrollListener(timeviewscrolllistener); return timeviewscrolllistener; } private ArrayList buildHourValuesList() { ArrayList arraylist = new ArrayList(); for (int i = 1; i <= 12; i++) { arraylist.add(Integer.valueOf(i)); } return arraylist; } private ArrayList buildMinuteValuesList() { ArrayList arraylist = new ArrayList(); for (int i = 0; i <= 55; i += 5) { arraylist.add(Integer.valueOf(i)); } return arraylist; } private int getSelectedTimeValue(ListView listview) { return ((Integer)listview.getItemAtPosition(listview.getFirstVisiblePosition() + 1)).intValue(); } private void initializeTimeView(ListView listview, ArrayList arraylist, int i) { listview.setAdapter(new CircularAdapter(new TimeUnitAdapter(getActivity(), arraylist))); i = arraylist.indexOf(Integer.valueOf(i)); int j = arraylist.size(); listview.setSelectionFromTop(j * (0x3fffffff / j) + i, mPixelOffset); } private void initializeView() { Object obj = getResources(); mPixelOffset = (((Resources) (obj)).getDimensionPixelSize(0x7f07007a) - ((Resources) (obj)).getDimensionPixelSize(0x7f070073)) / 2; obj = buildHourValuesList(); ArrayList arraylist = buildMinuteValuesList(); initializeTimeView(mSleepingHourView, ((ArrayList) (obj)), 10); initializeTimeView(mSleepingMinuteView, arraylist, 0); initializeTimeView(mWakingHourView, ((ArrayList) (obj)), 6); initializeTimeView(mWakingMinuteView, arraylist, 30); mSleepingHourScrollListener = addScrollListenerToListView(mSleepingHourView); mSleepingMinuteScrollListener = addScrollListenerToListView(mSleepingMinuteView); mWakingHourScrollListener = addScrollListenerToListView(mWakingHourView); mWakingMinuteScrollListener = addScrollListenerToListView(mWakingMinuteView); mSleepingHourScrollListener.setToggleButton(mSleepingMeridianIndicator); mWakingHourScrollListener.setToggleButton(mWakingMeridianIndicator); mSleepingHourView.post(new Runnable() { final AssistantSleepTimesFragment this$0; public void run() { mSleepingMeridianIndicator.setChecked(true); } { this$0 = AssistantSleepTimesFragment.this; super(); } }); mWakingHourView.post(new Runnable() { final AssistantSleepTimesFragment this$0; public void run() { mWakingMeridianIndicator.setChecked(false); } { this$0 = AssistantSleepTimesFragment.this; super(); } }); } private void saveSleepTimes() { boolean flag = mSleepingMeridianIndicator.isChecked(); boolean flag1 = mWakingMeridianIndicator.isChecked(); int k = getSelectedTimeValue(mSleepingHourView); int l = getSelectedTimeValue(mSleepingMinuteView); int i = getSelectedTimeValue(mWakingHourView); int j = getSelectedTimeValue(mWakingMinuteView); k = ActivityTimeUtils.convertToMinutesFromMidnight(k, l, flag); i = ActivityTimeUtils.convertToMinutesFromMidnight(i, j, flag1); com.olio.data.object.user.ActivityTime activitytime = ActivityTimeBuilder.anActivityTime().setName(getString(0x7f06016b)).setStart(k).setEnd(i).setOnMonday(true).setOnTuesday(true).setOnWednesday(true).setOnThursday(true).setOnFriday(true).setOnSaturday(true).setOnSunday(true).build(); android.content.ContentResolver contentresolver = getActivity().getContentResolver(); ActivityTimes activitytimes = ActivityTimes.get(contentresolver); activitytimes.addActivityTime(activitytime); activitytimes.save(contentresolver); mCallbacks.finishSleepTime(); } public int getStage() { return 4; } public boolean isSkipVisible() { return true; } public void onCancelSkip() { mProceedButton.setVisibility(0); } public void onConfirmMeridians() { saveSleepTimes(); } public void onConfirmSkip() { mCallbacks.finishSleepTime(); } public View onCreateView(LayoutInflater layoutinflater, ViewGroup viewgroup, Bundle bundle) { layoutinflater = layoutinflater.inflate(0x7f030034, viewgroup, false); ButterKnife.inject(this, layoutinflater); initializeView(); return layoutinflater; } public void onProceed() { if (mSleepingHourScrollListener.isScrolling() || mSleepingMinuteScrollListener.isScrolling() || mWakingHourScrollListener.isScrolling() || mWakingMinuteScrollListener.isScrolling()) { return; } boolean flag = mSleepingMeridianIndicator.isChecked(); boolean flag1 = mWakingMeridianIndicator.isChecked(); if (!flag && flag1) { mCallbacks.showSleepConfirmation(); return; } else { saveSleepTimes(); return; } } public void onShowSkipConfirmation() { mProceedButton.setVisibility(4); } }