Ejemplo n.º 1
0
        /// <summary>
        /// Adds new combobox element.
        /// </summary>
        /// <returns>The created element.</returns>
        public ComboBoxElement ComboBox()
        {
            ComboBoxElement element = new ComboBoxElement();

            OnAddElement(element);
            return(element);
        }
Ejemplo n.º 2
0
            private void UpdateCombo()
            {
                if (_isUpdateLocked)
                {
                    return;
                }
                _isUpdateLocked = true;
                if (_combobox == null)
                {
                    _combobox = GetChild <ComboBoxElement>();
                    _combobox.SelectedIndexChanged += OnSelectedChanged;
                }
                int  toSelect       = -1;
                Guid loadedSelected = (Guid)Values[0];

                _combobox.ClearItems();
                for (int i = 0; i < Surface.Parameters.Count; i++)
                {
                    var param = Surface.Parameters[i];
                    _combobox.AddItem(param.Name);
                    if (param.ID == loadedSelected)
                    {
                        toSelect = i;
                    }
                }
                _combobox.SelectedIndex = toSelect;
                _isUpdateLocked         = false;
            }
Ejemplo n.º 3
0
 /// <inheritdoc />
 public override void Initialize(LayoutElementsContainer layout)
 {
     element = layout.ComboBox();
     element.ComboBox.SetItems(LayersAndTagsSettings.GetCurrentLayers());
     element.ComboBox.SelectedIndex         = (int)Values[0];
     element.ComboBox.SelectedIndexChanged += OnSelectedIndexChanged;
 }
Ejemplo n.º 4
0
 /// <inheritdoc />
 public override void Initialize(LayoutElementsContainer layout)
 {
     _combobox = layout.ComboBox();
     ReloadOptions(_combobox.ComboBox);
     _combobox.ComboBox.SelectedIndexChanged += OnComboBoxSelectedIndexChanged;
     _combobox.ComboBox.PopupShowing         += ReloadOptions;
 }
Ejemplo n.º 5
0
        /// <inheritdoc />
        public override void Initialize(LayoutElementsContainer layout)
        {
            element = layout.ComboBox();
            element.ComboBox.SelectedIndexChanged += OnSelectedIndexChanged;

            // Set tag names
            element.ComboBox.AddItem(NoTagText);
            element.ComboBox.AddItems(LayersAndTagsSettings.GetCurrentTags());
        }
Ejemplo n.º 6
0
            private void UpdateCombo()
            {
                if (_isUpdating)
                {
                    return;
                }
                _isUpdating = true;

                // Cache combo box
                if (_combobox == null)
                {
                    _combobox = (ComboBoxElement)_children[0];
                    _combobox.SelectedIndexChanged += OnSelectedChanged;
                }

                // Update items
                Type type     = null;
                var  toSelect = (string)Values[1];
                var  asset    = FlaxEngine.Content.Load <GameplayGlobals>((Guid)Values[0]);

                _combobox.ClearItems();
                if (asset)
                {
                    var values   = asset.DefaultValues;
                    var tooltips = new string[values.Count];
                    var i        = 0;
                    foreach (var e in values)
                    {
                        _combobox.AddItem(e.Key);
                        tooltips[i++] = "Type: " + CustomEditorsUtil.GetTypeNameUI(e.Value.GetType()) + ", default value: " + e.Value;
                        if (toSelect == e.Key)
                        {
                            type = e.Value.GetType();
                        }
                    }
                    _combobox.Tooltips = tooltips;
                }

                // Preserve selected item
                _combobox.SelectedItem = toSelect;

                // Update output value type
                var box = GetBox(0);

                if (type == null)
                {
                    box.Enabled = false;
                }
                else
                {
                    box.Enabled     = true;
                    box.CurrentType = VisjectSurface.GetValueTypeConnectionType(type);
                }

                _isUpdating = false;
            }
Ejemplo n.º 7
0
        /// <inheritdoc />
        public override void Initialize(LayoutElementsContainer layout)
        {
            _element = layout.ComboBox();
            _element.ComboBox.SelectedIndexChanged += OnSelectedIndexChanged;
            _element.ComboBox.AddItem("None");
            var groups = GameSettings.Load <StreamingSettings>();

            if (groups?.TextureGroups != null)
            {
                for (int i = 0; i < groups.TextureGroups.Length; i++)
                {
                    _element.ComboBox.AddItem(groups.TextureGroups[i].Name);
                }
            }
        }
Ejemplo n.º 8
0
            /// <inheritdoc />
            public override void Initialize(LayoutElementsContainer layout)
            {
                var editors = Editor.Instance.CodeEditing.Editors;
                var options = new string[editors.Count + 1];

                options[0] = "None";
                for (int i = 0; i < editors.Count; i++)
                {
                    options[i + 1] = editors[i].Name;
                }

                _combobox = layout.ComboBox();
                _combobox.ComboBox.SetItems(options);
                _combobox.ComboBox.SelectedItem          = (string)Values[0];
                _combobox.ComboBox.SelectedIndexChanged += OnComboBoxSelectedIndexChanged;
            }
 public Navigator UseWindow(int windowIndex)
 {
     _windowId = windowIndex;
     _container = _runningApp.GetWindows()[windowIndex];
     _button = null;
     _checkBox = null;
     _label = null;
     _radioButton = null;
     _textBox = null;
     _comboBox = null;
     _image = null;
     _tab = null;
     _treeView = null;
     _panel = null;
     return this;
 }
Ejemplo n.º 10
0
            private void UpdateCombo()
            {
                // Check if is locked
                if (_isUpdateLocked)
                {
                    return;
                }

                // Lock
                _isUpdateLocked = true;

                // Cache combo box control
                if (_combobox == null)
                {
                    _combobox = (ComboBoxElement)_children[0];
                    _combobox.SelectedIndexChanged += OnSelectedChanged;
                }

                // Update items
                int  toSelect       = -1;
                Guid loadedSelected = (Guid)Values[0];

                _combobox.ClearItems();
                int index = 0;

                for (int i = 0; i < Surface.Parameters.Count; i++)
                {
                    var param = Surface.Parameters[i];
                    if (param.IsUIVisible)
                    {
                        _combobox.AddItem(param.Name);

                        if (param.ID == loadedSelected)
                        {
                            toSelect = index;
                        }

                        index++;
                    }
                }
                _combobox.SelectedIndex = toSelect;

                // Unlock
                _isUpdateLocked = false;
            }
        /// <inheritdoc />
        public override void Initialize(LayoutElementsContainer layout)
        {
            element = layout.ComboBox();
            element.ComboBox.SelectedIndexChanged += OnSelectedIndexChanged;

            // Set node names
            if (ParentEditor != null &&
                ParentEditor.Values.Count == 1 && ParentEditor.Values[0] is BoneSocket boneSocket &&
                boneSocket.Parent is AnimatedModel animatedModel && animatedModel.SkinnedModel &&
                !animatedModel.SkinnedModel.WaitForLoaded())
            {
                var nodes = animatedModel.SkinnedModel.Nodes;
                for (int nodeIndex = 0; nodeIndex < nodes.Length; nodeIndex++)
                {
                    element.ComboBox.AddItem(nodes[nodeIndex].Name);
                }
            }
        }
        public IElement Convert2Element(XmlNode node, IElement parent)
        {
            string   tagName = node.Name;
            IElement element = null;

            switch (tagName)
            {
            case APP_FOLDER:
                element = new AppFolderRanorexElement();
                break;

            case FOLDER:
                element = new FolderRanorexElement();
                break;

            case ITEM:
                string name    = node.Attributes[NAME].Value;
                string addcaps = node.Attributes[ADD_CAPS].Value;
                string capname = node.Attributes[CAP_NAME].Value;
                switch (capname)
                {
                case ElementBase.BUTTON:
                    element = new ButtonElement();
                    break;

                case ElementBase.TEXT:
                    if (addcaps.Contains(ACCESSIBLE) ||
                        addcaps.Contains(WPFGROUPELEMENT))
                    {
                        element = new EditableTextElement();
                    }
                    else
                    {
                        element = new TextElement();
                    }
                    break;

                case CONTAINER:
                    element = new ContainerElement();
                    break;

                case LISTITEM:
                    element = new ListItemElement();
                    break;

                case MENUITEM:
                    element = new MenuItemElement();
                    break;

                case TABPAGE:
                    element = new TabPageElement();
                    break;

                case TITLEBAR:
                    element = new TitleBarElement();
                    break;

                case CHECKBOX:
                    element = new CheckBoxElement();
                    break;

                case COMBOBOX:
                    element = new ComboBoxElement();
                    break;

                default:
                    element = new RanorexUnknowElement();
                    break;
                }
                break;

            case VARIABLES:
                break;
            }
            if (element != null)
            {
                element.Attributes.Name = node.Attributes[NAME].Value;
                if (parent != null)
                {
                    element.Parent = parent;
                    if (parent.Children == null)
                    {
                        parent.Children = new List <IElement>();
                    }
                    parent.Children.Add(element);
                }
                if (node.HasChildNodes)
                {
                    foreach (XmlNode child in node.ChildNodes)
                    {
                        Convert2Element(child, element);
                    }
                }
            }
            return(element);
        }
Ejemplo n.º 13
0
        /// <summary>
        /// Creates an element from the archetype and adds the element to the node.
        /// </summary>
        /// <param name="arch">The element archetype.</param>
        /// <returns>The created element. Null if the archetype is invalid.</returns>
        public ISurfaceNodeElement AddElement(NodeElementArchetype arch)
        {
            ISurfaceNodeElement element = null;

            switch (arch.Type)
            {
            case NodeElementType.Input:
                element = new InputBox(this, arch);
                break;

            case NodeElementType.Output:
                element = new OutputBox(this, arch);
                break;

            case NodeElementType.BoolValue:
                element = new BoolValue(this, arch);
                break;

            case NodeElementType.FloatValue:
                element = new FloatValue(this, arch);
                break;

            case NodeElementType.IntegerValue:
                element = new IntegerValue(this, arch);
                break;

            case NodeElementType.ColorValue:
                element = new ColorValue(this, arch);
                break;

            case NodeElementType.ComboBox:
                element = new ComboBoxElement(this, arch);
                break;

            case NodeElementType.Asset:
                element = new AssetSelect(this, arch);
                break;

            case NodeElementType.Text:
                element = new TextView(this, arch);
                break;

            case NodeElementType.TextBox:
                element = new TextBoxView(this, arch);
                break;

            case NodeElementType.SkeletonBoneIndexSelect:
                element = new SkeletonBoneIndexSelectElement(this, arch);
                break;

            case NodeElementType.BoxValue:
                element = new BoxValue(this, arch);
                break;

            case NodeElementType.EnumValue:
                element = new EnumValue(this, arch);
                break;

            case NodeElementType.SkeletonNodeNameSelect:
                element = new SkeletonNodeNameSelectElement(this, arch);
                break;
                //default: throw new NotImplementedException("Unknown node element type: " + arch.Type);
            }
            if (element != null)
            {
                AddElement(element);
            }

            return(element);
        }
Ejemplo n.º 14
0
        public void AddChildren()
        {
            var combobox = new ComboBoxElement((short)GetId(), 200.0, 40.0).GetComboBox;

            _row.Children.Add(combobox);
        }
Ejemplo n.º 15
0
        /// <summary>
        /// Creates an element from the archetype and adds the element to the node.
        /// </summary>
        /// <param name="arch">The element archetype.</param>
        /// <returns>The created element. Null if the archetype is invalid.</returns>
        public ISurfaceNodeElement AddElement(NodeElementArchetype arch)
        {
            ISurfaceNodeElement element = null;

            switch (arch.Type)
            {
            case NodeElementType.Input:
                element = new InputBox(this, arch);
                break;

            case NodeElementType.Output:
                element = new OutputBox(this, arch);
                break;

            case NodeElementType.BoolValue:
                element = new BoolValue(this, arch);
                break;

            case NodeElementType.FloatValue:
                element = new FloatValue(this, arch);
                break;

            case NodeElementType.IntegerValue:
                element = new IntegerValue(this, arch);
                break;

            case NodeElementType.ColorValue:
                element = new ColorValue(this, arch);
                break;

            case NodeElementType.ComboBox:
                element = new ComboBoxElement(this, arch);
                break;

            case NodeElementType.Asset:
                element = new AssetSelect(this, arch);
                break;

            case NodeElementType.Text:
                element = new TextView(this, arch);
                break;

            case NodeElementType.TextBox:
                element = new TextBoxView(this, arch);
                break;

            case NodeElementType.SkeletonNodeSelect:
                element = new SkeletonNodeSelectElement(this, arch);
                break;

            case NodeElementType.BoxValue:
                element = new BoxValue(this, arch);
                break;

            case NodeElementType.EnumValue:
                element = new EnumValue(this, arch);
                break;
            }
            if (element != null)
            {
                AddElement(element);
            }

            return(element);
        }
Ejemplo n.º 16
0
        private void createDataEntryElement()
        {
            switch (m_ActualControlType)
            {
            case ControlType.Check:
            {
                CheckBoxElement chk = new CheckBoxElement(this);

                chk.CheckedChanged +=
                    delegate(object sender, EventArgs e)
                {
                    CommitValue();
                };

                m_DataEntryElement = chk;
                break;
            }

            case ControlType.Combo:
            {
                makeTextBox();

                ComboBoxElement cmb = new ComboBoxElement(this, m_InternalTextBox);
                cmb.ButtonClick +=
                    delegate(object sender, EventArgs e)
                {
                    Lookup();
                };

                cmb.Button.Visible = m_ComboButtonVisible;

                m_DataEntryElement = cmb;
                break;
            }

            case ControlType.Radio:
            {
                RadioGroupElement rgrp = new RadioGroupElement(this);

                rgrp.CheckedChanged +=
                    delegate(object sender, EventArgs e)
                {
                    CommitValue();
                };

                if (Field != null)
                {
                    if (Field.LookupType == LookupType.Dictionary)
                    {
                        rgrp.BeginUpdate();
                        foreach (string key in Field.LookupDictionary.Keys)
                        {
                            rgrp.AddItem(key, Field.LookupDictionary[key]);
                        }
                        rgrp.EndUpdate();
                    }
                }
                //commented 2011.02.25
                //if (rgrp.UpdateCount==0)
                //        rgrp.BeginUpdate();

                m_DataEntryElement = rgrp;
                break;
            }

            case ControlType.Text:
            {
                makeTextBox();


                m_DataEntryElement = new TextBoxElement(this, m_InternalTextBox);
                break;
            }

            default:
            {
                m_DataEntryElement = new TextLabelElement(this);
                break;
            }
            }//switch

            m_DataEntryElement.FieldControlContext = this;
        }
 public ComboBoxElement ComboBox()
 {
     return _comboBox ?? (_comboBox = new ComboBoxElement(_container));
 }
        /// <summary>
        /// Called when node gets loaded and should be added to the surface. Creates node elements from the archetype.
        /// </summary>
        /// <param name="node">The node.</param>
        public virtual void OnNodeLoaded(SurfaceNode node)
        {
            // Create child elements of the node based on it's archetype
            int elementsCount = node.Archetype.Elements?.Length ?? 0;

            for (int i = 0; i < elementsCount; i++)
            {
                // ReSharper disable once PossibleNullReferenceException
                var arch = node.Archetype.Elements[i];
                ISurfaceNodeElement element = null;
                switch (arch.Type)
                {
                case NodeElementType.Input:
                    element = new InputBox(node, arch);
                    break;

                case NodeElementType.Output:
                    element = new OutputBox(node, arch);
                    break;

                case NodeElementType.BoolValue:
                    element = new BoolValue(node, arch);
                    break;

                case NodeElementType.FloatValue:
                    element = new FloatValue(node, arch);
                    break;

                case NodeElementType.IntegerValue:
                    element = new IntegerValue(node, arch);
                    break;

                case NodeElementType.ColorValue:
                    element = new ColorValue(node, arch);
                    break;

                case NodeElementType.ComboBox:
                    element = new ComboBoxElement(node, arch);
                    break;

                case NodeElementType.Asset:
                    element = new AssetSelect(node, arch);
                    break;

                case NodeElementType.Text:
                    element = new TextView(node, arch);
                    break;

                case NodeElementType.TextBox:
                    element = new TextBoxView(node, arch);
                    break;

                case NodeElementType.SkeletonNodeSelect:
                    element = new SkeletonNodeSelectElement(node, arch);
                    break;
                }
                if (element != null)
                {
                    // Link element
                    node.AddElement(element);
                }
            }

            // Load metadata
            var meta = node.Meta.GetEntry(11);

            if (meta.Data != null)
            {
                var meta11 = Utils.ByteArrayToStructure <VisjectSurface.Meta11>(meta.Data);
                node.Location = meta11.Position;
                //node.IsSelected = meta11.Selected;
            }
        }
Ejemplo n.º 19
0
        public static IElement ParseElement(string localizedType, string designedId, string designedName, IElement parent)
        {
            IElement element = null;

            switch (localizedType.ToLower())
            {
            case ElementBase.WINDOW:
                element = new WindowElement();
                element.Attributes.ElementType = ElementBase.WINDOW_TYPE;
                break;

            case ElementBase.DIALOG:
                element = new WindowElement();
                element.Attributes.ElementType = ElementBase.DIALOG_TYPE;
                break;

            case ElementBase.BUTTON:
                element = new ButtonElement();
                element.Attributes.ElementType = ElementBase.BUTTON_TYPE;
                break;

            case ElementBase.COMBO_BOX:
                element = new ComboBoxElement();
                element.Attributes.ElementType = ElementBase.COMBOBOX_TYPE;
                break;

            case ElementBase.TEXT:
                element = new TextElement();
                element.Attributes.ElementType = ElementBase.TEXT_TYPE;
                break;

            case ElementBase.PANE:
                element = new ContainerElement();
                element.Attributes.ElementType = ElementBase.CONTAINER_TYPE;
                break;

            case ElementBase.TITLE_BAR:
                element = new TitleBarElement();
                element.Attributes.ElementType = ElementBase.TITLEBAR_TYPE;
                break;

            case ElementBase.MENU_BAR:
                element = new MenuBarElement();
                element.Attributes.ElementType = ElementBase.MENUBAR_TYPE;
                break;

            case ElementBase.DOCUMENT:
                element = new EditableTextElement();
                element.Attributes.ElementType = ElementBase.EDITABLETEXT_TYPE;
                break;

            case ElementBase.TAB:
                element = new TabPageElement();
                element.Attributes.ElementType = ElementBase.TABPAGE_TYPE;
                break;

            case ElementBase.TAB_ITEM:
                element = new TabItemElement();
                element.Attributes.ElementType = ElementBase.TABITEM_TYPE;
                break;

            case ElementBase.SCROLL_BAR:
                element = new ScrollBarElement();
                element.Attributes.ElementType = ElementBase.SCROLLBAR_TYPE;
                break;

            //case THUMB:
            case ElementBase.TREE:
                element = new TreeViewElement();
                element.Attributes.ElementType = ElementBase.TREEVIEW_TYPE;
                break;

            case ElementBase.TREE_VIEW:
                element = new TreeViewElement();
                element.Attributes.ElementType = ElementBase.TREEVIEW_TYPE;
                break;

            case ElementBase.TREE_ITEM:
                element = new TreeItemElement();
                element.Attributes.ElementType = ElementBase.TREEITEM_TYPE;
                break;

            case ElementBase.TABLE:
                element = new TableElement();
                element.Attributes.ElementType = ElementBase.TABLE_TYPE;
                break;

            //?
            case ElementBase.HEADER:
                element = new HeaderElement();
                element.Attributes.ElementType = ElementBase.HEADER_TYPE;
                break;

            case ElementBase.ITEM:
                if (parent != null && (parent is TableElement || parent is DatagridElement))
                {
                    element = new RowElement();
                    element.Attributes.ElementType = ElementBase.ROW_TYPE;
                }
                break;

            case ElementBase.LIST:     //(listview or checkedlistbox)
                element = new ListElement();
                element.Attributes.ElementType = ElementBase.LIST_TYPE;
                break;

            case ElementBase.LIST_VIEW:     //(listview or checkedlistbox)
                element = new ListElement();
                element.Attributes.ElementType = ElementBase.LIST_TYPE;
                break;

            case ElementBase.LIST_ITEM:     //(table)
                element = new ListItemElement();
                element.Attributes.ElementType = ElementBase.LISTITEM_TYPE;
                break;

            case ElementBase.EDIT:     //textbox
                element = new EditableTextElement();
                element.Attributes.ElementType = ElementBase.EDITABLETEXT_TYPE;
                break;

            case ElementBase.CHECK_BOX:
                element = new CheckBoxElement();
                element.Attributes.ElementType = ElementBase.CHECKBOX_TYPE;
                break;

            case ElementBase.RADIO_BUTTON:
                element = new RadioButtonElement();
                element.Attributes.ElementType = ElementBase.RADIO_BUTTON_TYPE;
                break;

            case ElementBase.CALENDAR:
                element = new CalendarElement();
                element.Attributes.ElementType = "Calendar";
                break;

            case ElementBase.CUSTOM:
                element = new CustomElement();
                element.Attributes.ElementType = "Custom";
                break;

            case ElementBase.DATAGRID:
                element = new DatagridElement();
                element.Attributes.ElementType = "DataGrid";
                break;

            case ElementBase.DATAGRID2:
                element = new DatagridElement();
                element.Attributes.ElementType = "DataGrid";
                break;

            case ElementBase.DATAITEM:
                element = new DataitemElement();
                element.Attributes.ElementType = "dataitem";
                break;

            case ElementBase.GROUP:
                element = new GroupELement();
                element.Attributes.ElementType = ElementBase.GROUP_TYPE;
                break;

            case ElementBase.HEADER_ITEM:
                element = new HeaderItemElement();
                element.Attributes.ElementType = "HeaderItem";
                break;

            case ElementBase.HYPERLINK:
                element = new LinkElement();
                element.Attributes.ElementType = "Hyperlink";
                break;

            case ElementBase.IMAGE:
                element = new ImageElement();
                element.Attributes.ElementType = "Image";
                break;

            case ElementBase.MENU:
                element = new MenuElement();
                element.Attributes.ElementType = "Menu";
                break;

            case ElementBase.PROGRESS_BAR:
                element = new ProgressBarElement();
                element.Attributes.ElementType = "ProgressBar";
                break;

            case ElementBase.SEPARATOR:
                element = new SeparatorElement();
                element.Attributes.ElementType = "Separator";
                break;

            case ElementBase.SLIDER:
                element = new SliderElement();
                element.Attributes.ElementType = "Slider";
                break;

            case ElementBase.SPINNER:
                element = new SpinnerElement();
                element.Attributes.ElementType = "Spinner";
                break;

            case ElementBase.SPLIT_BUTTON:
                element = new SplitButtonElement();
                element.Attributes.ElementType = "SplitButton";
                break;

            case ElementBase.STATUS_BAR:
                element = new StatusBarElement();
                element.Attributes.ElementType = "StatusBar";
                break;

            case ElementBase.TOOL_BAR:
                element = new ToolBarElement();
                element.Attributes.ElementType = "ToolBar";
                break;

            case ElementBase.TOOL_TIP:
                element = new ToolTipElement();
                element.Attributes.ElementType = "ToolTip";
                break;

            //?
            case ElementBase.MENU_ITEM:
                element = new MenuItemElement();
                element.Attributes.ElementType = "MenuItem";
                break;

            case ElementBase.LINK:
                element = new LinkElement();
                element.Attributes.ElementType = ElementBase.LINK_TYPE;
                break;
            }
            if (element == null)
            {
                if (parent is TableElement || parent is DatagridElement)
                {
                    element = new RowElement();
                    element.Attributes.ElementType = ElementBase.ROW_TYPE;
                }
                else if (parent is RowElement)
                {
                    element = new CellElement();
                    element.Attributes.ElementType = ElementBase.CELL_TYPE;
                }
                else
                {
                    element = new UnknownELement();
                    element.Attributes.ElementType = ElementBase.UNKNOWN_TYPE;
                }
            }
            element.Attributes.DesignedId = designedId;
            return(element);
        }