Esempio n. 1
0
 private void InitializeViews()
 {
     this.ColumnDefinitions.Add(new ColumnDefinition {
         Width = new GridLength(1, GridUnitType.Star)
     });
     this.ColumnDefinitions.Add(new ColumnDefinition {
         Width = new GridLength(1, GridUnitType.Auto)
     });
     this.RowDefinitions.Add(new RowDefinition {
         Height = new GridLength(1, GridUnitType.Auto)
     });
     this.RowDefinitions.Add(new RowDefinition {
         Height = new GridLength(1, GridUnitType.Star)
     });
     {
         SPbtn = new MyStackPanel(ScrollOrientation.Horizontal);
         {
             BTNadd = new MyButton("Add");
             SPbtn.Children.Add(BTNadd);
         }
         this.Children.Add(SPbtn, 0, 0);
     }
     {
         LBtitle = new MyLabel(title);
         this.Children.Add(LBtitle, 1, 0);
     }
     {
         BLPmain = new MyControls.BarsListPanel.BarsListPanel <KeyValueItemBar, KeyValueItemBarViewModel>();
         this.Children.Add(BLPmain, 0, 1);
         MyGrid.SetColumnSpan(BLPmain, 2);
     }
 }
    //whenever stackpanel is initialized, it will look for it's children. It will //then pick the value of property set by it's children and apply it to itself
    protected override void OnInitialized(EventArgs e)
    {
        base.OnInitialized(e);

        foreach (UIElement element in this.Children)
        {
            this.Background = MyStackPanel.GetColor(element);
        }
    }
        private void SetPanels()
        {
            NewObjectFormsPanel = new MyStackPanel(this.LoadedListWrappers);
            MainWindowViewController.NewObjectFormViewPanel = NewObjectFormsPanel;

            NewObjectScrollView.Content = NewObjectFormsPanel;
            SearchTreeFormsPanel        = new MyStackPanel(this.LoadedListWrappers);
            MainWindowViewController.SearchTreeFormViewPanel = SearchTreeFormsPanel;
            SearchObjectScrollViewer.Content = SearchTreeFormsPanel;
        }
Esempio n. 4
0
        public void AddSearchTree(MyStackPanel searchTreeFormsPanel, ComboBox searchTreeLoadedFilesComboBox, bool isGameFileTree = true, bool includeChildrenInOnHover = false, bool includeComments = false)
        {
            string selectedObject = searchTreeLoadedFilesComboBox.Text;

            if (String.IsNullOrEmpty(selectedObject))
            {
                return;
            }
            XmlObjectsListWrapper selectedWrapper = LoadedListWrappers.GetWrapperFromDictionary(selectedObject);

            if (selectedObject.Split("_").Length > 1)
            {
                selectedWrapper = LoadedListWrappers.GetValueOrDefault(selectedObject);
                if (selectedWrapper == null)
                {
                    MessageBox.Show(
                        "The was an error in the file for " + selectedObject + ".\n\n" +
                        "It is probably malformed xml, to check this, switch to the mod, open the \"File\" menu and click \"Validate Mod files\".",
                        "File Loading Error!",
                        MessageBoxButton.OK,
                        MessageBoxImage.Error);
                    return;
                }
            }
            XmlObjectsListWrapper leftObjectWrapper = searchTreeFormsPanel.StackPanelLoadedListWrappers.GetValueOrDefault(selectedObject);
            string gameWrapperKey = selectedWrapper.GenerateDictionaryKey();

            if (leftObjectWrapper == null || leftObjectWrapper.XmlFile.FileSize < this.FILE_SIZE_THRESHOLD)
            {
                TreeViewItem nextTreeView = TreeViewGenerator.GetSearchTreeViewRecursive(selectedWrapper, gameWrapperKey, isGameTree: isGameFileTree, includeChildrenInOnHover: includeChildrenInOnHover, includeComments: includeComments);
                nextTreeView.Header = selectedObject;
                searchTreeFormsPanel.Children.Add(nextTreeView);
            }
            else
            {
                MessageBoxResult result = MessageBox.Show(
                    "That is a large file and consumes a considerable amount of resources, you already have one of those objects in the view. Are you sure you want another? ",
                    "Add Another Large Search Tree",
                    MessageBoxButton.YesNo,
                    MessageBoxImage.Exclamation);
                switch (result)
                {
                case MessageBoxResult.Yes:
                    TreeViewItem nextTreeView = TreeViewGenerator.GetSearchTreeViewRecursive(selectedWrapper, gameWrapperKey, isGameTree: isGameFileTree, includeChildrenInOnHover: includeChildrenInOnHover, includeComments: includeComments);
                    nextTreeView.Header = selectedObject;
                    searchTreeFormsPanel.Children.Add(nextTreeView);
                    break;
                }
            }
        }
