コード例 #1
0
        public static cave.ui.ImageWidget forImageResource(cave.GuiApplicationContext context, string resName)
        {
            var v = new cave.ui.ImageWidget(context);

            v.setWidgetImageResource(resName);
            return(v);
        }
コード例 #2
0
        public static cave.ui.ImageWidget forImage(cave.GuiApplicationContext context, cave.Image image)
        {
            var v = new cave.ui.ImageWidget(context);

            v.setWidgetImage(image);
            return(v);
        }
コード例 #3
0
 public override void initializeWidget()
 {
     base.initializeWidget();
     imageWidget = new cave.ui.ImageWidget(context);
     imageWidget.setWidgetImageScaleMethod(widgetImageScale);
     imageWidget.setWidgetImageWidth(widgetButtonWidth);
     imageWidget.setWidgetImageHeight(widgetButtonHeight);
     addWidget((Windows.UI.Xaml.UIElement)imageWidget);
     updateImageWidget();
 }
コード例 #4
0
        public cave.ui.ImageWidget onStartLoading(bool useOverlay = true)
        {
            removeAllChildren();
            var v = new cave.ui.ImageWidget(context);

            configureImageWidgetProperties(v);
            if (widgetPlaceholderImage != null)
            {
                v.setWidgetImage(widgetPlaceholderImage);
            }
            addWidget((Windows.UI.Xaml.UIElement)v);
            if (useOverlay)
            {
                overlay = (Windows.UI.Xaml.UIElement)cave.ui.CanvasWidget.forColor(context, cave.Color.forRGBA(0, 0, 0, 200));
                addWidget(overlay);
            }
            return(v);
        }
コード例 #5
0
        public void nextImage()
        {
            currentSlide++;
            var slide = cape.Vector.get(slides, currentSlide);

            if (slide == null)
            {
                var anim = cave.ui.WidgetAnimation.forDuration(context, (long)1000);
                anim.addFadeOut((Windows.UI.Xaml.UIElement)currentImageWidget, true);
                anim.setEndListener(() => {
                    onEnded();
                });
                anim.start();
                return;
            }
            var imageWidget = cave.ui.ImageWidget.forImageResource(context, slide.resource);

            cave.ui.Widget.setAlpha((Windows.UI.Xaml.UIElement)imageWidget, (double)0);
            imageWidget.setWidgetImageWidth(context.getWidthValue(imageWidgetWidth));
            var align = cave.ui.AlignWidget.forWidget(context, (Windows.UI.Xaml.UIElement)imageWidget, 0.50, 0.50);
            var sz    = context.getWidthValue(margin);

            if (sz > 0)
            {
                align.setWidgetMargin(sz);
            }
            addWidget((Windows.UI.Xaml.UIElement)align);
            var anim1 = cave.ui.WidgetAnimation.forDuration(context, (long)1000);

            anim1.addCrossFade((Windows.UI.Xaml.UIElement)currentImageWidget, (Windows.UI.Xaml.UIElement)imageWidget, true);
            anim1.start();
            currentImageWidget = imageWidget;
            context.startTimer((long)slide.delay, () => {
                nextImage();
            });
        }
コード例 #6
0
 public virtual void configureImageWidgetProperties(cave.ui.ImageWidget imageWidget)
 {
     imageWidget.setWidgetImageWidth(widgetImageWidth);
     imageWidget.setWidgetImageHeight(widgetImageHeight);
     imageWidget.setWidgetImageScaleMethod(widgetImageScaleMethod);
 }