コード例 #1
0
ファイル: LightsView.cs プロジェクト: alex512mb/MVC
 public void Initialize(LightsData lightsData)
 {
     this.lightsData = lightsData;
     CollectLights();
     LoadLightsState();
     SetupEventHandlers();
 }
コード例 #2
0
ファイル: LightsComposition.cs プロジェクト: alex512mb/MVC
    private void Start()
    {
        LightsData lightsData = new LightsData();

        ILightsView lightsview = GetComponentInChildren <ILightsView>();

        if (lightsview == null)
        {
            Debug.LogError("lightsview not attached");
        }
        lightsview.Initialize(lightsData);

        ILightsController lightsController = GetComponentInChildren <ILightsController>();

        if (lightsController == null)
        {
            Debug.LogError("lightsController not attached");
        }
        lightsController.Initialize(lightsData);
    }
コード例 #3
0
 public void Initialize(LightsData lightsData)
 {
     this.lightsData = lightsData;
     StartCoroutine(LightsProgramm());
 }
コード例 #4
0
        public MainPage()
        {
            InitializeComponent();

            lightsData = new LightsData {
                BassColor = Color.FromHex("#d50000"), MidColor = Color.FromHex("#ffab00"), TrebleColor = Color.FromHex("#6200ea")
            };
            lights.BindingContext = lightsData;

            if (Device.OS == TargetPlatform.Android)
            {
                var toolbarItem = new ToolbarItem(AppResources.ActionSettings, null, () => { }, ToolbarItemOrder.Secondary, 0);
                ToolbarItems.Add(toolbarItem);
            }

            MessagingCenter.Subscribe <ShowPlaybackControlsMessage>(this, nameof(ShowPlaybackControlsMessage), message => {
                Device.BeginInvokeOnMainThread(() =>
                {
                    PlaybackPanel.IsVisible = true;
                });
            });

            MessagingCenter.Subscribe <HidePlaybackControlsMessage>(this, nameof(HidePlaybackControlsMessage), message => {
                Device.BeginInvokeOnMainThread(() =>
                {
                    PlaybackPanel.IsVisible = false;
                });
            });

            MessagingCenter.Subscribe <PlaybackStateChangedMessage>(this, nameof(PlaybackStateChangedMessage), message => {
                Device.BeginInvokeOnMainThread(() =>
                {
                    bool enablePlay = false;
                    switch (message.State)
                    {
                    case PlaybackState.Paused:
                    case PlaybackState.Stopped:
                        enablePlay = true;
                        break;

                    case PlaybackState.Error:
                        break;
                    }

                    if (enablePlay)
                    {
                        if (Device.OS == TargetPlatform.Android)
                        {
                            PlayPauseButton.Source = "ic_play_arrow_white_36dp.png";
                        }
                    }
                    else
                    {
                        if (Device.OS == TargetPlatform.Android)
                        {
                            PlayPauseButton.Source = "ic_pause_white_36dp.png";
                        }
                    }
                });
            });

            MessagingCenter.Subscribe <MetadataChangedMessage>(this, nameof(MetadataChangedMessage), message => {
                Device.BeginInvokeOnMainThread(() =>
                {
                    Title.Text  = message.Metadata.Title;
                    Artist.Text = message.Metadata.Artist;
                });
            });

            //test
            //OnLightOrganDataUpdated(0.1f, 1, 0.1f);
        }