1ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko/*
2ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * Copyright (C) 2015 The Android Open Source Project
3ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko *
4ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * Licensed under the Apache License, Version 2.0 (the "License");
5ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * you may not use this file except in compliance with the License.
6ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * You may obtain a copy of the License at
7ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko *
8ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko *      http://www.apache.org/licenses/LICENSE-2.0
9ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko *
10ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * Unless required by applicable law or agreed to in writing, software
11ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * distributed under the License is distributed on an "AS IS" BASIS,
12ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * See the License for the specific language governing permissions and
14ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * limitations under the License.
15ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko */
16ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
17ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkopackage com.android.usbtuner.setup;
18ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
19ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport android.os.Bundle;
20ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport android.support.annotation.NonNull;
21ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport android.support.v17.leanback.widget.GuidanceStylist.Guidance;
22ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport android.support.v17.leanback.widget.GuidedAction;
23ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
24ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport com.android.tv.common.ui.setup.SetupGuidedStepFragment;
25ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport com.android.tv.common.ui.setup.SetupMultiPaneFragment;
26ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport com.android.usbtuner.R;
27ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
28ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport java.util.List;
29ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport java.util.TimeZone;
30ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
31ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko/**
32ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * A fragment for connection type selection.
33ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko */
34ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkopublic class ConnectionTypeFragment extends SetupMultiPaneFragment {
35ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    public static final String ACTION_CATEGORY =
36ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko            "com.android.usbtuner.setup.ConnectionTypeFragment";
37ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
38ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    @Override
39ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    protected SetupGuidedStepFragment onCreateContentFragment() {
40ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        return new ContentFragment();
41ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    }
42ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
43ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    @Override
44ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    protected String getActionCategory() {
45ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        return ACTION_CATEGORY;
46ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    }
47ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
48ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    @Override
49ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    protected boolean needsDoneButton() {
50ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        return false;
51ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    }
52ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
53ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    public static class ContentFragment extends SetupGuidedStepFragment {
54ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
55ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        @NonNull
56ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        @Override
57ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        public Guidance onCreateGuidance(Bundle savedInstanceState) {
58ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko            return new Guidance(getString(R.string.ut_connection_title),
59ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko                    getString(R.string.ut_connection_description),
60ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko                    getString(R.string.ut_setup_breadcrumb), null);
61ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        }
62ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
63ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        @Override
64ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        public void onCreateActions(@NonNull List<GuidedAction> actions,
65ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko                Bundle savedInstanceState) {
66ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko            String[] choices = getResources().getStringArray(R.array.ut_connection_choices);
67ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko            int length = choices.length - 1;
68ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko            int startOffset = 0;
69ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko            for (int i = 0; i < length; ++i) {
70ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko                actions.add(new GuidedAction.Builder(getActivity())
71ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko                        .id(startOffset + i)
72ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko                        .title(choices[i])
73ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko                        .build());
74ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko            }
75ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        }
76ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko
77ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        @Override
78ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        protected String getActionCategory() {
79ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko            return ACTION_CATEGORY;
80ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko        }
81ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko    }
82ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko}
83