コード例 #1
0
ファイル: ListDemo.cs プロジェクト: groov0v/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button button = new Button
        {
            Text = "Add data",
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/star"),
            AutoRepeat = true
        };
        button.ButtonDown += delegate
        {
            _dataProvider.AddItem("data " + _random.Next(1, 100));
        };
        toolbar.AddContentChild(button);

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass = typeof (ScrollerSkin2),
            PercentWidth = 100,
            PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        Group viewport = new Group
        {
            MouseEnabled = true,
            Layout = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Left,
                PaddingLeft = 10,
                PaddingRight = 10,
                PaddingTop = 10,
                PaddingBottom = 10,
                Gap = 10
            }
        };
        scroller.Viewport = viewport;

        #endregion

        List<object> source = new List<object> { "Failure", "Teaches", "Success", "One", "Two", "Three", "Four", "Five", "Six" };

        _dataProvider = new ArrayList(source);

        HGroup hGroup = new HGroup { PercentHeight = 100 };
        viewport.AddChild(hGroup);

        var factory = new ItemRendererFactory<DefaultItemRenderer>();

        VGroup vGroup2 = new VGroup { PercentHeight = 100 };
        hGroup.AddChild(vGroup2);

        HGroup hGroup2 = new HGroup
        {
            PercentWidth = 100
        };
        vGroup2.AddChild(hGroup2);

        /* LISTS */

        #region List 1

        List list = new List
                        {
                            Id = "list1",
                            //Layout = new TileLayout { RequestedColumnCount = 4 },
                            Width = 200, Height = 200,
                            DataProvider = _dataProvider,
                            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
                            ItemRendererFunction = delegate
                                                        {
                                                            return factory;
                                                        }
                        };
        hGroup2.AddChild(list);

        #endregion

        #region List 2

        list = new List
                    {
                        Id = "list2",
                        //Layout = new TileLayout { RequestedColumnCount = 3 },
                        Width = 200, Height = 245,
                        DataProvider = _dataProvider,
                        //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
                        ItemRendererFunction = delegate
                                                    {
                                                        return factory;
                                                    }
                    };
        hGroup2.AddChild(list);

        #endregion

        #region List 3
            
        list = new List
                    {
                        Id = "list3",
                        Width = 400,
                        Height = 600,
                        DataProvider = _dataProvider,
                        SkinClass = typeof(ListSkin2),
                        ItemRenderer = new ItemRendererFactory<BigItemRenderer>()
                    };
        hGroup2.AddChild(list);

        #endregion
            
        #region List 4

        list = new List
                    {
                        Id = "list4",
                        PercentHeight = 100,
                        MinWidth = 400,
                        Layout = new TileLayout { HorizontalGap = 0, VerticalGap = 0, RequestedColumnCount = 3 },
                        DataProvider = _dataProvider,
                        SkinClass = typeof(ListSkin2),
                        ItemRenderer = new ItemRendererFactory<BigItemRenderer>()
                    };
        hGroup.AddChild(list);

        #endregion

        #region List 5 (horizontal)

        vGroup2.AddChild(new Spacer { PercentHeight = 100 });

        list = new List
                    {
                        Id = "list5",
                        PercentWidth = 100,
                        Height = 100,
                        Layout = new HorizontalLayout { Gap = 0, RequestedColumnCount = 3 },
                        DataProvider = _dataProvider,
                        SkinClass = typeof(ListSkin2),
                        ItemRenderer = new ItemRendererFactory<BigItemRenderer>()
                    };
        vGroup2.AddChild(list);

        #endregion

        #region Process renderer click

        AddEventListener(BigItemRenderer.ADD_BUTTON_CLICKED, delegate(Event e)
        {
            BigItemRenderer itemRenderer = (BigItemRenderer) e.Target;
            Alert.Show("Info", itemRenderer.Data.ToString(), AlertButtonFlag.Ok,
                new AlertOption(AlertOptionType.HeaderIcon, ImageLoader.Instance.Load("Icons/information")));
        });

        #endregion
    }
コード例 #2
0
ファイル: DataGroupDemo.cs プロジェクト: groov0v/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button button = new Button
        {
            Text = "Add data",
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/add"),
            AutoRepeat = true
        };
        button.ButtonDown += delegate
        {
            _dataProvider.AddItem("data " + _random.Next(1, 100));
        };
        toolbar.AddContentChild(button);

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass = typeof (ScrollerSkin2),
            PercentWidth = 100,
            PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        Group viewport = new Group
        {
            MouseEnabled = true,
            Layout = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Left,
                PaddingLeft = 10,
                PaddingRight = 10,
                PaddingTop = 10,
                PaddingBottom = 10,
                Gap = 10
            }
        };
        scroller.Viewport = viewport;
        //AddChild(viewport);

        #endregion

        #region Data controls

        List<object> source = new List<object> {"Failure", "Teaches", "Success", "One", "Two", "Three", "Four", "Five", "Six"};

        _dataProvider = new ArrayList(source);

        var factory = new ItemRendererFactory<DefaultItemRenderer>();

        /* LISTS */

        #region HGroup

        HGroup hGroup1 = new HGroup
                    {
                        PaddingLeft = 10,
                        PaddingRight = 10,
                        PaddingTop = 10,
                        PaddingBottom = 10,
                        Gap = 20
                    };

        //hbox.SetStyle("showBackground", true);
        //hbox.SetStyle("backgroundColor", RgbColor.FromHex(0x004CFF).ToColor());
        viewport.AddChild(hGroup1);

        #endregion

        HGroup hGroup = new HGroup();
        viewport.AddChild(hGroup);

        /* DATA GROUPS */

        #region Data group 1

        hGroup1 = new HGroup
        {
            PaddingLeft = 10,
            PaddingRight = 10,
            PaddingTop = 10,
            PaddingBottom = 10,
            Gap = 50
        };
        hGroup.AddChild(hGroup1);

        DataGroup dataGroup = new DataGroup
        {
            Layout = new VerticalLayout(),
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate(object item)
            {
                return factory;
            }
        };
        hGroup1.AddChild(dataGroup);

        #endregion

        #region Data group 2

        hGroup1 = new HGroup
        {
            PaddingLeft = 10,
            PaddingRight = 10,
            PaddingTop = 10,
            PaddingBottom = 10,
            Gap = 50
        };
        hGroup.AddChild(hGroup1);

        dataGroup = new DataGroup
        {
            Layout = new TileLayout {RequestedColumnCount = 2},
            //Width = 200, Height = 200,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate
            {
                return factory;
            }
            //ClipAndEnableScrolling = true
        };
        hGroup1.AddChild(dataGroup);

        #endregion

        #region Data group 3

        hGroup1 = new HGroup
        {
            PaddingLeft = 10,
            PaddingRight = 10,
            PaddingTop = 10,
            PaddingBottom = 10,
            Gap = 50
        };
        hGroup.AddChild(hGroup1);

        dataGroup = new DataGroup
        {
            Layout = new TileLayout { RequestedColumnCount = 4 },
            //Width = 200, Height = 200,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate
            {
                return factory;
            }
            //ClipAndEnableScrolling = true
        };
        hGroup1.AddChild(dataGroup);

        #endregion

        #endregion

        #region VGroup

        VGroup vgroup = new VGroup();
        hGroup.AddChild(vgroup);

        #endregion

        #region List 1

        List list = new List
        {
            //Layout = new TileLayout { RequestedColumnCount = 4 },
            Width = 200,
            Height = 200,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate
            {
                return factory;
            }
        };
        vgroup.AddChild(list);

        #endregion

        #region List 2

        list = new List
        {
            //Layout = new TileLayout { RequestedColumnCount = 3 },
            Width = 200,
            Height = 245,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate
            {
                return factory;
            }
        };
        vgroup.AddChild(list);

        #endregion

        #region List 3

        list = new List
        {
            Id = "list3",
            Width = 400,
            Height = 600,
            DataProvider = _dataProvider,
            SkinClass = typeof(ListSkin2),
            ItemRenderer = new ItemRendererFactory<BigItemRenderer>()
        };
        hGroup.AddChild(list);

        #endregion

        #region Process renderer click

        AddEventListener(BigItemRenderer.ADD_BUTTON_CLICKED, delegate(Event e)
        {
            BigItemRenderer itemRenderer = (BigItemRenderer)e.Target;
            Alert.Show("Info", itemRenderer.Data.ToString(), AlertButtonFlag.Ok,
                new AlertOption(AlertOptionType.HeaderIcon, ImageLoader.Instance.Load("Icons/information")));
        });

        #endregion
            
    }
