Example #1
0
 System.Windows.Forms.Control CreateControl(System.Xml.XmlNode node)
 {
     if (node.Name == "Control")
     {
         AbstractObjectEditor editor = NekoKun.Core.ReflectionHelper.CreateInstanceFromTypeName(
             node.Attributes["Editor"].Value,
             NekoKun.Core.XMLHelper.BuildParameterDictionary(node)
             ) as AbstractObjectEditor;
         editor.DirtyChanged += new EventHandler(editor_DirtyChanged);
         StructField item = this.fields[node.Attributes["ID"].Value];
         this.views[tab.SelectedIndex].Editors.Add(item, editor);
         this.views[tab.SelectedIndex].EditorsR.Add(editor, item);
         return(editor.Control);
     }
     else if (node.Name == "Layout")
     {
         IStructEditorLayout layout = NekoKun.Core.ReflectionHelper.CreateInstanceFromTypeName(
             node.Attributes["Type"].Value,
             node,
             new CreateControlDelegate(CreateControl)
             ) as IStructEditorLayout;
         return(layout as System.Windows.Forms.Control);
     }
     return(null);
 }
Example #2
0
        public ObjectFileEditor(ObjectFile file, AbstractObjectEditor editor)
            : base(file)
        {
            System.Windows.Forms.Control ed = editor.Control;
            ed.Dock = System.Windows.Forms.DockStyle.Fill;
            this.Controls.Add(ed);

            editor.DirtyChanged += new EventHandler(editor_DirtyChanged);
            editor.SelectedItem = file.Contents;
        }
Example #3
0
        public ObjectFileEditor(ObjectFile file, AbstractObjectEditor editor)
            : base(file)
        {
            System.Windows.Forms.Control ed = editor.Control;
            ed.Dock = System.Windows.Forms.DockStyle.Fill;
            this.Controls.Add(ed);

            editor.DirtyChanged += new EventHandler(editor_DirtyChanged);
            editor.SelectedItem  = file.Contents;
        }
Example #4
0
        public ArrayEditor(AbstractObjectEditor Con)
            : base(null)
        {
            con                        = Con;
            split.Dock                 = System.Windows.Forms.DockStyle.Fill;
            split.Panel1MinSize        = 100;
            split.FixedPanel           = System.Windows.Forms.FixedPanel.Panel1;
            split.SplitterDistance     = 150;
            list                       = new ArrayListbox();
            list.Dock                  = System.Windows.Forms.DockStyle.Fill;
            list.SelectedIndexChanged += new EventHandler(list_SelectedIndexChanged);
            split.Panel1.Controls.Add(list);
            con.Control.Dock = System.Windows.Forms.DockStyle.Fill;
            split.Panel2.Controls.Add(con.Control);

            Con.DirtyChanged             += new EventHandler(Con_DirtyChanged);
            menuResizeTextbox             = new System.Windows.Forms.NumericUpDown();
            menuResize                    = new System.Windows.Forms.ToolStripMenuItem();
            menuResize.Text               = "更改最大值(&M)";
            menuResizeTextbox.Font        = split.Font;
            menuResizeTextbox.UpDownAlign = System.Windows.Forms.LeftRightAlignment.Left;
            menuResizeTextbox.BorderStyle = System.Windows.Forms.BorderStyle.None;
            menuResizeTextbox.Cursor      = System.Windows.Forms.Cursors.Default;
            var host = new System.Windows.Forms.ToolStripControlHost(menuResizeTextbox);

            menuResize.DropDownItems.Add(host);
            var dd = (menuResize.DropDown as System.Windows.Forms.ToolStripDropDownMenu);

            dd.ShowImageMargin = false;
            dd.BackColor       = System.Drawing.SystemColors.Window;

            this.list.ContextMenuStrip = new EditContextMenuStrip(this);
            this.list.ContextMenuStrip.Items.Add(new System.Windows.Forms.ToolStripSeparator());
            this.list.ContextMenuStrip.Items.Add(menuResize);
            this.list.ContextMenuStrip.Opening += new System.ComponentModel.CancelEventHandler(ContextMenuStrip_Opening);

            menuResizeTextbox.ValueChanged += new EventHandler(menuResizeTextbox_ValueChanged);
        }