Inheritance: MonoBehaviour
Example #1
0
        void buttonSave_Click(object sender, EventArgs e)
        {
            PanelButton    pb              = (sender as PanelButton);
            Image          imageToSave     = mainScene.GetSegmentAt(pb.Index).image;
            SaveFileDialog saveFileDialog1 = new SaveFileDialog();

            saveFileDialog1.Filter = "JPeg Image|*.jpg|Bitmap Image|*.bmp|Png Image|*.png";
            saveFileDialog1.Title  = "Save an Image File";
            saveFileDialog1.ShowDialog();

            if (saveFileDialog1.FileName != "")
            {
                System.IO.FileStream fs = (System.IO.FileStream)saveFileDialog1.OpenFile();
                switch (saveFileDialog1.FilterIndex)
                {
                case 1:
                    imageToSave.Save(fs,
                                     System.Drawing.Imaging.ImageFormat.Jpeg);
                    break;

                case 2:
                    imageToSave.Save(fs,
                                     System.Drawing.Imaging.ImageFormat.Bmp);
                    break;

                case 3:
                    imageToSave.Save(fs,
                                     System.Drawing.Imaging.ImageFormat.Png);
                    break;
                }

                fs.Close();
            }
        }
Example #2
0
        void buttonRemove_Click(object sender, EventArgs e)
        {
            PanelButton pb = (sender as PanelButton);

            mainScene.RemoveSegment(pb.Index);
            RefreshPreviewPanel();
            pictureBox1.Image = mainScene.GetSceneImage();
        }
Example #3
0
        void buttonHighlight_Click(object sender, EventArgs e)
        {
            PanelButton pb   = (sender as PanelButton);
            Segment     segm = mainScene.GetSegmentAt(pb.Index);

            //mainScene.GetSegmentAt(pb.Index).selectionStrategy.PaintSelection();
            segm.isHighlighted = !segm.isHighlighted;
            pictureBox1.Image  = mainScene.GetSceneImage();
            previewPanel.Refresh();
        }
Example #4
0
        public void RefreshPreviewPanel()
        {
            previewPanel.Controls.Clear();
            previewPanel.RowCount    = 2;
            previewPanel.ColumnCount = 2;
            List <Segment> segments = mainScene.GetSegments();

            for (int i = 1; i < segments.Count; i++)
            {
                PictureBox pictureBox = new PictureBox();
                pictureBox.Size     = new Size(256, 256);
                pictureBox.SizeMode = PictureBoxSizeMode.Zoom;
                pictureBox.Image    = segments[i].image;

                PanelButton buttonHighlight = new PanelButton();
                buttonHighlight.Size   = new Size(128, 32);
                buttonHighlight.Text   = "Highlight " + i;
                buttonHighlight.Index  = i;
                buttonHighlight.Click += new EventHandler(buttonHighlight_Click);

                PanelButton buttonRemove = new PanelButton();
                buttonRemove.Size   = new Size(128, 32);
                buttonRemove.Text   = "Remove " + i;
                buttonRemove.Index  = i;
                buttonRemove.Click += new EventHandler(buttonRemove_Click);

                PanelButton buttonSaveImage = new PanelButton();
                buttonSaveImage.Size   = new Size(128, 32);
                buttonSaveImage.Text   = "Save Image " + i;
                buttonSaveImage.Index  = i;
                buttonSaveImage.Click += new EventHandler(buttonSave_Click);

                PanelButton buttonSaveSegment = new PanelButton();
                buttonSaveSegment.Size   = new Size(128, 32);
                buttonSaveSegment.Text   = "Save Segment " + i;
                buttonSaveSegment.Index  = i;
                buttonSaveSegment.Click += new EventHandler(buttonSaveSegment_Click);

                Panel buttonsPanel = new Panel();
                buttonsPanel.Size = new Size(256, 256);
                buttonsPanel.Controls.Add(buttonHighlight);
                buttonsPanel.Controls.Add(buttonRemove);
                buttonsPanel.Controls.Add(buttonSaveImage);
                buttonsPanel.Controls.Add(buttonSaveSegment);
                buttonRemove.Location      = new Point(0, 50);
                buttonSaveImage.Location   = new Point(0, 100);
                buttonSaveSegment.Location = new Point(0, 150);
                previewPanel.Controls.Add(pictureBox, 0, i - 1);
                previewPanel.Controls.Add(buttonsPanel, 1, i - 1);
            }
            previewPanel.Refresh();
        }
        private void ButtonDownload_OnClick(object sender, RoutedEventArgs e)
        {
            var fadeOut = new DoubleAnimation(1, 0, TimeSpan.FromMilliseconds(250));
            var fadeIn  = new DoubleAnimation(0, 1, TimeSpan.FromMilliseconds(250));

            fadeOut.Completed += (o, args) =>
            {
                PanelButton.Visibility = Visibility.Hidden;
                GridProgress.BeginAnimation(OpacityProperty, fadeIn);
                GridProgress.Visibility = Visibility.Visible;
            };
            PanelButton.BeginAnimation(OpacityProperty, fadeOut);
            DownloadUpdate();
        }
