// Path: app/src/main/java/com/smbtv/ui/activity/fragment/DialogFragment.java
// public class DialogFragment extends GuidedStepFragment {
// 
//     private static final String TAG = DialogFragment.class.getName();
// 
//     private DialogConfig mConfig;
//     private DialogHandler mHandler;
// 
//     public void setConfig(DialogConfig config) {
//         this.mConfig = config;
//     }
// 
//     public void setHandler(DialogHandler mHandler) {
//         this.mHandler = mHandler;
//     }
// 
//     @NonNull
//     @Override
//     public GuidanceStylist.Guidance onCreateGuidance(Bundle savedInstanceState) {
// 
//         Log.d(TAG, "onCreateGuidance");
// 
//         Drawable icon = getActivity().getDrawable(R.drawable.ic_warning);
//         return new GuidanceStylist.Guidance(mConfig.getTitle(), mConfig.getDescription(), mConfig.getBeatcrumb(), icon);
//     }
// 
//     @Override
//     public void onCreateActions(@NonNull List<GuidedAction> actions, Bundle savedInstanceState) {
// 
//         Log.d(TAG, "onCreateActions");
// 
//         for (DialogConfig.DialogItem item : mConfig.getItems()) {
//             actions.add(GuidedActionBuilder.text(item.getId(), item.getTitle(), item.getDescription()));
//         }
//     }
// 
//     @Override
//     public void onGuidedActionClicked(GuidedAction action) {
// 
//         Log.d(TAG, "onGuidedActionClicked");
// 
//         for (DialogConfig.DialogItem item : mConfig.getItems()) {
//             if (item.getId() == action.getId()) {
//                 mHandler.onSelection(item);
//                 break;
//             }
//         }
//     }
// 
// }
// 
// Path: app/src/main/java/com/smbtv/ui/activity/handler/DialogHandler.java
// public interface DialogHandler {
// 
//     void onSelection(DialogConfig.DialogItem itemSelected);
// }
// 
// Path: app/src/main/java/com/smbtv/ui/components/DialogConfig.java
// public class DialogConfig {
// 
//     private String title;
//     private String description;
//     private String beatcrumb;
//     private List<DialogItem> items = new ArrayList<>();
// 
//     public DialogConfig() {
//         super();
//     }
// 
//     public String getTitle() {
//         return title;
//     }
// 
//     public void setTitle(String title) {
//         this.title = title;
//     }
// 
//     public String getDescription() {
//         return description;
//     }
// 
//     public void setDescription(String description) {
//         this.description = description;
//     }
// 
//     public List<DialogItem> getItems() {
//         return items;
//     }
// 
//     public String getBeatcrumb() {
//         return beatcrumb;
//     }
// 
//     public void setBeatcrumb(String beatcrumb) {
//         this.beatcrumb = beatcrumb;
//     }
// 
//     public void addItem(DialogItem item) {
//         this.items.add(item);
//     }
// 
// 
//     public static class DialogItem {
// 
//         private int id;
//         private String title;
//         private String description;
// 
//         public DialogItem(int id, String title) {
// 
//             this.id = id;
//             this.title = title;
//         }
// 
//         public int getId() {
//             return id;
//         }
// 
//         public void setId(int id) {
//             this.id = id;
//         }
// 
//         public String getTitle() {
//             return title;
//         }
// 
//         public void setTitle(String title) {
//             this.title = title;
//         }
// 
//         public String getDescription() {
//             return description;
//         }
// 
//         public void setDescription(String description) {
//             this.description = description;
//         }
// 
//     }
// }


import android.app.Activity;
import android.os.Bundle;
import android.support.v17.leanback.app.GuidedStepFragment;
import com.smbtv.R;
import com.smbtv.ui.activity.fragment.DialogFragment;
import com.smbtv.ui.activity.handler.DialogHandler;
import com.smbtv.ui.components.DialogConfig;
package com.smbtv.ui.activity;



