public ToggleableChangeListElement()
        {
            AddToClassList(UssClassName);
            styleSheets.Add(AssetDatabase.LoadAssetAtPath <StyleSheet>(k_StylePath));

            // Setup icons
            var toggleContainer = new VisualElement();

            toggle = new Toggle();
            toggle.AddToClassList(ToggleUssClassName);
            toggleContainer.Add(toggle);

            statusIcon = new VisualElement();
            statusIcon.AddToClassList(IconUssClassName);
            statusIcon.AddToClassList(StatusIconUssClassName);

            icons.Add(toggleContainer);
            icons.Add(statusIcon);

            // Setup buttons
            diffButton = new IconButton();
            diffButton.AddToClassList(IconButton.DiffUssCLassName);
            diffButton.AddToClassList(ButtonUssClassName);
            diffButton.AddToClassList(DiffButtonUssClassName);

            discardButton = new IconButton();
            discardButton.AddToClassList(IconButton.UndoUssClassName);
            discardButton.AddToClassList(ButtonUssClassName);
            discardButton.AddToClassList(DiscardButtonUssClassName);

            buttons.Add(diffButton);
            buttons.Add(discardButton);
        }
Пример #2
0
        public HistoryChangeListElement()
        {
            AddToClassList(UssClassName);

            // Setup icons
            statusIcon = new VisualElement();
            statusIcon.AddToClassList(IconUssClassName);
            statusIcon.AddToClassList(StatusIconUssClassName);
            icons.Add(statusIcon);

            // Setup buttons
            revertButton = new IconButton();
            revertButton.AddToClassList(IconButton.UndoUssClassName);
            revertButton.AddToClassList(ButtonUssClassName);
            revertButton.AddToClassList(RevertButtonUssClassName);
            buttons.Add(revertButton);
        }
Пример #3
0
        protected void CreateDeleteButton()
        {
            var deleteButton = new IconButton(DeleteNode)
            {
                image = Icon.Close.Texture, tooltip = "Delete this node"
            };

            deleteButton.AddToClassList(NodeDeleteButtonUssClassName);
            titleButtonContainer.Add(deleteButton);
        }
        public ConflictedChangeListElement()
        {
            AddToClassList(UssClassName);

            // Setup icons
            statusIcon = new VisualElement();
            statusIcon.AddToClassList(IconUssClassName);
            statusIcon.AddToClassList(StatusIconUssClassName);
            icons.Add(statusIcon);

            // Setup buttons
            showButton = new IconButton();
            showButton.AddToClassList(IconButton.ShowUssClassName);
            showButton.AddToClassList(ButtonUssClassName);
            showButton.AddToClassList(ShowButtonUssClassName);
            showButton.tooltip = StringAssets.viewDiff;

            chooseMergeButton = new IconButton();
            chooseMergeButton.AddToClassList(IconButton.MergeUssClassName);
            chooseMergeButton.AddToClassList(ButtonUssClassName);
            chooseMergeButton.AddToClassList(ChooseMergeButtonUssClassName);
            chooseMergeButton.tooltip = StringAssets.useMergeTool;

            chooseRemoteButton = new IconButton();
            chooseRemoteButton.AddToClassList(IconButton.ChooseRemoteUssClassName);
            chooseRemoteButton.AddToClassList(ButtonUssClassName);
            chooseRemoteButton.AddToClassList(ChooseRemoteButtonUssClassName);
            chooseRemoteButton.tooltip = StringAssets.useRemoteChanges;

            chooseMineButton = new IconButton();
            chooseMineButton.AddToClassList(IconButton.ChooseMineUssClassName);
            chooseMineButton.AddToClassList(ButtonUssClassName);
            chooseMineButton.AddToClassList(ChooseMineButtonUssClassName);
            chooseMineButton.tooltip = StringAssets.useMyChanges;

            buttons.Add(showButton);
            buttons.Add(chooseMergeButton);
            buttons.Add(chooseRemoteButton);
            buttons.Add(chooseMineButton);
        }
Пример #5
0
        private VisualElement CreateFooter()
        {
            var expressionText = new TextField {
                tooltip = "Type an expression to execute"
            };

            expressionText.AddToClassList(UssExpressionClassName);

            void execute()
            {
                if (string.IsNullOrWhiteSpace(expressionText.text))
                {
                    var valid = ExecuteExpression(expressionText.text);
                    if (valid)
                    {
                        expressionText.SetValueWithoutNotify(string.Empty);
                    }

                    EnableInClassList(UssExpressionInvalidClassName, !valid);
                }
            };

            expressionText.RegisterCallback <KeyDownEvent>(evt =>
            {
                if (evt.keyCode == KeyCode.KeypadEnter || evt.keyCode == KeyCode.Return)
                {
                    execute();
                }
            });

            var executeButton = new IconButton(execute)
            {
                image = _executeIcon.Texture, tooltip = "Execute this expression"
            };

            executeButton.AddToClassList(UssExecuteButtonClassName);

            var placeholder = new Placeholder("Execute Expression");

            placeholder.AddToField(expressionText);

            var footer = new Toolbar();

            footer.AddToClassList(UssFooterClassName);
            footer.Add(expressionText);
            footer.Add(executeButton);

            return(footer);
        }
        public ChangeListElement()
        {
            AddToClassList(UssClassName);

            // Setup icons
            statusIcon = new VisualElement();
            statusIcon.AddToClassList(IconUssClassName);
            statusIcon.AddToClassList(StatusIconUssClassName);
            icons.Add(statusIcon);

            // Setup buttons
            diffButton = new IconButton();
            diffButton.AddToClassList(IconButton.DiffUssCLassName);
            diffButton.AddToClassList(ButtonUssClassName);
            diffButton.AddToClassList(DiffButtonUssClassName);

            discardButton = new IconButton();
            discardButton.AddToClassList(IconButton.UndoUssClassName);
            discardButton.AddToClassList(ButtonUssClassName);
            discardButton.AddToClassList(DiscardButtonUssClassName);

            buttons.Add(diffButton);
            buttons.Add(discardButton);
        }
Пример #7
0
            public GraphNodeControl()
            {
                _label = new Label();
                _label.AddToClassList(InputLabelUssClassName);

                _icon = new IconButton(() => Selection.activeObject = Value)
                {
                    image = Icon.Inspect.Texture, tooltip = "Select and edit this node"
                };
                _icon.AddToClassList(IconUssClassName);

                Add(_label);
                Add(_icon);

                Refresh();
            }
Пример #8
0
        private VisualElement CreateToolbar()
        {
            var watchField = new TextField {
                tooltip = "Type a VariableReference to watch"
            };

            watchField.AddToClassList(UssWatchClassName);

            void watch()
            {
                if (string.IsNullOrWhiteSpace(watchField.text))
                {
                    var valid = AddWatch(watchField.text);
                    if (valid)
                    {
                        watchField.SetValueWithoutNotify(string.Empty);
                    }

                    EnableInClassList(UssWatchInvalidClassName, !valid);
                }
            };

            watchField.RegisterCallback <KeyDownEvent>(evt =>
            {
                if (evt.keyCode == KeyCode.KeypadEnter || evt.keyCode == KeyCode.Return)
                {
                    watch();
                }
            });

            var placeholder = new Placeholder("Add watch");

            placeholder.AddToField(watchField);

            var watchButton = new IconButton(watch)
            {
                image = Icon.View.Texture, tooltip = "Watch this variable"
            };

            watchButton.AddToClassList(UssWatchButtonClassName);

            var loggingButton = new Image {
                image = _logIcon.Texture, tooltip = "Enable/Disable logging of graph statistics"
            };

            loggingButton.AddToClassList(UssLoggingClassName);
            loggingButton.AddManipulator(new Clickable(() =>
            {
                CompositionManager.LogTracking = !CompositionManager.LogTracking;
                _logGraphEnabled.Value         = CompositionManager.LogTracking;
                EnableInClassList(UssLoggingActiveClassName, CompositionManager.LogTracking);
            }));

            var toolbar = new Toolbar();

            toolbar.AddToClassList(UssToolbarClassName);
            toolbar.Add(watchField);
            toolbar.Add(watchButton);
            toolbar.Add(loggingButton);

            return(toolbar);
        }