Example #1
0
        private static void Handle(HlyssForm form)
        {
            //(form.Root.FindChild("ToolTip 1") as ToolTip).Target = form.Root.FindChild("Panel 1");
            //form.Root.FindChild("Panel 1").Clicked += (object sender) =>
            //{
            //    (form.Root.FindChild("Menu 1") as Menu).Show(form.MousePosition);
            //};

            //form.Root.FindChild("show_form").Clicked += (object sender) =>
            //{
            //    //app.GetForm("browse_folder_dialog").Show();
            //    app.RegisterAndShow(new BrowseFolderDialog());
            //};

            for (int i = 0; i < 10000; i++)
            {
                //form.Root.FindChild("list").Children.Add(new Button($"ListItem {i + 4}"));
                form.Root.FindChild("list").Children.Add(new Panel()
                {
                    Width  = "100px",
                    Height = "100px"
                });
            }

            //(form.Root.FindChild("toggle") as ISelectable).OnSelect += (_) => ThemeManager.SetTheme("dark");
            //(form.Root.FindChild("toggle") as ISelectable).OnUnselect += (_) => ThemeManager.SetTheme("light");
        }
Example #2
0
        static void Main(string[] args)
        {
            ThemeManager.LoadFromFile("DefaultTheme.xml");
            ThemeManager.SetTheme("dark");
            StyleBank.LoadFromFile("style.hss");

            HlyssApplication.InitializeStyles();

            HlyssForm form = new HlyssForm()
            {
                Size  = new Vector2u(1280, 720),
                Title = "Cior"
            };

            form.Root.AddChild(new BasicRouter()
            {
                Name = "router"
            });
            (form.Root.GetChild("router") as Router).Navigate(Test2());
            form.Show();

            app.RegisterForm("main", form);
            app.RegisterForm("browse_folder_dialog", new MessageBox("Galactic Dissent", "Czy na pewno chcesz odinstalować ten produkt?\n• Galactic Dissent", "Nie", "Tak"));

            //Handle(form);

            //form.Window.SetFramerateLimit(0);
            Stopwatch fpsTimer = Stopwatch.StartNew();
            int       fps      = 0;

            form.Window.KeyPressed += (object sender, KeyEventArgs e) =>
            {
                if (e.Code == Keyboard.Key.F3)
                {
                    HlyssApplication.Debug = !HlyssApplication.Debug;
                }
                if (e.Code == Keyboard.Key.C)
                {
                    Console.Clear();
                }
            };

            while (form.IsOpen)
            {
                app.UpdateAllForms();
                app.DrawAllForms();

                fps++;
                if (fpsTimer.ElapsedMilliseconds >= 1000)
                {
                    form.Title = $"{caption} ({fps} fps)";
                    fps        = 0;
                    fpsTimer.Restart();
                }
            }
        }
Example #3
0
        public void Update(HlyssForm form, Vector2i mousePosition)
        {
            _mPos = mousePosition;

            Component[] prevComponents = new Component[HoveredComponents.Count];
            HoveredComponents.CopyTo(prevComponents);
            HoveredComponents.Clear();

            FindHovered(form);
            CompareHover(prevComponents.ToList(), HoveredComponents);
        }
Example #4
0
        public void UnregisterEvents()
        {
            _form.Window.MouseButtonPressed  -= Window_MouseButtonPressed;
            _form.Window.MouseButtonReleased -= Window_MouseButtonReleased;
            _form.Window.MouseMoved          -= Window_MouseMoved;
            _form.Window.MouseWheelScrolled  -= Window_MouseWheelScrolled;
            _form.Window.KeyPressed          -= Window_KeyPressed;
            _form.Window.KeyReleased         -= Window_KeyReleased;
            _form.Window.TextEntered         -= Window_TextEntered;

            _form = null;
        }
Example #5
0
        public void RegisterEvents(HlyssForm form)
        {
            _form = form;

            _form.Window.MouseButtonPressed  += Window_MouseButtonPressed;
            _form.Window.MouseButtonReleased += Window_MouseButtonReleased;
            _form.Window.MouseMoved          += Window_MouseMoved;
            _form.Window.MouseWheelScrolled  += Window_MouseWheelScrolled;
            _form.Window.KeyPressed          += Window_KeyPressed;
            _form.Window.KeyReleased         += Window_KeyReleased;
            _form.Window.TextEntered         += Window_TextEntered;
        }
Example #6
0
        private void FindHovered(HlyssForm form)
        {
            Component firstHovered = null;

            for (int i = form.FlatComponentTree.Count - 1; i >= 0; i--)
            {
                Component component = form.FlatComponentTree[i];

                if (component.Bounds.Contains(_mPos.X, _mPos.Y) && (component.Parent == null || component.PositionType == Layout.PositionType.Fixed || (component.Parent != null && component.Parent.ClipArea.Bounds.Contains(_mPos.X, _mPos.Y))) && component.Hoverable && component.Visible)
                {
                    firstHovered = component;
                    HoveredComponents.Add(component);
                    break;
                }
            }

            if (firstHovered != null)
            {
                AddPredecessors(firstHovered);
            }
        }