package what.whatandroid.comments.dialogs;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.support.v7.app.AlertDialog;
import android.text.method.LinkMovementMethod;
import android.view.ContextThemeWrapper;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TextView;
import what.whatandroid.R;
import what.whatandroid.comments.WhatBBParser;
/**
* Displays hidden text
*/
public class HiddenTextDialog extends DialogFragment {
public static final String TITLE = "what.whatandroid.HIDDEN_TITLE",
TEXT = "what.whatandroid.HIDDEN_TEXT";
/**
* Use this factor method to create a hidden text dialog with some title displaying the desired text
*/
public static HiddenTextDialog newInstance(String title, String text){
HiddenTextDialog dialog = new HiddenTextDialog();
Bundle args = new Bundle();
args.putString(TITLE, title);
args.putString(TEXT, text);
dialog.setArguments(args);
return dialog;
}
public HiddenTextDialog(){
//Required empty ctor
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState){
String title = getArguments().getString(TITLE);
String text = getArguments().getString(TEXT);
if (title == null || title.isEmpty()){
title = "Hidden Text";
}
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
LayoutInflater inflater = getActivity().getLayoutInflater();
View view = inflater.inflate(R.layout.dialog_text, null);
TextView textView = (TextView)view.findViewById(R.id.text);
textView.setTextColor(getActivity().getResources().getColor(R.color.primary_text));
textView.setText(new WhatBBParser().parsebb(text));
textView.setMovementMethod(LinkMovementMethod.getInstance());
builder.setTitle(title)
.setView(view)
.setPositiveButton("Close", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which){
dialog.cancel();
}
});
return builder.create();
}
}