Ejemplo n.º 1
0
 public TextLabel(string name)
 {
     Name      = name;
     font      = FontEditor.GetFontTracker("Default");
     textColor = Color.DarkKhaki;
     updated   = true;
 }
Ejemplo n.º 2
0
        public override void PropertyChanged(string propertyName, object oldValue)
        {
            FontEditor editor = ((FontEditor)_guiController.ActivePane.Control);

            AGS.Types.Font itemBeingEdited = editor.ItemToEdit;

            if (propertyName == "Name")
            {
                RePopulateTreeView();

                foreach (ContentDocument doc in _documents.Values)
                {
                    doc.Name = ((FontEditor)doc.Control).ItemToEdit.WindowTitle;
                }

                FontTypeConverter.SetFontList(_agsEditor.CurrentGame.Fonts);
            }
            else
            {
                Factory.NativeProxy.OnFontUpdated(Factory.AGSEditor.CurrentGame, itemBeingEdited.ID, false);
                if (propertyName == "SizeMultiplier")
                {
                    editor.OnFontUpdated();
                }
            }
        }
Ejemplo n.º 3
0
        //===========================================================================
        #region ** ctor

        public FontEditorControl()
        {
            _editor = new FontEditor();

            // initialize combo
            DrawMode = DrawMode.OwnerDrawFixed;
        }
Ejemplo n.º 4
0
        public void EditValue_InvalidProvider_ReturnsValue(IServiceProvider provider)
        {
            var editor = new FontEditor();
            var value  = new object();

            Assert.Same(value, editor.EditValue(null, provider, value));
        }
Ejemplo n.º 5
0
        private void buttonEditFonts_Click(object sender, EventArgs e)
        {
            FontEditor fe = new FontEditor();

            fe.ShowDialog();
            fe.Dispose();
        }
Ejemplo n.º 6
0
        private void newFontBt_Click(object sender, EventArgs e)
        {
            FontEditor childForm = new FontEditor();

            childForm.MdiParent = this;
            childForm.Text      = "Font";
            childForm.Show();
        }
Ejemplo n.º 7
0
        void IReflectorPersistance.Properties()
        {
            FontEditor fe = new FontEditor();

            fe.ShowDialog();
            fe.Dispose();
            //throw new Exception( "The method or operation is not implemented." );
        }
Ejemplo n.º 8
0
        private void fontEditorToolStripMenuItem_Click_1(object sender, System.EventArgs e)
        {
            var form = new FontEditor()
            {
                MdiParent = this
            };

            form.Show();
        }
Ejemplo n.º 9
0
 public TextLabel(string name, int x, int y, AnchorPoint anchor, String fontname, Color color)
 {
     this._orig_x   = x;
     this._orig_y   = y;
     this.anchor    = anchor;
     this.font      = FontEditor.GetFontTracker(fontname);
     this.textColor = color;             // use accessor to get brush set...
     this.Name      = name;
     this.updated   = true;
 }
Ejemplo n.º 10
0
        private void button1_Click(object sender, EventArgs e)
        {
            FontEditor fe = new FontEditor(FontEditor.GetFontTracker(control.Font));

            fe.ShowDialog();
            if (fe.DialogResult == DialogResult.OK)
            {
                control.Font = fe.GetFontResult();
            }
            fe.Dispose();
        }
Ejemplo n.º 11
0
        private void PickFont_Click(object sender, EventArgs e)
        {
            FontEditor fe = new FontEditor(that.FontTracker);

            fe.ShowDialog();
            if (fe.DialogResult == DialogResult.OK)
            {
                that.FontTracker = fe.GetFontResult();
            }
            fe.Dispose();
        }
Ejemplo n.º 12
0
        private void buttonEditFonts_Click(object sender, EventArgs e)
        {
            FontEditor fe = new FontEditor();

            fe.ShowDialog();
            if (fe.DialogResult == DialogResult.OK)
            {
                listBoxFonts.DataSource = null;
                listBoxFonts.DataSource = FontEditor.fonts;
            }
            fe.Dispose();
        }