コード例 #3
0
ファイル: NavigatorDemo.cs プロジェクト: onamoni/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button button = new Button
        {
            Text       = "Add data",
            SkinClass  = typeof(ImageButtonSkin),
            Icon       = ImageLoader.Instance.Load("Icons/add"),
            AutoRepeat = true
        };
        button.ButtonDown += delegate
        {
            _dataProvider.AddItem("data " + _random.Next(1, 100));
        };
        toolbar.AddContentChild(button);

        button = new Button
        {
            Text      = "Previous tab",
            SkinClass = typeof(ImageButtonSkin),
            Icon      = ImageLoader.Instance.Load("Icons/previous")
        };
        button.Click += delegate
        {
            _buttonBar.SelectedIndex--;
            _viewstack.Previous();
        };
        toolbar.AddContentChild(button);

        button = new Button
        {
            Text      = "Next tab",
            SkinClass = typeof(ImageButtonSkin),
            Icon      = ImageLoader.Instance.Load("Icons/next")
        };
        button.Click += delegate
        {
            _buttonBar.SelectedIndex++;
            _viewstack.Next();
        };
        toolbar.AddContentChild(button);

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass     = typeof(ScrollerSkin2),
            PercentWidth  = 100,
            PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        Group viewport = new Group
        {
            MouseEnabled = true,
            Layout       = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Left,
                PaddingLeft     = 10,
                PaddingRight    = 10,
                PaddingTop      = 10,
                PaddingBottom   = 10,
                Gap             = 10
            }
        };
        scroller.Viewport = viewport;

        #endregion

        List <object> source = new List <object> {
            "Failure", "Teaches", "Success", "One", "Two", "Three", "Four", "Five", "Six"
        };

        _dataProvider = new ArrayList(source);

        viewport.AddChild(new Label {
            Text = "ButtonBar:"
        });

        #region Button bar

        _buttonBar = new ButtonBar
        {
            DataProvider = new ArrayList(new List <object> {
                "List 1", "List 2", "List 3", "List 4", "List 5"
            }),
            SkinClass        = typeof(ButtonBarSkin2),
            RequireSelection = true
        };
        _buttonBar.AddEventListener(Event.CHANGE, delegate(Event e)
        {
            IndexChangeEvent ice = e as IndexChangeEvent;
            if (null != ice)
            {
                int newIndex = ice.NewIndex;
                //Debug.Log("Changed to: " + newIndex);
                _viewstack.SelectedIndex = newIndex;
            }
        });
        viewport.AddChild(_buttonBar);

        #endregion

        #region ViewStack

        viewport.AddChild(new Label {
            Text = "ViewStack (having 5 lists as children):"
        });

        _viewstack = new ViewStack {
            ResizeToContent = true
        };
        viewport.AddChild(_viewstack);

        #endregion

        /* Factory is used for creating renderer instances */
        var factory = new ItemRendererFactory <DefaultItemRenderer>();

        /* LISTS */

        #region List 1

        List list = new List
        {
            Id = "list1",
            //Layout = new TileLayout { RequestedColumnCount = 4 },
            Width        = 200, Height = 200,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),

            /* ItemRendererFunction is used for switching between different factories, based on the supplied item */
            ItemRendererFunction = delegate { return(factory); }
        };
        _viewstack.AddChild(list);

        #endregion

        #region List 2

        list = new List
        {
            Id = "list2",
            //Layout = new TileLayout { RequestedColumnCount = 3 },
            Width        = 200, Height = 245,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate { return(factory); }
        };
        _viewstack.AddChild(list);

        #endregion

        #region List 3

        list = new List
        {
            Id           = "list3",
            Width        = 400,
            Height       = 450,
            DataProvider = _dataProvider,
            SkinClass    = typeof(ListSkin2),
            ItemRenderer = new ItemRendererFactory <BigItemRenderer>()
        };
        _viewstack.AddChild(list);

        #endregion

        #region List 4

        list = new List
        {
            Id     = "list4",
            Width  = 600, Height = 800,
            Layout = new TileLayout {
                HorizontalGap = 0, VerticalGap = 0, RequestedRowCount = 4, RequestedColumnCount = 3
            },
            DataProvider = _dataProvider,
            SkinClass    = typeof(ListSkin2),
            ItemRenderer = new ItemRendererFactory <BigItemRenderer>()
        };
        _viewstack.AddChild(list);

        #endregion

        #region List 5 (horizontal)

        list = new List
        {
            Id     = "list5",
            Width  = 800,
            Height = 100,
            Layout = new HorizontalLayout {
                Gap = 0, RequestedColumnCount = 3
            },
            DataProvider = _dataProvider,
            SkinClass    = typeof(ListSkin2),
            ItemRenderer = new ItemRendererFactory <BigItemRenderer>()
        };
        _viewstack.AddChild(list);

        #endregion

        #region Process renderer click

        AddEventListener(BigItemRenderer.ADD_BUTTON_CLICKED, delegate(Event e)
        {
            IItemRenderer itemRenderer = (IItemRenderer)e.Target;
            Alert.Show("Info", itemRenderer.Data.ToString(), AlertButtonFlag.Ok,
                       new AlertOption(AlertOptionType.HeaderIcon, ImageLoader.Instance.Load("Icons/information")));
        });

        #endregion
    }
コード例 #4
0
        override protected void CreateChildren()
        {
            base.CreateChildren();

            #region Controls

            Toolbar toolbar = new Toolbar();
            toolbar.Plugins.Add(new TabManager {
                ArrowsEnabled = true
            });
            AddChild(toolbar);

            #region Text field

            _txtSearch = new TextField
            {
                StyleName    = "search",
                Text         = "croatian coast",
                FocusEnabled = true,
                Width        = 400
            };
            _txtSearch.SetFocus();
            _txtSearch.KeyUp += delegate(Event e)
            {
                KeyboardEvent ke = (KeyboardEvent)e;
                if (ke.KeyCode == KeyCode.Return)
                {
                    _newSearch = true;
                    Search();
                }
            };
            toolbar.AddContentChild(_txtSearch);

            #endregion

            Button btnLoad = new Button
            {
                Text       = "Load data",
                SkinClass  = typeof(ImageButtonSkin),
                Icon       = ImageLoader.Instance.Load("Icons/arrow_refresh"),
                AutoRepeat = true
            };
            btnLoad.ButtonDown += delegate
            {
                Search();
                btnLoad.Text = "Load more...";
            };
            toolbar.AddContentChild(btnLoad);

            Button btnClear = new Button
            {
                Text       = "Remove all",
                SkinClass  = typeof(ImageButtonSkin),
                Icon       = ImageLoader.Instance.Load("Icons/cancel"),
                AutoRepeat = true
            };
            btnClear.ButtonDown += delegate
            {
                _scroller.Visible = false;
                _dataProvider.RemoveAll();
                btnLoad.Text = "Load data";
            };
            toolbar.AddContentChild(btnClear);

            #endregion

            #region Lower group

            Group group = new Group
            {
                PercentWidth  = 100,
                PercentHeight = 100
            };
            AddChild(group);

            #endregion

            #region Title label

            Label label = new TitleLabel {
                HorizontalCenter = 0, VerticalCenter = 0, StyleName = "title"
            };
            group.AddChild(label);

            new TextRotator
            {
                Delay = 5, // 5 seconds delay
                Lines = new[]
                {
                    "Load Data Demo",
                    "Created with eDriven.Gui",
                    "Loads images from Flickr"/*,
                                               * "Author: Danko Kozar"*/
                },
                Callback = delegate(string line) { label.Text = line; }
            }
            .Start();

            #endregion

            #region Scroller / viewport

            _scroller = new Scroller
            {
                SkinClass    = typeof(ScrollerSkin2),
                PercentWidth = 100, PercentHeight = 100,
                Visible      = false
            };
            _scroller.SetStyle("showEffect", _scrollerShow);
            group.AddChild(_scroller);

            Group viewport = new Group
            {
                /*MouseEnabled = true,
                 * Layout = new VerticalLayout
                 * {
                 *  HorizontalAlign = HorizontalAlign.Left,
                 *  PaddingLeft = 10,
                 *  PaddingRight = 10,
                 *  PaddingTop = 10,
                 *  PaddingBottom = 10,
                 *  Gap = 10
                 * }*/
            };
            _scroller.Viewport = viewport;

            #endregion

            #region Data controls

            List <object> source = new List <object>();

            _dataProvider = new ArrayList(source);

            /* LISTS */

            #region HGroup

            #endregion

            #region List

            _list = new List
            {
                Left   = 10, Right = 10, Top = 10, Bottom = 10,
                Layout = new TileLayout {
                    HorizontalGap = 0, VerticalGap = 0                                 /*, RequestedRowCount = 4, RequestedColumnCount = 3*/
                },
                DataProvider  = _dataProvider,
                SkinClass     = typeof(ListSkin2),
                ItemRenderer  = new ItemRendererFactory <ThumbnailItemRenderer>(),
                LabelFunction = LabelFunction            // extracting the title
            };
            viewport.AddChild(_list);

            #endregion

            #endregion

            // bubbling event listener
            AddEventListener("showImage", ShowImageHandler);
        }
コード例 #5
0
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button btnAddRect = new Button
        {
            Text         = "New button",
            Icon         = ImageLoader.Instance.Load("Icons/shape_square_add"),
            SkinClass    = typeof(ImageButtonSkin),
            FocusEnabled = false
        };
        btnAddRect.Click += delegate { AddButton(); };
        toolbar.AddContentChild(btnAddRect);

        Button btnAddText = new Button
        {
            Text         = "New text",
            Icon         = ImageLoader.Instance.Load("Icons/page_white_text"),
            SkinClass    = typeof(ImageButtonSkin),
            FocusEnabled = false
        };
        btnAddText.Click += delegate { AddTextField(); };
        toolbar.AddContentChild(btnAddText);

        Button btnClear = new Button
        {
            Text         = "Clear",
            Icon         = ImageLoader.Instance.Load("Icons/cancel"),
            SkinClass    = typeof(ImageButtonSkin),
            FocusEnabled = false
        };
        btnClear.Click += delegate
        {
            _viewport.RemoveAllChildren();
            _count = 1;
        };
        toolbar.AddContentChild(btnClear);

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass     = typeof(ScrollerSkin2),
            PercentWidth  = 100,
            PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        _viewport = new Group
        {
            MouseEnabled = true,
            Layout       = new AbsoluteLayout()
        };
        scroller.Viewport = _viewport;

        #endregion

        #region Default controls

        var button = new Button
        {
            X            = 200,
            Y            = 200,
            Width        = 300,
            Height       = 200,
            MinWidth     = 200,
            MinHeight    = 200,
            FocusEnabled = false,
            Text         = "Resize me!",
            Tooltip      = "Resizable Button"
        };
        button.Plugins.Add(new Resizable() /* { ShowOverlay = false }*/);
        _viewport.AddChild(button);

        var textArea = new TextArea
        {
            X         = 600,
            Y         = 400,
            Width     = 300,
            Height    = 200,
            MinWidth  = 100,
            MinHeight = 100,
            Text      = LoremIpsum,
            Tooltip   = "Resizable TextArea",
            Optimized = true
        };
        textArea.Plugins.Add(new Resizable() /* { ShowOverlay = false }*/);
        _viewport.AddChild(textArea);

        #endregion
    }
コード例 #6
0
ファイル: GridDemo.cs プロジェクト: groov0v/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button button = new Button
        {
            Text = "Add data",
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/star"),
            AutoRepeat = true
        };
        button.ButtonDown += delegate
        {
            _dataProvider.AddItem(
                new ExampleItem
                {
                    FirstName = "First" + _random.Next(1, 100),
                    LastName = "Last" + _random.Next(1, 100),
                    Age = _random.Next(1, 80),
                    DrivingLicense = _random.Next(0, 2) == 1
                }
            );
        };
        toolbar.AddContentChild(button);

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass = typeof (ScrollerSkin2),
            PercentWidth = 100,
            PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        Group viewport = new Group
        {
            MouseEnabled = true,
            Layout = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Left,
                PaddingLeft = 10,
                PaddingRight = 10,
                PaddingTop = 10,
                PaddingBottom = 10,
                Gap = 10
            }
        };
        scroller.Viewport = viewport;

        #endregion

        #region Fill the data provider

        List<string> names = new List<string>
        {
            "Failure",
            "Teaches",
            "Success",
            "One",
            "Two",
            "Three",
            "Four",
            "Five",
            "Six"
        };

        List<object> source = new List<object>();
        foreach (var theName in names)
        {
            source.Add(
                new ExampleItem
                {
                    FirstName = theName,
                    LastName = theName,
                    Age = _random.Next(1, 10),
                    DrivingLicense = _random.Next(0, 2) == 1
                }
                );
        }

        _dataProvider = new ArrayList(source);

        #endregion

        HGroup hGroup = new HGroup { PercentWidth = 100, PercentHeight = 100 };
        viewport.AddChild(hGroup);

        #region Grid (header + list + footer)

        VGroup vGroup = new VGroup { PercentWidth = 100, PercentHeight = 100, Gap = 0 };
        hGroup.AddChild(vGroup);

        #region Header

        /* Implement your own header logic here */

        /*HGroup header = new HGroup {PercentWidth = 100, Gap = 0};
        vGroup.AddChild(header);

        for (int i = 0; i < 5; i++)
        {
            Button btnCol = new Button // example header
            {
                Text = "Column " + (i + 1),
                ToggleMode = true,
                PercentWidth = 100
            };
            btnCol.Click += delegate(Event e)
            {
                // sort, filder and refresh (do list.DataProvider = list.DataProvider)
            };
            header.AddChild(btnCol);
        }*/

        #endregion

        #region List

        List list = new List
        {
            Id = "list1",
            PercentWidth = 100,
            PercentHeight = 100,
            DataProvider = _dataProvider,
            LabelField = "FirstName", // this must be set due to list logic legacy (the field must exist in DTO)
            SkinClass = typeof (ListSkin2),
            ItemRenderer = new ItemRendererFactory<MyGridItemRenderer>()
        };
        vGroup.AddChild(list);

        #endregion

        #region Footer

        HGroup footer = new HGroup { PercentWidth = 100, Gap = 30, PaddingLeft = 10, PaddingRight = 10, PaddingTop = 10, PaddingBottom = 0 };
        vGroup.AddChild(footer);

        _lblSum = new Label {Text = "Age sum: ", StyleName = "footer" };
        footer.AddChild(_lblSum);

        _lblNumberOfSelectedItems = new Label { Text = "Driving licenses: ", StyleName = "footer" };
        footer.AddChild(_lblNumberOfSelectedItems);

        UpdateFooter();

        #endregion

        #endregion

        #region Process renderer click

        AddEventListener(MyGridItemRenderer.ADD_BUTTON_CLICKED, delegate(Event e)
        {
            IItemRenderer itemRenderer = (IItemRenderer)e.Target;
            Alert.Show("Info", itemRenderer.Data.ToString(), AlertButtonFlag.Ok,
                new AlertOption(AlertOptionType.HeaderIcon, (object) ImageLoader.Instance.Load("Icons/information")));
        });

        AddEventListener(MyGridItemRenderer.EDIT_BUTTON_CLICKED, delegate(Event e)
        {
            var editor = new ExamplePopupEditor { 
                Title = "Edit", 
                Icon = ImageLoader.Instance.Load("Icons/edit"), 
                Data = ((MyGridItemRenderer) e.Target).Data, 
                CloseOnEsc = true
            };
            editor.AddEventListener(CloseEvent.CLOSE, delegate
            {
                PopupManager.Instance.RemovePopup(editor);
            });

            PopupManager.Instance.AddPopup(editor, true);
        });

        #endregion

        #region Process property change

        _dataProvider.AddEventListener(PropertyChangeEvent.PROPERTY_CHANGE, delegate(Event e)
        {
            //PropertyChangeEvent pce = (PropertyChangeEvent) e;
            //Debug.Log(pce.NewValue);
            UpdateFooter();
        });

        #endregion

    }
コード例 #7
0
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        _btnAddRect = new Button
        {
            Text         = "New button",
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = ImageLoader.Instance.Load("Icons/shape_square_add"),
            FocusEnabled = false,
            AutoRepeat   = true
        };
        _btnAddRect.ButtonDown += delegate { AddButton(); };
        toolbar.AddContentChild(_btnAddRect);

        _btnAddText = new Button
        {
            Text         = "New text",
            FocusEnabled = false,
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = ImageLoader.Instance.Load("Icons/page_white_text"),
            AutoRepeat   = true
        };
        _btnAddText.ButtonDown += delegate { AddTextField(); };
        toolbar.AddContentChild(_btnAddText);

        Button btnClear = new Button
        {
            Text         = "Clear",
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = Resources.Load <Texture>("Icons/cancel"),
            FocusEnabled = false
        };
        btnClear.Click += delegate
        {
            _panel.RemoveAllContentChildren();
            _count = 0;
        };
        toolbar.AddContentChild(btnClear);

        #endregion

        #region Panel

        _panel = new Panel
        {
            Title     = "Add children to panel",
            Icon      = Resources.Load <Texture>("Icons/star"),
            SkinClass = typeof(PanelSkin2),
            Width     = 600,
            Height    = 600,
            Layout    = new VerticalLayout
            {
                PaddingLeft     = 10,
                PaddingRight    = 10,
                PaddingTop      = 10,
                PaddingBottom   = 10,
                HorizontalAlign = HorizontalAlign.Left,
                Gap             = 10
            }
        };
        AddChild(_panel);

        CheckBox chkClip = new CheckBox
        {
            Text = "Clip and enable scrolling",
            //SkinClass = typeof(ImageButtonSkin),
            //Icon = Resources.Load<Texture>("Icons/scroll"),
            FocusEnabled = false,
            Selected     = true
        };
        chkClip.Click += delegate
        {
            _panel.ContentGroup.ClipAndEnableScrolling = chkClip.Selected;
        };
        _panel.ControlBarGroup.AddChild(chkClip);

        #endregion
    }
コード例 #8
0
ファイル: ComboBoxDemo.cs プロジェクト: onamoni/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button button = new Button
        {
            Text       = "Add data",
            SkinClass  = typeof(ImageButtonSkin),
            Icon       = ImageLoader.Instance.Load("Icons/add"),
            AutoRepeat = true
        };
        button.ButtonDown += delegate
        {
            _dataProvider.AddItem("data " + _random.Next(1, 100));
        };
        toolbar.AddContentChild(button);

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass     = typeof(ScrollerSkin2),
            PercentWidth  = 100,
            PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        Group viewport = new Group
        {
            MouseEnabled = true,
            Layout       = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Left,
                PaddingLeft     = 10,
                PaddingRight    = 10,
                PaddingTop      = 10,
                PaddingBottom   = 10,
                Gap             = 10
            }
        };
        scroller.Viewport = viewport;

        #endregion

        List <object> source = new List <object> {
            "Failure", "Teaches", "Success", "One", "Two", "Three", "Four", "Five", "Six"
        };

        _dataProvider = new ArrayList(source);

        HGroup hGroup = new HGroup();
        viewport.AddChild(hGroup);

        //List<object> source = new List<object> {"Failure", "Teaches", "Success", "One", "Two", "Three", "Four", "Five", "Six"};

        var factory = new ItemRendererFactory <DefaultItemRenderer>();

        VGroup vGroup = new VGroup {
            PercentHeight = 100
        };
        hGroup.AddChild(vGroup);

        HGroup hGroup2 = new HGroup
        {
            PercentWidth = 100
        };
        vGroup.AddChild(hGroup2);

        /* LISTS */

        #region List 1

        List list = new List
        {
            Id = "list1",
            //Layout = new TileLayout { RequestedColumnCount = 4 },
            Width        = 200, Height = 200,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate
            {
                return(factory);
            }
        };
        hGroup2.AddChild(list);

        #endregion

        #region List 2

        list = new List
        {
            Id = "list2",
            //Layout = new TileLayout { RequestedColumnCount = 3 },
            Width        = 200, Height = 245,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate
            {
                return(factory);
            }
        };
        hGroup2.AddChild(list);

        #endregion

        #region List 3

        list = new List
        {
            Id           = "list3",
            Width        = 400,
            Height       = 600,
            DataProvider = _dataProvider,
            SkinClass    = typeof(ListSkin2),
            ItemRenderer = new ItemRendererFactory <BigItemRenderer>()
        };
        hGroup.AddChild(list);

        #endregion

        vGroup.AddChild(new Spacer {
            PercentHeight = 100
        });

        #region Drop down lists

        VGroup vGroup2 = new VGroup();
        vGroup.AddChild(vGroup2);

        DropDownList dropDownList1 = new DropDownList
        {
            DataProvider = _dataProvider
        };
        vGroup2.AddChild(dropDownList1);

        DropDownList dropDownList2 = new DropDownList
        {
            Width        = 200,
            DataProvider = _dataProvider,
            Prompt       = "Pick an item"
        };
        vGroup2.AddChild(dropDownList2);

        DropDownList dropDownList3 = new DropDownList
        {
            Width        = 200,
            SkinClass    = typeof(DropDownListSkin2),
            DataProvider = _dataProvider/*,
                                         * SelectedIndex = 0*/
        };
        vGroup2.AddChild(dropDownList3);

        ComboBox comboBox = new ComboBox
        {
            Width        = 200,
            DataProvider = _dataProvider/*,
                                         * SelectedIndex = 0*/
        };
        vGroup2.AddChild(comboBox);

        vGroup2.Plugins.Add(new TabManager
        {
            TabChildren = new List <DisplayListMember> {
                dropDownList1, dropDownList2, dropDownList3, comboBox
            }
        });

        #endregion

        #region Process renderer click

        AddEventListener(BigItemRenderer.ADD_BUTTON_CLICKED, delegate(Event e)
        {
            BigItemRenderer itemRenderer = (BigItemRenderer)e.Target;
            Alert.Show("Info", itemRenderer.Data.ToString(), AlertButtonFlag.Ok,
                       new AlertOption(AlertOptionType.HeaderIcon, ImageLoader.Instance.Load("Icons/information")));
        });

        #endregion
    }
コード例 #9
0
ファイル: Default.cs プロジェクト: iwaken71/ActivityGame
    /// <summary>
    /// Use this override for creating children
    /// </summary>
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Toolbar

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        _btnDummy = new Button
        {
            Text         = "Click me",
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = ImageLoader.Instance.Load("Icons/add"),
            FocusEnabled = false,
            AutoRepeat   = true
        };
        _btnDummy.Click += delegate { AddButton(); };
        toolbar.AddContentChild(_btnDummy);

        Button btnClear = new Button
        {
            Text         = "Clear",
            Icon         = Resources.Load <Texture>("Icons/cancel"),
            SkinClass    = typeof(ImageButtonSkin),
            FocusEnabled = false
        };
        btnClear.Click += delegate
        {
            _viewport.RemoveAllChildren();
        };
        toolbar.AddContentChild(btnClear);

        toolbar.AddContentChild(new Spacer {
            PercentWidth = 100
        });
        toolbar.AddContentChild(new Label {
            Text = "eDriven.Gui"
        });

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass    = typeof(ScrollerSkin2),
            PercentWidth = 100, PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        _viewport = new Group
        {
            // viewport also has vertical layout
            Layout = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Center,
                VerticalAlign   = VerticalAlign.Middle,
                PaddingLeft     = 10,
                PaddingRight    = 10,
                PaddingTop      = 10,
                PaddingBottom   = 10,
                Gap             = 10
            }
        };
        scroller.Viewport = _viewport;

        #endregion
    }
コード例 #10
0
ファイル: BigMess.cs プロジェクト: onamoni/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        #region Alert

        Button btnAlert = new Button
        {
            Text         = "Alert",
            FocusEnabled = false,
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = ImageLoader.Instance.Load("Icons/comment")
        };
        btnAlert.Click += delegate
        {
            Alert.Show("Info", "This is the example alert.", AlertButtonFlag.Ok,
                       new AlertOption(AlertOptionType.HeaderIcon, Resources.Load <Texture>("Icons/information")),
                       new AlertOption(AlertOptionType.Icon, Resources.Load <Texture>("Icons/star_big")));
        };
        toolbar.AddContentChild(btnAlert);

        #endregion

        #region Window

        Button btnWindow = new Button
        {
            Text         = "New window",
            FocusEnabled = false,
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = ImageLoader.Instance.Load("Icons/comment")
        };
        btnWindow.Click += delegate
        {
            _count++;
            var window = new MyWindow
            {
                Title     = "The Window " + _count,
                Id        = "window_" + _count,
                SkinClass = typeof(WindowSkin2),
                Icon      = ImageLoader.Instance.Load("Icons/balloon_32"),
                Width     = 400,
                Height    = 600
            };

            window.SetStyle("addedEffect", _windowShow);
            window.Plugins.Add(new Resizable {
                ShowOverlay = false
            });
            window.AddEventListener(CloseEvent.CLOSE, delegate
            {
                PopupManager.Instance.RemovePopup(window);
            });
            PopupManager.Instance.AddPopup(window, false);
            PopupManager.Instance.CenterPopUp(window);
        };
        toolbar.AddContentChild(btnWindow);

        #endregion

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass    = typeof(ScrollerSkin2),
            PercentWidth = 100, PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        Group viewport = new Group
        {
            Layout = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Left,
                PaddingLeft     = 10,
                PaddingRight    = 10,
                PaddingTop      = 10,
                PaddingBottom   = 10,
                Gap             = 10
            }
        };
        scroller.Viewport = viewport;

        #endregion

        #region Horizontal Scrollbars

        viewport.AddChild(new HScrollBar {
            SkinClass = typeof(HScrollBarSkin3), PercentWidth = 100, MinWidth = 300, Maximum = 300, PageSize = 100
        });
        viewport.AddChild(new HScrollBar {
            SkinClass = typeof(HScrollBarSkin3), PercentWidth = 50, Maximum = 500, Value = 200, PageSize = 100
        });
        viewport.AddChild(new HScrollBar {
            SkinClass = typeof(HScrollBarSkin2), MinWidth = 600, Maximum = 1000, PageSize = 100
        });
        viewport.AddChild(new HScrollBar {
            SkinClass = typeof(HScrollBarSkin3), MinWidth = 700, Maximum = 300, PageSize = 100
        });
        viewport.AddChild(new HScrollBar {
            PercentWidth = 100, MinWidth = 600, SkinClass = typeof(HScrollBarSkin3), Maximum = 1000, PageSize = 100
        });

        #endregion

        #region HGroup

        HGroup hGroup = new HGroup { /*PercentWidth = 100, */
            Gap = 10
        };
        viewport.AddChild(hGroup);

        #endregion

        #region Vertical scrollbars

        VScrollBar vScrollBar = new VScrollBar {
            PercentHeight = 100, Maximum = 300
        };
        vScrollBar.Change += delegate(Event e) { Debug.Log("Change: " + e); };
        hGroup.AddChild(vScrollBar);

        hGroup.AddChild(new VScrollBar {
            PercentHeight = 100, Maximum = 400, PageSize = 100
        });
        hGroup.AddChild(new VScrollBar {
            SkinClass = typeof(VScrollBarSkin2), PercentHeight = 100, Maximum = 1000, PageSize = 100
        });
        hGroup.AddChild(new VScrollBar {
            SkinClass = typeof(VScrollBarSkin2), Height = 400, Maximum = 400, PageSize = 100
        });
        hGroup.AddChild(new VScrollBar {
            SkinClass = typeof(VScrollBarSkin3), PercentHeight = 100, Maximum = 200, PageSize = 100
        });
        hGroup.AddChild(new VScrollBar {
            SkinClass = typeof(VScrollBarSkin3), Height = 400, Maximum = 300, PageSize = 100
        });

        #endregion

        #region Panels

        //hGroup.AddChild(new Spacer { PercentWidth = 50 });

        Panel panel = new MyPanel
        {
            Width     = 360,
            Height    = 600,
            Icon      = ImageLoader.Instance.Load("Icons/shape_square_add"),
            Title     = "First panel",
            StyleName = "default"
        };
        hGroup.AddChild(panel);

        panel = new MyPanel2
        {
            MaxWidth  = 500,
            Height    = 600,
            SkinClass = typeof(PanelSkin2),
            Icon      = ImageLoader.Instance.Load("Icons/page_white_text"),
            Title     = "Second panel"
        };
        panel.SetStyle("titleColor", 0xffff00);
        hGroup.AddChild(panel);

        //hGroup.AddChild(new Spacer { PercentWidth = 50 });

        #endregion

        #region Vertical sliders

        hGroup.AddChild(new VSlider {
            PercentHeight = 100
        });
        hGroup.AddChild(new VSlider {
            Width = 30, Height = 400, SkinClass = typeof(VSliderSkin2)
        });
        hGroup.AddChild(new VSlider {
            Width = 30, Height = 400, SkinClass = typeof(VSliderSkin2), Enabled = false
        });
        hGroup.AddChild(new VSlider {
            Width = 50, Height = 400, SkinClass = typeof(VSliderSkin2)
        });
        hGroup.AddChild(new VSlider {
            Width = 80, Height = 400, SkinClass = typeof(VSliderSkin3)
        });
        hGroup.AddChild(new VSlider {
            Width = 80, PercentHeight = 100, Maximum = 1000, SkinClass = typeof(VSliderSkin3)
        });

        #endregion

        #region Horizontal sliders

        viewport.AddChild(new HSlider {
            Maximum = 400, PercentWidth = 100
        });
        viewport.AddChild(new HSlider {
            Width = 400, Maximum = 400, Height = 30, SkinClass = typeof(HSliderSkin2)
        });
        viewport.AddChild(new HSlider {
            Width = 400, Maximum = 400, Height = 50, SkinClass = typeof(HSliderSkin2)
        });
        viewport.AddChild(new HSlider {
            PercentWidth = 50, Height = 80, SkinClass = typeof(HSliderSkin3)
        });
        viewport.AddChild(new HSlider {
            PercentWidth = 100, Maximum = 1000, Height = 80, SkinClass = typeof(HSliderSkin3)
        });

        #endregion
    }
コード例 #11
0
ファイル: DialogDemo.cs プロジェクト: groov0v/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button btnAlert = new Button
        {
            Text = "Alert",
            FocusEnabled = false,
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/comment")
        };
        btnAlert.Click += delegate
        {
            Alert.DefaultSkin = null;
            Alert.Show(
                "Title", "Message", AlertButtonFlag.Ok,
                new AlertOption(AlertOptionType.Icon, Resources.Load<Texture>("edriven_gui")),
                new AlertOption(AlertOptionType.HeaderIcon, Resources.Load<Texture>("Icons/accept"))
            );
        };
        toolbar.AddContentChild(btnAlert);

        btnAlert = new Button
        {
            Text = "Alert (skin 2)",
            FocusEnabled = false,
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/comment")
        };
        btnAlert.Click += delegate
        {
            Alert.DefaultSkin = typeof(AlertSkin2);
            Alert.Show(
                "Title", "Message", AlertButtonFlag.Ok,
                new AlertOption(AlertOptionType.Icon, Resources.Load<Texture>("Icons/star_big")),
                new AlertOption(AlertOptionType.HeaderIcon, Resources.Load<Texture>("Icons/accept"))
            );
        };
        toolbar.AddContentChild(btnAlert);

        btnAlert = new Button
        {
            Text = "Alert (skin 3)",
            FocusEnabled = false,
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/comment")
        };
        btnAlert.Click += delegate
        {
            Alert.DefaultSkin = typeof(AlertSkin3);
            Alert.Show(
                "Title", "Message", AlertButtonFlag.Ok,
                new AlertOption(AlertOptionType.Icon, Resources.Load<Texture>("Icons/star_big")),
                new AlertOption(AlertOptionType.HeaderIcon, Resources.Load<Texture>("Icons/accept"))
            );
        };
        toolbar.AddContentChild(btnAlert);

        Button btnWindow = new Button
        {
            Text = "New window",
            FocusEnabled = false,
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/comment")
        };
        btnWindow.Click += delegate
        {
            _count++;

            var window = new MyWindow
            {
                Title = "The Window " + _count,
                Id = "window_" + _count,
                SkinClass = typeof(WindowSkin2),
                Icon = ImageLoader.Instance.Load("Icons/balloon_32"),
                Width = 500,
                Height = 600
            };

            window.SetStyle("addedEffect", _windowShow);
            window.Plugins.Add(new Resizable { ShowOverlay = false });
            window.AddEventListener(CloseEvent.CLOSE, delegate
            {
                PopupManager.Instance.RemovePopup(window);
            });

            PopupManager.Instance.AddPopup(window, false);
            PopupManager.Instance.CenterPopUp(window);
        };
        toolbar.AddContentChild(btnWindow);

        #endregion

        Scroller scroller = new Scroller
        {
            SkinClass = typeof(ScrollerSkin2),
            PercentWidth = 100,
            PercentHeight = 100
        };
        AddChild(scroller);

        Group viewport = new Group
                             {
                                 Layout = new VerticalLayout
                                 {
                                     HorizontalAlign = HorizontalAlign.Left,
                                     PaddingLeft = 10, PaddingRight = 10, PaddingTop = 10, PaddingBottom = 10,
                                     Gap = 10
                                 }
                             };
        scroller.Viewport = viewport;
    }
コード例 #12
0
ファイル: GridDemo.cs プロジェクト: iwaken71/ActivityGame
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button button = new Button
        {
            Text       = "Add data",
            SkinClass  = typeof(ImageButtonSkin),
            Icon       = ImageLoader.Instance.Load("Icons/star"),
            AutoRepeat = true
        };
        button.ButtonDown += delegate
        {
            _dataProvider.AddItem(
                new ExampleItem
            {
                FirstName      = "First" + _random.Next(1, 100),
                LastName       = "Last" + _random.Next(1, 100),
                Age            = _random.Next(1, 80),
                DrivingLicense = _random.Next(0, 2) == 1
            }
                );
        };
        toolbar.AddContentChild(button);

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass     = typeof(ScrollerSkin2),
            PercentWidth  = 100,
            PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        Group viewport = new Group
        {
            MouseEnabled = true,
            Layout       = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Left,
                PaddingLeft     = 10,
                PaddingRight    = 10,
                PaddingTop      = 10,
                PaddingBottom   = 10,
                Gap             = 10
            }
        };
        scroller.Viewport = viewport;

        #endregion

        #region Fill the data provider

        List <string> names = new List <string>
        {
            "Failure",
            "Teaches",
            "Success",
            "One",
            "Two",
            "Three",
            "Four",
            "Five",
            "Six"
        };

        List <object> source = new List <object>();
        foreach (var theName in names)
        {
            source.Add(
                new ExampleItem
            {
                FirstName      = theName,
                LastName       = theName,
                Age            = _random.Next(1, 10),
                DrivingLicense = _random.Next(0, 2) == 1
            }
                );
        }

        _dataProvider = new ArrayList(source);

        #endregion

        HGroup hGroup = new HGroup {
            PercentWidth = 100, PercentHeight = 100
        };
        viewport.AddChild(hGroup);

        #region Grid (header + list + footer)

        VGroup vGroup = new VGroup {
            PercentWidth = 100, PercentHeight = 100, Gap = 0
        };
        hGroup.AddChild(vGroup);

        #region Header

        /* Implement your own header logic here */

        /*HGroup header = new HGroup {PercentWidth = 100, Gap = 0};
         * vGroup.AddChild(header);
         *
         * for (int i = 0; i < 5; i++)
         * {
         *  Button btnCol = new Button // example header
         *  {
         *      Text = "Column " + (i + 1),
         *      ToggleMode = true,
         *      PercentWidth = 100
         *  };
         *  btnCol.Click += delegate(Event e)
         *  {
         *      // sort, filder and refresh (do list.DataProvider = list.DataProvider)
         *  };
         *  header.AddChild(btnCol);
         * }*/

        #endregion

        #region List

        List list = new List
        {
            Id            = "list1",
            PercentWidth  = 100,
            PercentHeight = 100,
            DataProvider  = _dataProvider,
            LabelField    = "FirstName", // this must be set due to list logic legacy (the field must exist in DTO)
            SkinClass     = typeof(ListSkin2),
            ItemRenderer  = new ItemRendererFactory <MyGridItemRenderer>()
        };
        vGroup.AddChild(list);

        #endregion

        #region Footer

        HGroup footer = new HGroup {
            PercentWidth = 100, Gap = 30, PaddingLeft = 10, PaddingRight = 10, PaddingTop = 10, PaddingBottom = 0
        };
        vGroup.AddChild(footer);

        _lblSum = new Label {
            Text = "Age sum: ", StyleName = "footer"
        };
        footer.AddChild(_lblSum);

        _lblNumberOfSelectedItems = new Label {
            Text = "Driving licenses: ", StyleName = "footer"
        };
        footer.AddChild(_lblNumberOfSelectedItems);

        UpdateFooter();

        #endregion

        #endregion

        #region Process renderer click

        AddEventListener(MyGridItemRenderer.ADD_BUTTON_CLICKED, delegate(Event e)
        {
            IItemRenderer itemRenderer = (IItemRenderer)e.Target;
            Alert.Show("Info", itemRenderer.Data.ToString(), AlertButtonFlag.Ok,
                       new AlertOption(AlertOptionType.HeaderIcon, (object)ImageLoader.Instance.Load("Icons/information")));
        });

        AddEventListener(MyGridItemRenderer.EDIT_BUTTON_CLICKED, delegate(Event e)
        {
            var editor = new ExamplePopupEditor {
                Title      = "Edit",
                Icon       = ImageLoader.Instance.Load("Icons/edit"),
                Data       = ((MyGridItemRenderer)e.Target).Data,
                CloseOnEsc = true
            };
            editor.AddEventListener(CloseEvent.CLOSE, delegate
            {
                PopupManager.Instance.RemovePopup(editor);
            });

            PopupManager.Instance.AddPopup(editor, true);
        });

        #endregion

        #region Process property change

        _dataProvider.AddEventListener(PropertyChangeEvent.PROPERTY_CHANGE, delegate(Event e)
        {
            //PropertyChangeEvent pce = (PropertyChangeEvent) e;
            //Debug.Log(pce.NewValue);
            UpdateFooter();
        });

        #endregion
    }
コード例 #13
0
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        _btnAddRect = new Button
        {
            Text         = "New button",
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = ImageLoader.Instance.Load("Icons/shape_square_add"),
            FocusEnabled = false,
            AutoRepeat   = true
        };
        _btnAddRect.ButtonDown += delegate { AddButton(); };
        toolbar.AddContentChild(_btnAddRect);

        Button btnClear = new Button
        {
            Text         = "Clear",
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = Resources.Load <Texture>("Icons/cancel"),
            FocusEnabled = false
        };
        btnClear.Click += delegate
        {
            _panel.RemoveAllContentChildren();
            _count = 0;
        };
        toolbar.AddContentChild(btnClear);

        toolbar.AddContentChild(new Label {
            Text = "Action: ", Color = Color.black
        });

        _dropDownList = new DropDownList
        {
            DataProvider = new ArrayList(new System.Collections.Generic.List <object>
            {
                "Position",
                "Size"
            }),
            //SelectedIndex = 0 // TODO: DataGroup->_indexToRenderer.Count bug! (GetContentChildAt(int index))
            //SelectedItem = "Position"
        };
        toolbar.AddContentChild(_dropDownList);

        _panel = new Panel
        {
            Title     = "Choose the action and click this panel's children",
            Icon      = Resources.Load <Texture>("Icons/star"),
            SkinClass = typeof(PanelSkin2),
            Width     = 600,
            Height    = 600,
            Layout    = new VerticalLayout
            {
                PaddingLeft     = 10,
                PaddingRight    = 10,
                PaddingTop      = 10,
                PaddingBottom   = 10,
                HorizontalAlign = HorizontalAlign.Left,
                Gap             = 10
            }
        };
        AddChild(_panel);

        CheckBox chkAutoLayout = new CheckBox
        {
            //SkinClass = typeof(ImageButtonSkin),
            //Icon = Resources.Load<Texture>("Icons/shape_move_forwards"),
            Text         = "Auto layout",
            FocusEnabled = false,
            StyleName    = "checkbox",
            Selected     = true
        };
        chkAutoLayout.Click += delegate
        {
            Debug.Log("Setting panel's auto layout to " + chkAutoLayout.Selected);
            _panel.AutoLayout = chkAutoLayout.Selected;
        };
        _panel.ControlBarGroup.AddChild(chkAutoLayout);

        AddChild(
            new Label {
            Text = "This is the single-line label"
        }
            );

        AddChild(
            new Label
        {
            Text         = @"When AutoLayout is turned ON for a container, the layout mechanism will react on each child's size change and run the layout on parent container. However, it won'tdo anything on position change.

When AutoLayout is turned OFF, the layout mechanism won't react on child size change, except at creation time (the layout is always being run at least once).

You would post probably turn the AutoLayout OFF just before running a tween effecting children size.

After the tween is finished, you should turn AutoLayout ON again.",
            Multiline    = true,
            WordWrap     = true,
            PercentWidth = 100,
            Alignment    = TextAnchor.UpperLeft /*,
                                                 * ExpandHeightByMeasuringText = true*/
        }
            );

        #endregion

        for (int i = 0; i < NumberOfButtons; i++)
        {
            AddButton();
        }
    }