Esempio n. 5
0
        public void When_Vertical_And_Fixed_Height_Item_ArrangeOverride()
        {
            var SUT = new MyStackPanel();

            SUT.AddChild(child: new Border {
                Height = 47, Width = 112
            });

            var size1    = new Size(width: 1000, height: 1000);
            var arrange1 = SUT.ArrangeOverridePublic(finalSize: size1);

            Assert.AreEqual(expected: size1, actual: arrange1);
            var size2    = new Size(width: 2000, height: 2000);
            var arrange2 = SUT.ArrangeOverridePublic(finalSize: size2);

            Assert.AreEqual(expected: size2, actual: arrange2);
        }
Esempio n. 6
0
        public void When_Vertical_And_Fixed_Height_Item_ArrangeOverride()
        {
            var SUT = new MyStackPanel();

            SUT.AddChild(new Border {
                Height = 47, Width = 112
            });

            var size1    = new Windows.Foundation.Size(1000, 1000);
            var arrange1 = SUT.ArrangeOverridePublic(size1);

            Assert.AreEqual(size1, arrange1);
            var size2    = new Windows.Foundation.Size(2000, 2000);
            var arrange2 = SUT.ArrangeOverridePublic(size2);

            Assert.AreEqual(size2, arrange2);
        }
        private void NewObjectScrollViewer_PreviewMouseWheel(object sender, MouseWheelEventArgs e)
        {
            if (Keyboard.Modifiers != ModifierKeys.Control)
            {
                return;
            }
            MyStackPanel myStackPanel = sender as MyStackPanel;

            //User rotated forward
            if (e.Delta > 0)
            {
                MainWindowViewController.IncreaseObjectTreeFontChange();
                MainWindowViewController.ModifySearchViewFont(1, myStackPanel.Children);
            }
            //User rotated backwards
            else if (e.Delta < 0)
            {
                MainWindowViewController.DereasecObjectTreeFontChange();
                MainWindowViewController.ModifySearchViewFont(-1, myStackPanel.Children);
            }
        }
        public SelfTasks(string json, Page example)
        {
            InitializeComponent();

            byte n = 1;

            Tasks = JsonConvert.DeserializeObject <List <SelfTask> >(Base.ReadFile(json));

            foreach (SelfTask task in Tasks)
            {
                TabItem tab = new TabItem();

                ScrollViewer scroll = new ScrollViewer();
                Grid         grid   = new Grid();
                grid.ColumnDefinitions.Add(new ColumnDefinition()
                {
                    Width = new GridLength(0, GridUnitType.Auto)
                });
                grid.ColumnDefinitions.Add(new ColumnDefinition()
                {
                    Width = new GridLength(1, GridUnitType.Star)
                });
                grid.ColumnDefinitions.Add(new ColumnDefinition()
                {
                    Width = new GridLength(0, GridUnitType.Auto)
                });

                Image background = new Image()
                {
                    Source  = new BitmapImage(new Uri(@"pack://application:,,,/GlobalResources/backgrounds/notebook_list.jpg")),
                    Stretch = Stretch.Fill
                };
                Grid.SetColumnSpan(background, 3);
                grid.Children.Add(background);

                TextBlock condition = Helpers.GetFormattedText(task.Condition, 30);
                condition.Margin = new Thickness(0, 0, 0, 20);

                Border border = new Border()
                {
                    BorderThickness = new Thickness(4), CornerRadius = new CornerRadius(10)
                };
                StackPanel check_panel = new StackPanel()
                {
                    Orientation         = Orientation.Horizontal,
                    Margin              = new Thickness(0, 10, 0, 20),
                    HorizontalAlignment = HorizontalAlignment.Center,
                    VerticalAlignment   = VerticalAlignment.Center
                };
                border.Child = check_panel;


                StackPanel textboxes = new StackPanel()
                {
                    Margin = new Thickness(0, 0, 20, 0)
                };
                check_panel.Children.Add(textboxes);
                if (task.Answers != null)
                {
                    foreach (SelfTaskAnswer a in task.Answers)
                    {
                        StackPanel stack_textbox = new StackPanel()
                        {
                            Orientation = Orientation.Horizontal, Margin = new Thickness(0, 0, 0, 10)
                        };
                        MyTextBox tb = new MyTextBox()
                        {
                            FontSize   = 30,
                            FontStyle  = FontStyles.Italic,
                            Margin     = new Thickness(0, 0, 10, 0),
                            Answer     = a.Number,
                            MinWidth   = 70,
                            FontFamily = new FontFamily("Cambria Math")
                        };

                        if (a.Letter != null)
                        {
                            stack_textbox.Children.Add(Helpers.GetFormattedText(a.Letter, 30));
                        }
                        stack_textbox.Children.Add(tb);
                        stack_textbox.Children.Add(Helpers.GetFormattedText(a.Unit, 30));
                        textboxes.Children.Add(stack_textbox);
                    }
                }
                else if (task.SameAnswers != null)
                {
                    foreach (SameAnswers same in task.SameAnswers)
                    {
                        MyStackPanel stack_same_answers = new MyStackPanel()
                        {
                            Answers = same.Numbers
                        };
                        textboxes.Children.Add(stack_same_answers);

                        foreach (double num in same.Numbers)
                        {
                            StackPanel stack_textbox = new StackPanel()
                            {
                                Orientation = Orientation.Horizontal, Margin = new Thickness(0, 0, 0, 10)
                            };
                            MyTextBox tb = new MyTextBox()
                            {
                                FontSize   = 30,
                                FontStyle  = FontStyles.Italic,
                                Margin     = new Thickness(0, 0, 10, 0),
                                MinWidth   = 70,
                                Answer     = num,
                                FontFamily = new FontFamily("Cambria Math")
                            };

                            stack_textbox.Children.Add(tb);
                            stack_textbox.Children.Add(Helpers.GetFormattedText(same.Unit, 30));
                            stack_same_answers.Children.Add(stack_textbox);
                        }
                    }
                }

                Button check = new Button()
                {
                    Content           = "Проверить ответ",
                    Padding           = new Thickness(10),
                    VerticalAlignment = VerticalAlignment.Center,
                    FontSize          = 20
                };
                check.Click += CheckAnswers;
                check_panel.Children.Add(check);

                StackPanel stack_anew = new StackPanel()
                {
                    Margin = new Thickness(0, 20, 0, 0)
                };
                Button anew = new Button()
                {
                    Content             = "Вернуться к примеру",
                    Padding             = new Thickness(10),
                    VerticalAlignment   = VerticalAlignment.Center,
                    HorizontalAlignment = HorizontalAlignment.Center,
                    FontSize            = 20
                };
                anew.Click += (s, e) => Base.frame.Navigate(example);
                stack_anew.Children.Add(anew);


                StackPanel stack = new StackPanel()
                {
                    MaxWidth            = 900,
                    VerticalAlignment   = VerticalAlignment.Center,
                    HorizontalAlignment = HorizontalAlignment.Center
                };
                stack.Children.Add(condition);
                stack.Children.Add(border);
                stack.Children.Add(stack_anew);

                scroll.Content = stack;
                Grid.SetColumn(scroll, 1);
                grid.Children.Add(scroll);

                Button prev = new Button()
                {
                    Height            = 90,
                    Width             = 80,
                    Content           = "<",
                    FontSize          = 40,
                    FontWeight        = FontWeights.Bold,
                    VerticalAlignment = VerticalAlignment.Center
                };
                Grid.SetColumn(prev, 0);
                prev.Click += Prev;

                Button next = new Button()
                {
                    Height            = 90,
                    Width             = 80,
                    Content           = ">",
                    FontSize          = 40,
                    FontWeight        = FontWeights.Bold,
                    VerticalAlignment = VerticalAlignment.Center
                };
                Grid.SetColumn(next, 2);
                next.Click += Next;

                grid.Children.Add(prev);
                grid.Children.Add(next);

                tab.Content = grid;
                TextBlock header = new TextBlock()
                {
                    Text     = "Задача " + (n++).ToString(),
                    FontSize = 20
                };
                tab.Header = header;
                tabs.Items.Add(tab);
            }
        }
