Пример #1
0
        //----------------------------------------------------------------------
        public MainMenuManager(NuclearSampleGame _game, ContentManager _content)
            : base(_game, _game.UIStyle, _content)
        {
            // Splitter
            mSplitter = new NuclearUI.Splitter(MenuScreen, NuclearUI.Direction.Left);
            mSplitter.AnchoredRect = NuclearUI.AnchoredRect.CreateFull(10);
            MenuScreen.Root.AddChild(mSplitter);
            mSplitter.Collapsable = true;

            mSplitter.FirstPaneMinSize = 200;

            // Demo list
            var demosBoxGroup = new NuclearUI.BoxGroup(MenuScreen, NuclearUI.Orientation.Vertical, 0, NuclearUI.Anchor.Start);

            mSplitter.FirstPane = demosBoxGroup;

            mDemoPanel = new NuclearUI.Panel(MenuScreen, Content.Load <Texture2D>("Sprites/UI/Panel04"), MenuScreen.Style.PanelCornerSize);

            var basicDemoPane = new Demos.BasicDemoPane(this);

            mSplitter.SecondPane = mDemoPanel;

            mDemoPanel.AddChild(basicDemoPane);

            demosBoxGroup.AddChild(CreateDemoButton("Basic", basicDemoPane), true);
            demosBoxGroup.AddChild(CreateDemoButton("Notebook", new Demos.NotebookPane(this)), true);
            demosBoxGroup.AddChild(CreateDemoButton("Text Area", new Demos.TextAreaPane(this)), true);
            demosBoxGroup.AddChild(CreateDemoButton("Custom Viewport", new Demos.CustomViewportPane(this)), true);
        }
Пример #2
0
        //----------------------------------------------------------------------
        public MainMenuManager(Game _game, NuclearUI.Style UIstyle, ContentManager _content)
            : base(_game, UIstyle, _content)
        {
            NuclearUI.Button button = new NuclearUI.Button(MenuScreen, "TestButton");

            // Splitter
            mSplitter = new NuclearUI.Splitter(MenuScreen, NuclearUI.Direction.Up);
            mSplitter.AnchoredRect = NuclearUI.AnchoredRect.CreateCentered(500, 400);// CreateFull(100, 100, 100, 100);
            MenuScreen.Root.AddChild(mSplitter);
            mSplitter.Collapsable = true;

            mSplitter.FirstPaneMinSize = 100;

            // Demo list
            var demosBoxGroup = new NuclearUI.BoxGroup(MenuScreen, NuclearUI.Orientation.Horizontal, 0, NuclearUI.Anchor.Start);

            mSplitter.FirstPane = demosBoxGroup;

            mDemoPanel = new NuclearUI.Panel(
                MenuScreen, Content.Load <Texture2D>("Textures/UI/Panel04"),
                MenuScreen.Style.PanelCornerSize);

            var basicDemoPane = new DemoMenus.BasicDemoPane(this);

            mSplitter.SecondPane = mDemoPanel;

            mDemoPanel.AddChild(basicDemoPane);

            // Test button
            var testButton = new NuclearUI.Button(MenuScreen, "Test");

            testButton.ClickHandler = delegate
            {
                mDemoPanel.Clear();
            };

            demosBoxGroup.AddChild(CreateDemoButton("Basic", basicDemoPane), true);
            demosBoxGroup.AddChild(testButton, true);

            //demosBoxGroup.AddChild( CreateDemoButton( "Notebook", new Demos.NotebookPane( this ) ), true );
            //demosBoxGroup.AddChild( CreateDemoButton( "Text Area", new Demos.TextAreaPane( this ) ), true );
            //demosBoxGroup.AddChild( CreateDemoButton( "Custom Viewport", new Demos.CustomViewportPane( this ) ), true );
        }
Пример #3
0
        //----------------------------------------------------------------------
        public Notebook( Screen _screen )
            : base(_screen)
        {
            Style = new NotebookStyle(
                Screen.Style.NotebookTabCornerSize,
                Screen.Style.NotebookTab,
                Screen.Style.NotebookTabFocus,
                Screen.Style.NotebookActiveTab,
                Screen.Style.NotebookActiveTabFocus,
                Screen.Style.NotebookUnreadTabMarker
            );

            mPanel = new Panel( Screen, Screen.Style.Panel, Screen.Style.PanelCornerSize );

            Tabs = new ObservableList<NotebookTab>();

            Tabs.ListChanged += delegate( object _source, ObservableList<NotebookTab>.ListChangedEventArgs _args ) {
                if( ! _args.Added )
                {
                    if( DraggedTab == _args.Item )
                    {
                        DraggedTab = null;
                    }

                    if( HoveredTab == _args.Item )
                    {
                        HoveredTab = null;
                    }
                }

                if( Tabs.Count > 0 )
                {
                    ActiveTabIndex = Math.Min( Tabs.Count - 1, ActiveTabIndex );
                    Tabs[ActiveTabIndex].IsUnread = false;
                }
            };
        }