/// <summary>
        /// Замена конструктора, процедура инициализации компонента отображения
        /// </summary>
        /// <param name="parModelSideProviderComponent">Связанный компонент на стороне модели</param>
        /// <param name="parLinkedEventsHandler">Связанный обработчик событий отображения</param>
        public override void InitAndLink(ViewProviderComponent parModelSideProviderComponent,
                                         ViewEventsOpenTkHandler parLinkedEventsHandler)
        {
            base.InitAndLink(parModelSideProviderComponent, parLinkedEventsHandler);
            _modelProviderComponent = (RecordsMenuControlComponent)parModelSideProviderComponent;

            _modelProviderComponent.OnBecomeActive += OnActivatedPerform;
            _modelProviderComponent.OnDeactivated  += OnDeactivatedPerform;
        }
        /// <summary>
        /// Замена конструктора, процедура инициализации компонента отображения
        /// </summary>
        /// <param name="parModelSideProviderComponent">Связанный компонент на стороне модели</param>
        /// <param name="parLinkedEventsHandler">Связанный обработчик событий отображения</param>
        public override void InitAndLink(ViewProviderComponent parModelSideProviderComponent,
                                         ViewEventsOpenTkHandler parLinkedEventsHandler)
        {
            base.InitAndLink(parModelSideProviderComponent, parLinkedEventsHandler);

            _modelProviderComponent = (SinglePlayerLobbyMenuControlComponent)parModelSideProviderComponent;

            _modelProviderComponent.OnBecomeActive += OnActivatedPerform;
            _modelProviderComponent.OnDeactivated  += OnDeactivatedPerform;
            _modelProviderComponent.TransitionToTheGameStageStarted += ProcessTransitionToTheGameStageViaBlackScreen;
        }
Exemplo n.º 3
0
        /// <summary>
        /// Замена конструктора, процедура инициализации компонента отображения
        /// </summary>
        /// <param name="parModelSideProviderComponent">Связанный компонент на стороне модели</param>
        /// <param name="parLinkedEventsHandler">Связанный обработчик событий отображения</param>
        public override void InitAndLink(ViewProviderComponent parModelSideProviderComponent,
                                         ViewEventsOpenTkHandler parLinkedEventsHandler)
        {
            base.InitAndLink(parModelSideProviderComponent, parLinkedEventsHandler);
            _modelProviderComponent = (PocketGameViewProvider)parModelSideProviderComponent;

            _choosingShotAnimationInfobar =
                new PlayableAnimationObject(ActualSubassetsDataLibrary.GetAnimation(ANIM_INFOBAR_SHOT));

            _choosingShotPlayerCueAnimation =
                new PlayableAnimationObject(ActualSubassetsDataLibrary.GetAnimation(SHOT_HAND_CUE_ANIM));
        }
        /// <summary>
        /// Замена конструктора, процедура инициализации компонента отображения
        /// </summary>
        /// <param name="parModelSideProviderComponent">Связанный компонент на стороне модели</param>
        /// <param name="parLinkedEventsHandler">Связанный обработчик событий отображения</param>
        public override void InitAndLink(
            ViewProviderComponent parModelSideProviderComponent, ViewEventsOpenTkHandler parLinkedEventsHandler)
        {
            base.InitAndLink(parModelSideProviderComponent, parLinkedEventsHandler);

            _modelProviderComponent = (IntroViewProviderComponent)parModelSideProviderComponent;

            _currentAnimSheetIndex = ANIM_NAME_INTRO_CUTSCENE_INDEX_FROM;
            // TODO null setting is not nessesary
            _currentSpriteRenderingData = null;
            _introCutsceneAnimation     = null;

            ProcessNextAnimationSheet();
        }
Exemplo n.º 5
0
        /// <summary>
        /// Действия при удалении компонента на стороне модели
        /// </summary>
        /// <param name="parTargetComponent">Компонент на стороне модели</param>
        public void OnComponentRemoved(ViewProviderComponent parTargetComponent)
        {
            ViewRenderableComponent targetRenderableComponent = _activeRenderableComponents[parTargetComponent];

            if (targetRenderableComponent.IsUpdatable())
            {
                _updatableRenderableComponents.Remove(targetRenderableComponent);
            }

            targetRenderableComponent.DisableAndSendToPool();
            _activeRenderableComponents.Remove(parTargetComponent);

            RendereringDataWasUpdatedFlag = true;
        }
Exemplo n.º 6
0
        /// <summary>
        /// Действия при создании компонента на стороне модели
        /// </summary>
        /// <param name="parTargetComponent">Компонент на стороне модели</param>
        public void OnComponentCreated(ViewProviderComponent parTargetComponent)
        {
            CheckSubassetsDataLibrary();

            Type renderableComponentType = TypesLinker.GetLinkedViewComponentType(parTargetComponent.GetType());

            ViewRenderableComponent newRenderableComponent =
                (ViewRenderableComponent)OpenTkViewComponentsPoolManager.GetObject(renderableComponentType);

            _activeRenderableComponents.Add(parTargetComponent, newRenderableComponent);

            if (newRenderableComponent.IsUpdatable())
            {
                _updatableRenderableComponents.Add(newRenderableComponent);
            }

            newRenderableComponent.InitAndLink(parTargetComponent, this);

            newRenderableComponent.UpdateRenderingData();

            RendereringDataWasUpdatedFlag = true;
        }
Exemplo n.º 7
0
 /// <summary>
 /// Получение сообщения об обновлении компонента
 /// </summary>
 /// <param name="parTargetComponent">Обновленный компонент</param>
 public abstract void ReceiveNotificationUpdated(ViewProviderComponent parTargetComponent);
Exemplo n.º 8
0
 /// <summary>
 /// Замена конструктора, процедура инициализации компонента отображения
 /// </summary>
 /// <param name="parModelSideProviderComponent">Связанный компонент на стороне модели</param>
 /// <param name="parLinkedEventsHandler">Связанный обработчик событий отображения</param>
 public virtual void InitAndLink(
     ViewProviderComponent parModelSideProviderComponent, ViewEventsOpenTkHandler parLinkedEventsHandler)
 {
     ActualSubassetsDataLibrary = parLinkedEventsHandler.ActualSubassetsDataLibrary;
     LinkedViewEventsHandler    = parLinkedEventsHandler;
 }
Exemplo n.º 9
0
 /// <summary>
 /// Получение сообщения об обновлении компонента
 /// </summary>
 /// <param name="parTargetComponent">Обновленный компонент</param>
 public override void ReceiveNotificationUpdated(ViewProviderComponent parTargetComponent)
 {
     ActualViewEventsHandler.OnComponentUpdated(parTargetComponent);
 }
Exemplo n.º 10
0
        /// <summary>
        /// Действия при обновлении компонента на стороне модели
        /// </summary>
        /// <param name="parTargetComponent">Компонент на стороне модели</param>
        public void OnComponentUpdated(ViewProviderComponent parTargetComponent)
        {
            _activeRenderableComponents[parTargetComponent].UpdateRenderingData();

            RendereringDataWasUpdatedFlag = true;
        }
Exemplo n.º 11
0
 /// <summary>
 /// Отправить сообщение об обновлении компонента
 /// </summary>
 /// <param name="parColleague">Целевой "сотрудник"</param>
 /// <param name="parTargetComponent">Обновленный компонент</param>
 public void SendUpdatedNotification(ViewProviderColleague parColleague, ViewProviderComponent parTargetComponent)
 {
     parColleague.ReceiveNotificationUpdated(parTargetComponent);
 }
Exemplo n.º 12
0
 /// <summary>
 /// Замена конструктора, процедура инициализации компонента отображения
 /// </summary>
 /// <param name="parModelSideProviderComponent">Связанный компонент на стороне модели</param>
 /// <param name="parLinkedEventsHandler">Связанный обработчик событий отображения</param>
 public override void InitAndLink(ViewProviderComponent parModelSideProviderComponent,
                                  ViewEventsOpenTkHandler parLinkedEventsHandler)
 {
     base.InitAndLink(parModelSideProviderComponent, parLinkedEventsHandler);
 }
Exemplo n.º 13
0
 /// <summary>
 /// Замена конструктора, процедура инициализации компонента отображения
 /// </summary>
 /// <param name="parModelSideProviderComponent">Связанный компонент на стороне модели</param>
 /// <param name="parLinkedEventsHandler">Связанный обработчик событий отображения</param>
 public override void InitAndLink(ViewProviderComponent parModelSideProviderComponent,
                                  ViewEventsOpenTkHandler parLinkedEventsHandler)
 {
     base.InitAndLink(parModelSideProviderComponent, parLinkedEventsHandler);
     _modelSideComponent = (ResultsScreenComponent)parModelSideProviderComponent;
 }
Exemplo n.º 14
0
 /// <summary>
 /// Получение сообщения об обновлении компонента (не используется в текущей версии, но необходимо в будущем)
 /// </summary>
 /// <param name="parTargetComponent">Обновленный компонент</param>
 public override void ReceiveNotificationUpdated(ViewProviderComponent parTargetComponent)
 {
     throw new System.NotImplementedException("This feature is not supported in this version");
 }