public abstract class GenericDialogActivity extends Activity implements DialogHandler {

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_dialog);

        if (null == savedInstanceState) {

// Path: app/src/main/java/com/smbtv/ui/activity/fragment/DialogFragment.java
// public class DialogFragment extends GuidedStepFragment {
// 
//     private static final String TAG = DialogFragment.class.getName();
// 
//     private DialogConfig mConfig;
//     private DialogHandler mHandler;
// 
//     public void setConfig(DialogConfig config) {
//         this.mConfig = config;
//     }
// 
//     public void setHandler(DialogHandler mHandler) {
//         this.mHandler = mHandler;
//     }
// 
//     @NonNull
//     @Override
//     public GuidanceStylist.Guidance onCreateGuidance(Bundle savedInstanceState) {
// 
//         Log.d(TAG, "onCreateGuidance");
// 
//         Drawable icon = getActivity().getDrawable(R.drawable.ic_warning);
//         return new GuidanceStylist.Guidance(mConfig.getTitle(), mConfig.getDescription(), mConfig.getBeatcrumb(), icon);
//     }
// 
//     @Override
//     public void onCreateActions(@NonNull List<GuidedAction> actions, Bundle savedInstanceState) {
// 
//         Log.d(TAG, "onCreateActions");
// 
//         for (DialogConfig.DialogItem item : mConfig.getItems()) {
//             actions.add(GuidedActionBuilder.text(item.getId(), item.getTitle(), item.getDescription()));
//         }
//     }
// 
//     @Override
//     public void onGuidedActionClicked(GuidedAction action) {
// 
//         Log.d(TAG, "onGuidedActionClicked");
// 
//         for (DialogConfig.DialogItem item : mConfig.getItems()) {
//             if (item.getId() == action.getId()) {
//                 mHandler.onSelection(item);
//                 break;
//             }
//         }
//     }
// 
// }
// 
// Path: app/src/main/java/com/smbtv/ui/activity/handler/DialogHandler.java
// public interface DialogHandler {
// 
//     void onSelection(DialogConfig.DialogItem itemSelected);
// }
// 
// Path: app/src/main/java/com/smbtv/ui/components/DialogConfig.java
// public class DialogConfig {
// 
//     private String title;
//     private String description;
//     private String beatcrumb;
//     private List<DialogItem> items = new ArrayList<>();
// 
//     public DialogConfig() {
//         super();
//     }
// 
//     public String getTitle() {
//         return title;
//     }
// 
//     public void setTitle(String title) {
//         this.title = title;
//     }
// 
//     public String getDescription() {
//         return description;
//     }
// 
//     public void setDescription(String description) {
//         this.description = description;
//     }
// 
//     public List<DialogItem> getItems() {
//         return items;
//     }
// 
//     public String getBeatcrumb() {
//         return beatcrumb;
//     }
// 
//     public void setBeatcrumb(String beatcrumb) {
//         this.beatcrumb = beatcrumb;
//     }
// 
//     public void addItem(DialogItem item) {
//         this.items.add(item);
//     }
// 
// 
//     public static class DialogItem {
// 
//         private int id;
//         private String title;
//         private String description;
// 
//         public DialogItem(int id, String title) {
// 
//             this.id = id;
//             this.title = title;
//         }
// 
//         public int getId() {
//             return id;
//         }
// 
//         public void setId(int id) {
//             this.id = id;
//         }
// 
//         public String getTitle() {
//             return title;
//         }
// 
//         public void setTitle(String title) {
//             this.title = title;
//         }
// 
//         public String getDescription() {
//             return description;
//         }
// 
//         public void setDescription(String description) {
//             this.description = description;
//         }
// 
//     }
// }


// Path: app/src/main/java/com/smbtv/ui/activity/GenericDialogActivity.java
import android.app.Activity;
import android.os.Bundle;
import android.support.v17.leanback.app.GuidedStepFragment;
import com.smbtv.R;
import com.smbtv.ui.activity.fragment.DialogFragment;
import com.smbtv.ui.activity.handler.DialogHandler;
import com.smbtv.ui.components.DialogConfig;

package com.smbtv.ui.activity;



public abstract class GenericDialogActivity extends Activity implements DialogHandler {

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_dialog);

        if (null == savedInstanceState) {

            DialogFragment fragment = new DialogFragment();