Example #6
0
        private void InstantlyRunnableButtonClick(UIMouseEvent evt, UIElement listeningelement)
        {
            PanelButton panelButton = evt.Target as PanelButton;

            if (panelButton == null)
            {
                panelButton = evt.Target.Parent as PanelButton;
            }

            if (!_buttonsToRunnables.ContainsKey(panelButton))
            {
                Main.NewText("No save data in selected slot!");
                return;
            }

            SelectedRunnable = _buttonsToRunnables[panelButton];
            LastInstantEnvironment.Select(SelectedRunnable);
            Main.NewText($"Selected save slot {ButtonGrid._items.IndexOf(panelButton) + 1} : {SelectedRunnable.GetType().Name}");
        }
Example #7
0
        public void buttonSaveSegment_Click(object sender, EventArgs e)
        {
            PanelButton pb            = (sender as PanelButton);
            Segment     segmentToSave = mainScene.GetSegmentAt(pb.Index);

            string         jsonString      = segmentToSave.GetJSON();
            SaveFileDialog saveFileDialog1 = new SaveFileDialog();

            saveFileDialog1.Filter = "Segment Image|*.segment";
            saveFileDialog1.Title  = "Save an Image File";
            saveFileDialog1.ShowDialog();

            if (saveFileDialog1.FileName != "")
            {
                System.IO.FileStream fs = (System.IO.FileStream)saveFileDialog1.OpenFile();
                byte[] info             = new UTF8Encoding(true).GetBytes(jsonString);
                fs.Write(info, 0, info.Length);
                fs.Close();
            }
        }
Example #8
0
        void ReleaseDesignerOutlets()
        {
            if (CustomView != null)
            {
                CustomView.Dispose();
                CustomView = null;
            }

            if (ToggleButton != null)
            {
                ToggleButton.Dispose();
                ToggleButton = null;
            }

            if (PanelButton != null)
            {
                PanelButton.Dispose();
                PanelButton = null;
            }
        }
Example #9
0
        internal void GenerateButtons(InstantEnvironment instantEnvironment, List <InstantlyRunnable> instantlyRunnables)
        {
            /*_buttonsToRunnables.Clear();
             *
             * PanelButton GenerateButton(InstantlyRunnable instantlyRunnable)
             * {
             *  PanelButton button = new PanelButton(instantlyRunnable.GetType().Name, 240);
             *  button.Left.Set(10, 0);
             *
             *  button.OnClick += SelectInstantlyRunnable;
             *
             *  return button;
             * }
             *
             * foreach (InstantlyRunnable instantlyRunnable in instantlyRunnables)
             * {
             *  PanelButton button = GenerateButton(instantlyRunnable);
             *
             *  _buttonsToRunnables.Add(button, instantlyRunnable);
             *  ButtonGrid.Add(button);
             * }*/

            _buttonsToRunnables.Clear();
            int saveSlotAffectedCount = instantlyRunnables.Count > SAVE_SLOT_COUNT ? SAVE_SLOT_COUNT : instantlyRunnables.Count;

            LastInstantEnvironment = instantEnvironment;

            for (int i = 0; i < saveSlotAffectedCount; i++)
            {
                InstantlyRunnable instantlyRunnable = instantlyRunnables[i];
                PanelButton       panelButton       = (ButtonGrid._items[i] as PanelButton);

                panelButton.NameText.SetText(instantlyRunnable.GetType().Name);
                _buttonsToRunnables.Add(panelButton, instantlyRunnable);
            }

            for (int i = saveSlotAffectedCount; i < SAVE_SLOT_COUNT; i++)
            {
                (ButtonGrid._items[i] as PanelButton).NameText.SetText($"SAVE SLOT {i + 1}");
            }
        }
