📄 contact_tip_crbt_page.cs
字号:
namespace Imps.Client.Pc.BizControls
{
using Imps.Client;
using Imps.Client.Core;
using System;
using System.Drawing;
using System.Windows.Forms;
public class contact_tip_crbt_page : contact_tip_page
{
private Crbt m_crbt;
private int m_linespace = 4;
private bool m_show_detail;
private bool m_to_buddy = true;
private static ImageList ms_crbt_to_contact_imgl = ThemeManager.GetImageList(ImpsIcons.CrbtToBuddyIl, 4, 1, false);
private static ImageList ms_crbt_to_me_imgl = ThemeManager.GetImageList(ImpsIcons.CrbtToMeIl, 4, 1, false);
public bool IsValid()
{
if (this.crbt != null)
{
return this.crbt.IsValid();
}
return false;
}
public override void paint(Graphics g, Rectangle canvas)
{
if ((((base.owner != null) && (this.m_crbt != null)) && this.m_crbt.IsValid()) && this.m_show_detail)
{
using (StringFormat fmt = new StringFormat())
{
fmt.Alignment = StringAlignment.Near;
fmt.LineAlignment = StringAlignment.Center;
fmt.FormatFlags |= StringFormatFlags.NoWrap;
fmt.Trimming = StringTrimming.EllipsisCharacter;
if (ImpsResources.GetImage("Images.crbt_song.png").Height < base.owner.Font.Height)
{
int height = base.owner.Font.Height;
}
Rectangle rectangle = Rectangle.FromLTRB(canvas.Left, canvas.Top, canvas.Right, (canvas.Top + (this.size.Height / 2)) - 2);
using (Brush brText = new SolidBrush(base.owner.personal_msg_color))
{
int num2 = (int) (g.MeasureString("歌手:", base.owner.Font).Width + 2f);
Rectangle rcName = Rectangle.FromLTRB(rectangle.Left + base.owner.horizontal_inner_space, rectangle.Top, (rectangle.Left + base.owner.horizontal_inner_space) + num2, rectangle.Bottom);
Rectangle rcValue = Rectangle.FromLTRB(rcName.Right, rcName.Top, rectangle.Right, rectangle.Bottom);
this.paint_line(g, fmt, brText, rectangle, ImpsResources.GetImage("Images.crbt_singer.png"), "歌手:", this.m_crbt.Singer, rcName, rcValue);
rectangle.Offset(0, rectangle.Height);
rcName.Offset(0, rectangle.Height);
rcValue.Offset(0, rectangle.Height);
this.paint_line(g, fmt, brText, rectangle, ImpsResources.GetImage("Images.crbt_price.png"), "价格:", (this.m_crbt is CrbtToBuddy) ? (this.m_crbt as CrbtToBuddy).Price.ToString("#,##0.00 元;(#,##0.00 元);") : string.Empty, rcName, rcValue);
}
}
}
}
private void paint_line(Graphics g, StringFormat fmt, Brush brText, Rectangle canvas, Image img, string name, string value, Rectangle rcName, Rectangle rcValue)
{
using (Brush brush = new SolidBrush(Color.FromArgb(0xeb, 0xeb, 0xeb)))
{
Rectangle rect = Rectangle.FromLTRB(2, canvas.Top + 1, canvas.Right + canvas.Left, canvas.Bottom);
g.FillRectangle(brush, rect);
}
g.DrawString(name, base.owner.Font, brText, rcName, fmt);
g.DrawString(value, base.owner.Font, brText, rcValue, fmt);
}
public Crbt crbt
{
get
{
return this.m_crbt;
}
set
{
this.m_crbt = value;
if ((this.m_crbt != null) && this.m_crbt.IsValid())
{
base.m_title = this.m_crbt.ToneName;
}
}
}
public override Image icon
{
get
{
if (base.icon != null)
{
return base.icon;
}
if (!this.m_to_buddy)
{
return ms_crbt_to_me_imgl.Images[0];
}
return ms_crbt_to_contact_imgl.Images[0];
}
set
{
base.icon = value;
}
}
public bool is_to_buddy
{
get
{
return this.m_to_buddy;
}
set
{
this.m_to_buddy = value;
}
}
public int line_count
{
get
{
return 2;
}
}
public int line_height
{
get
{
if (base.owner != null)
{
return (base.owner.emotion_size.Height + base.owner.inner_space.Height);
}
return 20;
}
}
public bool show_detail
{
get
{
return this.m_show_detail;
}
set
{
this.m_show_detail = value;
}
}
public override Size size
{
get
{
if (base.owner == null)
{
return base.size;
}
return new Size(0, this.line_height * this.line_count);
}
}
public override bool visible
{
get
{
if (this.m_crbt == null)
{
return false;
}
return this.m_crbt.IsValid();
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -