示例#1
0
 //set image into screen
 private void InitNoQuestion()
 {
     this.listLabelQuestion = new List <Label>();
     this.listImage         = new List <Image>();
     for (int i = 0; i < 6; i++)
     {
         Image   image   = new Image();
         Viewbox viewBox = new Viewbox();
         Label   label   = new Label()
         {
             Content = "Câu " + (i + 1), Foreground = Brushes.White
         };
         label.MouseDoubleClick += Label_MouseDoubleClick;
         this.listLabelQuestion.Add(label);
         this.listImage.Add(image);
         if (i == 5)
         {
             label.Content = "Từ khóa";
         }
         viewBox.Child = label;
         MediaAct.Instance.Upload(image, "Obstacles_BoxNumberImage.png");
         image.SetValue(Grid.RowProperty, i);
         image.SetValue(Grid.ColumnProperty, 1);
         viewBox.SetValue(Grid.RowProperty, i);
         viewBox.SetValue(Grid.ColumnProperty, 1);
         grdNo.Children.Add(image);
         grdNo.Children.Add(viewBox);
     }
 }
示例#2
0
        public static void SetButton(Grid grid, Button button, bool isMainGrid, int columnCount, ref int useRowIndex, ref int useColumnIndex)
        {
            var viewBox = new Viewbox();

            viewBox.Stretch = Stretch.Uniform;
            viewBox.Child   = button;
            grid.Children.Add(viewBox);
            viewBox.SetValue(Grid.RowProperty, useRowIndex);
            viewBox.SetValue(Grid.ColumnProperty, useColumnIndex);
            var span           = isMainGrid ? _mainButtonSpan: _subButtonSpan;
            var whiteSpaceSpan = isMainGrid ? _mainWhiteSpaceSpan : _subWhiteSpaceSpan;

            viewBox.SetValue(Grid.ColumnSpanProperty, 2 * span);

            if (isMainGrid)
            {
                button.Width  = 215;
                button.Height = 193;
            }
            else
            {
                button.Width  = 136;
                button.Height = 174;
            }

            useColumnIndex = useColumnIndex + 2 * span + 2 * whiteSpaceSpan;
            if (useColumnIndex >= columnCount)
            {
                useRowIndex++;
                useColumnIndex = 0;
            }
        }
示例#3
0
        public MainWindow()
        {
            InitializeComponent();

            int rowAmount    = 7;
            int columnAmount = 5;

            for (int i = 0; i < rowAmount; i++)
            {
                mainGrid.RowDefinitions.Add(new RowDefinition());
            }
            for (int i = 0; i < columnAmount; i++)
            {
                mainGrid.ColumnDefinitions.Add(new ColumnDefinition());
            }
            mainGrid.Children.Add(inputView);
            mainGrid.Children.Add(outputView);

            inputView.Child  = inputScreen;
            outputView.Child = outputScreen;

            inputView.SetValue(Grid.RowProperty, 0);
            inputView.SetValue(Grid.ColumnProperty, 0);
            inputView.SetValue(Grid.ColumnSpanProperty, 5);
            outputView.SetValue(Grid.RowProperty, 1);
            outputView.SetValue(Grid.ColumnProperty, 0);
            outputView.SetValue(Grid.ColumnSpanProperty, 5);

            string[,] buttonContent = new string[, ]
            {
                { "^", "√", "(", ")", "Exit" },
                { "7", "8", "9", "DEL", "AC" },
                { "4", "5", "6", "X", "/" },
                { "1", "2", "3", "+", "-" },
                { "0", ".", "EXP", "(-)", "EXE" }
            };

            for (int i = 0; i < buttonContent.GetLength(0); i++)
            {
                for (int j = 0; j < buttonContent.GetLength(1); j++)
                {
                    Button btn = new Button
                    {
                        Content = buttonContent[i, j],
                    };
                    btn.SetValue(Grid.RowProperty, i + 2);
                    btn.SetValue(Grid.ColumnProperty, j);
                    btn.Click += new RoutedEventHandler(Button_Clicked);
                    mainGrid.Children.Add(btn);
                }
            }
        }
示例#4
0
        void InitEW()
        {
            for (int i = 0; i < numberOfStudent; i++)
            {
                Viewbox   viewboxStudentName  = new Viewbox();
                TextBlock txtBlockStudentName = new TextBlock {
                    FontFamily = new FontFamily("Open Sans"), Foreground = Brushes.Black, HorizontalAlignment = HorizontalAlignment.Left
                };
                viewboxStudentName.SetValue(Grid.RowProperty, 3 * i + 1);
                viewboxStudentName.SetValue(Grid.ColumnProperty, 1);
                viewboxStudentName.Child = txtBlockStudentName;
                txtBlockStudentNameList.Add(txtBlockStudentName);
                gridStudentAnswer.Children.Add(viewboxStudentName);

                Viewbox   viewboxStudentAnswer  = new Viewbox();
                TextBlock txtBlockStudentAnswer = new TextBlock {
                    FontFamily = new FontFamily("Open Sans"), Foreground = Brushes.White
                };
                viewboxStudentAnswer.SetValue(Grid.RowProperty, 3 * i + 2);
                viewboxStudentAnswer.SetValue(Grid.ColumnProperty, 1);
                viewboxStudentAnswer.SetValue(Grid.ColumnSpanProperty, 2);
                viewboxStudentAnswer.Child = txtBlockStudentAnswer;
                txtBlockStudentAnswerList.Add(txtBlockStudentAnswer);
                gridStudentAnswer.Children.Add(viewboxStudentAnswer);

                Viewbox   viewboxStudentTime  = new Viewbox();
                TextBlock txtBlockStudentTime = new TextBlock {
                    FontSize = 40, FontFamily = new FontFamily("Open Sans"), Foreground = Brushes.Black, TextAlignment = TextAlignment.Center
                };
                viewboxStudentTime.SetValue(Grid.RowProperty, 3 * i + 2);
                viewboxStudentTime.SetValue(Grid.ColumnProperty, 3);
                txtBlockStudentTimeList.Add(txtBlockStudentTime);
                viewboxStudentTime.Child = txtBlockStudentTime;
                gridStudentAnswer.Children.Add(viewboxStudentTime);
            }

            mediaAct.Upload(soundTrueAnswer, "Decode_SoundTrueAnswer.mp3");
            mediaAct.Upload(soundFalseAnswer, "Decode_SoundFalseAnswer.wav");
            mediaAct.Upload(soundHint, "Decode_SoundHint.mp3");
            mediaAct.Upload(soundShowMatrix, "Decode_SoundShowMatrix.mp3");
            mediaAct.Upload(soundIntro, "Decode_SoundIntro.mp3");
            mediaAct.Upload(soundTrueChoose, "Decode_SoundTrueChoose.wav");

            mediaAct.Upload(videoAnswer, "Decode_VideoAnswer.mp4");
            mediaAct.Upload(videoIntro, "Decode_VideoIntro.mp4");
            mediaAct.Upload(videoQuestionStart, "Decode_VideoQuestionStart.mp4");
            mediaAct.Upload(videoRule, "Decode_VideoRule.mp4");
            mediaAct.Upload(soundBell, "Obstacles_BellSound.mp3");
            mediaAct.Upload(eliminateSound, "Obstacles_EliminateSound.mp3");
            mediaAct.Upload(soundTrueKey, "Obstacles_TrueKeySound.mp3");
        }
        /// <summary>
        /// Loads highscores, truncates at 10, adds scores to grid
        /// </summary>
        private void SortScores()
        {
            LoadHighscore();

            int length = highscores.EntriesAmount();

            if (length > 10)
            {
                length = 10;
            }
            for (int i = 0; i < length; i++)
            {
                Viewbox   viewbox       = new Viewbox();
                TextBlock text          = new TextBlock();
                var       rowDefinition = new RowDefinition();
                string    name          = highscores.GetName(i);
                int       score         = highscores.GetScore(i);
                HighScores.RowDefinitions.Add(rowDefinition);
                viewbox.SetValue(Grid.RowProperty, i);

                text.Text     = name + " - " + score;
                viewbox.Child = text;
                HighScores.Children.Add(viewbox);
            }
        }
示例#6
0
        public static void CreateGroup(SchemaView view)
        {
            Viewbox Group = new Viewbox();

            Group.SetValue(Viewbox.StretchProperty, Stretch.Fill);
            Canvas workCanvas = (Canvas)view.MainPanel;
            Canvas g          = new Canvas();
            Rect   r          = CalculateBounds(view.SelectionManager.SelectedObjects.Cast <UIElement>().ToList(), workCanvas);

            Canvas.SetLeft(Group, r.X);
            Canvas.SetTop(Group, r.Y);
            Group.Width  = g.Width = r.Width;
            Group.Height = g.Height = r.Height;



            foreach (FrameworkElement ch in view.SelectionManager.SelectedObjects)
            {
                //tool.NotifyObjectDeleted(ch);
                Vector off = VisualTreeHelper.GetOffset(ch);
                Canvas.SetLeft(ch, Canvas.GetLeft(ch) - r.X);
                Canvas.SetTop(ch, Canvas.GetTop(ch) - r.Y);
                workCanvas.Children.Remove(ch);
                g.Children.Add(ch);
            }
            Group.Child = g;
            Canvas.SetTop(g, 0); Canvas.SetLeft(g, 0);
            workCanvas.Children.Add(Group);
            //tool.NotifyObjectCreated(Group);
            view.SelectionManager.SelectObject(null);
            view.MainPanel.InvalidateVisual();
            view.SelectionManager.SelectObject(Group);
        }
        /**
         * Fuegt den Player dem Grid hinzu
         */
        private void AddPlayer()
        {
            _gsc        = new GreenScreenControl.GreenScreenControl();
            _gsc.Width  = _sensor.ColorStream.FrameWidth;
            _gsc.Height = _sensor.ColorStream.FrameHeight;
            _gsc.Start(_sensor, false);

            _playerBox         = new Viewbox();
            _playerBox.Child   = _gsc;
            _playerBox.Stretch = Stretch.Fill;
            _playerBox.SetValue(Panel.ZIndexProperty, 1);

            MiniGameGrid.Children.Add(_playerBox);

            if (_playerSkeleton.Joints[JointType.ShoulderCenter].Position.X < -0.25)
            {
                Grid.SetColumn(_playerBox, 1);
            }
            else if (_playerSkeleton.Joints[JointType.ShoulderCenter].Position.X > 0.25)
            {
                Grid.SetColumn(_playerBox, 3);
            }
            else
            {
                Grid.SetColumn(_playerBox, 2);
            }
            Grid.SetRow(_playerBox, 4);
        }
        private static void AddTextToCanvas(InkAnalysisRoot analysisRoot, Canvas drawingSurface)
        {
            //var rect = analysisRoot.BoundingRect;
            //Rectangle r = new Rectangle();
            //r.IsHitTestVisible = false;
            //r.SetValue(Canvas.LeftProperty, rect.Left);
            //r.SetValue(Canvas.TopProperty, rect.Top);
            //r.SetValue(Canvas.WidthProperty, rect.Width);
            //r.SetValue(Canvas.HeightProperty, rect.Height);
            //r.Stroke = new SolidColorBrush(canvas.InkPresenter.CopyDefaultDrawingAttributes().Color);
            //r.StrokeThickness = 1;
            //drawingSurface.Children.Add(r);

            //double rotationAngle = Math.Atan2(points[2].Y - points[0].Y, points[2].X - points[0].X);
            //double rotationAngle = Math.Atan2(analysisRoot.BoundingRect.Height, analysisRoot.BoundingRect.Width);
            //rotationAngle = -(rotationAngle * 180.0 / Math.PI);
            var attributes = canvas.InkPresenter.CopyDefaultDrawingAttributes();

            var container = new Viewbox();

            container.RenderTransformOrigin = new Point(0.5, 0.5);
            container.IsHitTestVisible      = false;
            container.SetValue(Canvas.LeftProperty, analysisRoot.BoundingRect.Left);
            container.SetValue(Canvas.TopProperty, analysisRoot.BoundingRect.Top + analysisRoot.BoundingRect.Height);
            container.Width  = analysisRoot.BoundingRect.Width;
            container.Height = analysisRoot.BoundingRect.Height;
            //container.RenderTransform = new RotateTransform() { Angle = rotationAngle };
            container.Child = new Border()
            {
                Child = new TextBlock()
                {
                    Text             = analysisRoot.RecognizedText,
                    IsHitTestVisible = false,
                    Foreground       = new SolidColorBrush(attributes.Color)
                }
            };
            drawingSurface.Children.Add(container);

            if (RecognitionOccured != null)
            {
                RecognitionOccured(null, new RecognitionEventArgs(container)
                {
                    Description = $"Text '{analysisRoot.RecognizedText}'"
                });
            }
        }
示例#9
0
        private void AddEmoji(InkAnalysisInkDrawing drawing, string glyph)
        {
            Viewbox   vb = new Viewbox();
            TextBlock tb = new TextBlock();

            vb.SetValue(Canvas.TopProperty, drawing.BoundingRect.Top);
            vb.SetValue(Canvas.LeftProperty, drawing.BoundingRect.Left);

            tb.Text = glyph;

            tb.FontSize = 68;
            vb.Width    = drawing.BoundingRect.Width;
            vb.Height   = drawing.BoundingRect.Height;
            vb.Child    = tb;
            vb.Stretch  = Stretch.Fill;
            xamloverlay.Children.Add(vb);
        }
示例#10
0
        void InitEW()
        {
            for (int i = 0; i < 4; i++)
            {
                Viewbox   viewboxStudentName  = new Viewbox();
                TextBlock txtBlockStudentName = new TextBlock {
                    FontFamily = new FontFamily("Open Sans"), FontWeight = FontWeights.DemiBold, Foreground = Brushes.Black, HorizontalAlignment = HorizontalAlignment.Left
                };
                viewboxStudentName.SetValue(Grid.RowProperty, 3 * i + 1);
                viewboxStudentName.SetValue(Grid.ColumnProperty, 1);
                viewboxStudentName.Child = txtBlockStudentName;
                txtBlockStudentNameList.Add(txtBlockStudentName);
                gridStudentAnswer.Children.Add(viewboxStudentName);

                Viewbox   viewboxStudentAnswer  = new Viewbox();
                TextBlock txtBlockStudentAnswer = new TextBlock {
                    FontFamily = new FontFamily("Open Sans"), FontWeight = FontWeights.DemiBold, Foreground = Brushes.White
                };
                viewboxStudentAnswer.SetValue(Grid.RowProperty, 3 * i + 2);
                viewboxStudentAnswer.SetValue(Grid.ColumnProperty, 1);
                viewboxStudentAnswer.SetValue(Grid.ColumnSpanProperty, 2);
                viewboxStudentAnswer.Child = txtBlockStudentAnswer;
                txtBlockStudentAnswerList.Add(txtBlockStudentAnswer);
                gridStudentAnswer.Children.Add(viewboxStudentAnswer);

                Viewbox   viewboxStudentTime  = new Viewbox();
                TextBlock txtBlockStudentTime = new TextBlock {
                    FontSize = 40, FontFamily = new FontFamily("Open Sans"), FontWeight = FontWeights.DemiBold, Foreground = Brushes.Black, TextAlignment = TextAlignment.Center
                };
                viewboxStudentTime.SetValue(Grid.RowProperty, 3 * i + 2);
                viewboxStudentTime.SetValue(Grid.ColumnProperty, 3);
                txtBlockStudentTimeList.Add(txtBlockStudentTime);
                viewboxStudentTime.Child = txtBlockStudentTime;
                gridStudentAnswer.Children.Add(viewboxStudentTime);
            }

            mediaAct.Upload(soundTrue, "Accelerate_SoundTrue.mp3");
            mediaAct.Upload(soundFalse, "Accelerate_SoundFalse.wav");
            mediaAct.Upload(soundIntro, "Accelerate_SoundIntro.mp3");

            mediaAct.Upload(videoAnswer, "Accelerate_VideoAnswer.mp4");
            mediaAct.Upload(videoIntro, "Accelerate_VideoIntro.mp4");
            mediaAct.Upload(videoQuestionStart, "Accelerate_VideoQuestionStart.mp4");
            mediaAct.Upload(videoTime, "Accelerate_VideoTime.mp4");
        }
示例#11
0
        private void AddHeart(InkAnalysisInkDrawing drawing)
        {
            Viewbox   vb = new Viewbox();
            TextBlock tb = new TextBlock();

            vb.SetValue(Canvas.TopProperty, drawing.BoundingRect.Top);
            vb.SetValue(Canvas.LeftProperty, drawing.BoundingRect.Left);

            tb.Foreground = new SolidColorBrush(Colors.Red);
            tb.FontFamily = new FontFamily("Segoe MDL2 Assets");
            tb.Text       = "\uE00B";

            tb.FontSize = 68;
            vb.Width    = drawing.BoundingRect.Width;
            vb.Height   = drawing.BoundingRect.Height;
            vb.Child    = tb;
            vb.Stretch  = Stretch.Fill;
            xamloverlay.Children.Add(vb);
        }
示例#12
0
        private void DrawCircle(ITriangle triangle)
        {
            Point incenter = GetIncenter(triangle);

            var k = 80.0;

            System.Windows.Point center = new System.Windows.Point
            {
                X = k * incenter.X + 250.0,
                Y = k * incenter.Y + 100.0
            };

            double size = 10;
            //add circle
            Ellipse circle = new Ellipse()
            {
                Width  = size,
                Height = size,
                Stroke = Brushes.Red
            };

            circle.SetValue(Canvas.LeftProperty, center.X - circle.Width / 2);
            circle.SetValue(Canvas.TopProperty, center.Y - circle.Height / 2);
            MainCanvas.Children.Add(circle);
            //add ID
            TextBlock triangleId = new TextBlock();

            triangleId.Text       = triangle.ID.ToString();
            triangleId.Foreground = circle.Stroke;
            Viewbox viewbox = new Viewbox();

            viewbox.Visibility  = Visibility.Visible;
            viewbox.Stretch     = Stretch.Uniform;
            viewbox.Child       = triangleId;
            viewbox.Height      = circle.Height / 2;
            viewbox.Width       = circle.Width / 2;
            viewbox.MouseEnter += ViewBoxOnMouseDown;
            viewbox.SetValue(Canvas.LeftProperty, center.X - viewbox.Width / 2);
            viewbox.SetValue(Canvas.TopProperty, center.Y - viewbox.Height / 2);
            MainCanvas.Children.Add(viewbox);
        }
示例#13
0
        public void populateMemoryCellsGrid(PRAMModel dataRows)
        {
            int rowCount = -1;

            foreach (KeyValuePair <string, List <dynamic> > kvp in dataRows)
            {
                memoryGrid.RowDefinitions.Add(new RowDefinition());
                rowCount++;
                if (memoryGrid.ColumnDefinitions.Count < 1)
                {
                    memoryGrid.ColumnDefinitions.Add(new ColumnDefinition());
                }
                Viewbox   viewBox = new Viewbox();
                TextBlock rowName = new TextBlock();
                rowName.Margin = new Thickness(7);
                rowName.Text   = kvp.Key;
                viewBox.SetValue(Grid.ColumnProperty, 0);
                viewBox.SetValue(Grid.RowProperty, rowCount);
                viewBox.VerticalAlignment   = VerticalAlignment.Center;
                viewBox.HorizontalAlignment = HorizontalAlignment.Center;
                viewBox.Child = rowName;
                memoryGrid.Children.Add(viewBox);
                memoryRows[kvp.Key] = new List <MemoryCellView>();
                while (memoryGrid.ColumnDefinitions.Count < kvp.Value.Count + 1)
                {
                    memoryGrid.ColumnDefinitions.Add(new ColumnDefinition());
                }

                for (int i = 0; i < kvp.Value.Count; i++)
                {
                    MemoryCellView memoryCellView = new MemoryCellView();
                    memoryCellView.Data = kvp.Value[i];
                    memoryCellView.SetValue(Grid.ColumnProperty, i + 1);
                    memoryCellView.SetValue(Grid.RowProperty, rowCount);
                    memoryGrid.Children.Add(memoryCellView);

                    memoryRows[kvp.Key].Add(memoryCellView);
                }
            }
        }
示例#14
0
    // Fruit를 생성하여 항목을 배치해주는 메소드이다.
    private void Add(ref Grid grid, int column, int type)
    {
        Viewbox viewbox = new Viewbox()
        {
            Height  = 100,
            Width   = 100,
            Stretch = Stretch.UniformToFill,
            Child   = Fruit(type),
        };

        viewbox.SetValue(Grid.ColumnProperty, column);
        grid.Children.Add(viewbox);
    }