Ejemplo n.º 13
0
        bool IReflectorPersistance.Load(System.Xml.XPath.XPathNavigator r)
        {
            switch (r.Name)
            {
            case "TextLabel":
                for (bool okay = r.MoveToFirstAttribute(); okay; okay = r.MoveToNextAttribute())
                {
                    switch (r.Name)
                    {
                    case "Font":
                        font = FontEditor.GetFontTracker(r.Value);
                        break;

                    case "Color":
                        textcolor = Color.FromArgb(Convert.ToInt32(r.Value));
                        break;

                    case "BackColor":
                        BackColor = Color.FromArgb(Convert.ToInt32(r.Value));
                        break;

                    case "Text":
                        text = r.Value;
                        break;

                    case "Align":
                        switch (r.Value)
                        {
                        case "Center":
                            centered   = true;
                            right_just = false;
                            break;

                        case "Right":
                            right_just = true;
                            centered   = false;
                            break;

                        case "Left":
                            centered   = false;
                            right_just = false;
                            break;
                        }
                        break;
                    }
                }
                r.MoveToParent();
                return(true);
            }
            return(false);
        }
Ejemplo n.º 14
0
        private void RePopulateTreeView()
        {
            _guiController.ProjectTree.RemoveAllChildNodes(this, TOP_LEVEL_COMMAND_ID);
            _guiController.ProjectTree.StartFromNode(this, TOP_LEVEL_COMMAND_ID);
            foreach (AGS.Types.Font item in _agsEditor.CurrentGame.Fonts)
            {
                _guiController.ProjectTree.AddTreeLeaf(this, GetNodeID(item), item.ID.ToString() + ": " + item.Name, "FontIcon");
            }

            if (_documents.ContainsValue(_guiController.ActivePane))
            {
                FontEditor editor = (FontEditor)_guiController.ActivePane.Control;
                _guiController.ProjectTree.SelectNode(this, GetNodeID(editor.ItemToEdit));
            }
            else if (_agsEditor.CurrentGame.Fonts.Count > 0)
            {
                _guiController.ProjectTree.SelectNode(this, "Fnt0");
            }
        }
Ejemplo n.º 15
0
        void Init(Canvas canvas, IReflectorButton click_interface)
        {
            AllowShowUsers = new List <string>();
            AllowShow      = new List <string>();
            DisallowShow   = new List <string>();
            this.canvas    = canvas;
            buttons        = new buttons_class();
            gs             = new GlareSet("default", "default");

            FontTracker       = FontEditor.GetFontTracker("Default");
            allowed_on_system = true;

            InitializeComponent();
            if (click_interface == null)
            {
                _click = this as IReflectorButton;
            }
            else
            {
                _click = click_interface;
            }
#if no_PSI_Base_class
            SetStyle(ControlStyles.SupportsTransparentBackColor, true);
            //SetStyle(ControlStyles.Opaque, false);  // no background
            //SetStyle(ControlStyles.UserPaint, true); // generate paint
            //SetStyle(ControlStyles.AllPaintingInWmPaint, true); // skip paintbackground
            this.SetStyle(ControlStyles.Opaque, false);
            this.BackColor      = Color.Transparent;
            this.DoubleBuffered = true;
#endif
            this.security_tags = new List <object>();
            this.MouseUp      += new System.Windows.Forms.MouseEventHandler(this.CanvasButtonUp);
            this.MouseMove    += new System.Windows.Forms.MouseEventHandler(this.CanvasClick);
            this.MouseDown    += new System.Windows.Forms.MouseEventHandler(this.CanvasButtonDown);

            this.Paint += new PaintEventHandler(PSI_Button_Paint);
            //SetStyle(ControlStyles.
            //this.SetStyle(ControlStyles.
            //BackColor = Color.Transparent; // Color.FromArgb(0, 1, 0, 0);
        }
Ejemplo n.º 16
0
        internal void LabelEditor_Apply()
        {
            editing.text = textBox1.Text;

            editing.textcolor = colorWellText.color;
            if (editing.textcolor.ToArgb() == 0)
            {
                editing.textcolor = Color.White;
            }

            editing.BackColor = colorWellBackground.color;
            if (editing.BackColor.ToArgb() == 0)
            {
                editing.BackColor = Color.Black;
            }

            editing.font = listBoxFonts.SelectedItem as font_tracker;
            if (editing.font == null)
            {
                editing.font = FontEditor.GetFontTracker("Default");
            }
            if (radioButton1.Checked)
            {
                editing.centered   = false;
                editing.right_just = false;
            }
            else if (radioButton2.Checked)
            {
                editing.centered   = true;
                editing.right_just = false;
            }
            else if (radioButton3.Checked)
            {
                editing.centered   = false;
                editing.right_just = true;
            }
        }
Ejemplo n.º 17
0
        public void FontEditor_GetPaintValueSupported_Invoke_ReturnsFalse(ITypeDescriptorContext context)
        {
            var editor = new FontEditor();

            Assert.False(editor.GetPaintValueSupported(context));
        }
Ejemplo n.º 18
0
        public void FontEditor_GetEditStyle_Invoke_ReturnsModal(ITypeDescriptorContext context)
        {
            var editor = new FontEditor();

            Assert.Equal(UITypeEditorEditStyle.Modal, editor.GetEditStyle(context));
        }
Ejemplo n.º 19
0
        public void FontEditor_Ctor_Default()
        {
            var editor = new FontEditor();

            Assert.False(editor.IsDropDownResizable);
        }
Ejemplo n.º 20
0
        internal void save(XmlWriter w)
        {
            w.WriteStartElement("page");
            w.WriteAttributeString("background", background_name);
            w.WriteAttributeString("title", Name);
            w.WriteAttributeString("color", background_color.ToArgb().ToString());
            w.WriteAttributeString("x", this.partsX.ToString());
            w.WriteAttributeString("y", this.partsY.ToString());
            w.WriteRaw("\r\n");
            foreach (ControlTracker c in this)
            {
                w.WriteStartElement("control");
                w.WriteAttributeString("X", Convert.ToString(c.grid_rect.X));
                w.WriteAttributeString("Y", Convert.ToString(c.grid_rect.Y));
                w.WriteAttributeString("width", Convert.ToString(c.grid_rect.Width));
                w.WriteAttributeString("height", Convert.ToString(c.grid_rect.Height));
                String s;
                if (String.Compare(s = c.Type.Assembly.FullName, Assembly.GetCallingAssembly().FullName) == 0)
                {
                    w.WriteAttributeString("assembly", "");
                }
                else
                {
                    w.WriteAttributeString("assembly", core.core_common.GetRelativePath(c.Type.Assembly.Location));
                }
                w.WriteAttributeString("type", c.Type.FullName);
                font_tracker ft = FontEditor.GetFontTracker(c.c.Font);
                if (ft != null)
                {
                    w.WriteAttributeString("font", ft.ToString());
                }
                else
                {
                    w.WriteAttributeString("font", "default");
                }
                if (c.i != null)
                {
                    string s2 = c.i.FullName;
                    w.WriteAttributeString("interface", s2);
                }

                w.WriteRaw("\r\n");

                IReflectorPersistance persis = c.o as IReflectorPersistance;
                if (persis != null)
                {
                    persis.Save(w);
                }
                if (!c.real)
                {
                    persis = c.c as IReflectorPersistance;
                    if (persis != null)
                    {
                        persis.Save(w);
                    }
                }
                w.WriteEndElement();
                w.WriteRaw("\r\n");
            }


            foreach (IReflectorSecurity s in this.security_tags)
            {
                IReflectorPersistance p = s as IReflectorPersistance;
                if (p != null)
                {
                    w.WriteStartElement("Security");
                    p.Save(w);
                    w.WriteEndElement();
                }
            }

            w.WriteEndElement();
            w.WriteRaw("\r\n");
        }