Example #10
0
 public override void ButtonAction()
 {
     PanelButton.CloseMenu();
     UIManager.Instance.RouteMode();
 }
Example #11
0
 public override void ButtonAction()
 {
     PanelButton.CloseMenu();
 }
Example #12
0
        public override void OnInitialize()
        {
            CheckBoxes = new UICheckbox[]
            {
                new UICheckbox(),
                new UICheckbox(),
                new UICheckbox()
            };
            CheckBoxTexts = new UIText[]
            {
                new UIText("SEND NUDES TO CLIENTS"),
                new UIText("SEND NUDES TO SERVER"),
                new UIText("Idk something else")
            };

            CheckBoxes[0].Top.Set(40, 0);
            CheckBoxes[0].Left.Set(PANEL_WIDTH - 290, 0);
            CheckBoxes[1].Top.Set(80, 0);
            CheckBoxes[1].Left.Set(PANEL_WIDTH - 290, 0);
            CheckBoxes[2].Top.Set(120, 0);
            CheckBoxes[2].Left.Set(PANEL_WIDTH - 290, 0);

            CheckBoxTexts[0].Top.Set(50, 0);
            CheckBoxTexts[0].Left.Set(PANEL_WIDTH - 256, 0);
            CheckBoxTexts[1].Top.Set(90, 0);
            CheckBoxTexts[1].Left.Set(PANEL_WIDTH - 256, 0);
            CheckBoxTexts[2].Top.Set(130, 0);
            CheckBoxTexts[2].Left.Set(PANEL_WIDTH - 256, 0);

            MainPanel = new UIPanel();
            MainPanel.Width.Set(PANEL_WIDTH, 0);
            MainPanel.Height.Set(PANEL_HEIGHT, 0);
            MainPanel.SetPadding(0);
            MainPanel.VAlign = 0.5f;
            MainPanel.HAlign = 0.5f;

            var bgPanel = new UIPanel();

            bgPanel.Width.Set(250, 0);
            bgPanel.Height.Set(360, 0);
            bgPanel.SetPadding(0);
            bgPanel.VAlign = 0.5f;
            bgPanel.HAlign = 0.15f;

            ButtonGridScrollBar = new UIScrollbar();
            ButtonGridScrollBar.Width.Set(20, 0);
            ButtonGridScrollBar.Height.Set(350, 0);
            ButtonGridScrollBar.VAlign = 0.5f;
            ButtonGridScrollBar.HAlign = 0.05f;

            ButtonGrid = new UIGrid();
            ButtonGrid.Width.Set(250, 0);
            ButtonGrid.Height.Set(350, 0);
            ButtonGrid.SetScrollbar(ButtonGridScrollBar);
            ButtonGrid.Left.Set(5, 0);
            ButtonGrid.Top.Set(5, 0);

            for (int i = 0; i < SAVE_SLOT_COUNT; i++)
            {
                PanelButton button = new PanelButton("PLEASE COMPILE", 240);
                button.Left.Set(10, 0);

                button.OnClick += InstantlyRunnableButtonClick;

                ButtonGrid.Add(button);
            }

            bgPanel.Append(ButtonGrid);

            MainPanel.Append(bgPanel);

            CloseUIButton = new PanelButton("Close");
            CloseUIButton.Top.Set(PANEL_HEIGHT - 50, 0);
            CloseUIButton.Left.Set(PANEL_WIDTH - 100, 0);
            CloseUIButton.OnClick += new UIElement.MouseEvent(CloseUI);

            SendButton = new PanelButton("Execute", 80);
            SendButton.Top.Set(PANEL_HEIGHT - 50, 0);
            SendButton.Left.Set(PANEL_WIDTH - 184, 0);
            SendButton.OnClick += new UIElement.MouseEvent(ExecuteAction);

            MainPanel.Append(CloseUIButton);
            MainPanel.Append(SendButton);
            MainPanel.Append(ButtonGridScrollBar);

            foreach (UICheckbox check in CheckBoxes)
            {
                MainPanel.Append(check);
            }

            foreach (UIText text in CheckBoxTexts)
            {
                MainPanel.Append(text);
            }

            base.Append(MainPanel);
        }