示例#15
0
        private void SetupDisplay()
        {
            BoardUI <MonkeyBoard>   boardUI   = BoardPackage.BoardUI;
            MainBarUI <MonkeyBoard> mainbarUI = BoardPackage.MainBarUI;

            // maintains aspect ratio
            Viewbox displayedWindow = new Viewbox();

            displayedWindow.StretchDirection = StretchDirection.Both;
            displayedWindow.Stretch          = Stretch.Uniform;

            Grid displayedGrid = new Grid();

            displayedGrid.Height = 680;
            displayedGrid.Width  = 1120;

            RowDefinition row1 = new RowDefinition();
            RowDefinition row2 = new RowDefinition();

            row1.Height = new GridLength(50);
            displayedGrid.RowDefinitions.Add(row1);
            displayedGrid.RowDefinitions.Add(row2);

            Viewbox background      = new Viewbox();
            Image   backgroundImage = new Image();

            backgroundImage.Source  = Images.NatureForest;
            background.Child        = backgroundImage;
            background.Stretch      = Stretch.UniformToFill;
            background.ClipToBounds = true;
            background.SetValue(Canvas.ZIndexProperty, -1);

            // displayed game area
            Viewbox displayedBoardUI = new Viewbox();

            displayedBoardUI.Child        = boardUI;
            displayedBoardUI.Stretch      = Stretch.UniformToFill;
            displayedBoardUI.ClipToBounds = true;

            Grid.SetRow(background, 0);
            Grid.SetRowSpan(background, 2);
            Grid.SetRow(mainbarUI, 0);
            Grid.SetRow(displayedBoardUI, 1);

            displayedGrid.Children.Add(background);
            displayedGrid.Children.Add(mainbarUI);
            displayedGrid.Children.Add(displayedBoardUI);

            displayedWindow.Child = displayedGrid;
            Content = displayedWindow;
        }
示例#16
0
        void InitUC()
        {
            for (int i = 0; i < numberOfQuestion; i++)
            {
                TextBox txtBoxChoosePackQuestion = new TextBox {
                    Background = Brushes.White, Foreground = Brushes.Black, TextAlignment = TextAlignment.Center, Text = "10", FontSize = 20
                };
                Viewbox viewboxChoosePackQuestion = new Viewbox();
                viewboxChoosePackQuestion.SetValue(Grid.ColumnProperty, i);
                viewboxChoosePackQuestion.SetValue(Grid.RowProperty, 1);
                viewboxChoosePackQuestion.Child = txtBoxChoosePackQuestion;
                txtBoxChoosePackQuestionList.Add(txtBoxChoosePackQuestion);
                gridChooseQuestionPack.Children.Add(viewboxChoosePackQuestion);

                Viewbox viewboxPackQuestion = new Viewbox();
                viewboxPackQuestion.SetValue(Grid.ColumnProperty, i);
                Button btnPackQuestion = new Button {
                    Background = Brushes.CornflowerBlue, Foreground = Brushes.Black, Content = "Câu hỏi" + (i + 1).ToString(), Uid = i.ToString()
                };
                viewboxPackQuestion.Child = btnPackQuestion;
                btnPackQuestion.Click    += BtnPackQuestion_Click;
                gridPackQuestion.Children.Add(viewboxPackQuestion);
            }

            for (int i = 0; i < numberOfStudent; i++)
            {
                Button btnChooseStudent = new Button {
                    Background = Brushes.LightBlue, Foreground = Brushes.Black, Content = "Thí sinh" + (i + 1).ToString(), Uid = i.ToString()
                };
                btnChooseStudent.Click += BtnChooseStudent_Click;
                Viewbox viewboxChooseStudent = new Viewbox();
                viewboxChooseStudent.SetValue(Grid.RowProperty, 2 + i);
                viewboxChooseStudent.Child = btnChooseStudent;
                gridChooseStudent.Children.Add(viewboxChooseStudent);
                btnChooseStudentList.Add(btnChooseStudent);
            }
        }
示例#17
0
        private void GenerarCasillas(int columnas, int filas)
        {
            contenedorParejas_Grid.RowDefinitions.Clear();
            contenedorParejas_Grid.ColumnDefinitions.Clear();
            contenedorParejas_Grid.Children.Clear();
            Random rnd = new Random();

            for (int i = 0; i < columnas; i++)
            {
                ColumnDefinition columna = new ColumnDefinition();
                contenedorParejas_Grid.ColumnDefinitions.Add(columna);
            }

            for (int j = 0; j < filas; j++)
            {
                RowDefinition fila = new RowDefinition();
                contenedorParejas_Grid.RowDefinitions.Add(fila);
            }

            for (int i = 0; i < columnas; i++)
            {
                for (int j = 0; j < filas; j++)
                {
                    int       numero = rnd.Next(0, caracteres.Count);
                    Viewbox   v      = new Viewbox();
                    TextBlock t      = new TextBlock();
                    v.Child = t;
                    v.SetValue(Grid.RowProperty, i);
                    v.SetValue(Grid.ColumnProperty, j);
                    t.FontFamily = new FontFamily("Webdings");
                    t.Text       = caracteres[numero];
                    caracteres.RemoveAt(numero);
                    contenedorParejas_Grid.Children.Add(v);
                }
            }
        }
示例#18
0
        private void InitView()
        {
            Image imageClock = new Image();

            MediaAct.Instance.Upload(imageClock, "BoxTime.png");
            imageClock.SetValue(Grid.ColumnProperty, 1);
            grdClock.Children.Add(imageClock);
            Viewbox viewbox  = new Viewbox();
            Label   timeTick = new Label {
                Content = "40:00", Foreground = Brushes.White
            };

            timeTick.MouseDoubleClick += TimeTick_MouseDoubleClick;

            viewbox.Child = timeTick;
            viewbox.SetValue(Grid.ColumnProperty, 1);
            grdClock.Children.Add(viewbox);
        }
示例#19
0
        public WaferPlot()
        {
            Control.RowDefinitions.Add(new RowDefinition {
                Height = new GridLength(1, GridUnitType.Auto)
            });
            Control.RowDefinitions.Add(new RowDefinition {
                Height = new GridLength(1, GridUnitType.Star)
            });

            Control.Background = System.Windows.Media.Brushes.White;

            Control.Children.Add(titleText);

            Control.Children.Add(viewbox);
            viewbox.SetValue(Grid.RowProperty, 1);

            viewbox.Child   = canvas;
            viewbox.Stretch = System.Windows.Media.Stretch.Uniform;
        }
        public TestUIWindow(MonkeyBoardUI boardUI, MonkeyMainBarUI mainbarUI)
        {
            // sets the title
            Title = "Monkey Quest Tester";

            // sets the icon
            Uri iconUri = new Uri(@"Resources\Images\MonkeyQuestIcon.ico", UriKind.Relative);

            Icon = BitmapFrame.Create(iconUri);

            // sets the default height and width when window first appears
            Height = 680;
            Width  = 1076;

            // sets background outside of game area
            Background = Brushes.Black;

            // maintains aspect ratio
            Viewbox displayedWindow = new Viewbox();

            displayedWindow.StretchDirection = StretchDirection.Both;
            displayedWindow.Stretch          = Stretch.Uniform;

            Viewbox background      = new Viewbox();
            Image   backgroundImage = new Image();

            backgroundImage.Source  = Images.NatureForest;
            background.Child        = backgroundImage;
            background.Stretch      = Stretch.UniformToFill;
            background.ClipToBounds = true;
            background.SetValue(Canvas.ZIndexProperty, -1);

            // displayed game area
            Viewbox displayedBoardUI = new Viewbox();

            displayedBoardUI.Child        = boardUI;
            displayedBoardUI.Stretch      = Stretch.UniformToFill;
            displayedBoardUI.ClipToBounds = true;

            displayedWindow.Child = displayedBoardUI;
            Content = displayedWindow;
        }
示例#21
0
        private static void OnBusyStateChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            bool isBusy  = (bool)e.NewValue;
            bool wasBusy = (bool)e.OldValue;

            if (isBusy == wasBusy)
            {
                return;
            }

            var hostGridObject = (GetTargetVisual(d) ?? d);

            Debug.Assert(hostGridObject != null);

            var hostGrid = hostGridObject as Grid;

            if (hostGrid == null)
            {
                throw new InvalidCastException(
                          string.Format(
                              "The object being attached to must be of type {0}. Try embedding your visual inside a {0} control, and attaching the behavior to the {0} instead.",
                              typeof(Grid).Name));
            }

            if (isBusy)
            {
                Debug.Assert(LogicalTreeHelper.FindLogicalNode(hostGrid, "BusyIndicator") == null);

                bool dimBackground = GetDimBackground(d);
                var  grid          = new Grid
                {
                    Name    = "BusyIndicator",
                    Opacity = 0.0
                };
                if (dimBackground)
                {
                    grid.Cursor      = Cursors.Wait;
                    grid.ForceCursor = true;

                    InputManager.Current.PreProcessInput += OnPreProcessInput;
                }
                grid.SetBinding(FrameworkElement.WidthProperty, new Binding("ActualWidth")
                {
                    Source = hostGrid
                });
                grid.SetBinding(FrameworkElement.HeightProperty, new Binding("ActualHeight")
                {
                    Source = hostGrid
                });
                for (int i = 1; i <= 3; ++i)
                {
                    if (i != 2)
                    {
                        grid.ColumnDefinitions.Add(new ColumnDefinition
                        {
                            Width = new GridLength(1, GridUnitType.Star)
                        });
                        grid.RowDefinitions.Add(new RowDefinition
                        {
                            Height = new GridLength(1, GridUnitType.Star)
                        });
                    }
                    else
                    {
                        grid.ColumnDefinitions.Add(new ColumnDefinition
                        {
                            Width    = new GridLength(1, GridUnitType.Star),
                            MaxWidth = 120.0
                        });
                        grid.RowDefinitions.Add(new RowDefinition
                        {
                            Height    = new GridLength(1, GridUnitType.Star),
                            MaxHeight = 120.0
                        });
                    }
                }

                var viewbox = new Viewbox
                {
                    HorizontalAlignment = HorizontalAlignment.Center,
                    Stretch             = Stretch.Uniform,
                    StretchDirection    = StretchDirection.Both,
                    Child = new CircularProgressBar()
                };
                grid.SetValue(Panel.ZIndexProperty, 1000);
                grid.SetValue(Grid.RowSpanProperty, Math.Max(1, hostGrid.RowDefinitions.Count));
                grid.SetValue(Grid.ColumnSpanProperty, Math.Max(1, hostGrid.ColumnDefinitions.Count));
                if (GetAddMargins(d))
                {
                    viewbox.SetValue(Grid.RowProperty, 1);
                    viewbox.SetValue(Grid.ColumnProperty, 1);
                }
                else
                {
                    viewbox.SetValue(Grid.RowSpanProperty, 3);
                    viewbox.SetValue(Grid.ColumnSpanProperty, 3);
                }
                viewbox.SetValue(Panel.ZIndexProperty, 1);

                var dimmer = new Rectangle
                {
                    Name       = "Dimmer",
                    Opacity    = GetDimmerOpacity(d),
                    Fill       = GetDimmerBrush(d),
                    Visibility = (dimBackground ? Visibility.Visible : Visibility.Collapsed)
                };
                dimmer.SetValue(Grid.RowSpanProperty, 3);
                dimmer.SetValue(Grid.ColumnSpanProperty, 3);
                dimmer.SetValue(Panel.ZIndexProperty, 0);
                grid.Children.Add(dimmer);

                grid.Children.Add(viewbox);

                grid.BeginAnimation(UIElement.OpacityProperty, new DoubleAnimation(1.0, GetDimTransitionDuration(d)));

                hostGrid.Children.Add(grid);
            }
            else
            {
                var grid = (Grid)LogicalTreeHelper.FindLogicalNode(hostGrid, "BusyIndicator");

                Debug.Assert(grid != null);

                if (grid != null)
                {
                    grid.Name = string.Empty;

                    var fadeOutAnimation = new DoubleAnimation(0.0, GetDimTransitionDuration(d));
                    fadeOutAnimation.Completed += (sender, args) => OnFadeOutAnimationCompleted(d, hostGrid, grid);
                    grid.BeginAnimation(UIElement.OpacityProperty, fadeOutAnimation);
                }
            }
        }
示例#22
0
        public OrderPanelHeader(OrderViewModel order, double width)
        {
            _order     = order;
            this.Width = width;
            this.SnapsToDevicePixels = true;
            this.MouseDown          += root_MouseDown;
            this.MouseUp            += root_MouseUp;

            Binding     binding;
            BrushesPair brPair;

            // кисть заголовка
            BrushesPair brPairHeader = getHeaderBrushes();
            // отступы
            Thickness rowMargin = new Thickness(0.02 * width, 0, 0.02 * width, 0);
            // шрифты
            double fontScale     = (double)WpfHelper.GetAppGlobalValue("AppFontScale", 1.0d);
            double labelFontSize = fontScale * (double)WpfHelper.GetAppGlobalValue("ordPnlHdrLabelFontSize");


            // 0. номер стола и заказа
            this.RowDefinitions.Add(new RowDefinition()
            {
                Height = new GridLength(1.0d, GridUnitType.Star)
            });
            // 1. официант
            this.RowDefinitions.Add(new RowDefinition()
            {
                Height = new GridLength(0.7d, GridUnitType.Star)
            });
            // 2. дата создания заказа и таймер заказа
            this.RowDefinitions.Add(new RowDefinition()
            {
                Height = new GridLength(1.0d, GridUnitType.Star)
            });

            // 0. номер стола и заказа
            Border brdHdrTableRow = new Border()
            {
                BorderBrush = Brushes.DarkBlue
            };

            brdHdrTableRow.SetValue(Grid.RowProperty, 0);
            brdHdrTableRow.BorderThickness = new Thickness(1, 1, 1, 0);
            if (brPairHeader != null)
            {
                brdHdrTableRow.Background = brPairHeader.Background;
                brdHdrTableRow.SetValue(TextBlock.ForegroundProperty, brPairHeader.Foreground);
            }
            // уголки рамок
            brdHdrTableRow.CornerRadius = new CornerRadius(0.03 * width, 0.03 * width, 0, 0);

            Grid grdHdrTableRow = new Grid();

            grdHdrTableRow.ColumnDefinitions.Add(new ColumnDefinition()
            {
                Width = new GridLength(0, GridUnitType.Auto)
            });
            grdHdrTableRow.ColumnDefinitions.Add(new ColumnDefinition());
            //  стол
            TextBlock tblTable = new TextBlock()
            {
                VerticalAlignment = VerticalAlignment.Center, Margin = rowMargin
            };

            tblTable.SetValue(Grid.ColumnProperty, 0);
            Run tbTableLabel1 = new Run()
            {
                Text = "Стол №: ", FontSize = labelFontSize
            };

            tblTable.Inlines.Add(tbTableLabel1);
            Run tbTableName = new Run()
            {
                FontWeight = FontWeights.Bold
            };

            binding = new Binding("TableName")
            {
                Source = _order
            };
            tbTableName.SetBinding(Run.TextProperty, binding);
            tbTableName.FontSize = fontScale * (double)WpfHelper.GetAppGlobalValue("ordPnlHdrTableNameFontSize");
            tblTable.Inlines.Add(tbTableName);
            grdHdrTableRow.Children.Add(tblTable);
            //  номер заказа
            Border brdOrderNumber = new Border();

            brdOrderNumber.SetValue(Grid.ColumnProperty, 1);
            TextBlock tblOrderNumber = new TextBlock()
            {
                HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center, Margin = rowMargin
            };
            Run tbTableLabel2 = new Run()
            {
                Text = "Заказ №: ", FontSize = labelFontSize
            };

            tblOrderNumber.Inlines.Add(tbTableLabel2);
            Run tbOrderNumber = new Run()
            {
                FontWeight = FontWeights.Bold
            };

            binding = new Binding("Number")
            {
                Source = _order
            };                                                   // , Converter = new IsZeroConverter()
            tbOrderNumber.SetBinding(Run.TextProperty, binding);
            tbOrderNumber.FontSize = fontScale * (double)WpfHelper.GetAppGlobalValue("ordPnlHdrOrderNumberFontSize");
            tblOrderNumber.Inlines.Add(tbOrderNumber);
            brdOrderNumber.Child = tblOrderNumber;
            grdHdrTableRow.Children.Add(brdOrderNumber);

            brdHdrTableRow.Child = grdHdrTableRow;
            this.Children.Add(brdHdrTableRow);

            // 1. официант
            Border brdHdrWaiter = new Border()
            {
                BorderBrush = Brushes.DarkBlue, BorderThickness = new Thickness(1, 0, 1, 0)
            };

            brdHdrWaiter.SetValue(Grid.RowProperty, 1);
            if (brPairHeader != null)
            {
                brdHdrWaiter.Background = brPairHeader.Background;
                brdHdrWaiter.SetValue(TextBlock.ForegroundProperty, brPairHeader.Foreground);
            }
            TextBlock tbWaiter = new TextBlock()
            {
                VerticalAlignment   = VerticalAlignment.Center,
                HorizontalAlignment = HorizontalAlignment.Left,
                TextWrapping        = TextWrapping.Wrap,
                FontWeight          = FontWeights.Bold,
                Margin = new Thickness(0.02 * width, 0, 0.02 * width, 0)
            };

            binding = new Binding("Waiter")
            {
                Source = _order
            };
            tbWaiter.SetBinding(TextBlock.TextProperty, binding);
            tbWaiter.FontSize  = fontScale * (double)WpfHelper.GetAppGlobalValue("ordPnlHdrWaiterNameFontSize");
            brdHdrWaiter.Child = tbWaiter;
            this.Children.Add(brdHdrWaiter);

            // метка отдела
            Viewbox vbxDivisionMark = new Viewbox()
            {
                HorizontalAlignment = HorizontalAlignment.Right, VerticalAlignment = VerticalAlignment.Top, Stretch = Stretch.Fill, ClipToBounds = true
            };

            vbxDivisionMark.Width = 0.2d * width;
            vbxDivisionMark.SetValue(Grid.ColumnProperty, 1);
            vbxDivisionMark.SetValue(Grid.RowProperty, 0);
            vbxDivisionMark.SetValue(Grid.RowSpanProperty, 2);
            Polygon divisionMark = new Polygon()
            {
                Opacity = 0.7,
                Points  = new PointCollection(new Point[] { new Point(0, 0), new Point(10, 0), new Point(10, 10) })
            };

            if (!_order.DivisionColorRGB.IsNull())
            {
                divisionMark.Fill = WpfHelper.GetBrushFromRGBString(order.DivisionColorRGB);
            }
            vbxDivisionMark.Child = divisionMark;
            this.Children.Add(vbxDivisionMark);

            // 2. дата создания заказа и таймер заказа
            Border brdHdrOrderTime = new Border()
            {
                BorderBrush = Brushes.DarkBlue, BorderThickness = new Thickness(1.0d)
            };

            brdHdrOrderTime.SetValue(Grid.RowProperty, 2);
            if (brPairHeader != null)
            {
                brdHdrOrderTime.Background = brPairHeader.Background;
                brdHdrOrderTime.SetValue(TextBlock.ForegroundProperty, brPairHeader.Foreground);
            }

            Grid grdHdrOrderTime = new Grid()
            {
                Margin = rowMargin
            };

            grdHdrOrderTime.ColumnDefinitions.Add(new ColumnDefinition()
            {
                Width = new GridLength(4.0d, GridUnitType.Star)
            });
            grdHdrOrderTime.ColumnDefinitions.Add(new ColumnDefinition()
            {
                Width = new GridLength(4.0d, GridUnitType.Star)
            });
            //  дата создания заказа
            WrapPanel pnlOrderDate = new WrapPanel()
            {
                Orientation = Orientation.Horizontal, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Left
            };

            pnlOrderDate.SetValue(Grid.ColumnProperty, 0);
            TextBlock tbOrderDateLabel = new TextBlock()
            {
                Text = "Создан в: ", FontSize = labelFontSize, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Left
            };

            pnlOrderDate.Children.Add(tbOrderDateLabel);
            TextBlock tbOrderDate = new TextBlock()
            {
                FontWeight        = FontWeights.Bold,
                VerticalAlignment = VerticalAlignment.Center,
                TextWrapping      = TextWrapping.Wrap,
                Text = _order.CreateDate.ToKDSPanelString()
            };

            tbOrderDate.FontSize = fontScale * (double)WpfHelper.GetAppGlobalValue("ordPnlHdrOrderCreateDateFontSize");
            pnlOrderDate.Children.Add(tbOrderDate);
            grdHdrOrderTime.Children.Add(pnlOrderDate);
            //  таймер
            Border brdOrderTimer = new Border()
            {
                Padding = new Thickness(5d, 3d, 5d, 3d), Margin = new Thickness(0, 3d, 0, 3d)
            };

            brdOrderTimer.SetValue(Grid.ColumnProperty, 1);
            //  уголки
            double timerCornerRadius = 0.025 * width;

            brdOrderTimer.CornerRadius = new CornerRadius(timerCornerRadius, timerCornerRadius, timerCornerRadius, timerCornerRadius);
            brPair = BrushHelper.AppBrushes["orderHeaderTimer"];
            if (brPair != null)
            {
                brdOrderTimer.Background = brPair.Background;
                brdOrderTimer.SetValue(TextBlock.ForegroundProperty, brPair.Foreground);
            }
            // панель элементов
            WrapPanel pnlOrderTimer = new WrapPanel()
            {
                Orientation = Orientation.Horizontal, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center
            };
            TextBlock tbOrderTimerLabel = new TextBlock()
            {
                Text = "Прошло: ", FontSize = labelFontSize, FontStretch = FontStretches.Condensed
            };

            pnlOrderTimer.Children.Add(tbOrderTimerLabel);

            TextBlock tbOrderTimer = new TextBlock()
            {
                FontWeight = FontWeights.Bold, TextWrapping = TextWrapping.Wrap
            };

            tbOrderTimer.FontSize = fontScale * (double)WpfHelper.GetAppGlobalValue("ordPnlHdrOrderTimerFontSize");
            binding = new Binding("WaitingTimerString")
            {
                Source = _order
            };
            tbOrderTimer.SetBinding(TextBlock.TextProperty, binding);
            pnlOrderTimer.Children.Add(tbOrderTimer);

            brdOrderTimer.Child = pnlOrderTimer;
            grdHdrOrderTime.Children.Add(brdOrderTimer);

            brdHdrOrderTime.Child = grdHdrOrderTime;
            this.Children.Add(brdHdrOrderTime);
        }
