/**
* galaxy inc.
* meetup client for android
*/
package com.galaxy.meetup.client.android.ui.view;
import java.util.ArrayList;
import java.util.List;
import android.content.Context;
import android.content.res.Resources;
import android.text.TextUtils;
import android.util.AttributeSet;
import android.view.View;
import android.widget.TextView;
import com.galaxy.meetup.client.android.R;
/**
*
* @author sihai
*
*/
public class EventDetailsOptionTitleDescription extends ExactLayout {
private static int sDescriptionColor;
private static float sDescriptionSize;
private static boolean sInitialized;
private static int sTitleColor;
private static float sTitleSize;
private int mActiveDescriptionCount;
private AttributeSet mAttrs;
private Context mContext;
private int mDefStyle;
private ArrayList mDescriptionViews;
private TextView mTitle;
public EventDetailsOptionTitleDescription(Context context)
{
super(context);
mDescriptionViews = new ArrayList();
init(context, null, 0);
}
public EventDetailsOptionTitleDescription(Context context, AttributeSet attributeset)
{
super(context, attributeset);
mDescriptionViews = new ArrayList();
init(context, attributeset, 0);
}
public EventDetailsOptionTitleDescription(Context context, AttributeSet attributeset, int i)
{
super(context, attributeset, i);
mDescriptionViews = new ArrayList();
init(context, attributeset, i);
}
private void init(Context context, AttributeSet attributeset, int i)
{
mContext = context;
mAttrs = attributeset;
mDefStyle = i;
Resources resources = context.getResources();
if(!sInitialized)
{
sTitleColor = resources.getColor(R.color.event_card_details_option_title_color);
sTitleSize = resources.getDimension(R.dimen.event_card_details_option_title_size);
sDescriptionColor = resources.getColor(R.color.event_card_details_option_description_color);
sDescriptionSize = resources.getDimension(R.dimen.event_card_details_option_description_size);
sInitialized = true;
}
mTitle = TextViewUtils.createText(context, attributeset, i, sTitleSize, sTitleColor, true, true);
addView(mTitle);
}
public final void bind(String s, String s1)
{
ArrayList arraylist = new ArrayList();
if(s == null)
s = s1;
else
arraylist.add(s1);
bind(s, ((List) (arraylist)));
}
public final void bind(String s, List list)
{
mTitle.setText(s);
TextView textview = mTitle;
byte byte0;
if(TextUtils.isEmpty(mTitle.getText()))
byte0 = 8;
else
byte0 = 0;
textview.setVisibility(byte0);
for(int i = -1 + mDescriptionViews.size(); i >= 0; i--)
removeView((View)mDescriptionViews.get(i));
mActiveDescriptionCount = 0;
if(list != null)
{
int j = list.size();
for(int k = 0; k < j; k++)
{
if(TextUtils.isEmpty((String)list.get(k)))
continue;
if(k > -1 + mDescriptionViews.size())
mDescriptionViews.add(TextViewUtils.createText(mContext, mAttrs, mDefStyle, sDescriptionSize, sDescriptionColor, false, true));
TextView textview1 = (TextView)mDescriptionViews.get(k);
textview1.setText((CharSequence)list.get(k));
addView(textview1);
mActiveDescriptionCount = 1 + mActiveDescriptionCount;
}
}
}
public final void clear()
{
mTitle.setText(null);
for(int i = -1 + mDescriptionViews.size(); i >= 0; i--)
removeView((View)mDescriptionViews.get(i));
mActiveDescriptionCount = 0;
}
protected void measureChildren(int i, int j)
{
int k = android.view.View.MeasureSpec.getSize(i);
int l = android.view.View.MeasureSpec.getSize(j);
measure(mTitle, k, 0x80000000, l, 0);
setCorner(mTitle, 0, 0);
int i1;
int j1;
if(TextUtils.isEmpty(mTitle.getText()))
i1 = 0;
else
i1 = mTitle.getMeasuredHeight();
j1 = i1 + 0;
for(int k1 = 0; k1 < mActiveDescriptionCount; k1++)
{
TextView textview = (TextView)mDescriptionViews.get(k1);
measure(textview, k, 0x80000000, l, 0);
setCorner(textview, 0, j1);
j1 += textview.getMeasuredHeight();
}
}
}