コード例 #14
0
ファイル: ResizableDemo.cs プロジェクト: groov0v/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button btnAddRect = new Button
        {
            Text = "New button",
            Icon = ImageLoader.Instance.Load("Icons/shape_square_add"),
            SkinClass = typeof(ImageButtonSkin),
            FocusEnabled = false
        };
        btnAddRect.Click += delegate { AddButton(); };
        toolbar.AddContentChild(btnAddRect);

        Button btnAddText = new Button
        {
            Text = "New text",
            Icon = ImageLoader.Instance.Load("Icons/page_white_text"),
            SkinClass = typeof(ImageButtonSkin),
            FocusEnabled = false
        };
        btnAddText.Click += delegate { AddTextField(); };
        toolbar.AddContentChild(btnAddText);

        Button btnClear = new Button
        {
            Text = "Clear",
            Icon = ImageLoader.Instance.Load("Icons/cancel"),
            SkinClass = typeof(ImageButtonSkin),
            FocusEnabled = false
        };
        btnClear.Click += delegate
        {
            _viewport.RemoveAllChildren();
            _count = 1;
        };
        toolbar.AddContentChild(btnClear);

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass = typeof(ScrollerSkin2),
            PercentWidth = 100,
            PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        _viewport = new Group
        {
            MouseEnabled = true,
            Layout = new AbsoluteLayout()
        };
        scroller.Viewport = _viewport;

        #endregion

        #region Default controls

        var button = new Button
        {
            X = 200,
            Y = 200,
            Width = 300,
            Height = 200,
            MinWidth = 200,
            MinHeight = 200,
            FocusEnabled = false,
            Text = "Resize me!",
            Tooltip = "Resizable Button"
        };
        button.Plugins.Add(new Resizable()/* { ShowOverlay = false }*/);
        _viewport.AddChild(button);

        var textArea = new TextArea
        {
            X = 600,
            Y = 400,
            Width = 300,
            Height = 200,
            MinWidth = 100,
            MinHeight = 100,
            Text = LoremIpsum,
            Tooltip = "Resizable TextArea",
            Optimized = true
        };
        textArea.Plugins.Add(new Resizable()/* { ShowOverlay = false }*/);
        _viewport.AddChild(textArea);

        #endregion
    }
コード例 #15
0
ファイル: NavigatorDemo.cs プロジェクト: groov0v/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button button = new Button
        {
            Text = "Add data",
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/add"),
            AutoRepeat = true
        };
        button.ButtonDown += delegate
        {
            _dataProvider.AddItem("data " + _random.Next(1, 100));
        };
        toolbar.AddContentChild(button);

        button = new Button
        {
            Text = "Previous tab",
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/previous")
        };
        button.Click += delegate
        {
            _buttonBar.SelectedIndex--;
            _viewstack.Previous();
        };
        toolbar.AddContentChild(button);

        button = new Button
        {
            Text = "Next tab",
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/next")
        };
        button.Click += delegate
        {
            _buttonBar.SelectedIndex++;
            _viewstack.Next();
        };
        toolbar.AddContentChild(button);

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass = typeof (ScrollerSkin2),
            PercentWidth = 100,
            PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        Group viewport = new Group
        {
            MouseEnabled = true,
            Layout = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Left,
                PaddingLeft = 10,
                PaddingRight = 10,
                PaddingTop = 10,
                PaddingBottom = 10,
                Gap = 10
            }
        };
        scroller.Viewport = viewport;

        #endregion

        List<object> source = new List<object> { "Failure", "Teaches", "Success", "One", "Two", "Three", "Four", "Five", "Six" };

        _dataProvider = new ArrayList(source);

        viewport.AddChild(new Label {Text = "ButtonBar:"});

        #region Button bar

        _buttonBar = new ButtonBar
        {
            DataProvider = new ArrayList(new List<object> {"List 1", "List 2", "List 3", "List 4", "List 5"}),
            SkinClass = typeof(ButtonBarSkin2),
            RequireSelection = true
        };
        _buttonBar.AddEventListener(Event.CHANGE, delegate(Event e)
        {
            IndexChangeEvent ice = e as IndexChangeEvent;
            if (null != ice)
            {
                int newIndex = ice.NewIndex;
                //Debug.Log("Changed to: " + newIndex);
                _viewstack.SelectedIndex = newIndex;
            }
        });
        viewport.AddChild(_buttonBar);

        #endregion
        
        #region ViewStack

        viewport.AddChild(new Label { Text = "ViewStack (having 5 lists as children):" });

        _viewstack = new ViewStack { ResizeToContent = true };
        viewport.AddChild(_viewstack);

        #endregion

        /* Factory is used for creating renderer instances */
        var factory = new ItemRendererFactory<DefaultItemRenderer>();

        /* LISTS */

        #region List 1

        List list = new List
                        {
                            Id = "list1",
                            //Layout = new TileLayout { RequestedColumnCount = 4 },
                            Width = 200, Height = 200,
                            DataProvider = _dataProvider,
                            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
                            
                            /* ItemRendererFunction is used for switching between different factories, based on the supplied item */
                            ItemRendererFunction = delegate { return factory; }
                        };
        _viewstack.AddChild(list);

        #endregion

        #region List 2

        list = new List
                    {
                        Id = "list2",
                        //Layout = new TileLayout { RequestedColumnCount = 3 },
                        Width = 200, Height = 245,
                        DataProvider = _dataProvider,
                        //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
                        ItemRendererFunction = delegate { return factory; }
                    };
        _viewstack.AddChild(list);

        #endregion

        #region List 3

        list = new List
                    {
                        Id = "list3",
                        Width = 400,
                        Height = 450,
                        DataProvider = _dataProvider,
                        SkinClass = typeof(ListSkin2),
                        ItemRenderer = new ItemRendererFactory<BigItemRenderer>()
                    };
        _viewstack.AddChild(list);

        #endregion

        #region List 4

        list = new List
                    {
                        Id = "list4",
                        Width = 600, Height = 800,
                        Layout = new TileLayout { HorizontalGap = 0, VerticalGap = 0, RequestedRowCount = 4, RequestedColumnCount = 3 },
                        DataProvider = _dataProvider,
                        SkinClass = typeof(ListSkin2),
                        ItemRenderer = new ItemRendererFactory<BigItemRenderer>()
                    };
        _viewstack.AddChild(list);

        #endregion

        #region List 5 (horizontal)

        list = new List
                    {
                        Id = "list5",
                        Width = 800,
                        Height = 100,
                        Layout = new HorizontalLayout { Gap = 0, RequestedColumnCount = 3 },
                        DataProvider = _dataProvider,
                        SkinClass = typeof(ListSkin2),
                        ItemRenderer = new ItemRendererFactory<BigItemRenderer>()
                    };
        _viewstack.AddChild(list);

        #endregion

        #region Process renderer click

        AddEventListener(BigItemRenderer.ADD_BUTTON_CLICKED, delegate(Event e)
        {
            IItemRenderer itemRenderer = (IItemRenderer)e.Target;
            Alert.Show("Info", itemRenderer.Data.ToString(), AlertButtonFlag.Ok,
                new AlertOption(AlertOptionType.HeaderIcon, ImageLoader.Instance.Load("Icons/information")));
        });

        #endregion
    }
コード例 #16
0
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button btnAlert = new Button
        {
            Text         = "Alert",
            FocusEnabled = false,
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = ImageLoader.Instance.Load("Icons/comment")
        };
        btnAlert.Click += delegate
        {
            Alert.DefaultSkin = null;
            Alert.Show(
                "Title", "Message", AlertButtonFlag.Ok,
                new AlertOption(AlertOptionType.Icon, Resources.Load <Texture>("edriven_gui")),
                new AlertOption(AlertOptionType.HeaderIcon, Resources.Load <Texture>("Icons/accept"))
                );
        };
        toolbar.AddContentChild(btnAlert);

        btnAlert = new Button
        {
            Text         = "Alert (skin 2)",
            FocusEnabled = false,
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = ImageLoader.Instance.Load("Icons/comment")
        };
        btnAlert.Click += delegate
        {
            Alert.DefaultSkin = typeof(AlertSkin2);
            Alert.Show(
                "Title", "Message", AlertButtonFlag.Ok,
                new AlertOption(AlertOptionType.Icon, Resources.Load <Texture>("Icons/star_big")),
                new AlertOption(AlertOptionType.HeaderIcon, Resources.Load <Texture>("Icons/accept"))
                );
        };
        toolbar.AddContentChild(btnAlert);

        btnAlert = new Button
        {
            Text         = "Alert (skin 3)",
            FocusEnabled = false,
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = ImageLoader.Instance.Load("Icons/comment")
        };
        btnAlert.Click += delegate
        {
            Alert.DefaultSkin = typeof(AlertSkin3);
            Alert.Show(
                "Title", "Message", AlertButtonFlag.Ok,
                new AlertOption(AlertOptionType.Icon, Resources.Load <Texture>("Icons/star_big")),
                new AlertOption(AlertOptionType.HeaderIcon, Resources.Load <Texture>("Icons/accept"))
                );
        };
        toolbar.AddContentChild(btnAlert);

        Button btnWindow = new Button
        {
            Text         = "New window",
            FocusEnabled = false,
            SkinClass    = typeof(ImageButtonSkin),
            Icon         = ImageLoader.Instance.Load("Icons/comment")
        };
        btnWindow.Click += delegate
        {
            _count++;

            var window = new MyWindow
            {
                Title     = "The Window " + _count,
                Id        = "window_" + _count,
                SkinClass = typeof(WindowSkin2),
                Icon      = ImageLoader.Instance.Load("Icons/balloon_32"),
                Width     = 500,
                Height    = 600
            };

            window.SetStyle("addedEffect", _windowShow);
            window.Plugins.Add(new Resizable {
                ShowOverlay = false
            });
            window.AddEventListener(CloseEvent.CLOSE, delegate
            {
                PopupManager.Instance.RemovePopup(window);
            });

            PopupManager.Instance.AddPopup(window, false);
            PopupManager.Instance.CenterPopUp(window);
        };
        toolbar.AddContentChild(btnWindow);

        #endregion

        Scroller scroller = new Scroller
        {
            SkinClass     = typeof(ScrollerSkin2),
            PercentWidth  = 100,
            PercentHeight = 100
        };
        AddChild(scroller);

        Group viewport = new Group
        {
            Layout = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Left,
                PaddingLeft     = 10, PaddingRight = 10, PaddingTop = 10, PaddingBottom = 10,
                Gap             = 10
            }
        };
        scroller.Viewport = viewport;
    }
コード例 #17
0
ファイル: DataGroupDemo.cs プロジェクト: onamoni/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        Button button = new Button
        {
            Text       = "Add data",
            SkinClass  = typeof(ImageButtonSkin),
            Icon       = ImageLoader.Instance.Load("Icons/add"),
            AutoRepeat = true
        };
        button.ButtonDown += delegate
        {
            _dataProvider.AddItem("data " + _random.Next(1, 100));
        };
        toolbar.AddContentChild(button);

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass     = typeof(ScrollerSkin2),
            PercentWidth  = 100,
            PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        Group viewport = new Group
        {
            MouseEnabled = true,
            Layout       = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Left,
                PaddingLeft     = 10,
                PaddingRight    = 10,
                PaddingTop      = 10,
                PaddingBottom   = 10,
                Gap             = 10
            }
        };
        scroller.Viewport = viewport;
        //AddChild(viewport);

        #endregion

        #region Data controls

        List <object> source = new List <object> {
            "Failure", "Teaches", "Success", "One", "Two", "Three", "Four", "Five", "Six"
        };

        _dataProvider = new ArrayList(source);

        var factory = new ItemRendererFactory <DefaultItemRenderer>();

        /* LISTS */

        #region HGroup

        HGroup hGroup1 = new HGroup
        {
            PaddingLeft   = 10,
            PaddingRight  = 10,
            PaddingTop    = 10,
            PaddingBottom = 10,
            Gap           = 20
        };

        //hbox.SetStyle("showBackground", true);
        //hbox.SetStyle("backgroundColor", RgbColor.FromHex(0x004CFF).ToColor());
        viewport.AddChild(hGroup1);

        #endregion

        HGroup hGroup = new HGroup();
        viewport.AddChild(hGroup);

        /* DATA GROUPS */

        #region Data group 1

        hGroup1 = new HGroup
        {
            PaddingLeft   = 10,
            PaddingRight  = 10,
            PaddingTop    = 10,
            PaddingBottom = 10,
            Gap           = 50
        };
        hGroup.AddChild(hGroup1);

        DataGroup dataGroup = new DataGroup
        {
            Layout       = new VerticalLayout(),
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate(object item)
            {
                return(factory);
            }
        };
        hGroup1.AddChild(dataGroup);

        #endregion

        #region Data group 2

        hGroup1 = new HGroup
        {
            PaddingLeft   = 10,
            PaddingRight  = 10,
            PaddingTop    = 10,
            PaddingBottom = 10,
            Gap           = 50
        };
        hGroup.AddChild(hGroup1);

        dataGroup = new DataGroup
        {
            Layout = new TileLayout {
                RequestedColumnCount = 2
            },
            //Width = 200, Height = 200,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate
            {
                return(factory);
            }
            //ClipAndEnableScrolling = true
        };
        hGroup1.AddChild(dataGroup);

        #endregion

        #region Data group 3

        hGroup1 = new HGroup
        {
            PaddingLeft   = 10,
            PaddingRight  = 10,
            PaddingTop    = 10,
            PaddingBottom = 10,
            Gap           = 50
        };
        hGroup.AddChild(hGroup1);

        dataGroup = new DataGroup
        {
            Layout = new TileLayout {
                RequestedColumnCount = 4
            },
            //Width = 200, Height = 200,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate
            {
                return(factory);
            }
            //ClipAndEnableScrolling = true
        };
        hGroup1.AddChild(dataGroup);

        #endregion

        #endregion

        #region VGroup

        VGroup vgroup = new VGroup();
        hGroup.AddChild(vgroup);

        #endregion

        #region List 1

        List list = new List
        {
            //Layout = new TileLayout { RequestedColumnCount = 4 },
            Width        = 200,
            Height       = 200,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate
            {
                return(factory);
            }
        };
        vgroup.AddChild(list);

        #endregion

        #region List 2

        list = new List
        {
            //Layout = new TileLayout { RequestedColumnCount = 3 },
            Width        = 200,
            Height       = 245,
            DataProvider = _dataProvider,
            //ItemRenderer = new ItemRendererFactory <DefaultItemRenderer>(),
            ItemRendererFunction = delegate
            {
                return(factory);
            }
        };
        vgroup.AddChild(list);

        #endregion

        #region List 3

        list = new List
        {
            Id           = "list3",
            Width        = 400,
            Height       = 600,
            DataProvider = _dataProvider,
            SkinClass    = typeof(ListSkin2),
            ItemRenderer = new ItemRendererFactory <BigItemRenderer>()
        };
        hGroup.AddChild(list);

        #endregion

        #region Process renderer click

        AddEventListener(BigItemRenderer.ADD_BUTTON_CLICKED, delegate(Event e)
        {
            BigItemRenderer itemRenderer = (BigItemRenderer)e.Target;
            Alert.Show("Info", itemRenderer.Data.ToString(), AlertButtonFlag.Ok,
                       new AlertOption(AlertOptionType.HeaderIcon, ImageLoader.Instance.Load("Icons/information")));
        });

        #endregion
    }
コード例 #18
0
ファイル: Default.cs プロジェクト: groov0v/edriven-gui
    /// <summary>
    /// Use this override for creating children
    /// </summary>
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Toolbar

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        _btnDummy = new Button
        {
            Text = "Click me",
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/add"),
            FocusEnabled = false,
            AutoRepeat = true
        };
        _btnDummy.Click += delegate { AddButton(); };
        toolbar.AddContentChild(_btnDummy);

        Button btnClear = new Button
        {
            Text = "Clear",
            Icon = Resources.Load<Texture>("Icons/cancel"),
            SkinClass = typeof(ImageButtonSkin),
            FocusEnabled = false
        };
        btnClear.Click += delegate
        {
            _viewport.RemoveAllChildren();
        };
        toolbar.AddContentChild(btnClear);

        toolbar.AddContentChild(new Spacer {PercentWidth = 100});
        toolbar.AddContentChild(new Label { Text = "eDriven.Gui"});

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass = typeof(ScrollerSkin2),
            PercentWidth = 100, PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        _viewport = new Group
        {
            // viewport also has vertical layout
            Layout = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Center,
                VerticalAlign = VerticalAlign.Middle,
                PaddingLeft = 10,
                PaddingRight = 10,
                PaddingTop = 10,
                PaddingBottom = 10,
                Gap = 10
            }
        };
        scroller.Viewport = _viewport;

        #endregion
    }
コード例 #19
0
ファイル: LoadData.cs プロジェクト: groov0v/edriven-gui
        override protected void CreateChildren()
        {
            base.CreateChildren();

            #region Controls

            Toolbar toolbar = new Toolbar();
            toolbar.Plugins.Add(new TabManager { ArrowsEnabled = true });
            AddChild(toolbar);

            #region Text field

            _txtSearch = new TextField
            {
                StyleName = "search",
                Text = "croatian coast",
                FocusEnabled = true,
                Width = 400
            };
            _txtSearch.SetFocus();
            _txtSearch.KeyUp += delegate(Event e)
            {
                KeyboardEvent ke = (KeyboardEvent)e;
                if (ke.KeyCode == KeyCode.Return)
                {
                    _newSearch = true;
                    Search();
                }

            };
            toolbar.AddContentChild(_txtSearch);

            #endregion

            Button btnLoad = new Button
            {
                Text = "Load data",
                SkinClass = typeof(ImageButtonSkin),
                Icon = ImageLoader.Instance.Load("Icons/arrow_refresh"),
                AutoRepeat = true
            };
            btnLoad.ButtonDown += delegate
            {
                Search();
                btnLoad.Text = "Load more...";
            };
            toolbar.AddContentChild(btnLoad);

            Button btnClear = new Button
            {
                Text = "Remove all",
                SkinClass = typeof(ImageButtonSkin),
                Icon = ImageLoader.Instance.Load("Icons/cancel"),
                AutoRepeat = true
            };
            btnClear.ButtonDown += delegate
            {
                _scroller.Visible = false;
                _dataProvider.RemoveAll();
                btnLoad.Text = "Load data";
            };
            toolbar.AddContentChild(btnClear);

            #endregion

            #region Lower group

            Group group = new Group
            {
                PercentWidth = 100,
                PercentHeight = 100
            };
            AddChild(group);

            #endregion

            #region Title label

            Label label = new TitleLabel { HorizontalCenter = 0, VerticalCenter = 0, StyleName = "title" };
            group.AddChild(label);

            new TextRotator
            {
                Delay = 5, // 5 seconds delay
                Lines = new[]
            {
                "Load Data Demo",
                "Created with eDriven.Gui",
                "Loads images from Flickr"/*,
                "Author: Danko Kozar"*/
            },
                Callback = delegate(string line) { label.Text = line; }
            }
            .Start();

            #endregion
            
            #region Scroller / viewport

            _scroller = new Scroller
            {
                SkinClass = typeof (ScrollerSkin2),
                PercentWidth = 100, PercentHeight = 100,
                Visible = false
            };
            _scroller.SetStyle("showEffect", _scrollerShow);
            group.AddChild(_scroller);

            Group viewport = new Group
            {
                /*MouseEnabled = true,
                Layout = new VerticalLayout
                {
                    HorizontalAlign = HorizontalAlign.Left,
                    PaddingLeft = 10,
                    PaddingRight = 10,
                    PaddingTop = 10,
                    PaddingBottom = 10,
                    Gap = 10
                }*/
            };
            _scroller.Viewport = viewport;

            #endregion

            #region Data controls

            List<object> source = new List<object>();

            _dataProvider = new ArrayList(source);

            /* LISTS */

            #region HGroup

            #endregion

            #region List

            _list = new List
                       {
                           Left = 10, Right = 10, Top = 10, Bottom = 10,
                           Layout = new TileLayout { HorizontalGap = 0, VerticalGap = 0/*, RequestedRowCount = 4, RequestedColumnCount = 3*/ },
                           DataProvider = _dataProvider,
                           SkinClass = typeof(ListSkin2),
                           ItemRenderer = new ItemRendererFactory<ThumbnailItemRenderer>(),
                           LabelFunction = LabelFunction // extracting the title
                       };
            viewport.AddChild(_list);

            #endregion

            #endregion

            // bubbling event listener
            AddEventListener("showImage", ShowImageHandler);
        }