示例#23
0
        private void Show_Content_For_Portrait(Grid _listview, Vakat v)
        {
            string tema = "";

            if (Fixed.IsDarkTheme)
            {
                tema = "_white";                    //dodatak na imena ikonica
            }
            Vakat vakat = Year.year.months[DateTime.Now.Month - 1].days[DateTime.Now.Day - 1].vakti[v.rbr];

            if (vakat.time.DayOfWeek == DayOfWeek.Friday && vakat.rbr == 2)
            {
                vakat.name = "Podne (Džuma)";                                                             //Ako je petak i vakat podna, postavit dzumu
            }
            #region ListViewItem
            ListViewItem _ListViewItem = new ListViewItem
            {
                Tag = v,
                HorizontalContentAlignment = HorizontalAlignment.Stretch,
                VerticalContentAlignment   = VerticalAlignment.Stretch,
                Padding   = new Thickness(6, 0, 6, 0),
                Margin    = new Thickness(6, 0, 6, 0),
                Opacity   = 0,
                MinHeight = 0,
                MinWidth  = 0,
            };
            #region border line
            if (vakat.rbr != 5)
            {
                if (Fixed.IsDarkTheme)
                {
                    _ListViewItem.BorderBrush = new SolidColorBrush(Color.FromArgb(18, 255, 255, 255));
                }
                else
                {
                    _ListViewItem.BorderBrush = new SolidColorBrush(Color.FromArgb(18, 0, 0, 0));
                }
                _ListViewItem.BorderThickness = new Thickness(0, 0, 0, 1);
            }
            #endregion
            _ListViewItem.Tapped += (s, e) =>
            {
                ListViewItem gr  = s as ListViewItem;
                Vakat        vkt = (Vakat)gr.Tag;
                if (DateTime.Now < vkt.time)
                {
                    Open_Edit_Panel(vkt);
                }
            };
            _ListViewItem.Holding += async(s, e) =>
            {
                PopupMenu menu = new PopupMenu();

                ListViewItem gr  = s as ListViewItem;
                Vakat        vkt = (Vakat)gr.Tag;

                e.Handled = true;

                var    pointTransform = ((ListViewItem)s).TransformToVisual(Window.Current.Content);
                double w = e.GetPosition((ListViewItem)s).X;
                double h = e.GetPosition((ListViewItem)s).Y;

                if (e.HoldingState == HoldingState.Started)
                {
                    menu.Commands.Clear();

                    #region Alarm
                    if (!Memory.alarmBlocked[vkt.rbr] && !AlarmSkipping.IsSkipped(vkt))
                    {
                        menu.Commands.Add(new UICommand
                        {
                            Id      = vkt,
                            Label   = "Preskoči alarm",
                            Invoked = AlarmOff
                        });
                    }
                    else
                    {
                        menu.Commands.Add(new UICommand
                        {
                            Id      = vkt,
                            Label   = "Uključi alarm",
                            Invoked = AlarmOn
                        });
                    }
                    #endregion

                    #region Toast
                    if (!Memory.toastBlocked[vkt.rbr] && !ToastSkipping.IsSkipped(vkt))
                    {
                        menu.Commands.Add(new UICommand
                        {
                            Id      = vkt,
                            Label   = "Preskoči notifikaciju",
                            Invoked = ToastOff,
                        });
                    }
                    else
                    {
                        menu.Commands.Add(new UICommand
                        {
                            Id      = vkt,
                            Label   = "Uključi notifikaciju",
                            Invoked = ToastOn,
                        });
                    }
                    #endregion

                    Point screenCoords = new Point();
                    screenCoords = pointTransform.TransformPoint(new Point(w, h));

                    await menu.ShowForSelectionAsync(new Rect { X = screenCoords.X, Y = screenCoords.Y });
                }
            };

            _ListViewItem.SetValue(Grid.RowProperty, v.rbr);
            _listview.Children.Add(_ListViewItem);
            #endregion

            double dif_bet_date   = (v.time - DateTime.Now).TotalSeconds;
            string toastkey       = Notification.Create_Key(v, "toast");
            string alarmkey       = Notification.Create_Key(v, "alarm");
            Vakat  current_prayer = Get.Current_Prayer_Time();
            Vakat  next_prayer    = Get.Next_Prayer_Time();

            Grid Article_Grid = new Grid
            {
                Background = new SolidColorBrush(Colors.White),
            };
            if (Fixed.IsDarkTheme)
            {
                Article_Grid.Background = new SolidColorBrush(Colors.Black);
            }

            Grid _Grid = new Grid {
                VerticalAlignment = VerticalAlignment.Center,
            };
            _Grid.ColumnDefinitions.Add(new ColumnDefinition {
                Width = new GridLength(3, GridUnitType.Star),
            });
            _Grid.ColumnDefinitions.Add(new ColumnDefinition {
                Width = new GridLength(5, GridUnitType.Star),
            });
            _Grid.ColumnDefinitions.Add(new ColumnDefinition {
                Width = new GridLength(1, GridUnitType.Auto),
            });
            _Grid.ColumnDefinitions.Add(new ColumnDefinition {
                Width = new GridLength(1, GridUnitType.Auto),
            });

            #region 1st column - clock
            Viewbox clock_Vb = new Viewbox
            {
                VerticalAlignment   = VerticalAlignment.Center,
                HorizontalAlignment = HorizontalAlignment.Center,
                Margin  = new Thickness(6),
                Stretch = Stretch.Fill,
            };

            TextBlock clock_TB = new TextBlock
            {
                VerticalAlignment   = VerticalAlignment.Center,
                HorizontalAlignment = HorizontalAlignment.Center,
                FontSize            = 44,
                Text                   = vakat.time.ToString("HH:mm"),
                FontFamily             = new FontFamily("Segoe UI Semilight"),
                OpticalMarginAlignment = OpticalMarginAlignment.TrimSideBearings,
                FontWeight             = FontWeights.Light,
                TextAlignment          = TextAlignment.Center,
            };
            if (Fixed.IsDarkTheme)
            {
                clock_TB.Foreground = new SolidColorBrush(Colors.DarkGray);
            }
            else
            {
                clock_TB.Foreground = new SolidColorBrush(Colors.LightGray);
            }
            Day yesterday = Year.year.months[DateTime.Now.AddDays(-1).Month - 1].days[DateTime.Now.AddDays(-1).Day - 1];
            Day today     = Year.year.months[DateTime.Now.AddDays(0).Month - 1].days[DateTime.Now.AddDays(0).Day - 1];
            Day tomorow   = Year.year.months[DateTime.Now.AddDays(1).Month - 1].days[DateTime.Now.AddDays(1).Day - 1];
            if (current_prayer == v || current_prayer == yesterday.vakti[v.rbr] || current_prayer == today.vakti[v.rbr] || current_prayer == tomorow.vakti[v.rbr])
            {
                clock_TB.Foreground = new SolidColorBrush(Color.FromArgb(255, 157, 157, 0));
                clock_TB.FontWeight = FontWeights.Normal;
            }
            clock_Vb.SetValue(Grid.ColumnProperty, 0);
            clock_Vb.Child = clock_TB;
            _Grid.Children.Add(clock_Vb);
            #endregion
            #region 2nd column - title and subtitle
            Grid center_Grid = new Grid {
                VerticalAlignment = VerticalAlignment.Center,
            };
            center_Grid.SetValue(Grid.ColumnProperty, 1);

            StackPanel center_SP = new StackPanel {
                HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center
            };

            TextBlock title_TB = new TextBlock
            {
                HorizontalAlignment = HorizontalAlignment.Center,
                VerticalAlignment   = VerticalAlignment.Bottom,
                FontSize            = 22,
                Text       = vakat.name.ToLower(),
                FontFamily = new FontFamily("Segoe UI Semilight"),
            };
            center_SP.Children.Add(title_TB);

            TextBlock subtitle_TB = new TextBlock
            {
                HorizontalAlignment = HorizontalAlignment.Center,
                VerticalAlignment   = VerticalAlignment.Bottom,
                FontSize            = 22,
                Text       = (int)(dif_bet_date / 3600) + ":" + ((int)((dif_bet_date / 60) % 60)).ToString("00") + ":" + ((int)(dif_bet_date % 60)).ToString("00"),
                Foreground = new SolidColorBrush(Colors.LightGray),
                Opacity    = 0,
                FontFamily = new FontFamily("Segoe UI Semilight"),
            };
            if (Fixed.IsDarkTheme)
            {
                subtitle_TB.Foreground = new SolidColorBrush(Colors.DarkGray);
            }
            else
            {
                subtitle_TB.Foreground = new SolidColorBrush(Colors.LightGray);
            }
            if (next_prayer == v)
            {
                center_SP.Children.Add(subtitle_TB);
                subtitle_TB.Opacity = 1;
                DispatcherTimer dt = new DispatcherTimer {
                    Interval = new TimeSpan(0, 0, 1)
                };
                dt.Tick += (s, e) =>
                {
                    if (Get.Difference_Between_Times(DateTime.Now, v.time) < 0)
                    {
                        dt.Stop(); Frame.Navigate(typeof(MainPage));
                    }
                    dif_bet_date     = (v.time - DateTime.Now).TotalSeconds;
                    subtitle_TB.Text = (int)(dif_bet_date / 3600) + ":" + ((int)((dif_bet_date / 60) % 60)).ToString("00") + ":" + ((int)(dif_bet_date % 60)).ToString("00");
                };
                dt.Start();
            }
            else
            {
                subtitle_TB.Text = "-:--:--";
            }

            center_Grid.Children.Add(center_SP);
            _Grid.Children.Add(center_Grid);
            #endregion
            #region 3rd column - alarm icon
            Image alarm_Image = new Image
            {
                Width  = 32,
                Height = 32,
                HorizontalAlignment = HorizontalAlignment.Center,
                VerticalAlignment   = VerticalAlignment.Center,
                Margin  = new Thickness(3, 0, 3, 0),
                Opacity = 0,
                Source  = new BitmapImage(new Uri("ms-appx:///Assets/Images/alarm" + tema + ".png")),
            };
            alarm_Image.SetValue(Grid.ColumnProperty, 3);
            _Grid.Children.Add(alarm_Image);

            if (!Memory.alarmBlocked[v.rbr])
            {
                alarm_Image.Opacity = 1;
                if (v.alarmSkipped)
                {
                    alarm_Image.Opacity = 0.15;
                }
            }
            #endregion
            #region 4th column - toast icon
            Image toast_Image = new Image
            {
                Width  = 32,
                Height = 32,
                HorizontalAlignment = HorizontalAlignment.Center,
                VerticalAlignment   = VerticalAlignment.Center,
                Margin  = new Thickness(3, 0, 3, 0),
                Opacity = 0,
                Source  = new BitmapImage(new Uri("ms-appx:///Assets/Images/notification" + tema + ".png")),
            };
            toast_Image.SetValue(Grid.ColumnProperty, 3);
            _Grid.Children.Add(toast_Image);

            if (!Memory.toastBlocked[v.rbr])
            {
                alarm_Image.SetValue(Grid.ColumnProperty, 2);
                toast_Image.Opacity = 1;
                if (v.toastSkipped)
                {
                    toast_Image.Opacity = 0.15;
                }
            }
            else if (Memory.alarmBlocked[v.rbr])
            {
                alarm_Image.SetValue(Grid.ColumnProperty, 2);
            }
            else
            {
                toast_Image.SetValue(Grid.ColumnProperty, 2);
            }
            #endregion

            Article_Grid.Children.Add(_Grid);
            _ListViewItem.Content = Article_Grid;

            #region Storyboard
            Duration duration = new Duration(TimeSpan.FromMilliseconds(250));

            DoubleAnimation myDoubleAnimation1 = new DoubleAnimation();

            myDoubleAnimation1.Duration = duration;

            Storyboard sb = new Storyboard();
            sb.Duration = duration;

            sb.Children.Add(myDoubleAnimation1);

            Storyboard.SetTarget(myDoubleAnimation1, _ListViewItem);

            Storyboard.SetTargetProperty(myDoubleAnimation1, "Opacity");

            myDoubleAnimation1.To = 1;

            _ListViewItem.Resources.Add("unique_id", sb);
            #endregion

            sb.Begin();
        }
        /// <summary>
        /// Creates one clock to be displayed in the top section
        /// </summary>
        /// <param name="timezone"></param>
        /// <returns></returns>
        protected UIElement CreateOneClock(string timezone)
        {
            if (!ViewModel.TimezonesAvailable.ContainsKey(timezone))
            {
                return(null);
            }

            Grid Ret = new Grid()
            {
                Width = 180, Height = 88, Margin = new Thickness(5, 5, 0, 0), Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#EEEEEE"))
            };

            Ret.RowDefinitions.Add(new RowDefinition()
            {
                Height = new GridLength(24)
            });
            Ret.RowDefinitions.Add(new RowDefinition()
            {
                Height = new GridLength(1, GridUnitType.Star)
            });
            Ret.RowDefinitions.Add(new RowDefinition()
            {
                Height = new GridLength(24)
            });

            #region Row 0
            TextBlock TmpText = new TextBlock()
            {
                Text = timezone, HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center, Margin = new Thickness(0, 5, 0, 0)
            };
            Viewbox VB = new Viewbox()
            {
                Margin = new Thickness(2)
            };
            VB.SetValue(Grid.RowProperty, 0);
            VB.Child = TmpText;
            Ret.Children.Add(VB);
            #endregion

            #region Row 1
            TmpText = new TextBlock()
            {
                Text = "", FontFamily = new FontFamily(new Uri("pack://application:,,,/"), "Resources/Fonts/#Orbitron"), HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center, Tag = timezone
            };
            VB = new Viewbox();
            VB.SetValue(Grid.RowProperty, 1);
            VB.Child = TmpText;
            Ret.Children.Add(VB);
            TimeBlocks.Add(TmpText);
            #endregion

            #region Row 2
            TmpText = new TextBlock()
            {
                Text = "", HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center, Margin = new Thickness(0, 0, 0, 5), Tag = timezone
            };
            TmpText.SetValue(Grid.RowProperty, 2);
            Ret.Children.Add(TmpText);
            DateBlocks.Add(TmpText);
            #endregion

            return(Ret);
        }