Esempio n. 9
0
 private void InitializeViews()
 {
     this.ColumnDefinitions.Add(new ColumnDefinition {
         Width = new GridLength(1, GridUnitType.Star)
     });
     this.ColumnDefinitions.Add(new ColumnDefinition {
         Width = new GridLength(1, GridUnitType.Star)
     });
     this.RowDefinitions.Add(new RowDefinition {
         Height = new GridLength(1, GridUnitType.Auto)
     });
     this.RowDefinitions.Add(new RowDefinition {
         Height = new GridLength(1, GridUnitType.Auto)
     });
     this.RowDefinitions.Add(new RowDefinition {
         Height = new GridLength(1, GridUnitType.Star)
     });
     this.RowDefinitions.Add(new RowDefinition {
         Height = new GridLength(1, GridUnitType.Star)
     });
     {
         var sp = new MyStackPanel(ScrollOrientation.Horizontal);
         {
             var btn = new MyButton("Multipart Upload");
             btn.Clicked += async delegate { await MultipartUploadExample(); };
             sp.Children.Add(btn);
         }
         this.Children.Add(sp, 0, 0);
     }
     {
         var gd = new MyGrid();
         {
             gd.ColumnDefinitions.Add(new ColumnDefinition {
                 Width = new GridLength(1, GridUnitType.Star)
             });
             gd.ColumnDefinitions.Add(new ColumnDefinition {
                 Width = new GridLength(1, GridUnitType.Auto)
             });
             {
                 ETurl = new MyEntry {
                     Text = "GET https://www.googleapis.com/drive/v3/files"
                 };
                 gd.Children.Add(ETurl, 0, 0);
             }
             {
                 BTNsend = new MyButton("Send");
                 gd.Children.Add(BTNsend, 1, 0);
             }
         }
         this.Children.Add(gd, 0, 1);
         MyGrid.SetColumnSpan(gd, 2);
     }
     {
         AKVfield = new AddableKeyValuePanel("Fields");
         AKVfield.AddButton("Fields", new Action(() =>
         {
             AKVfield.BLPmain.PushFront(new KeyValueItemBarViewModel {
                 Key = "fields", Value = "files(name,id,mimeType,md5Checksum)"
             });
         }));
         AKVfield.AddButton("Q", new Action(() =>
         {
             AKVfield.BLPmain.PushFront(new KeyValueItemBarViewModel {
                 Key = "q", Value = "name='hi'"
             });
         }));
         AKVfield.AddButton("Guid", new Action(() =>
         {
             AddGuid();
         }));
         this.Children.Add(AKVfield, 0, 2);
     }
     {
         AKVheader = new AddableKeyValuePanel("Headers");
         AKVheader.AddButton("Autorization", new Action(async() =>
         {
             await AddAuthorization();
         }));
         AKVheader.AddButton("Content-Length", new Action(() =>
         {
             AddContentLength();
         }));
         AKVheader.AddButton("Content-Type", new Action(() =>
         {
             AKVheader.BLPmain.PushFront(new KeyValueItemBarViewModel {
                 Key = "Content-Type", Value = "application /json; charset=UTF-8"
             });
         }));
         this.Children.Add(AKVheader, 0, 3);
     }
     {
         EDbody = new MyEditor();
         this.Children.Add(EDbody, 1, 2);
     }
     {
         EDresponse = new MyEditor();
         this.Children.Add(EDresponse, 1, 3);
     }
 }