public UIImage(
            Color defaultColor,
            Graphic graphicComponent,
            Transform imageTrans,
            IUISystemProcessFactory processFactory,
            float changeColorTime

            )
        {
            thisGraphicComponent = graphicComponent;
            thisOriginalColor    = defaultColor;
            SetColor(thisOriginalColor);
            thisImageTrans         = imageTrans;
            thisDefaultBrightness  = GetCurrentBrightness();
            thisDarkenedBrightness = Mathf.Lerp(
                thisDefaultBrightness,
                0f,
                .5f
                );
            thisDefaultColor  = GetColorAtBrightness(thisDefaultBrightness);
            thisDarkenedColor = GetColorAtBrightness(thisDarkenedBrightness);
            SetColor(thisDefaultColor);
            thisProcessFactory  = processFactory;
            thisChangeColorTime = changeColorTime;
        }
示例#2
0
        public QuantityRollerConstArg(
            IUIManager uim,
            IUISystemProcessFactory processFactory,
            IUIElementFactory uiElementFactory,
            IQuantityRollerAdaptor quaRolAdaptor,
            IUIImage image,

            int maxQuantity,
            Vector2 panelDim,
            Vector2 padding,
            Vector2 rollerNormalizedPos
            ) : base(
                uim,
                processFactory,
                uiElementFactory,
                quaRolAdaptor,
                image,
                ActivationMode.None
                )
        {
            thisMaxQuantity         = maxQuantity;
            thisUIEFactory          = uieFactory;
            thisPanelDim            = panelDim;
            thisPadding             = padding;
            thisRollerNormalizedPos = rollerNormalizedPos;
        }
示例#3
0
        public GenericSingleElementScrollerConstArg(
            Vector2 relativeCursorLength,
            ScrollerAxis scrollerAxis,
            Vector2 rubberBandLimitMultiplier,
            Vector2 relativeCursorPosition,
            bool isEnabledInertia,
            float newScrollSpeedThreshold,

            IUIManager uim,
            IUISystemProcessFactory processFactory,
            IUIElementFactory uieFactory,
            IGenericSingleElementScrollerAdaptor uia,
            IUIImage image,
            ActivationMode activationMode

            ) : base(
                scrollerAxis,
                relativeCursorPosition,
                rubberBandLimitMultiplier,
                isEnabledInertia,
                newScrollSpeedThreshold,

                uim,
                processFactory,
                uieFactory,
                uia,
                image,
                activationMode
                )
        {
            thisRelativeCursorLength = relativeCursorLength;
        }
示例#4
0
        public PopUpConstArg(
            IUIManager uim,
            IUISystemProcessFactory processFactory,
            IUIElementFactory uiElementFactory,
            IPopUpAdaptor popUpAdaptor,
            IUIImage image,
            ActivationMode activationMode,

            IPopUpManager popUpManager,
            bool hidesOnTappingOthers,
            PopUpMode popUpMode

            ) : base(
                uim,
                processFactory,
                uiElementFactory,
                popUpAdaptor,
                image,
                activationMode
                )
        {
            thisPopUpManager         = popUpManager;
            thisHidesOnTappingOthers = hidesOnTappingOthers;
            thisPopUpMode            = popUpMode;
        }
示例#5
0
        public IUIElement CreateUIElementWithIndexText(
            int index,
            Vector2 sizeDelta,
            IUISystemProcessFactory processFactory
            )
        {
            IIndexElementAdaptorInitializationData initData = new IndexElementAdaptorInitializationData
                                                              (
                index,
                thisFont,
                thisFontSize,
                thisImageColor,
                thisImageDefaultDarkness,
                thisImageDarkenedDarkness
                                                              );
            IIndexElementAdaptorInstantiationData instData = new IndexElementAdaptorInstantiationData(
                initData
                );
            IndexElementAdaptor uia = this.CreateInstatiableUIA <IndexElementAdaptor>(instData);
            IUIAdaptorBaseInitializationData baseInitializationData = new RootUIAActivationData
                                                                      (
                thisUIM,
                processFactory,
                this
                                                                      );

            uia.GetReadyForActivation(baseInitializationData, false);
            return(uia.GetUIElement());
        }
