⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 basicprofiliecontrol.cs

📁 破解的飞信源代码
💻 CS
📖 第 1 页 / 共 4 页
字号:
namespace Imps.Client.Pc.UIContactList
{
    using Imps.Client.Core;
    using Imps.Client.Pc;
    using Imps.Client.Pc.BizControls;
    using Imps.Client.Pc.Controls;
    using Imps.Client.Pc.WndlessControls;
    using Imps.Client.Resource;
    using Imps.Client.Utils;
    using Imps.Common;
    using System;
    using System.ComponentModel;
    using System.Drawing;
    using System.Windows.Forms;

    public class BasicProfilieControl : ProfileControlBase
    {
        private Imps.Client.Core.Contact _contact;
        private WndlessControlCollection _controlCollection;
        private IFrameworkWindow _iFrameworkWindow;
        private WndlessScorePictureBox _scoreBox;
        private XButton btnSaveP;
        private XButton btnUserP;
        private XComboBox cboGender;
        private CheckBox chkOnlineNotify;
        private IContainer components;
        private GroupBox gbSetting;
        private GroupBox groupBoxMain;
        private XLabel label3;
        private XLabel label6;
        private XLabel lblName_Nav;
        private XLabel lblNickName_Nav;
        private XLabel lblProvinceCity_Nav;
        private XLabel lblSex_Nav;
        private LinkLabel LinkFeike;
        private ToolStripMenuItem m_menu_edit_copy;
        private ToolStripMenuItem m_menu_edit_selectall;
        private menu_widget m_menu_redit;
        private menu_widget m_menu_wedit;
        private ToolStripMenuItem m_menu_wedit_copy;
        private ToolStripMenuItem m_menu_wedit_cut;
        private ToolStripMenuItem m_menu_wedit_delete;
        private ToolStripMenuItem m_menu_wedit_paste;
        private ToolStripMenuItem m_menu_wedit_selectall;
        private ToolStripMenuItem m_menu_wedit_undo;
        private ChatEditCtrlManager m_txtNicknameMng;
        private ChatEditCtrlManager m_xTextBoxBackNameMng;
        private ChatEditCtrlManager m_xTextBoxMoodPhraseMng;
        private PictureBox pbCrbt;
        private SaveFileDialog saveFileDialog;
        private ToolStripSeparator toolStripSeparator1;
        private ToolStripSeparator toolStripSeparator2;
        private XTextBox txtName;
        private ChatRichTextBox txtNickname;
        private XLabel xLabel1;
        private XLabel xLabel2;
        private XLabel xLabel3;
        private XLabel xLabel5;
        private XLabel xLabelCrbt;
        private XLabel xLabelSysAlert;
        private WndlessPortrait xpbProtrait;
        private XTextBox xtbCity;
        private XTextBox xtbProvince;
        private ChatRichTextBox xTextBoxBackName;
        private XTextBox xTextBoxGroupName;
        private ChatRichTextBox xTextBoxMoodPhrase;

        public BasicProfilieControl(IFrameworkWindow frameworkWnd, Imps.Client.Core.Contact contact)
        {
            this._iFrameworkWindow = frameworkWnd;
            this._contact = contact;
            this.InitializeComponent();
            this.InitializeWndlessControl();
            this.xTextBoxMoodPhrase.MaxLength = 0x100;
            try
            {
                this.m_txtNicknameMng = new ChatEditCtrlManager(this.txtNickname, true);
                this.m_txtNicknameMng.DefaultTextFont = SystemFonts.get_DefaultFont();
                this.txtNickname.Font = this.Font;
                this.m_txtNicknameMng.DefaultTextFont = this.Font;
                this.txtNickname.MouseDown += new MouseEventHandler(this.on_richedit_mousedown);
                this.m_txtNicknameMng.ConvertString = new DelegateConvert(StringHelper.EncodString);
                if (EnvHelper.DynamicGifCtlRegistered)
                {
                    this.m_txtNicknameMng.ConvertSympol = true;
                }
                this.m_txtNicknameMng.SympolSize = new Size(14, 14);
                this.txtNickname.DetectUrls = false;
                this.m_xTextBoxMoodPhraseMng = new ChatEditCtrlManager(this.xTextBoxMoodPhrase, true);
                this.m_xTextBoxMoodPhraseMng.DefaultTextFont = this.Font;
                this.xTextBoxMoodPhrase.Font = this.Font;
                this.xTextBoxMoodPhrase.MouseDown += new MouseEventHandler(this.on_richedit_mousedown);
                this.m_xTextBoxMoodPhraseMng.ConvertString = new DelegateConvert(StringHelper.EncodString);
                if (EnvHelper.DynamicGifCtlRegistered)
                {
                    this.m_xTextBoxMoodPhraseMng.ConvertSympol = true;
                }
                this.m_xTextBoxMoodPhraseMng.SympolSize = new Size(14, 14);
                this.m_xTextBoxBackNameMng = new ChatEditCtrlManager(this.xTextBoxBackName, false);
                this.m_xTextBoxBackNameMng.DefaultTextFont = this.Font;
                this.xTextBoxBackName.Font = this.Font;
                this.m_xTextBoxBackNameMng.ConvertString = new DelegateConvert(StringHelper.EncodString);
                if (EnvHelper.DynamicGifCtlRegistered)
                {
                    this.m_xTextBoxBackNameMng.ConvertSympol = true;
                }
                this.m_xTextBoxBackNameMng.SympolSize = new Size(14, 14);
                this.xTextBoxMoodPhrase.DetectUrls = false;
                this.xTextBoxGroupName.Text = string.Empty;
            }
            catch (Exception exception)
            {
                ClientLogger.WriteException(exception);
            }
            this.HandleUiChanged();
            this.xLabelCrbt.Text = string.Empty;
            this.pbCrbt.Image = ImpsIcons.CrbtToMe;
            this.xTextBoxBackName.MaxLength = 0x40;
            this.btnSaveP.Enabled = contact.CanSaveAndUseMyPortrait;
            this.btnUserP.Enabled = contact.CanSaveAndUseMyPortrait;
        }