Ejemplo n.º 21
0
        private async Task <DependencyObject> GetEditorForType(object originalObject, object value, Type memberType, string propertyPath, string memberName, Type declaringTypeToIgnore)
        {
            DependencyObject result = null;

            if (memberType.IsEnum)
            {
                var editor = new EnumEditor {
                    EnumType     = memberType,
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = value
                };

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <object> >(e => this.UpdateProperty(e.PropertyName, value, e.Value, originalObject, editor), true);
                result = editor;
            }
            else if (memberType == typeof(string))
            {
                var editor = new StringEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = (string)value
                };

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <string> >(e => this.UpdateProperty(e.PropertyName, (string)value, e.Value, originalObject, editor), true);
                result = editor;
            }
            else if (memberType == typeof(int))
            {
                var editor = new IntEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = (int)value
                };

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <int> >(e => this.UpdateProperty(e.PropertyName, (int)value, e.Value, originalObject, editor), true);
                result = editor;
            }
            else if (memberType == typeof(float))
            {
                var editor = new FloatEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = (float)value
                };

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <float> >(e => this.UpdateProperty(e.PropertyName, (float)value, e.Value, originalObject, editor), true);
                result = editor;
            }
            else if (memberType == typeof(bool))
            {
                var editor = new BoolEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = (bool)value
                };

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <bool> >(e => this.UpdateProperty(e.PropertyName, (bool)value, e.Value, originalObject, editor), true);
                result = editor;
            }
            else if (memberType == typeof(Vector2))
            {
                var editor = new VectorEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = (Vector2)value
                };

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <Vector2> >(e => this.UpdateProperty(e.PropertyName, (Vector2)value, e.Value, originalObject, editor), true);
                result = editor;
            }
            else if (memberType == typeof(Microsoft.Xna.Framework.Point))
            {
                var editor = new PointEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = (Microsoft.Xna.Framework.Point)value
                };

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <Microsoft.Xna.Framework.Point> >(e => this.UpdateProperty(e.PropertyName, (Microsoft.Xna.Framework.Point)value, e.Value, originalObject, editor), true);
                result = editor;
            }
            else if (memberType == typeof(Microsoft.Xna.Framework.Color))
            {
                var editor = new ColorEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = (Microsoft.Xna.Framework.Color)value
                };

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <Microsoft.Xna.Framework.Color> >(e => this.UpdateProperty(e.PropertyName, (Microsoft.Xna.Framework.Color)value, e.Value, originalObject, editor), true);
                result = editor;
            }
            else if (memberType == typeof(Sprite))
            {
                var editor = new SpriteEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = value as Sprite
                };

                if (value is Sprite sprite)
                {
                    var spriteWrappers = this._projectService.CurrentProject.AssetFolder.GetAssetsOfType <SpriteWrapper>();
                    editor.SpriteWrapper = spriteWrappers.FirstOrDefault(x => x.Sprite.Id == sprite.Id);
                }

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <Sprite> >(e => this.UpdateProperty(e.PropertyName, value as Sprite, e.Value, originalObject, editor), true);
                editor.SelectSpriteCommand = new RelayCommand(() => {
                    var asset = this._dialogService.ShowSelectAssetDialog(this._projectService.CurrentProject, AssetType.Image | AssetType.Sprite, AssetType.Sprite);
                    if (asset is SpriteWrapper spriteWrapper)
                    {
                        editor.SpriteWrapper = spriteWrapper;
                    }
                }, true);

                result = editor;
            }
            else if (memberType == typeof(AudioClip))
            {
                var editor = new AudioClipEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = value as AudioClip
                };

                editor.ValueChangedCommand    = new RelayCommand <EditableValueChangedEventArgs <AudioClip> >(e => this.UpdateProperty(e.PropertyName, value as AudioClip, e.Value, originalObject, editor), true);
                editor.SelectAudioClipCommand = new RelayCommand(() => {
                    var asset = this._dialogService.ShowSelectAssetDialog(this._projectService.CurrentProject, AssetType.Audio, AssetType.Audio);
                    if (asset is AudioAsset audioAsset)
                    {
                        editor.Value = audioAsset.AudioClip;
                    }
                }, true);

                result = editor;
            }
            else if (memberType == typeof(SpriteAnimation))
            {
                var editor = new SpriteAnimationEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = value as SpriteAnimation
                };

                if (value is SpriteAnimation animation)
                {
                    var spriteAnimationAssets = this._projectService.CurrentProject.AssetFolder.GetAssetsOfType <SpriteAnimationAsset>();
                    editor.Asset = spriteAnimationAssets.FirstOrDefault(x => x.SavableValue.Id == animation.Id);
                }

                editor.ValueChangedCommand          = new RelayCommand <EditableValueChangedEventArgs <SpriteAnimation> >(e => this.UpdateProperty(e.PropertyName, value as SpriteAnimation, e.Value, originalObject, editor), true);
                editor.SelectSpriteAnimationCommand = new RelayCommand(() => {
                    var asset = this._dialogService.ShowSelectAssetDialog(this._projectService.CurrentProject, AssetType.SpriteAnimation, AssetType.SpriteAnimation);
                    if (asset is SpriteAnimationAsset spriteAnimationAsset)
                    {
                        editor.Asset = spriteAnimationAsset;
                        editor.Value = spriteAnimationAsset.SavableValue;
                    }
                }, true);

                result = editor;
            }
            else if (memberType == typeof(Font))
            {
                var editor = new FontEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = value as Font
                };

                if (value is Font font)
                {
                    var fontAssets = this._projectService.CurrentProject.AssetFolder.GetAssetsOfType <FontAsset>();
                    editor.Asset = fontAssets.FirstOrDefault(x => x.SavableValue.Id == font.Id);
                }

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <Font> >(e => this.UpdateProperty(e.PropertyName, value as Font, e.Value, originalObject, editor), true);
                editor.SelectFontCommand   = new RelayCommand(() => {
                    var asset = this._dialogService.ShowSelectAssetDialog(this._projectService.CurrentProject, AssetType.Font, AssetType.Font);
                    if (asset is FontAsset fontAsset)
                    {
                        editor.Asset = fontAsset;
                        editor.Value = fontAsset.SavableValue;
                    }
                }, true);

                result = editor;
            }
            else if (memberType == typeof(Collider))
            {
                var colliderTypes = await this._assemblyService.LoadTypes(typeof(Collider));

                colliderTypes.Remove(typeof(PolygonCollider)); // TODO: Eventually allow PolygonCollider.
                var editor = new ColliderEditor {
                    ColliderTypes = colliderTypes,
                    PropertyName  = propertyPath,
                    Title         = memberName,
                    Value         = (Collider)value
                };

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <Collider> >(e => this.UpdateProperty(e.PropertyName, (Collider)value, e.Value, originalObject, editor), true);
                result = editor;
            }
            else if (memberType == typeof(LineCollider))
            {
                var colliderTypes = await this._assemblyService.LoadTypes(typeof(Collider));

                var editor = new LineColliderEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = (LineCollider)value
                };

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <LineCollider> >(e => this.UpdateProperty(e.PropertyName, (LineCollider)value, e.Value, originalObject, editor), true);
                result = editor;
            }
            else if (memberType == typeof(RectangleCollider))
            {
                var colliderTypes = await this._assemblyService.LoadTypes(typeof(Collider));

                var editor = new RectangleColliderEditor {
                    PropertyName = propertyPath,
                    Title        = memberName,
                    Value        = (RectangleCollider)value
                };

                editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <RectangleCollider> >(e => this.UpdateProperty(e.PropertyName, (RectangleCollider)value, e.Value, originalObject, editor), true);
                result = editor;
            }
            else if (memberType.IsSubclassOf(typeof(BaseComponent)))
            {
                // TODO: Allow user to select a component.
            }
            else
            {
                // TODO: I don't know, this should probably work when value is null
                if (value != null)
                {
                    var editor = new GenericValueEditor {
                        DeclaringType = declaringTypeToIgnore,
                        PropertyName  = propertyPath,
                        Title         = memberName,
                        Value         = value
                    };

                    editor.ValueChangedCommand = new RelayCommand <EditableValueChangedEventArgs <object> >(e => this.UpdateProperty(e.PropertyName, value, e.Value, originalObject, editor), true);
                    result = editor;
                }
            }

            return(result);
        }