コード例 #20
0
ファイル: AddChildDemo.cs プロジェクト: groov0v/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        _btnAddRect = new Button
        {
            Text = "New button",
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/shape_square_add"),
            FocusEnabled = false,
            AutoRepeat = true
        };
        _btnAddRect.ButtonDown += delegate { AddButton(); };
        toolbar.AddContentChild(_btnAddRect);

        _btnAddText = new Button
                          {
                              Text = "New text",
                              FocusEnabled = false,
                              SkinClass = typeof(ImageButtonSkin),
                              Icon = ImageLoader.Instance.Load("Icons/page_white_text"),
                              AutoRepeat = true
                          };
        _btnAddText.ButtonDown += delegate { AddTextField(); };
        toolbar.AddContentChild(_btnAddText);

        Button btnClear = new Button
        {
            Text = "Clear",
            SkinClass = typeof(ImageButtonSkin),
            Icon = Resources.Load<Texture>("Icons/cancel"),
            FocusEnabled = false
        };
        btnClear.Click += delegate
        {
            _panel.RemoveAllContentChildren();
            _count = 0;
        };
        toolbar.AddContentChild(btnClear);

        #endregion

        #region Panel

        _panel = new Panel
                     {
                         Title = "Add children to panel",
                         Icon = Resources.Load<Texture>("Icons/star"),
                         SkinClass = typeof(PanelSkin2),
                         Width = 600,
                         Height = 600,
                         Layout = new VerticalLayout
                         {
                             PaddingLeft = 10,
                             PaddingRight = 10,
                             PaddingTop = 10,
                             PaddingBottom = 10,
                             HorizontalAlign = HorizontalAlign.Left,
                             Gap = 10
                         }
                     };
        AddChild(_panel);

        CheckBox chkClip = new CheckBox
        {
            Text = "Clip and enable scrolling",
            //SkinClass = typeof(ImageButtonSkin),
            //Icon = Resources.Load<Texture>("Icons/scroll"),
            FocusEnabled = false,
            Selected = true
        };
        chkClip.Click += delegate
        {
            _panel.ContentGroup.ClipAndEnableScrolling = chkClip.Selected;
        };
        _panel.ControlBarGroup.AddChild(chkClip);

        #endregion
    }
コード例 #21
0
ファイル: BigMess.cs プロジェクト: groov0v/edriven-gui
    override protected void CreateChildren()
    {
        base.CreateChildren();

        #region Controls

        Toolbar toolbar = new Toolbar();
        AddChild(toolbar);

        #region Alert

        Button btnAlert = new Button
        {
            Text = "Alert",
            FocusEnabled = false,
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/comment")
        };
        btnAlert.Click += delegate
        {
            Alert.Show("Info", "This is the example alert.", AlertButtonFlag.Ok,
                new AlertOption(AlertOptionType.HeaderIcon, Resources.Load<Texture>("Icons/information")),
                new AlertOption(AlertOptionType.Icon, Resources.Load<Texture>("Icons/star_big")));
        };
        toolbar.AddContentChild(btnAlert);

        #endregion

        #region Window

        Button btnWindow = new Button
        {
            Text = "New window",
            FocusEnabled = false,
            SkinClass = typeof(ImageButtonSkin),
            Icon = ImageLoader.Instance.Load("Icons/comment")
        };
        btnWindow.Click += delegate
        {
            _count++;
            var window = new MyWindow
            {
                Title = "The Window " + _count,
                Id = "window_" + _count,
                SkinClass = typeof(WindowSkin2),
                Icon = ImageLoader.Instance.Load("Icons/balloon_32"),
                Width = 400,
                Height = 600
            };

            window.SetStyle("addedEffect", _windowShow);
            window.Plugins.Add(new Resizable { ShowOverlay = false });
            window.AddEventListener(CloseEvent.CLOSE, delegate
            {
                PopupManager.Instance.RemovePopup(window);
            });
            PopupManager.Instance.AddPopup(window, false);
            PopupManager.Instance.CenterPopUp(window);
        };
        toolbar.AddContentChild(btnWindow);

        #endregion

        #endregion

        #region Scroller

        Scroller scroller = new Scroller
        {
            SkinClass = typeof (ScrollerSkin2),
            PercentWidth = 100, PercentHeight = 100
        };
        //scroller.SetStyle("horizontalScrollPolicy", ScrollPolicy.On);
        //scroller.SetStyle("verticalScrollPolicy", ScrollPolicy.On);
        AddChild(scroller);

        Group viewport = new Group
        {
            Layout = new VerticalLayout
            {
                HorizontalAlign = HorizontalAlign.Left,
                PaddingLeft = 10,
                PaddingRight = 10,
                PaddingTop = 10,
                PaddingBottom = 10,
                Gap = 10
            }
        };
        scroller.Viewport = viewport;

        #endregion
        
        #region Horizontal Scrollbars

        viewport.AddChild(new HScrollBar { SkinClass = typeof(HScrollBarSkin3), PercentWidth = 100, MinWidth = 300, Maximum = 300, PageSize = 100 });
        viewport.AddChild(new HScrollBar { SkinClass = typeof(HScrollBarSkin3), PercentWidth = 50, Maximum = 500, Value = 200, PageSize = 100 });
        viewport.AddChild(new HScrollBar { SkinClass = typeof(HScrollBarSkin2), MinWidth = 600, Maximum = 1000, PageSize = 100 });
        viewport.AddChild(new HScrollBar { SkinClass = typeof(HScrollBarSkin3), MinWidth = 700, Maximum = 300, PageSize = 100 });
        viewport.AddChild(new HScrollBar { PercentWidth = 100, MinWidth = 600, SkinClass = typeof(HScrollBarSkin3), Maximum = 1000, PageSize = 100 });

        #endregion

        #region HGroup

        HGroup hGroup = new HGroup { /*PercentWidth = 100, */Gap = 10 };
        viewport.AddChild(hGroup);

        #endregion

        #region Vertical scrollbars

        VScrollBar vScrollBar = new VScrollBar { PercentHeight = 100, Maximum = 300 };
        vScrollBar.Change += delegate(Event e) { Debug.Log("Change: " + e); };
        hGroup.AddChild(vScrollBar);

        hGroup.AddChild(new VScrollBar { PercentHeight = 100, Maximum = 400, PageSize = 100 });
        hGroup.AddChild(new VScrollBar { SkinClass = typeof(VScrollBarSkin2), PercentHeight = 100, Maximum = 1000, PageSize = 100 });
        hGroup.AddChild(new VScrollBar { SkinClass = typeof(VScrollBarSkin2), Height = 400, Maximum = 400, PageSize = 100 });
        hGroup.AddChild(new VScrollBar { SkinClass = typeof(VScrollBarSkin3), PercentHeight = 100, Maximum = 200, PageSize = 100 });
        hGroup.AddChild(new VScrollBar { SkinClass = typeof(VScrollBarSkin3), Height = 400, Maximum = 300, PageSize = 100 });

        #endregion

        #region Panels

        //hGroup.AddChild(new Spacer { PercentWidth = 50 });

        Panel panel = new MyPanel
        {
            Width = 360,
            Height = 600,
            Icon = ImageLoader.Instance.Load("Icons/shape_square_add"),
            Title = "First panel",
            StyleName = "default"
        };
        hGroup.AddChild(panel);

        panel = new MyPanel2
        {
            MaxWidth = 500,
            Height = 600,
            SkinClass = typeof (PanelSkin2),
            Icon = ImageLoader.Instance.Load("Icons/page_white_text"),
            Title = "Second panel"
        };
        panel.SetStyle("titleColor", 0xffff00);
        hGroup.AddChild(panel);

        //hGroup.AddChild(new Spacer { PercentWidth = 50 });

        #endregion

        #region Vertical sliders

        hGroup.AddChild(new VSlider { PercentHeight = 100 });
        hGroup.AddChild(new VSlider { Width = 30, Height = 400, SkinClass = typeof(VSliderSkin2) });
        hGroup.AddChild(new VSlider { Width = 30, Height = 400, SkinClass = typeof(VSliderSkin2), Enabled = false });
        hGroup.AddChild(new VSlider { Width = 50, Height = 400, SkinClass = typeof(VSliderSkin2) });
        hGroup.AddChild(new VSlider { Width = 80, Height = 400, SkinClass = typeof(VSliderSkin3) });
        hGroup.AddChild(new VSlider { Width = 80, PercentHeight = 100, Maximum = 1000, SkinClass = typeof(VSliderSkin3) });

        #endregion

        #region Horizontal sliders

        viewport.AddChild(new HSlider { Maximum = 400, PercentWidth = 100 });
        viewport.AddChild(new HSlider { Width = 400, Maximum = 400, Height = 30, SkinClass = typeof(HSliderSkin2) });
        viewport.AddChild(new HSlider { Width = 400, Maximum = 400, Height = 50, SkinClass = typeof(HSliderSkin2) });
        viewport.AddChild(new HSlider { PercentWidth = 50, Height = 80, SkinClass = typeof(HSliderSkin3) });
        viewport.AddChild(new HSlider { PercentWidth = 100, Maximum = 1000, Height = 80, SkinClass = typeof(HSliderSkin3) });

        #endregion

    }