示例#25
0
        public void CreateGrid()
        {
            var background = new Rectangle();

            background.Fill = BackColor;

            background.Width  = CanvasSize.Width;
            background.Height = CanvasSize.Height;

            background.RadiusX = BorderRadius;
            background.RadiusY = BorderRadius;

            Playground.Children.Add(background);

            var width  = CanvasSize.Width - 2 * BlockMargin;
            var height = CanvasSize.Height - 2 * BlockMargin;

            var cellWidth  = width / CellsCount - (CellsCount - 1.0) / CellsCount * BlockMargin;
            var cellHeight = height / CellsCount - (CellsCount - 1.0) / CellsCount * BlockMargin;

            for (int x = 0; x < CellsCount; x++)
            {
                for (int y = 0; y < CellsCount; y++)
                {
                    var cell = new Rectangle();

                    cell.Fill = ForeColor;

                    cell.Width  = cellWidth;
                    cell.Height = cellHeight;

                    cell.SetValue(LeftProperty, x * cellWidth + BlockMargin * (x + 1));
                    cell.SetValue(TopProperty, y * cellHeight + BlockMargin * (y + 1));

                    cell.RadiusX = BorderRadius;
                    cell.RadiusY = BorderRadius;

                    var cellFill = new Rectangle();

                    cellFill.Fill = ForeColor;

                    cellFill.Width  = cellWidth;
                    cellFill.Height = cellHeight;

                    cellFill.SetValue(LeftProperty, x * cellWidth + BlockMargin * (x + 1));
                    cellFill.SetValue(TopProperty, y * cellHeight + BlockMargin * (y + 1));

                    cellFill.RadiusX = BorderRadius;
                    cellFill.RadiusY = BorderRadius;

                    var label = new Label();
                    label.Content = "";

                    var viewBox = new Viewbox();

                    viewBox.Child = label;

                    viewBox.Width  = cellWidth;
                    viewBox.Height = cellHeight;

                    viewBox.SetValue(LeftProperty, x * cellWidth + BlockMargin * (x + 1));
                    viewBox.SetValue(TopProperty, y * cellHeight + BlockMargin * (y + 1));

                    Cells[x, y]         = new Cell(0, x, y);
                    Cells[x, y].Content = viewBox;
                    Cells[x, y].Fill    = cell;

                    Playground.Children.Add(cell);
                    Playground.Children.Add(viewBox);
                }
            }
        }