        private void AddStar()
        {
        }

        private void BasicProfilieControl_Load(object sender, EventArgs e)
        {
            this.chkOnlineNotify.Enabled = this._iFrameworkWindow.AccountManager.CurrentUser.Configuration.UserSetting.NotifyWinodwSetting.OnlineNotify.OriginalValue == 2;
            if (!this._contact.EnableEditUserSetProfile)
            {
                this.xTextBoxBackName.Enabled = false;
            }
            if ((this._contact.Type == ContactType.ChatFriend) || (this._contact.Type == ContactType.MobileBuddy))
            {
                this.chkOnlineNotify.Visible = false;
            }
            else
            {
                this.chkOnlineNotify.Visible = true;
            }
            this.xLabel5.Visible = this._contact.EnableViewFeike;
            this.LinkFeike.Visible = this._contact.EnableViewFeike;
            this.xTextBoxBackName.Focus();
        }

        private void btnSaveP_Click(object sender, EventArgs e)
        {
            PortraitExHelper.SaveContactPortrait(this.saveFileDialog, this._contact, this);
        }

        private void btnUserP_Click(object sender, EventArgs e)
        {
            PortraitExHelper.UseContactPortrait(this.CurrentUser, this._contact, this._iFrameworkWindow, this);
        }

        public override bool CheckUserInput()
        {
            if (this.txtName.Text.Trim().Length > 0x40)
            {
                this._iFrameworkWindow.UnifiedMessageBox.ShowInfo(base.FindForm(), StringTable.PersonalInfo.MsgPleaseInputName);
                return false;
            }
            return true;
        }

        public override bool ControlLoad()
        {
            this._contact.PersonalInfo.PropertiesChanged += new EventHandler<PropertiesChangedEventArgs>(this, (IntPtr) this.PersonalInfo_PropertiesChanged);
            this._contact.Presence.PropertiesChanged += new EventHandler<PropertiesChangedEventArgs>(this, (IntPtr) this.Presence_PropertiesChanged);
            return base.ControlLoad();
        }

        public override bool ControlUnload()
        {
            this._contact.PersonalInfo.PropertiesChanged -= new EventHandler<PropertiesChangedEventArgs>(this, (IntPtr) this.PersonalInfo_PropertiesChanged);
            this._contact.Presence.PropertiesChanged -= new EventHandler<PropertiesChangedEventArgs>(this, (IntPtr) this.Presence_PropertiesChanged);
            return base.ControlUnload();
        }

        protected override void Dispose(bool disposing)
        {
            if (disposing && (this.components != null))
            {
                this.components.Dispose();
            }
            base.Dispose(disposing);
        }

        protected override void HandleUiChanged()
        {
            base.HandleUiChanged();
            this.chkOnlineNotify.CheckedChanged += new EventHandler(this.UIData_Changed);
            this.xTextBoxBackName.TextChanged += new EventHandler(this.UIData_Changed);
        }

        private void InitializeComponent()
        {
            this.components = new Container();
            ComponentResourceManager manager = new ComponentResourceManager(typeof(BasicProfilieControl));
            this.lblNickName_Nav = new XLabel();
            this.lblName_Nav = new XLabel();
            this.txtName = new XTextBox();
            this.lblSex_Nav = new XLabel();
            this.lblProvinceCity_Nav = new XLabel();
            this.label3 = new XLabel();
            this.xTextBoxBackName = new ChatRichTextBox();
            this.m_menu_wedit = new menu_widget(this.components);
            this.m_menu_wedit_undo = new ToolStripMenuItem();
            this.toolStripSeparator1 = new ToolStripSeparator();
            this.m_menu_wedit_cut = new ToolStripMenuItem();
            this.m_menu_wedit_copy = new ToolStripMenuItem();
            this.m_menu_wedit_paste = new ToolStripMenuItem();
            this.m_menu_wedit_delete = new ToolStripMenuItem();
            this.toolStripSeparator2 = new ToolStripSeparator();
            this.m_menu_wedit_selectall = new ToolStripMenuItem();
            this.chkOnlineNotify = new CheckBox();
            this.txtNickname = new ChatRichTextBox();
            this.m_menu_redit = new menu_widget(this.components);
            this.m_menu_edit_copy = new ToolStripMenuItem();
            this.m_menu_edit_selectall = new ToolStripMenuItem();
            this.label6 = new XLabel();
            this.xTextBoxMoodPhrase = new ChatRichTextBox();
            this.xLabel1 = new XLabel();
            this.xTextBoxGroupName = new XTextBox();
            this.groupBoxMain = new GroupBox();
            this.xLabelCrbt = new XLabel();
            this.pbCrbt = new PictureBox();
            this.btnSaveP = new XButton();
            this.btnUserP = new XButton();
            this.cboGender = new XComboBox();
            this.xLabel3 = new XLabel();
            this.xLabel2 = new XLabel();
            this.xtbCity = new XTextBox();
            this.xtbProvince = new XTextBox();
            this.gbSetting = new GroupBox();
            this.xLabelSysAlert = new XLabel();
            this.saveFileDialog = new SaveFileDialog();
            this.xLabel5 = new XLabel();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -