// Update is called once per frame
    void Update()
    {
        foreach (Button button in buttons)
        {
            buttonToggle = button.GetComponent <ButtonToggle>();

            if (buttonToggle.clicked)
            {
                string buttonText = button.GetComponentInChildren <TextMeshProUGUI>().text;
                symptomstoAdd.Add(buttonText);
                buttonToggle.clicked = false;
            }
        }
    }
Beispiel #2
0
        public NoteBlock()
        {
            SetPassEvents(false);
            SetMinSize(200, 100);
            SetItemName("NoteBlock_" + count);
            SetPadding(4, 4, 4, 4);
            SetBorderRadius(4);
            SetBackground(32, 32, 32);
            count++;

            _palette = new ButtonCore();
            _lock    = new ButtonToggle();
            _text    = new TextArea();
            _note    = new Label();
        }
Beispiel #3
0
    // Start is called before the first frame update
    void Start()
    {
        symptomButtons  = GetComponentsInChildren <Button>();
        numberOfButtons = symptomButtons.Length;

        assignedSymptoms = new List <string>(numberOfButtons);

        foreach (string _symptom in reader.symptomsFromFile)
        {
            int i = assignedSymptoms.Count;
            assignedSymptoms.Add(_symptom);

            buttonScript            = symptomButtons[i].GetComponent <ButtonToggle>();
            buttonScript.boolNumber = i + 1;
        }
        AssignToButtons();
    }
Beispiel #4
0
 public void SwitchToggle(ButtonToggle toggle)
 {
     foreach (var item in toggles)
     {
         if (toggle == item)
         {
             NowToggle = toggle;
             item.IsOn = true;
             item.OnValueChange?.Invoke(true);
             if (Horizontal)
             {
                 item.rect.sizeDelta.x.To(rect.sizeDelta.x * Size, AnimaTime, x =>
                 {
                     item.rect.sizeDelta = item.rect.sizeDelta.RSetX(x);
                 });
             }
             else
             {
                 item.rect.sizeDelta.y.To(rect.sizeDelta.y * Size, AnimaTime, x =>
                 {
                     item.rect.sizeDelta = item.rect.sizeDelta.RSetY(x);
                 });
             }
         }
         else
         {
             item.IsOn = false;
             item.OnValueChange?.Invoke(false);
             if (Horizontal)
             {
                 item.rect.sizeDelta.x.To(rect.sizeDelta.x * (1 - Size) / (toggles.Count - 1), AnimaTime, x =>
                 {
                     item.rect.sizeDelta = item.rect.sizeDelta.RSetX(x);
                 });
             }
             else
             {
                 item.rect.sizeDelta.y.To(rect.sizeDelta.y * (1 - Size) / (toggles.Count - 1), AnimaTime, x =>
                 {
                     item.rect.sizeDelta = item.rect.sizeDelta.RSetY(x);
                 });
             }
         }
     }
     gameObject.ReShow();
 }
    private void PortHandler(ServerPlacedScript server, string portName, int[] portNums)
    {
        Transform obj = this.transform.Find(portName);

        ButtonToggle toggle = obj.GetComponent <ButtonToggle>();

        obj.GetComponent <Button>().onClick.AddListener(delegate
        {
            listeners.Add(delegate
            {
                if (toggle.isDown)
                {
                    server.data.portsOpen.AddRange(portNums);
                }
                else
                {
                    foreach (int clientId in server.data.clients)
                    {
                        Client client = GameData.storage.clients.GetClient(clientId);
                        if (Array.Exists(client.reqPorts, i => Array.Exists(portNums, j => j == i)))
                        {
                            this.transform.Find("Do not turn off ports").gameObject.SetActive(true);
                            toggle.Down();
                            return;
                        }
                    }

                    server.data.portsOpen.RemoveAll(delegate(int i)
                    {
                        foreach (int p in portNums)
                        {
                            if (p == i)
                            {
                                return(true);
                            }
                        }
                        return(false);
                    });
                }
            });
        });
    }
Beispiel #6
0
        public static ButtonToggle GetSwitchButton()
        {
            ButtonToggle btn = new ButtonToggle("Enable Subtract Effect");

            btn.SetSize(200, 40);
            btn.SetAlignment(ItemAlignment.HCenter, ItemAlignment.Bottom);
            btn.SetMargin(0, 0, 0, 20);
            btn.SetBorderRadius(btn.GetHeight() / 2);
            btn.EventToggle += (sender, args) =>
            {
                if (btn.IsToggled())
                {
                    btn.SetText("Disable Subtract Effect");
                }
                else
                {
                    btn.SetText("Enable Subtract Effect");
                }
            };
            return(btn);
        }
Beispiel #7
0
        public override void InitWindow()
        {
            // window attr
            SetParameters("MainWindow", "SubtractEffectExample", 600, 500);
            SetAntiAliasingQuality(MSAA.MSAA8x);
            IsCentered = true;

            // create items
            int diameter = 200;

            IBaseItem cRed   = ItemsFactory.GetCircle(diameter, Color.FromArgb(255, 94, 94));
            IBaseItem cGreen = ItemsFactory.GetCircle(diameter, Color.FromArgb(16, 180, 111));
            IBaseItem cBlue  = ItemsFactory.GetCircle(diameter, Color.FromArgb(10, 162, 232));

            ItemsFactory.SetCircleAlignment(cRed, ItemAlignment.Top);
            ItemsFactory.SetCircleAlignment(cGreen, ItemAlignment.Left, ItemAlignment.Bottom);
            ItemsFactory.SetCircleAlignment(cBlue, ItemAlignment.Right, ItemAlignment.Bottom);

            // add items to window
            AddItems(cRed, cGreen, cBlue, ItemsFactory.GetLabel("Vector Subtraction Effect"));

            // init effects
            Model.InitEffects(cRed, cGreen, cBlue);

            // switch effects button
            ButtonToggle switchEffectBtn = ItemsFactory.GetSwitchButton();

            switchEffectBtn.EventToggle += (sender, args) =>
            {
                if (switchEffectBtn.IsToggled())
                {
                    Model.AddEffects();
                }
                else
                {
                    Model.RemoveEffects();
                }
            };
            AddItem(switchEffectBtn);
        }
Beispiel #8
0
        public override void InitWindow()
        {
            //window init
            SetParameters(nameof(MainWindow), nameof(MainWindow), 1300, 840, false);
            SetMinSize(500, 300);
            SetBackground(32, 34, 37);

            //title
            title = new TitleBar("Mimic");
            title.SetStyle(Styles.GetTitleBarStyle());

            HorizontalStack h_stack = new HorizontalStack();

            h_stack.SetMargin(0, 22, 0, 0);
            h_stack.SetSpacing(0, 0);

            //left block
            VerticalStack left = new VerticalStack();//70

            left.SetWidth(70);
            left.SetWidthPolicy(SizePolicy.Fixed);
            left.SetPadding(2, 0, 2, 2);
            left.SetSpacing(0, 10);

            SpaceVIL.Rectangle line = new SpaceVIL.Rectangle();
            line.SetBackground(32, 34, 37);
            line.SetSizePolicy(SizePolicy.Expand, SizePolicy.Fixed);
            line.SetHeight(1);
            line.SetShadow(2, 0, 2, Color.FromArgb(150, 0, 0, 0));
            line.SetMargin(8, 0, 8, 0);

            ButtonCore mimic_icon = new ButtonCore("M");

            mimic_icon.SetFont(new Font(DefaultsService.GetDefaultFont().FontFamily, 30, FontStyle.Bold));
            mimic_icon.SetSize(50, 50);
            mimic_icon.SetBackground(114, 137, 208);
            mimic_icon.SetAlignment(ItemAlignment.Top | ItemAlignment.HCenter);
            mimic_icon.SetBorderRadius(new CornerRadius(15));

            SpaceVIL.Rectangle divider = new SpaceVIL.Rectangle();
            divider.SetBackground(47, 49, 54);
            divider.SetSizePolicy(SizePolicy.Expand, SizePolicy.Fixed);
            divider.SetHeight(2);
            divider.SetMargin(15, 0, 15, 0);

            ButtonToggle notes_area_btn = new ButtonToggle("N");

            notes_area_btn.SetFont(new Font(DefaultsService.GetDefaultFont().FontFamily, 30, FontStyle.Bold));
            notes_area_btn.SetSize(50, 50);
            notes_area_btn.SetBackground(Color.Transparent);
            notes_area_btn.SetForeground(100, 101, 105);
            notes_area_btn.SetAlignment(ItemAlignment.Top | ItemAlignment.HCenter);
            notes_area_btn.SetBorderRadius(new CornerRadius(15));
            notes_area_btn.SetBorderFill(100, 101, 105);
            notes_area_btn.SetBorderThickness(1);
            notes_area_btn.EventMouseClick += (sender, args) =>
            {
                if (notes_area_btn.IsToggled())
                {
                    freeNotes.SetVisible(true);
                    conversation.SetVisible(false);
                    freeNotes.GetParent().Update(GeometryEventType.ResizeHeight);
                }
                else
                {
                    freeNotes.SetVisible(false);
                    conversation.SetVisible(true);
                    freeNotes.GetParent().Update(GeometryEventType.ResizeHeight);
                }
            };

            ButtonCore add_btn = new ButtonCore();

            add_btn.SetSize(50, 50);
            add_btn.SetBackground(Color.Transparent);
            add_btn.SetAlignment(ItemAlignment.Top | ItemAlignment.HCenter);
            add_btn.SetBorderRadius(new CornerRadius(25));
            add_btn.SetBorderFill(100, 101, 105);
            add_btn.SetBorderThickness(1);
            add_btn.SetToolTip("Add a new friend.");
            add_btn.EventMouseClick += (sender, args) =>
            {
                AddMenuDialog dialog = new AddMenuDialog();
                dialog.OnCloseDialog += () =>
                {
                    string result = dialog.InputResult;
                    if (!result.Equals(String.Empty))
                    {
                        contacts_bar.AddItem(InfinityItemsBox.GetVisualContact(result, input_message));
                    }
                };
                dialog.Show(this);
            };

            CustomShape plus = new CustomShape();

            plus.SetBackground(100, 101, 105);
            plus.SetSize(20, 20);
            plus.SetAlignment(ItemAlignment.VCenter | ItemAlignment.HCenter);
            plus.SetTriangles(GraphicsMathService.GetCross(20, 20, 2, 0));

            //middleblock
            VerticalStack middle = new VerticalStack();//240

            middle.SetStyle(Styles.GetCommonContainerStyle());
            middle.SetWidth(240);
            middle.SetWidthPolicy(SizePolicy.Fixed);
            middle.SetBackground(47, 49, 54);
            middle.SetBorderRadius(new CornerRadius(6, 0, 6, 0));

            Frame search_bar = new Frame();

            search_bar.SetBorderRadius(new CornerRadius(6, 0, 0, 0));
            search_bar.SetBackground(47, 49, 54);
            search_bar.SetHeight(48);
            search_bar.SetPadding(15, 0, 15, 0);
            search_bar.SetHeightPolicy(SizePolicy.Fixed);
            search_bar.SetShadow(2, 0, 2, Color.FromArgb(150, 0, 0, 0));

            contacts_bar = new ListBox();
            contacts_bar.SetPadding(8, 8, 8, 8);
            contacts_bar.SetBackground(Color.Transparent);
            contacts_bar.SetHScrollBarVisible(ScrollBarVisibility.Never);
            contacts_bar.SetVScrollBarVisible(ScrollBarVisibility.Never);
            contacts_bar.SetSelectionVisible(false);

            Frame user_bar = new Frame();

            user_bar.SetBorderRadius(new CornerRadius(0, 0, 6, 0));
            user_bar.SetBackground(42, 44, 49);
            user_bar.SetHeight(48);
            user_bar.SetPadding(15, 0, 15, 0);
            user_bar.SetHeightPolicy(SizePolicy.Fixed);
            user_bar.SetAlignment(ItemAlignment.Bottom);

            TextEdit search = new TextEdit();

            search.SetPadding(10, 0, 10, 0);
            search.SetFont(DefaultsService.GetDefaultFont(12));
            search.SetForeground(150, 150, 150);
            search.SetSubstrateText("Find or start conversation");
            search.SetSubstrateFontSize(12);
            search.SetSubstrateFontStyle(FontStyle.Regular);
            search.SetSubstrateForeground(100, 100, 100);
            search.SetHeight(32);
            search.SetBackground(37, 39, 43);
            search.SetAlignment(ItemAlignment.HCenter, ItemAlignment.VCenter);
            search.SetBorderRadius(4);
            search.SetBorderThickness(1);
            search.SetBorderFill(32, 34, 37);

            //right block
            VerticalStack right = new VerticalStack();//expand

            right.SetStyle(Styles.GetCommonContainerStyle());
            right.SetSpacing(0, 2);

            HorizontalStack conversation_bar = new HorizontalStack();

            conversation_bar.SetBackground(54, 57, 63);
            conversation_bar.SetHeight(48);
            conversation_bar.SetHeightPolicy(SizePolicy.Fixed);
            conversation_bar.SetPadding(10, 0, 0, 0);
            conversation_bar.SetSpacing(5, 0);
            conversation_bar.SetShadow(2, 0, 2, Color.FromArgb(150, 0, 0, 0));

            freeNotes = new FreeArea();
            freeNotes.SetVisible(false);
            freeNotes.SetBackground(Color.FromArgb(5, 255, 255, 255));

            conversation = new ListBox();
            conversation.SetPadding(4, 4, 4, 4);
            conversation.SetBackground(Color.Transparent);
            conversation.SetHScrollBarVisible(ScrollBarVisibility.Never);
            conversation.GetArea().SetPadding(16, 10, 2, 2);
            conversation.SetSelectionVisible(false);

            VerticalScrollBar vs = conversation.VScrollBar;

            vs.SetWidth(16);
            vs.SetBorderThickness(4);
            vs.SetBorderFill(54, 57, 63);
            vs.SetBorderRadius(new CornerRadius(9));
            vs.SetArrowsVisible(false);
            vs.SetBackground(47, 49, 54);
            vs.SetPadding(0, 0, 0, 0);
            vs.Slider.Track.SetBackground(Color.Transparent);
            vs.Slider.SetBorderThickness(4);
            vs.Slider.SetBorderFill(54, 57, 63);
            vs.Slider.SetBorderRadius(new CornerRadius(9));
            vs.Slider.SetBackground(32, 34, 37, 255);
            vs.Slider.SetMargin(new Indents(0, 0, 0, 0));
            vs.Slider.RemoveAllItemStates();

            HorizontalStack input_bar = new HorizontalStack();

            input_bar.SetHeight(44);
            input_bar.SetHeightPolicy(SizePolicy.Fixed);
            input_bar.SetMargin(20, 10, 20, 30);
            input_bar.SetPadding(15, 0, 8, 0);
            input_bar.SetSpacing(10, 0);
            input_bar.SetBackground(72, 75, 81);
            input_bar.SetBorderRadius(new CornerRadius(6, 6, 6, 6));

            ButtonCore emoji = new ButtonCore("+");

            emoji.SetSize(24, 24);
            emoji.SetBackground(126, 128, 132);
            emoji.SetAlignment(ItemAlignment.VCenter | ItemAlignment.Left);
            emoji.SetBorderRadius(new CornerRadius(12));

            SpaceVIL.Rectangle divider_v = new SpaceVIL.Rectangle();
            divider_v.SetBackground(126, 128, 132);
            divider_v.SetWidth(2);
            divider_v.SetSizePolicy(SizePolicy.Fixed, SizePolicy.Expand);
            divider_v.SetMargin(0, 10, 0, 10);

            input_message = new TextEdit();
            input_message.SetBackground(Color.Transparent);
            input_message.SetForeground(Color.White);
            input_message.SetAlignment(ItemAlignment.VCenter);
            input_message.SetBorderRadius(new CornerRadius(0, 3, 0, 3));
            input_message.SetSubstrateText("Message @Jackson");
            input_message.EventKeyPress += (sender, args) =>
            {
                if (args.Key == KeyCode.Enter)
                {
                    conversation.AddItem(InfinityItemsBox.GetMessage(input_message.GetText()));
                    input_message.Clear();
                }
            };

            ButtonCore add_note = InfinityItemsBox.GetOrdinaryButton();

            add_note.SetForeground(166, 167, 168);
            add_note.SetFont(new Font(DefaultsService.GetDefaultFont().FontFamily, 12, FontStyle.Bold));
            add_note.SetText("Add new note");
            add_note.SetWidth(100);
            add_note.SetShadow(4, 0, 2, Color.FromArgb(150, 0, 0, 0));
            add_note.EventMouseClick += (sender, args) =>
            {
                NoteBlock block = InfinityItemsBox.GetNoteBlock();
                block.SetPosition(100, 100);
                freeNotes.AddItem(block);
            };

            //adding items
            AddItems(
                title,
                h_stack
                );
            h_stack.AddItems(
                left,
                middle,
                right
                );
            left.AddItems(
                line,
                mimic_icon,
                divider,
                notes_area_btn,
                add_btn
                );
            add_btn.AddItem(
                plus
                );
            middle.AddItems(
                search_bar,
                contacts_bar,
                user_bar
                );
            search_bar.AddItems(
                search
                );
            user_bar.AddItems(
                new UserBar("Daniel")
                );
            right.AddItems(
                conversation_bar,
                conversation,
                freeNotes,
                input_bar
                );
            conversation_bar.AddItems(
                add_note,
                InfinityItemsBox.GetOrdinaryButton(),
                InfinityItemsBox.GetOrdinaryButton(),
                InfinityItemsBox.GetOrdinaryButton(),
                InfinityItemsBox.GetOrdinaryButton()
                );
            input_bar.AddItems(
                emoji,
                divider_v,
                input_message
                );
            contacts_bar.AddItems(
                InfinityItemsBox.GetVisualContact("Jackson", input_message),
                InfinityItemsBox.GetVisualContact("Evelyn", input_message),
                InfinityItemsBox.GetVisualContact("Alexander", input_message),
                InfinityItemsBox.GetVisualContact("Matthew", input_message)
                );
        }
Beispiel #9
0
    public void apply(int index)
    {
        EditorApplication.SaveScene(EditorApplication.currentScene);

        EditorApplication.OpenScene(UnityEditor.EditorBuildSettings.scenes[index].path);

        GameObject[] go = EditorMisc.GetAllObjectsInScene(false);
        Debug.Log("HUH");


        for (int i = 0; i < go.Length; i++)
        {
            FMG.LevelSelect ls = go[i].GetComponent <FMG.LevelSelect>();
            if (ls)
            {
                handleLevelSelect(ls);
            }
            ButtonToggle buttonToggle = go[i].GetComponent <ButtonToggle>();
            if (buttonToggle)
            {
                buttonToggle.useButtonToggle = useToggableMenu;
            }
            FMG.LevelSelect levelsel = go[i].GetComponent <FMG.LevelSelect>();
            if (levelsel)
            {
                levelsel.useLockedButtons = useLockedLevels;
            }

            UnityEngine.UI.Text text = go[i].GetComponent <UnityEngine.UI.Text>();
            if (text)
            {
                text.font  = font;
                text.color = fontColor;
            }

            if (go[i].name.Contains("Button"))
            {
                UnityEngine.UI.Image img1 = go[i].GetComponent <UnityEngine.UI.Image>();
                if (img1)
                {
                    img1.sprite = buttonSprite;
                }
            }
            if (go[i].name.Contains("Panel"))
            {
                UnityEngine.UI.Image img1 = go[i].GetComponent <UnityEngine.UI.Image>();
                if (img1)
                {
                    img1.sprite = panelSprite;
                    img1.color  = panelColor;
                }
            }
            if (go[i].name.Equals("Background"))
            {
                UnityEngine.UI.RawImage img1 = go[i].GetComponent <UnityEngine.UI.RawImage>();
                if (img1)
                {
                    img1.color   = backgroundColor;
                    img1.texture = backgroundTexture;
                }
            }
        }

        UnityEditorInternal.InternalEditorUtility.RepaintAllViews();
        EditorApplication.SaveScene(UnityEditor.EditorBuildSettings.scenes[index].path);
    }