public void ConnectCanvasView(SKCanvasView CV)
        {
            IFlorineSkiaConnectable picConn = Picture as IFlorineSkiaConnectable;

            if (picConn != null)
            {
                picConn.ConnectCanvasView(CV);
            }
            FlorineSkiaTapWrap.Associate(CV, OptionTapHandler);
            _views.Add(CV);
        }
Beispiel #2
0
        private void _readyOption(
            PageComponentType pcType,
            IGameOption opt,
            EventHandler PressFunc = null
            )
        {
            if (null == opt)
            {
                return;
            }
            if (null != opt.SubOptions)
            {
                _readyOptionSet(
                    pcType,
                    opt.SubOptions,
                    PressFunc
                    );
                return;
            }
            SKCanvasView            Img  = new SKCanvasView();
            IFlorineSkiaConnectable conn = opt as IFlorineSkiaConnectable;

            if (null != conn)
            {
                conn.ConnectCanvasView(Img);
            }

            IFlorineSkiaEventDriver econn = opt as IFlorineSkiaEventDriver;

            if (null != econn)
            {
                if (null != PressFunc)
                {
                    econn.OnEventTriggered += PressFunc;
                }
            }

            _components.Add(
                new PageComponent(
                    _inc(pcType),
                    Img
                    )
                );
        }
Beispiel #3
0
        private void _readyIPage(IPage Source, GameState gameState)
        {
            if (null != Source.Background)
            {
                SKCanvasView            Header = new SKCanvasView();
                IFlorineSkiaConnectable iconn  = Source.Background as IFlorineSkiaConnectable;
                if (null != iconn)
                {
                    iconn.ConnectCanvasView(Header);
                }
                _components.Add(
                    new PageComponent(
                        _inc(PageComponentType.Background),
                        Header
                        )
                    );
            }
            if (null != Source.Title)
            {
                SKCanvasView Message = new SKCanvasView();
                ImageText    itconn  = new ImageText(Source.Title);
                itconn.ConnectCanvasView(Message);
                _components.Add(
                    new PageComponent(
                        _inc(PageComponentType.Title),
                        Message
                        )
                    );
            }
            if (null != Source.Message && "" != Source.Message)
            {
                SKCanvasView Message = new SKCanvasView();
                ImageText    itconn  = new ImageText(Source.Message)
                {
                    Overflow       = ImageText.WrapType.WordWrap,
                    FontSize       = 48.0f,
                    AutoBackground = (
                        Source.MainType == GameState.PageType.Summarize_Activity
                        )
                };

                itconn.ConnectCanvasView(Message);
                _components.Add(
                    new PageComponent(
                        _inc(PageComponentType.Message),
                        Message
                        )
                    );
            }

            IGameOptionSet DescriptionSet = Source.AppliedOptions;

            _readyOptionSet(
                PageComponentType.PickedOption,
                Source.AppliedOptions
                );

            PrimaryOptions = Source.PrimaryOptions;
            _readyOptionSet(
                PageComponentType.Option,
                PrimaryOptions
                );

            if (null != Source.PrimaryOptions)
            {
                if (PrimaryOptions.Count > 0)
                {
                    DescriptionSet = PrimaryOptions;
                }

                _readyOption(
                    PageComponentType.Footer,
                    Source.PrimaryOptions.Finalizer,
                    Continue_Handler
                    );
            }
            if (null != DescriptionSet)
            {
                FlorineSkiaOptionSet FSO = DescriptionSet as FlorineSkiaOptionSet;
                if (FSO != null)
                {
                    SKCanvasView Desc = new SKCanvasView();
                    FSO.UpdaterHook.ConnectCanvasView(Desc);
                    _components.Add(
                        new PageComponent(
                            _inc(PageComponentType.Description),
                            Desc
                            )
                        );
                }
            }
            SourcePage = Source;

            if (null != gameState.Player)
            {
                SKCanvasView            avatar = new SKCanvasView();
                IFlorineSkiaConnectable itconn = gameState.Player.Avatar.Picture as IFlorineSkiaConnectable;
                itconn.ConnectCanvasView(avatar);
                _components.Add(
                    new PageComponent(
                        _inc(PageComponentType.Player),
                        avatar
                        )
                    );
            }
        }
Beispiel #4
0
 public FlorineSkiaCVWrap(IFlorineSkiaConnectable Conn) : base()
 {
     FlorineObj = Conn;
     FlorineObj.ConnectCanvasView(this);
 }