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

📄 createpersonalgroup.cs

📁 破解的飞信源代码
💻 CS
字号:
namespace Imps.Client.Pc
{
    using Imps.Client;
    using Imps.Client.Core;
    using Imps.Client.Pc.BizControls;
    using Imps.Client.Pc.Controls;
    using Imps.Client.Resource;
    using Imps.Client.Utils;
    using System;
    using System.ComponentModel;
    using System.Drawing;
    using System.Windows.Forms;

    public class CreatePersonalGroup : XIMDialog
    {
        private IFrameworkWindow _framework;
        private IContainer components;
        private PGAgreementControl m_ucAgreement;
        private PGCreateGroupControl m_ucCreateDetail;
        private Panel pnlContent;
        private XButton xbtnCancel;
        private XButton xbtnOK;

        public CreatePersonalGroup(IFrameworkWindow framework)
        {
            this._framework = framework;
            this.InitializeComponent();
            base.Controls.SetChildIndex(this.pnlContent, 0);
            this.m_ucAgreement = new PGAgreementControl(this._framework);
            this.m_ucAgreement.Dock = DockStyle.Fill;
            this.pnlContent.Controls.Add(this.m_ucAgreement);
            this.CurrentUser.StatusChanged += new EventHandler<UserSatusChangedEventArgs>(this, (IntPtr) this.CurrentUser_StatusChanged);
        }

        public bool CreatePG()
        {
            try
            {
                PersonalGroupInfo info = new PersonalGroupInfo(null);
                if (this.m_ucCreateDetail.CollectData(info))
                {
                    AsyncBizOperation op = new AsyncBizOperation();
                    op.Successed += new EventHandler(this.op_Successed);
                    op.ImpsError += new EventHandler<ImpsErrorEventArgs>(this, (IntPtr) this.op_ImpsError);
                    this.CurrentUser.PersonalGroupManager.AsyncCreatePersonalGroup(op, info);
                }
                else
                {
                    return false;
                }
            }
            catch (Exception exception)
            {
                ClientLogger.WriteException(exception);
                return false;
            }
            return true;
        }

        private void CurrentUser_StatusChanged(object sender, UserSatusChangedEventArgs e)
        {
            try
            {
                if (e.NewStatus != UserAccountStatus.Logon)
                {
                    base.Close();
                }
            }
            catch (Exception exception)
            {
                ClientLogger.WriteException(exception);
            }
        }

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

