NekoX/TMessagesProj/src/main/java/org/telegram/ui/Cells/TooManyCommunitiesHintCell....

87 lines
3.9 KiB
Java

package org.telegram.ui.Cells;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.PorterDuff;
import android.graphics.PorterDuffColorFilter;
import android.graphics.RectF;
import android.text.TextPaint;
import android.util.TypedValue;
import android.view.Gravity;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.TextView;
import org.telegram.messenger.AndroidUtilities;
import org.telegram.messenger.LocaleController;
import org.telegram.messenger.R;
import org.telegram.ui.ActionBar.Theme;
import org.telegram.ui.Components.LayoutHelper;
public class TooManyCommunitiesHintCell extends FrameLayout {
private ImageView imageView;
private TextView headerTextView;
private TextView messageTextView;
private FrameLayout imageLayout;
public TooManyCommunitiesHintCell(Context context) {
super(context);
imageView = new ImageView(context);
imageView.setColorFilter(new PorterDuffColorFilter(Theme.getColor(Theme.key_chats_nameMessage_threeLines), PorterDuff.Mode.SRC_IN));
headerTextView = new TextView(context);
headerTextView.setTextColor(Theme.getColor(Theme.key_chats_nameMessage_threeLines));
headerTextView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 20);
headerTextView.setTypeface(AndroidUtilities.getTypeface("fonts/rmedium.ttf"));
headerTextView.setGravity(Gravity.CENTER);
addView(headerTextView, LayoutHelper.createFrame(LayoutHelper.MATCH_PARENT, LayoutHelper.WRAP_CONTENT, Gravity.TOP | Gravity.LEFT, 52, 75, 52, 0));
messageTextView = new TextView(context);
messageTextView.setTextColor(Theme.getColor(Theme.key_chats_message));
messageTextView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 14);
messageTextView.setGravity(Gravity.CENTER);
addView(messageTextView, LayoutHelper.createFrame(LayoutHelper.MATCH_PARENT, LayoutHelper.WRAP_CONTENT, Gravity.TOP | Gravity.LEFT, 36, 110, 36, 0));
TextPaint textPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG);
textPaint.setColor(Color.WHITE);
textPaint.setTextSize(AndroidUtilities.dp(12));
textPaint.setTypeface(AndroidUtilities.getTypeface("fonts/rmedium.ttf"));
Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
String s = "500";
imageLayout = new FrameLayout(context) {
RectF rect = new RectF();
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
paint.setColor(Theme.getColor(Theme.key_windowBackgroundWhiteRedText));
canvas.save();
canvas.translate(getMeasuredWidth() - textPaint.measureText(s) - AndroidUtilities.dp(8), AndroidUtilities.dpf2(7f));
rect.set(0, 0, textPaint.measureText(s), textPaint.getTextSize());
rect.inset(-AndroidUtilities.dp(6), -AndroidUtilities.dp(3));
float r = (textPaint.getTextSize()) / 2f + AndroidUtilities.dp(3);
canvas.drawRoundRect(rect, r, r, paint);
canvas.drawText(s, 0, textPaint.getTextSize() - AndroidUtilities.dpf2(2f), textPaint);
canvas.restore();
}
};
imageLayout.setWillNotDraw(false);
imageLayout.addView(imageView, LayoutHelper.createFrame(LayoutHelper.WRAP_CONTENT, LayoutHelper.WRAP_CONTENT, Gravity.CENTER_HORIZONTAL));
addView(imageLayout, LayoutHelper.createFrame(LayoutHelper.WRAP_CONTENT, LayoutHelper.WRAP_CONTENT, Gravity.TOP | Gravity.CENTER_HORIZONTAL, 0, 12, 0, 6));
headerTextView.setText(LocaleController.getString("TooManyCommunities", R.string.TooManyCommunities));
imageView.setImageResource(R.drawable.groups_limit1);
}
public void setMessageText(String message) {
messageTextView.setText(message);
}
}