示例#6
0
        public ScrollerConstArg(
            ScrollerAxis scrollerAxis,
            Vector2 relativeCursorPosition,
            Vector2 rubberBandLimitMultiplier,
            bool isEnabledInertia,
            float newScrollSpeedThreshold,

            IUIManager uim,
            IUISystemProcessFactory processFactory,
            IUIElementFactory uieFactory,
            IScrollerAdaptor uia,
            IUIImage uiImage,
            ActivationMode activationMode
            ) : base(
                uim,
                processFactory,
                uieFactory,
                uia,
                uiImage,
                activationMode
                )
        {
            thisScrollerAxis              = scrollerAxis;
            thisRelativeCursorPos         = relativeCursorPosition;
            thisRubberBandLimitMultiplier = rubberBandLimitMultiplier;
            thisIsEnabledInertia          = isEnabledInertia;
            thisNewScrollSpeedThreshold   = newScrollSpeedThreshold;
        }
        public UIElementGroupConstArg(
            int columnCountConstraint,
            int rowCountConstraint,
            bool topToBottom,
            bool leftToRight,
            bool rowToColumn,

            IUIManager uim,
            IUISystemProcessFactory processFactory,
            IUIElementFactory uieFactory,
            IUIElementGroupAdaptor uia,
            IUIImage image,
            ActivationMode activationMode

            ) : base(
                uim,
                processFactory,
                uieFactory,
                uia,
                image,
                activationMode
                )
        {
            thisColumnCountConstraint = columnCountConstraint;
            thisRowCountConstraint    = rowCountConstraint;
            thisTopToBottom           = topToBottom;
            thisLeftToRight           = leftToRight;
            thisRowToColumn           = rowToColumn;
        }
示例#8
0
 public PointerUpInputProcessStateConstArg(
     IUIAdaptorInputStateEngine engine,
     IUISystemProcessFactory processFactory
     ) : base(
         engine
         )
 {
     thisProcessFactory = processFactory;
 }
 public ConstArg(
     IUISystemProcessFactory processFactory,
     IPopUpStateImplementor implementor,
     float processTime
     )
 {
     thisProcessFactory = processFactory;
     thisImplementor    = implementor;
     thisProcessTime    = processTime;
 }
 public PopUpStateEngineConstArg(
     IUISystemProcessFactory processFactory,
     IPopUp popUp,
     IPopUpManager popUpManager,
     PopUpMode popUpMode
     )
 {
     thisProcessFactory = processFactory;
     thisPopUp          = popUp;
     thisPopUpManager   = popUpManager;
     thisPopUpMode      = popUpMode;
 }
 public ConstArg(
     IUIManager uiManager,
     IUIElement uiElement,
     IUIAdaptor uiAdaptor,
     IUISystemProcessFactory processFactory
     )
 {
     thisUIManager      = uiManager;
     thisUIAdaptor      = uiAdaptor;
     thisUIElement      = uiElement;
     thisProcessFactory = processFactory;
 }
 public PointerDownInputProcessStateConstArg(
     IUIAdaptorInputStateEngine engine,
     IUIManager uiManager,
     int velocityStackSize,
     IUISystemProcessFactory processFactory
     ) : base(
         engine,
         uiManager,
         velocityStackSize
         )
 {
     thisProcessFactory = processFactory;
 }
示例#13
0
        public UIEActivationStateEngine(
            IUISystemProcessFactory processFactory,
            IUIElement uiElement,
            ActivationMode activationMode
            )
        {
            thisProcessFactory             = processFactory;
            thisUIElement                  = uiElement;
            thisActivationMode             = activationMode;
            thisActivatingState            = new UIEActivatingState(this);
            thisActivationCompletedState   = new UIEActivationCompletedState(this);
            thisDeactivatingState          = new UIEDeactivatingState(this);
            thisDeactivationCompletedState = new UIEDeactivationCompletedState(this);

            SetToDeactivationCompletedState();
        }
        public UIAdaptorInputStateEngine(
            IConstArg arg
            )
        {
            IUIAdaptor uia = arg.uiAdaptor;

            thisUIE = arg.uiElement;
            IUISystemProcessFactory procFac = arg.processFactory;

            thisUIManager = arg.uiManager;

            IUIAdaptorInputStateConstArg pointerUpInputStateArg = new UIAdaptorInputStateConstArg(
                this
                );

            thisWaitingForFirstTouchState = new WaitingForFirstTouchState(
                pointerUpInputStateArg
                );

            IPointerDownInputProcessStateConstArg pointerDownProcessStateArg = new PointerDownInputProcessStateConstArg(
                this,
                thisUIManager,
                thisVelocityStackSize,
                // thisUIManager.GetSwipeVelocityThreshold(),
                // thisUIManager.GetSwipeDistanceThreshold(),
                procFac
                );

            thisWaitingForTapState = new WaitingForTapState(
                pointerDownProcessStateArg
                );
            thisWaitingForReleaseState = new WaitingForReleaseState(
                pointerDownProcessStateArg
                );

            IPointerUpInputProcessStateConstArg pointerUpInputProcessStateArg = new PointerUpInputProcessStateConstArg(
                this,
                procFac
                );

            thisWaitingForNextTouchState = new WaitingForNextTouchState(
                pointerUpInputProcessStateArg
                );
            SetWithInitState();
            ResetTouchCounter();
        }
