package com.ioabsoftware.gameraven.views.rowview;
import android.content.Context;
import android.text.Html;
import android.text.util.Linkify;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.widget.TextView;
import com.ioabsoftware.gameraven.R;
import com.ioabsoftware.gameraven.views.BaseRowData;
import com.ioabsoftware.gameraven.views.BaseRowView;
import com.ioabsoftware.gameraven.views.RowType;
import com.ioabsoftware.gameraven.views.rowdata.UserDetailRowData;
public class UserDetailRowView extends BaseRowView {
TextView tag, ID, level, creation, lVisit, karma, amp, sig;
UserDetailRowData myData;
private static float textSize = 0;
public UserDetailRowView(Context context) {
super(context);
}
public UserDetailRowView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public UserDetailRowView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
protected void init(Context context) {
myType = RowType.USER_DETAIL;
LayoutInflater.from(context).inflate(R.layout.userdetailview, this, true);
tag = (TextView) findViewById(R.id.udTag);
ID = (TextView) findViewById(R.id.udID);
level = (TextView) findViewById(R.id.udLevel);
creation = (TextView) findViewById(R.id.udCreation);
lVisit = (TextView) findViewById(R.id.udLVisit);
karma = (TextView) findViewById(R.id.udKarma);
amp = (TextView) findViewById(R.id.udAMP);
sig = (TextView) findViewById(R.id.udSig);
if (textSize == 0)
textSize = ID.getTextSize();
}
@Override
protected void retheme() {
tag.setTextSize(PX, textSize * myScale);
ID.setTextSize(PX, textSize * myScale);
level.setTextSize(PX, textSize * myScale);
creation.setTextSize(PX, textSize * myScale);
lVisit.setTextSize(PX, textSize * myScale);
karma.setTextSize(PX, textSize * myScale);
amp.setTextSize(PX, textSize * myScale);
sig.setTextSize(PX, textSize * myScale);
findViewById(R.id.udTagSep).setBackgroundColor(myColor);
findViewById(R.id.udIDSep).setBackgroundColor(myColor);
findViewById(R.id.udLevelSep).setBackgroundColor(myColor);
findViewById(R.id.udCreationSep).setBackgroundColor(myColor);
findViewById(R.id.udLVisitSep).setBackgroundColor(myColor);
findViewById(R.id.udSigSep).setBackgroundColor(myColor);
findViewById(R.id.udKarmaSep).setBackgroundColor(myColor);
findViewById(R.id.udAMPSep).setBackgroundColor(myColor);
sig.setLinkTextColor(myColor);
}
@Override
public void showView(BaseRowData data) {
if (data.getRowType() != myType)
throw new IllegalArgumentException("data RowType does not match myType");
myData = (UserDetailRowData) data;
if (!myData.getTagText().isEmpty()) {
findViewById(R.id.udTagWrapper).setVisibility(VISIBLE);
tag.setText(myData.getTagText());
} else
findViewById(R.id.udTagWrapper).setVisibility(GONE);
ID.setText(myData.getID());
level.setText(Html.fromHtml(myData.getLevel()));
creation.setText(myData.getCreation());
lVisit.setText(myData.getLastVisit());
karma.setText(myData.getKarma());
amp.setText(myData.getAMP());
if (myData.getSig() != null) {
findViewById(R.id.udSigWrapper).setVisibility(VISIBLE);
sig.setText(Html.fromHtml(myData.getSig()));
Linkify.addLinks(sig, Linkify.WEB_URLS);
} else
findViewById(R.id.udSigWrapper).setVisibility(GONE);
}
}