示例#26
0
        public void Move(int x, int y, Direction dir)
        {
            Point StartPos = new Point(x, y);
            Point EndPos   = new Point(x, y);
            var   val      = Cells[x, y].Value;
            var   color    = Cells[x, y].Fill.Fill;
            int   xOffset  = 0;
            int   yOffset  = 0;

            if (dir == Direction.Left)
            {
                xOffset = -1;
                if (x == 0)
                {
                    return;
                }
            }
            else if (dir == Direction.Right)
            {
                xOffset = 1;
                if (x == CellsCount - 1)
                {
                    return;
                }
            }
            else if (dir == Direction.Up)
            {
                yOffset = -1;
                if (y == 0)
                {
                    return;
                }
            }
            else if (dir == Direction.Down)
            {
                yOffset = 1;
                if (y == CellsCount - 1)
                {
                    return;
                }
            }
            if (Cells[x + xOffset, y + yOffset].Value == Cells[x, y].Value && !Cells[x + xOffset, y + yOffset].Joined && !Cells[x, y].Joined && Cells[x, y].Value != 0)
            {
                var value = Cells[x, y].Value;
                Cells[x, y].Value = 0;
                Cells[x + xOffset, y + yOffset].Value = value * 2;
                Score   += value * 2;
                EndPos.X = x + xOffset;
                EndPos.Y = y + yOffset;
                Cells[x + xOffset, y + yOffset].Joined = true;
                if (value > 0)
                {
                    Moved = true;
                }
            }
            else
            {
                bool end = false;
                for (; !end;)
                {
                    if (Cells[x + xOffset, y + yOffset].Value == 0 && Cells[x, y].Value != 0)
                    {
                        var value = Cells[x, y].Value;
                        Cells[x, y].Value = 0;
                        Cells[x + xOffset, y + yOffset].Value = value;
                        if (Cells[x, y].Joined)
                        {
                            Cells[x, y].Joined = false;
                            Cells[x + xOffset, y + yOffset].Joined = true;
                        }
                        if (!Cells[x, y].Joined)
                        {
                            Cells[x + xOffset, y + yOffset].Joined = false;
                        }
                        EndPos.X = x + xOffset;
                        EndPos.Y = y + yOffset;
                        x       += xOffset;
                        y       += yOffset;
                        if (value > 0)
                        {
                            Moved = true;
                        }
                        ;
                    }
                    else
                    {
                        if (Cells[x + xOffset, y + yOffset].Value == Cells[x, y].Value && !Cells[x + xOffset, y + yOffset].Joined && !Cells[x, y].Joined && Cells[x, y].Value != 0)
                        {
                            var value = Cells[x, y].Value;
                            Cells[x, y].Value = 0;
                            Cells[x + xOffset, y + yOffset].Value = value * 2;
                            Score   += value * 2;
                            EndPos.X = x + xOffset;
                            EndPos.Y = y + yOffset;
                            Cells[x + xOffset, y + yOffset].Joined = true;
                            if (value > 0)
                            {
                                Moved = true;
                            }
                        }
                        break;
                    }
                    if (dir == Direction.Left && x <= 0)
                    {
                        end = true;
                    }
                    else if (dir == Direction.Right && x >= CellsCount - 1)
                    {
                        end = true;
                    }
                    else if (dir == Direction.Up && y <= 0)
                    {
                        end = true;
                    }
                    else if (dir == Direction.Down && y >= CellsCount - 1)
                    {
                        end = true;
                    }
                }
            }

            var width  = CanvasSize.Width - 2 * BlockMargin;
            var height = CanvasSize.Height - 2 * BlockMargin;

            var cellWidth  = width / CellsCount - (CellsCount - 1.0) / CellsCount * BlockMargin;
            var cellHeight = height / CellsCount - (CellsCount - 1.0) / CellsCount * BlockMargin;

            var x1 = StartPos.X * cellWidth + BlockMargin * (StartPos.X + 1);
            var y1 = StartPos.Y * cellWidth + BlockMargin * (StartPos.Y + 1);

            var x2 = EndPos.X * cellWidth + BlockMargin * (EndPos.X + 1);
            var y2 = EndPos.Y * cellWidth + BlockMargin * (EndPos.Y + 1);

            var itteration  = 0;
            var itterations = 10;

            var cellFill = new Rectangle();

            cellFill.Fill = GetColor(val);

            cellFill.Width  = cellWidth;
            cellFill.Height = cellHeight;

            cellFill.SetValue(LeftProperty, (x2 - x1) * itteration / (double)itterations + x1);
            cellFill.SetValue(TopProperty, (y2 - y1) * itteration / (double)itterations + y1);

            cellFill.RadiusX = BorderRadius;
            cellFill.RadiusY = BorderRadius;

            var label = new Label();

            label.Content = val.ToString();

            var viewBox = new Viewbox();

            label.Foreground = ((Label)Cells[(int)StartPos.X, (int)StartPos.Y].Content.Child).Foreground;

            viewBox.Child = label;

            viewBox.Width  = cellWidth;
            viewBox.Height = cellHeight;

            viewBox.SetValue(LeftProperty, (x2 - x1) * itteration / (double)itterations + x1);
            viewBox.SetValue(TopProperty, (y2 - y1) * itteration / (double)itterations + y1);

            if (val != 0)
            {
                AnimatedCells++;
                Playground.Children.Add(cellFill);
                Playground.Children.Add(viewBox);

                var animationX = new DoubleAnimation(x1, x2, new Duration(TimeSpan.FromSeconds(0.2)));
                var animationY = new DoubleAnimation(y1, y2, new Duration(TimeSpan.FromSeconds(0.2)));

                animationX.Completed += (object sender, EventArgs e) =>
                {
                    Playground.Children.Remove(cellFill);
                    Playground.Children.Remove(viewBox);
                    UpdateGrid((int)EndPos.X, (int)EndPos.Y);
                    if (AnimatedCells >= FilledCells)
                    {
                        LockKeyPress = false;
                        UpdateGrid();
                    }
                    var soltionExists = CheckCells();
                    if (!soltionExists)
                    {
                        LockKeyPress        = true;
                        Menu.Visibility     = Visibility.Visible;
                        Fill.Visibility     = Visibility.Visible;
                        MenuMessage.Content = "Game over";
                        var animation = new DoubleAnimation(0, 1, new Duration(TimeSpan.FromSeconds(0.2)));
                        Menu.BeginAnimation(OpacityProperty, animation);
                        Fill.BeginAnimation(OpacityProperty, animation);
                    }
                    foreach (var cell in Cells)
                    {
                        if (cell.Value == 2048)
                        {
                            LockKeyPress        = true;
                            Menu.Visibility     = Visibility.Visible;
                            Fill.Visibility     = Visibility.Visible;
                            MenuMessage.Content = "You win";
                            var animation = new DoubleAnimation(0, 1, new Duration(TimeSpan.FromSeconds(0.2)));
                            Menu.BeginAnimation(OpacityProperty, animation);
                            Fill.BeginAnimation(OpacityProperty, animation);
                        }
                    }
                };

                cellFill.BeginAnimation(LeftProperty, animationX);
                cellFill.BeginAnimation(TopProperty, animationY);

                viewBox.BeginAnimation(LeftProperty, animationX);
                viewBox.BeginAnimation(TopProperty, animationY);

                Cells[(int)StartPos.X, (int)StartPos.Y].Fill.Fill = ForeColor;
                ((Label)Cells[(int)StartPos.X, (int)StartPos.Y].Content.Child).Content = "";
            }
        }
示例#27
0
        void CreateMatrix()
        {
            btnMatrixCellArray          = new Button[maxRowLength, maxColLength];
            eWDecode.btnMatrixCellArray = new Button[maxRowLength, maxColLength];
            timeMatrixCellArray         = new int[maxRowLength, maxColLength];
            numberOfHintArray           = new int[maxRowLength, maxColLength];

            for (int i = 0; i <= maxColLength; i++)
            {
                ColumnDefinition columnDefinition = new ColumnDefinition {
                    Width = new GridLength(1, GridUnitType.Star)
                };
                ColumnDefinition eWColumnDefinition = new ColumnDefinition {
                    Width = new GridLength(1, GridUnitType.Star)
                };

                eWDecode.gridMatrixTable.ColumnDefinitions.Add(eWColumnDefinition);
                gridMatrixTable.ColumnDefinitions.Add(columnDefinition);
            }

            for (int i = 0; i <= maxRowLength; i++)
            {
                RowDefinition rowDefinition = new RowDefinition {
                    Height = new GridLength(1, GridUnitType.Star)
                };
                RowDefinition eWRowDefinition = new RowDefinition {
                    Height = new GridLength(1, GridUnitType.Star)
                };

                eWDecode.gridMatrixTable.RowDefinitions.Add(rowDefinition);
                gridMatrixTable.RowDefinitions.Add(eWRowDefinition);
            }

            for (int i = 1; i <= maxColLength; i++)
            {
                Viewbox viewboxColumnName = new Viewbox {
                    Child = new TextBlock {
                        Foreground = Brushes.White, FontFamily = new FontFamily("Open Sans"), Text = (char)(64 + i) + ""
                    }
                };
                viewboxColumnName.SetValue(Grid.ColumnProperty, i);
                viewboxColumnName.SetValue(Grid.RowProperty, 0);
                gridMatrixTable.Children.Add(viewboxColumnName);

                Viewbox eWViewboxColumnName = new Viewbox {
                    Child = new TextBlock {
                        Foreground = Brushes.White, FontFamily = new FontFamily("Open Sans"), Text = (char)(64 + i) + ""
                    }
                };
                eWViewboxColumnName.SetValue(Grid.ColumnProperty, i);
                eWViewboxColumnName.SetValue(Grid.RowProperty, 0);
                eWDecode.gridMatrixTable.Children.Add(eWViewboxColumnName);
            }

            for (int i = 1; i <= maxRowLength; i++)
            {
                Viewbox viewboxColumnName = new Viewbox {
                    Child = new TextBlock {
                        Foreground = Brushes.White, FontFamily = new FontFamily("Open Sans"), Text = i.ToString()
                    }
                };
                viewboxColumnName.SetValue(Grid.ColumnProperty, 0);
                viewboxColumnName.SetValue(Grid.RowProperty, i);
                gridMatrixTable.Children.Add(viewboxColumnName);

                Viewbox eWViewboxColumnName = new Viewbox {
                    Child = new TextBlock {
                        Foreground = Brushes.White, FontFamily = new FontFamily("Open Sans"), Text = i.ToString()
                    }
                };
                eWViewboxColumnName.SetValue(Grid.ColumnProperty, 0);
                eWViewboxColumnName.SetValue(Grid.RowProperty, i);
                eWDecode.gridMatrixTable.Children.Add(eWViewboxColumnName);
            }

            for (int i = 0; i < maxRowLength; i++)
            {
                for (int j = 0; j < maxColLength; j++)
                {
                    btnMatrixCellArray[i, j] = new Button {
                        BorderThickness = new Thickness(1.5), BorderBrush = Brushes.Black, Name = string.Format("Matrix_{0}_{1}", i, j), Background = Brushes.White, FontSize = 40, FontFamily = new FontFamily("Open Sans"), Content = string.Empty
                    };
                    btnMatrixCellArray[i, j].SetValue(Grid.RowProperty, i + 1);
                    btnMatrixCellArray[i, j].SetValue(Grid.ColumnProperty, j + 1);
                    gridMatrixTable.Children.Add(btnMatrixCellArray[i, j]);

                    eWDecode.btnMatrixCellArray[i, j] = new Button {
                        BorderThickness = new Thickness(1.5), BorderBrush = Brushes.Black, Name = string.Format("Matrix_{0}_{1}", i, j), Background = Brushes.White, FontSize = 40, FontFamily = new FontFamily("Open Sans"), Content = string.Empty
                    };
                    eWDecode.btnMatrixCellArray[i, j].SetValue(Grid.RowProperty, i + 1);
                    eWDecode.btnMatrixCellArray[i, j].SetValue(Grid.ColumnProperty, j + 1);
                    eWDecode.gridMatrixTable.Children.Add(eWDecode.btnMatrixCellArray[i, j]);

                    timeMatrixCellArray[i, j] = 0;
                    numberOfHintArray[i, j]   = 0;
                }
            }

            Brush[] colorOfCell = { Brushes.Green, Brushes.Yellow, Brushes.Red };
            for (int i = 1; i < decodeQuestionList.Count; i++)
            {
                int difficulty = decodeQuestionList[i].QuestionTypeID / 10 - 1;
                int row        = decodeQuestionList[i].RowNo;
                int col        = decodeQuestionList[i].ColNo;

                btnMatrixCellArray[row, col].Background          = colorOfCell[difficulty];
                eWDecode.btnMatrixCellArray[row, col].Background = colorOfCell[difficulty];
                if (decodeQuestionList[i].QuestionTypeID % 10 == 1)
                {
                    timeMatrixCellArray[row, col]    = 15 + 5 * difficulty;
                    btnMatrixCellArray[row, col].Uid = "Decode_ImgQuestionIcon.png";
                }
                else
                {
                    timeMatrixCellArray[row, col] = 10;
                    numberOfHint++;
                    btnMatrixCellArray[row, col].Uid = "Decode_ImgHintIcon.png";

                    Image hintImage = new Image();
                    mediaAct.Upload(hintImage, decodeQuestionList[i].QuestionImageName);
                    hintImage.Stretch = Stretch.Fill;
                    hintImageList.Add(hintImage);
                    hintImage.Visibility = Visibility.Hidden;
                }

                btnMatrixCellArray[row, col].Click += BtnMatrixCell_Click;
            }

            SetUpNumberOfHint();
        }