示例#15
0
        public UIElementConstArg(
            IUIManager uim,
            IUISystemProcessFactory processFactory,
            IUIElementFactory uiElementFactory,
            IUIAdaptor uia,
            IUIImage image,
            ActivationMode activationMode

            )
        {
            thisUIM              = uim;
            thisProcessFactory   = processFactory;
            thisUIElementFactory = uiElementFactory;
            thisUIA              = uia;
            thisImage            = image;
            thisActivationMode   = activationMode;
        }
示例#16
0
        public UIImage(
            Graphic graphicComponent,
            Transform imageTrans,
            float defaultBrightness,
            float darkenedBrightness,
            IUISystemProcessFactory processFactory

            )
        {
            thisGraphicComponent   = graphicComponent;
            thisOriginalColor      = GetColor();
            thisImageTrans         = imageTrans;
            thisDefaultBrightness  = defaultBrightness;
            thisDarkenedBrightness = darkenedBrightness;
            thisDefaultColor       = GetColorAtBrightness(thisDefaultBrightness);
            thisDarkenedColor      = GetColorAtBrightness(thisDarkenedBrightness);
            SetColor(thisDefaultColor);
            thisProcessFactory = processFactory;
        }
示例#17
0
        public PointerDownInputProcessStateConstArg(
            IUIAdaptorInputStateEngine engine,
            IUIManager uiManager,
            int velocityStackSize,
            // float swipeVelocityThreshold,
            // float swipeDistanceThreshold,

            IUISystemProcessFactory processFactory
            ) : base(
                engine,
                uiManager,
                velocityStackSize
                // ,
                // swipeVelocityThreshold,
                // swipeDistanceThreshold
                )
        {
            thisProcessFactory = processFactory;
        }
        public CyclableUIElementGroupScrollerConstArg(
            bool[] isCycleEnabled,
            int initiallyCursoredElementIndex,
            int[] cursorSize,
            float startSearchSpeed,
            bool activatesCursoredElementsOnly,

            Vector2 relativeCursorPosition,
            ScrollerAxis scrollerAxis,
            Vector2 rubberBandLimitMultiplier,
            bool isEnabledInertia,
            bool swipeToSnapNext,
            float newScrollSpeedThreshold,

            IUIManager uim,
            IUISystemProcessFactory processFactory,
            IUIElementFactory uieFactory,
            IUIElementGroupScrollerAdaptor uia,
            IUIImage image,
            ActivationMode activationMode
            ) : base(
                initiallyCursoredElementIndex,
                cursorSize,
                startSearchSpeed,
                activatesCursoredElementsOnly,

                relativeCursorPosition,
                scrollerAxis,
                rubberBandLimitMultiplier,
                isEnabledInertia,
                swipeToSnapNext,
                newScrollSpeedThreshold,

                uim,
                processFactory,
                uieFactory,
                uia,
                image,
                activationMode
                )
        {
            thisIsCycleEnabled = isCycleEnabled;
        }
    TestGenericSingleElementScroller CreateGenericSingleElementScroller(Vector2 relativeCursorLength)
    {
        ScrollerAxis            scrollerAxis = ScrollerAxis.Both;
        Vector2                 rubberBandLimitMultiplier = new Vector2(.1f, .1f);
        Vector2                 relativeCursorPosition    = new Vector2(.5f, .5f);
        IUIManager              uim              = Substitute.For <IUIManager>();
        IUISystemProcessFactory processFactory   = Substitute.For <IUISystemProcessFactory>();
        IUIElementFactory       uieFactory       = Substitute.For <IUIElementFactory>();
        IGenericSingleElementScrollerAdaptor uia = Substitute.For <IGenericSingleElementScrollerAdaptor>();
        Rect scrollerRect = new Rect(Vector2.zero, new Vector2(200f, 100f));

        uia.GetRect().Returns(scrollerRect);
        IUIElement child       = Substitute.For <IUIElement>();
        IUIAdaptor childUIA    = Substitute.For <IUIAdaptor>();
        Rect       elementRect = new Rect(Vector2.zero, new Vector2(100f, 100f));

        childUIA.GetRect().Returns(elementRect);
        child.GetUIAdaptor().Returns(childUIA);
        List <IUIElement> returnedList = new List <IUIElement>(new IUIElement[] { child });

        uia.GetChildUIEs().Returns(returnedList);
        IUIImage image = Substitute.For <IUIImage>();
        float    newScrollSpeedThreshold = 200f;

        IGenericSingleElementScrollerConstArg arg = new GenericSingleElementScrollerConstArg(
            relativeCursorLength,
            scrollerAxis,
            rubberBandLimitMultiplier,
            relativeCursorPosition,
            true,
            newScrollSpeedThreshold,

            uim,
            processFactory,
            uieFactory,
            uia,
            image,
            ActivationMode.None
            );

        return(new TestGenericSingleElementScroller(arg));
    }