        private void InitializeComponent()
        {
            ComponentResourceManager manager = new ComponentResourceManager(typeof(Imps.Client.Pc.CreatePersonalGroup));
            this.pnlContent = new Panel();
            this.xbtnCancel = new XButton();
            this.xbtnOK = new XButton();
            base.SuspendLayout();
            this.pnlContent.BackColor = Color.Transparent;
            this.pnlContent.Location = new System.Drawing.Point(15, 8);
            this.pnlContent.Name = "pnlContent";
            this.pnlContent.set_Padding(new Padding(3));
            this.pnlContent.Size = new Size(0x18e, 380);
            this.pnlContent.TabIndex = 8;
            this.xbtnCancel.Anchor = AnchorStyles.Right | AnchorStyles.Bottom;
            this.xbtnCancel.AutoSizeToImage = false;
            this.xbtnCancel.BackColor = Color.Transparent;
            this.xbtnCancel.BackgroundImageDisable = null;
            this.xbtnCancel.BackgroundImageDown = null;
            this.xbtnCancel.BackgroundImageHover = null;
            this.xbtnCancel.ChangeSkin = true;
            this.xbtnCancel.DialogResult = DialogResult.Cancel;
            this.xbtnCancel.Location = new System.Drawing.Point(0x13d, 0x18a);
            this.xbtnCancel.Name = "xbtnCancel";
            this.xbtnCancel.Size = new Size(0x4b, 0x17);
            this.xbtnCancel.TabIndex = 10;
            this.xbtnCancel.Text = "拒绝";
            this.xbtnCancel.set_UseVisualStyleBackColor(false);
            this.xbtnCancel.Click += new EventHandler(this.xbtnCancel_Click);
            this.xbtnOK.Anchor = AnchorStyles.Right | AnchorStyles.Bottom;
            this.xbtnOK.AutoSizeToImage = false;
            this.xbtnOK.BackColor = Color.Transparent;
            this.xbtnOK.BackgroundImageDisable = null;
            this.xbtnOK.BackgroundImageDown = null;
            this.xbtnOK.BackgroundImageHover = null;
            this.xbtnOK.ChangeSkin = true;
            this.xbtnOK.Location = new System.Drawing.Point(0xec, 0x18a);
            this.xbtnOK.Name = "xbtnOK";
            this.xbtnOK.Size = new Size(0x4b, 0x17);
            this.xbtnOK.TabIndex = 9;
            this.xbtnOK.Text = "接受";
            this.xbtnOK.set_UseVisualStyleBackColor(false);
            this.xbtnOK.Click += new EventHandler(this.xbtnOK_Click_1);
            base.set_AutoScaleDimensions(new SizeF(6f, 13f));
            base.set_AutoScaleMode(1);
            base.BaseHeight = 0x1c6;
            base.BaseWidth = 0x1b9;
            base.CancelButton = this.xbtnCancel;
            base.ClientSize = new Size(0x1b3, 0x1ac);
            base.Controls.Add(this.xbtnCancel);
            base.Controls.Add(this.pnlContent);
            base.Controls.Add(this.xbtnOK);
            base.DisplayLocation = new System.Drawing.Point(0x12, 20);
            base.Icon = (Icon) manager.GetObject("$this.Icon");
            base.Name = "CreatePersonalGroup";
            base.Text = "创建群";
            base.ResumeLayout(false);
        }

        protected override void OnClosed(EventArgs e)
        {
            try
            {
                this.CurrentUser.StatusChanged += new EventHandler<UserSatusChangedEventArgs>(this, (IntPtr) this.CurrentUser_StatusChanged);
            }
            catch (Exception exception)
            {
                ClientLogger.WriteException(exception);
            }
            base.OnClosed(e);
        }

        private void op_ImpsError(object sender, ImpsErrorEventArgs e)
        {
            this._framework.UnifiedMessageBox.ShowError(e.Summary);
            this.xbtnCancel.Enabled = true;
            this.xbtnOK.Enabled = true;
        }

        private void op_Successed(object sender, EventArgs e)
        {
            PersonalGroupInfo info = (sender as AsyncBizOperation).ContextForBiz as PersonalGroupInfo;
            this._framework.UnifiedMessageBox.ShowInfo(string.Format(StringTable.CreatePersonalGroup.MsgCreateSuccess, info.Name.Value, info.Id));
            base.Close();
        }

        private void xbtnCancel_Click(object sender, EventArgs e)
        {
            base.Close();
        }

        private void xbtnOK_Click_1(object sender, EventArgs e)
        {
            try
            {
                if (this.pnlContent.Controls.Contains(this.m_ucAgreement))
                {
                    this.pnlContent.Controls.Clear();
                    this.m_ucCreateDetail = new PGCreateGroupControl(this._framework);
                    this.pnlContent.Controls.Add(this.m_ucCreateDetail);
                    this.m_ucCreateDetail.Focus();
                    this.xbtnOK.Text = "确定";
                    this.xbtnCancel.Text = "取消";
                }
                else if (this.CreatePG())
                {
                    this.xbtnOK.Enabled = false;
                    this.xbtnCancel.Enabled = false;
                }
            }
            catch (Exception exception)
            {
                ClientLogger.WriteException(exception);
            }
        }

        private Imps.Client.Core.User CurrentUser
        {
            get
            {
                return this._framework.AccountManager.CurrentUser;
            }
        }
    }
}

⌨️ 快捷键说明

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