示例#28
0
        private void SetQuestionDetail_Round1(Question question)
        {
            HiddenAllGrid();
            grdDetailQuestionRound1.Visibility = Visibility.Visible;

            if (question.ID != 6)
            {
                tbQuestionDetail.Text = "Câu " + question.ID + ": " + question.Detail;
            }
            else
            {
                tbQuestionDetail.Text = "Từ khóa";
            }


            int maxDigit = FindMax(currentListQuestion) > 10 ? FindMax(currentListQuestion) : 10;

            if (question.NumberOfDigits % 2 == 1)
            {
                maxDigit += 1;
            }
            grdRound1_DigitDetail.ColumnDefinitions.Clear();
            grdRound1_DigitDetail.Children.Clear();
            for (int i = 0; i < maxDigit; i++)
            {
                ColumnDefinition colDefinition = new ColumnDefinition {
                    Width = new GridLength(1, GridUnitType.Star)
                };
                grdRound1_DigitDetail.ColumnDefinitions.Add(colDefinition);
            }

            int count = question.NumberOfDigits;
            int gap   = Convert.ToInt32(Math.Ceiling((double)(maxDigit - count) / 2));

            for (int i = 0; i < count; i++)
            {
                Image image = new Image();
                MediaAct.Instance.Upload(image, "Obstacles_ObstacleChosenImage.png");
                //image.SetValue(Grid.RowProperty, 0);
                image.SetValue(Grid.ColumnProperty, i + gap);
                grdRound1_DigitDetail.Children.Add(image);
            }

            Image imageClock = new Image();

            MediaAct.Instance.Upload(imageClock, "BoxTime.png");
            imageClock.SetValue(Grid.ColumnProperty, 1);
            grdTimeRound1.Children.Add(imageClock);
            Viewbox viewbox  = new Viewbox();
            Label   timeTick = new Label {
                Content = "00:15", Foreground = Brushes.White
            };

            if (question.ID == 6)
            {
                timeTick.Content = "00:10";
            }
            timeTick.MouseDoubleClick += TimeTick_MouseDoubleClick;

            viewbox.Child = timeTick;
            viewbox.SetValue(Grid.ColumnProperty, 1);
            grdTimeRound1.Children.Add(viewbox);
        }
示例#29
0
        private void ShowPreloader()
        {
            var grid = new Grid
            {
                Name    = "BusyIndicator",
                Opacity = 0.0
            };

            if (DimBackground)
            {
                grid.Cursor      = Cursors.Wait;
                grid.ForceCursor = true;
                //InputManager.Current.PreProcessInput += OnPreProcessInput;
            }
            grid.SetBinding(FrameworkElement.WidthProperty, new Binding("ActualWidth")
            {
                Source = HostGrid
            });
            grid.SetBinding(FrameworkElement.HeightProperty, new Binding("ActualHeight")
            {
                Source = HostGrid
            });
            for (int i = 1; i <= 3; ++i)
            {
                if (i != 2)
                {
                    grid.ColumnDefinitions.Add(new ColumnDefinition
                    {
                        Width = new GridLength(1, GridUnitType.Star)
                    });
                    grid.RowDefinitions.Add(new RowDefinition
                    {
                        Height = new GridLength(1, GridUnitType.Star)
                    });
                }
                else
                {
                    grid.ColumnDefinitions.Add(new ColumnDefinition
                    {
                        Width    = new GridLength(1, GridUnitType.Star),
                        MaxWidth = 180.0
                    });
                    grid.RowDefinitions.Add(new RowDefinition
                    {
                        Height    = new GridLength(1, GridUnitType.Star),
                        MaxHeight = 120.0
                    });
                }
            }

            var viewbox = new Viewbox
            {
                HorizontalAlignment = HorizontalAlignment.Center,
                Stretch             = Stretch.Uniform,
                StretchDirection    = StretchDirection.Both,
                Child = GetChildControl()
            };

            //TODO
            viewbox.MouseRightButtonDown += ChildOnMouseRightButtonDown;
            //
            grid.SetValue(Panel.ZIndexProperty, 1000);
            grid.SetValue(Grid.RowSpanProperty, Math.Max(1, HostGrid.RowDefinitions.Count));
            grid.SetValue(Grid.ColumnSpanProperty, Math.Max(1, HostGrid.ColumnDefinitions.Count));
            if (AddMargins)
            {
                viewbox.SetValue(Grid.RowProperty, 1);
                viewbox.SetValue(Grid.ColumnProperty, 1);
            }
            else
            {
                viewbox.SetValue(Grid.RowSpanProperty, 3);
                viewbox.SetValue(Grid.ColumnSpanProperty, 3);
            }
            viewbox.SetValue(Panel.ZIndexProperty, 1);

            var dimmer = new Rectangle
            {
                Name       = "Dimmer",
                Opacity    = DimmerOpacity,
                Fill       = DimmerBrush,
                Visibility = (DimBackground ? Visibility.Visible : Visibility.Collapsed)
            };

            dimmer.SetValue(Grid.RowSpanProperty, 3);
            dimmer.SetValue(Grid.ColumnSpanProperty, 3);
            dimmer.SetValue(Panel.ZIndexProperty, 0);
            grid.Children.Add(dimmer);

            grid.Children.Add(viewbox);

            grid.BeginAnimation(UIElement.OpacityProperty, new DoubleAnimation(1.0, DimTransitionDuration));

            HostGrid.Children.Add(grid);
            HostGrid.UpdateLayout();
        }
示例#30
0
        void InitMainWindow()
        {
            if (txtBoxStudentNameList.Count != 4)
            {
                for (int i = 0; i < numberOfStudent; i++)
                {
                    Viewbox viewbox    = new Viewbox();
                    TextBox txtBoxName = new TextBox {
                        FontSize = 35, Background = Brushes.Transparent, Foreground = Brushes.Black, Text = studentList[i].Name, TextAlignment = TextAlignment.Center, Margin = new Thickness(0, 15, 0, 0)
                    };
                    viewbox.Child = txtBoxName;
                    viewbox.SetValue(Grid.RowProperty, i + 1);
                    viewbox.SetValue(Grid.ColumnProperty, 0);
                    gridStudentInformation.Children.Add(viewbox);
                    txtBoxStudentNameList.Add(txtBoxName);

                    TextBox txtBoxPoint = new TextBox {
                        FontSize = 35, Background = Brushes.Transparent, Foreground = Brushes.Black, Text = studentList[i].Point.ToString(), TextAlignment = TextAlignment.Center, Margin = new Thickness(0, 15, 0, 0)
                    };
                    txtBoxPoint.SetValue(Grid.RowProperty, i + 1);
                    txtBoxPoint.SetValue(Grid.ColumnProperty, 1);
                    gridStudentInformation.Children.Add(txtBoxPoint);
                    txtBoxStudentPointList.Add(txtBoxPoint);
                }
            }
            else
            {
                for (int i = 0; i < numberOfStudent; i++)
                {
                    txtBoxStudentNameList[i].Text  = studentList[i].Name;
                    txtBoxStudentPointList[i].Text = studentList[i].Point.ToString();
                }
            }

            eWMainWindow = new EWMainWindow();
            eWMainWindow.Show();
            eWPointSummarized = new EWPointSummarized();
            eWStart           = new EWStart();
            eWObstacles       = new EWObstacles();
            eWAccelerate      = new EWAccelerate();
            eWDecode          = new EWDecode();
            eWFinish          = new EWFinish();


            uCReadExcel    = new UCReadExcel(this);
            uCStart        = new UCStart(this, eWMainWindow, eWStart, studentList, server, matchID);
            uCObstacles    = new UCObstacles(this, eWMainWindow, eWObstacles, studentList, server, matchID);
            uCAccelerate   = new UCAccelerate(this, eWMainWindow, eWAccelerate, studentList, server, matchID);
            uCDecode       = new UCDecode(this, eWMainWindow, eWDecode, studentList, server, matchID);
            uCFinish       = new UCFinish(this, eWMainWindow, eWFinish, studentList, server, matchID);
            uCSubQuestions = new UCSubQuestions(this, eWMainWindow, studentList, server, matchID);
            while (tabMain.Items.Count != 0)
            {
                tabMain.Items.RemoveAt(0);
            }

            tabMain.Items.Add(new TabItem {
                Content = uCStart, Header = "Khởi Động", Width = 80, Height = 20, FontSize = 10
            });
            tabMain.Items.Add(new TabItem {
                Content = uCObstacles, Header = "VCNV", Width = 80, Height = 20, FontSize = 10
            });
            tabMain.Items.Add(new TabItem {
                Content = uCAccelerate, Header = "Tăng Tốc", Width = 80, Height = 20, FontSize = 10
            });
            tabMain.Items.Add(new TabItem {
                Content = uCDecode, Header = "Giải Mã", Width = 80, Height = 20, FontSize = 10
            });
            tabMain.Items.Add(new TabItem {
                Content = uCFinish, Header = "Về Đích", Width = 80, Height = 20, FontSize = 10
            });
            tabMain.Items.Add(new TabItem {
                Content = uCSubQuestions, Header = "Câu hỏi phụ", Width = 80, Height = 20, FontSize = 10
            });
            tabMain.Items.Add(new TabItem {
                Content = uCReadExcel, Header = "Read Excel", Width = 80, Height = 20, FontSize = 10
            });


            //Cap nhap ID cua vong hien tai
            System.IO.StreamWriter streamWriter = new System.IO.StreamWriter("Round.txt");
            streamWriter.Flush();
            streamWriter.Write("0");
            streamWriter.Close();
        }