Ejemplo n.º 22
0
        internal bool Load(XPathNavigator r)
        {
            if (r.NodeType == XPathNodeType.Element)
            {
                if (String.Compare(r.Name, "page", true) == 0)
                {
                    bool everokay;
                    bool okay;
                    //page p = new page(canvas);
                    for (okay = r.MoveToFirstAttribute(); okay; okay = r.MoveToNextAttribute())
                    {
                        switch (r.Name)
                        {
                        case "background":
                            background_name = r.Value;
                            try
                            {
                                if (background_name.Length > 0 && System.IO.File.Exists(background_name))
                                {
                                    background_image = Image.FromFile(background_name);
                                }
                                else
                                {
                                    background_image = null;
                                }
                            }
                            catch
                            {
                                background_name = null;
                            }
                            break;

                        case "title":
                            title = r.Value;
                            break;

                        case "color":
                        {
                            try
                            {
                                background_color = Color.FromArgb(Convert.ToInt32(r.Value));
                            }
                            catch
                            {
                                // probably alright, just bad...
                                // background was already defaulted...
                            }
                        }
                        break;

                        case "x":
                            partsX = r.ValueAsInt;
                            break;

                        case "y":
                            partsY = r.ValueAsInt;
                            break;
                        }
                    }
                    r.MoveToParent();

                    //return true;
                    //r.ReadEndElement();
                    everokay = false;
                    for (okay = r.MoveToFirstChild(); okay; okay = r.MoveToNext())
                    {
                        everokay = true;
                        if (r.NodeType == XPathNodeType.Element)
                        {
                            switch (r.Name)
                            {
                            case "Security":
                                foreach (TypeName module in core_common.security_modules)
                                {
                                    IReflectorSecurity    o = Activator.CreateInstance(module.Type) as IReflectorSecurity;
                                    IReflectorPersistance p = o as IReflectorPersistance;
                                    r.MoveToFirstChild();
                                    if (p != null)
                                    {
                                        if (p.Load(r))
                                        {
                                            security_tags.Add(o);
                                        }
                                    }
                                    r.MoveToParent();
                                }
                                break;

                            case "control":
                                //page p = new page();
                                Rectangle    rect = new Rectangle();
                                Assembly     a;
                                String       a_name = null;
                                Type         t;
                                font_tracker font   = null;
                                String       t_name = null;
                                String       i_name = null;
                                bool         okay2;
                                //page p = new page(canvas);
                                for (okay2 = r.MoveToFirstAttribute(); okay2; okay2 = r.MoveToNextAttribute())
                                {
                                    switch (r.Name)
                                    {
                                    case "font":
                                        font = FontEditor.GetFontTracker(r.Value);
                                        break;

                                    case "X":
                                        rect.X = Convert.ToInt32(r.Value);
                                        break;

                                    case "Y":
                                        rect.Y = Convert.ToInt32(r.Value);
                                        break;

                                    case "width":
                                        rect.Width = Convert.ToInt32(r.Value);
                                        break;

                                    case "height":
                                        rect.Height = Convert.ToInt32(r.Value);
                                        break;

                                    case "assembly":
                                        if (r.Value.Length != 0)
                                        {
                                            a_name = r.Value;
                                        }
                                        break;

                                    case "type":
                                        t_name = r.Value;
                                        break;

                                    case "interface":
                                        if (string.Compare(r.Value, "System.RuntimeType") == 0)
                                        {
                                            break;
                                        }
                                        i_name = r.Value;
                                        break;
                                    }
                                }
                                // go back to element from attributes...
                                r.MoveToParent();
                                {
                                    a = osalot.LoadAssembly(a_name);
                                    if (t_name != null && a != null)
                                    {
                                        t = osalot.findtype(a, t_name);
                                        Type[] i_list;
                                        Type   i = t;
                                        if (i_name != null)
                                        {
                                            if (t == null)
                                            {
                                                continue;
                                            }
                                            else
                                            {
                                                i_list = t.FindInterfaces(osalot.MyInterfaceFilter, i_name);
                                                if (i_list.Length > 0)
                                                {
                                                    i = i_list[0];
                                                }
                                            }
                                        }
                                        ControlTracker created_control = MakeControl(t, i, rect);

                                        if (font != null && created_control.c != null)
                                        {
                                            font.Controls.Add(created_control.c);
                                            created_control.c.Font = font;
                                        }
                                        bool success = false;
                                        IReflectorPersistance persis;
                                        bool okay3;
                                        bool everokay3 = false;
                                        for (okay3 = r.MoveToFirstChild(); okay3; okay3 = r.MoveToNext())
                                        {
                                            everokay3 = true;
                                            success   = false;
                                            persis    = created_control.o as IReflectorPersistance;
                                            if (persis != null)
                                            {
                                                try
                                                {
                                                    success = persis.Load(r);
                                                }
                                                catch (Exception e)
                                                {
                                                    Console.WriteLine(e);
                                                }
                                            }
                                            if (!success)
                                            {
                                                persis = created_control.c as IReflectorPersistance;
                                                if (persis != null)
                                                {
                                                    try
                                                    {
                                                        success = persis.Load(r);
                                                    }
                                                    catch (Exception e)
                                                    {
                                                        Console.WriteLine(e);
                                                    }
                                                }
                                            }
                                            if (!success)
                                            {
                                                Console.WriteLine("Ignored Element...");
                                            }
                                        }
                                        if (everokay3)
                                        {
                                            r.MoveToParent();
                                        }
                                    }
                                }
                                break;
                            }
                        }
                    }
                    if (everokay)
                    {
                        r.MoveToParent();
                    }
                    return(true);
                }
            }
            return(false);
        }
Ejemplo n.º 23
0
        public void GetEditStyle_Invoke_ReturnsModal()
        {
            var editor = new FontEditor();

            Assert.Equal(UITypeEditorEditStyle.Modal, editor.GetEditStyle(null));
        }