示例#20
0
        public DigitPanelSetConstArg(
            IUIManager uim,
            IUISystemProcessFactory processFactory,
            IUIElementFactory uiElementFactory, IUIAdaptor uia,
            IUIImage image,

            int digitPlace,
            Vector2 panelDim,
            Vector2 padding
            ) : base(
                uim,
                processFactory,
                uiElementFactory,
                uia,
                image,
                ActivationMode.None
                )
        {
            thisDigitPlace = digitPlace;
        }
示例#21
0
        public DigitPanelConstArg(
            IUIManager uim,
            IUISystemProcessFactory processFactory,
            IUIElementFactory uiElementFactory,
            IDigitPanelAdaptor digitPanelAdaptor,
            IUIImage image,

            Vector2 panelDim,
            float localPosY
            ) : base(
                uim,
                processFactory,
                uiElementFactory,
                digitPanelAdaptor,
                image,
                ActivationMode.None
                )
        {
            thisPanelDim  = panelDim;
            thisLocalPosY = localPosY;
        }
    public void StartNewActivationProcess_ActivationModeIsAlpha_SwtchesProcessProperly()
    {
        ITestUIEActivationStateEngineConstArg arg = CreateMockConstArg();

        arg.activationMode.Returns(ActivationMode.Alpha);
        TestUIEActivationStateEngine engine = new TestUIEActivationStateEngine(arg);

        IUISystemProcessFactory             procFactory = arg.processFactory;
        IAlphaActivatorUIEActivationProcess process     = Substitute.For <IAlphaActivatorUIEActivationProcess>();

        procFactory.CreateAlphaActivatorUIEActivationProcess(arg.uiElement, engine, true).Returns(process);
        IUIEActivationProcess prevProcess = Substitute.For <IUIEActivationProcess>();

        prevProcess.IsRunning().Returns(true);
        engine.SetRunningProcess(prevProcess);

        engine.StartNewActivateProcess();

        prevProcess.Received(1).Stop();
        process.Received(1).Run();
        Assert.That(engine.GetCurRunningProcess_Test(), Is.SameAs(process));
    }
        public ColorChangeButtonConstArg(
            IUIManager uim,
            IUISystemProcessFactory processFactory,
            IUIElementFactory uieFactory,
            IColorChangeButtonAdaptor uia,
            IUIImage uiImage,

            IUIAdaptor targetUIAdaptor,
            Color targetColor,
            Text targetText
            ) : base(
                uim,
                processFactory,
                uieFactory,
                uia,
                uiImage,
                ActivationMode.None
                )
        {
            thisTargetUIAdaptor = targetUIAdaptor;
            thisTargetColor     = targetColor;
            thisText            = targetText;
        }
示例#24
0
 public RootUIAActivationData(IUIManager uim, IUISystemProcessFactory processFactory, IUIElementFactory uiElementFactory) : base(uim, processFactory, uiElementFactory)
 {
 }
示例#25
0
 public AbsUIAActivationData(IUIManager uim, IUISystemProcessFactory processFactory, IUIElementFactory uiElementFactory)
 {
     thisUIM              = uim;
     thisProcessFactory   = processFactory;
     thisUIElementFactory = uiElementFactory;
 }
 public QuantityAnimationEngine(IUISystemProcessFactory processFactory)
 {
     thisProcessFactory = processFactory;
 }