示例#1
0
        private void CustomizeRainbow_Click(object sender, RoutedEventArgs e)
        {
            var oldSelect = mColorPatternVM.Select;

            mColorPatternVM.Select = -1;
            ReUndoManager.Store(new ColorPatternModifyCommand(mColorPatternVM.mInfoModel, null, null, oldSelect, -1));
        }
示例#2
0
 private void SegmentationSwitch_Toggled(object sender, RoutedEventArgs e)
 {
     if (m_Info.ColorSegmentation != SegmentationSwitch.IsOn)
     {
         ReUndoManager.Store(new PatternModeChangeCommand(m_Info, SegmentationSwitch.IsOn));
     }
 }
示例#3
0
        private void RotationRbt_Click(object sender, RoutedEventArgs e)
        {
            RadioButton rotationmodeBtn = sender as RadioButton;

            switch (rotationmodeBtn.Name)
            {
            case "ClockwiseRbt":
                m_Info.RainbowSpecialMode = 1;
                break;

            case "CountclockwiseRbt":
                m_Info.RainbowSpecialMode = 2;
                break;

            case "OutwardRbt":
                m_Info.RainbowSpecialMode = 3;
                break;

            case "InwardRbt":
                m_Info.RainbowSpecialMode = 4;
                break;

            default:
                m_Info.RainbowSpecialMode = 1;
                break;
            }
            if (m_Info.RainbowSpecialMode != _currentRainbowSpecialModeValue)
            {
                _oldRainbowSpecialModeValue     = _currentRainbowSpecialModeValue;
                _currentRainbowSpecialModeValue = m_Info.RainbowSpecialMode;
                ReUndoManager.Store(new RainbowSpecialModeChangeCommand(LayerPage.Self.CheckedEffect, _oldRainbowSpecialModeValue, _currentRainbowSpecialModeValue));
            }
        }
示例#4
0
        public void RemoveLayer(LayerModel layer)
        {
            int index = Layers.IndexOf(layer);

            Layers.Remove(layer);
            ReUndoManager.Store(new DeleteLayerCommand(layer, index));
        }
示例#5
0
        private void LayersChanged(object sender, NotifyCollectionChangedEventArgs e)
        {
            LayerModel layer;
            int        layerIndex;

            switch (e.Action)
            {
            case NotifyCollectionChangedAction.Remove:
                layer            = e.OldItems[0] as LayerModel;
                _oldRemovedLayer = layer;
                _oldRemovedIndex = e.OldStartingIndex;
                break;

            case NotifyCollectionChangedAction.Add:
                layer      = e.NewItems[0] as LayerModel;
                layerIndex = e.NewStartingIndex;
                if (layer.Equals(_oldRemovedLayer))
                {
                    ReUndoManager.Store(new SwapLayerCommand(_oldRemovedIndex, layerIndex));
                }
                CheckedLayer = layer;
                break;
            }

            for (int i = 0; i < Layers.Count; i++)
            {
                if (Layers[i].Name == "")
                {
                    Layers[i].Name = "Layer " + (i + 1).ToString();
                }
            }

            SpacePage.Self.GoToBlankEditing();
            TrackCanvas.Height = Layers.Count * 52;
        }
示例#6
0
        private void AngleStoryboardStart(double targetAngle)
        {
            int    runTime          = 300;
            var    storyboard       = new Storyboard();
            var    angleIcAnimation = new DoubleAnimation();
            double sourceAngle      = AngleIcImgRotation.Angle;

            if (sourceAngle != targetAngle)
            {
                targetAngle = targetAngle % 360;
                if (sourceAngle - targetAngle > 180)
                {
                    sourceAngle -= 360;
                }
                else if (sourceAngle - targetAngle < -180)
                {
                    sourceAngle += 360;
                }

                // triangle
                angleIcAnimation.Duration = TimeSpan.FromMilliseconds(runTime);
                angleIcAnimation.EnableDependentAnimation = true;
                angleIcAnimation.From = sourceAngle;
                angleIcAnimation.To   = targetAngle;
                Storyboard.SetTargetProperty(angleIcAnimation, "Angle");
                Storyboard.SetTarget(angleIcAnimation, AngleIcImgRotation);
                storyboard.Children.Add(angleIcAnimation);
                storyboard.Begin();
                if (m_Info.Angle != targetAngle)
                {
                    ReUndoManager.Store(new AngleChangeCommand(LayerPage.Self.CheckedEffect, sourceAngle, targetAngle));
                }
            }
        }
示例#7
0
        private void SpeedValueChanged(object sender, RangeBaseValueChangedEventArgs e)
        {
            Slider slider = sender as Slider;

            if (slider != null)
            {
                if (slider.Value == 1)
                {
                    MediumPoint.Source = new BitmapImage(new Uri(this.BaseUri, "ms-appx:///Assets/EffectInfoGroup/asus_gc_slider2 control_n.png"));
                    FastPoint.Source   = new BitmapImage(new Uri(this.BaseUri, "ms-appx:///Assets/EffectInfoGroup/asus_gc_slider2 control_d.png"));
                }
                else if (slider.Value == 2)
                {
                    MediumPoint.Source = new BitmapImage(new Uri(this.BaseUri, "ms-appx:///Assets/EffectInfoGroup/asus_gc_slider2 control_n.png"));
                    FastPoint.Source   = new BitmapImage(new Uri(this.BaseUri, "ms-appx:///Assets/EffectInfoGroup/asus_gc_slider2 control_n.png"));
                }
                else
                {
                    MediumPoint.Source = new BitmapImage(new Uri(this.BaseUri, "ms-appx:///Assets/EffectInfoGroup/asus_gc_slider2 control_d.png"));
                    FastPoint.Source   = new BitmapImage(new Uri(this.BaseUri, "ms-appx:///Assets/EffectInfoGroup/asus_gc_slider2 control_d.png"));
                }
            }
            if (m_Info.Speed != slider.Value)
            {
                _oldSpeedValue     = m_Info.Speed;
                _currentSpeedValue = slider.Value;
                ReUndoManager.Store(new MoveSpeedCommand(m_Info, _oldSpeedValue, _currentSpeedValue));
            }
        }
示例#8
0
 private void ResetToDefault()
 {
     SetLayerCounter = 1;
     Clean();
     CurrentUserFilename = "";
     SpacePage.FillCurrentIngroupDevices();
     ReUndoManager.Clear();
 }
示例#9
0
 public void ClearAllEffect()
 {
     ReUndoManager.Store(new RemoveAllEffectCommand(this));
     EffectLineViewModels.Clear();
     TriggerEffects.Clear();
     IsTriggering = false;
     LayerPage.Self.CheckedLayer = this;
 }
示例#10
0
 private void RemoveAllButton_Click(object sender, RoutedEventArgs e)
 {
     _oldTriggerEffectList = new ObservableCollection <TriggerEffect>(m_EffectList);
     ReUndoManager.Store(new RemoveAllCommand(_oldTriggerEffectList));
     m_EffectList.Clear();
     TriggerEffectListView.SelectedIndex = -1;
     TriggerEffectTextBlock.Visibility   = Visibility.Visible;
 }
示例#11
0
        private void ColorModeSelection_Click(object sender, RoutedEventArgs e)
        {
            RadioButton rb = sender as RadioButton;

            switch (rb.Name)
            {
            case "Single":
                m_Info.ColorModeSelection = 1;

                SingleColorBg.Opacity   = 1;
                SingleColorBg.IsEnabled = true;

                DoubleColor.Opacity   = 0.5;
                DoubleColor.IsEnabled = false;

                RandomRangeSlider.Opacity   = 0.5;
                RandomRangeSlider.IsEnabled = false;
                RandomTextBlock.Opacity     = 0.5;
                break;

            case "Random":
                m_Info.ColorModeSelection = 2;

                SingleColorBg.Opacity   = 0.5;
                SingleColorBg.IsEnabled = false;

                DoubleColor.Opacity   = 0.5;
                DoubleColor.IsEnabled = false;

                RandomRangeSlider.Opacity   = 1;
                RandomRangeSlider.IsEnabled = true;
                RandomTextBlock.Opacity     = 1;
                break;

            case "DoubleRb":
                m_Info.ColorModeSelection = 4;

                SingleColorBg.Opacity   = 0.5;
                SingleColorBg.IsEnabled = false;

                DoubleColor.Opacity   = 1;
                DoubleColor.IsEnabled = true;

                RandomRangeSlider.Opacity   = 0.5;
                RandomRangeSlider.IsEnabled = false;
                RandomTextBlock.Opacity     = 0.5;
                break;
            }

            if (m_Info.ColorModeSelection != _currentColorModeSelectionValue)
            {
                _oldColorModeSelectionValue     = _currentColorModeSelectionValue;
                _currentColorModeSelectionValue = m_Info.ColorModeSelection;
                ReUndoManager.Store(new ColorModeSelectionChangeCommand(LayerPage.Self.CheckedEffect, _oldColorModeSelectionValue, _currentColorModeSelectionValue));
            }
        }
示例#12
0
        private void DefaultRainbow_Click(object sender, RoutedEventArgs e)
        {
            var oldSelect = mColorPatternVM.Select;

            MenuFlyoutItem mf        = sender as MenuFlyoutItem;
            var            newSelect = (int)Char.GetNumericValue(mf.Name[mf.Name.Length - 1]) - 1;

            mColorPatternVM.Select = newSelect;
            ReUndoManager.Store(new ColorPatternModifyCommand(mColorPatternVM.mInfoModel, null, null, oldSelect, newSelect));
        }
示例#13
0
        private async void ImportButton_Click(object sender, RoutedEventArgs e)
        {
            CanShowDeviceUpdateDialog = false;

            var inputFile = await ShowFileOpenPickerAsync();

            if (inputFile == null)
            {
                return;
            }

            ContentDialogResult result = ContentDialogResult.Secondary;

            if (NeedSave)
            {
                YesNoCancelDialog dialog = new YesNoCancelDialog
                {
                    DialogTitle               = resourceLoader.GetString("YesNoCancelDialog_SaveFile"),
                    DialogContent             = resourceLoader.GetString("YesNoCancelDialog_SaveHint"),
                    DialogYesButtonContent    = resourceLoader.GetString("YesNoCancelDialog_Save"),
                    DialogCancelButtonContent = resourceLoader.GetString("YesNoCancelDialog_Discard")
                };
                await dialog.ShowAsync();

                result = dialog.Result;
            }

            if (result != ContentDialogResult.None)
            {
                if (result == ContentDialogResult.Primary)
                {
                    bool successful = await SaveCurrentUserFile();

                    if (!successful)
                    {
                        return;
                    }

                    savedUndoCommand = ReUndoManager.CurUndoCommand;
                }

                StorageFile copyfile = await inputFile.CopyAsync(m_LocalUserFileFolder, inputFile.Name, NameCollisionOption.ReplaceExisting);

                await inputFile.CopyAsync(m_LocalUserFileFolder, inputFile.Name, NameCollisionOption.ReplaceExisting);

                Log.Debug("[ImportButton] CopyAsync " + inputFile.Path + " to " + m_LocalUserFileFolder + "\\" + inputFile.Name);

                CurrentUserFilename = copyfile.Name.Replace(".xml", "");
                await LoadUserFile(CurrentUserFilename);
                await SaveCurrentUserFile();

                ReUndoManager.Clear();
                SetLayerCounter = 1;
            }
        }
示例#14
0
 private void MaxThumb_DragCompleted(object sender, DragCompletedEventArgs e)
 {
     UpdateMaxThumb(RangeMax);
     Canvas.SetZIndex(MinThumb, 0);
     Canvas.SetZIndex(MaxThumb, 10);
     if (RangeMax != oldRangeMax)
     {
         ReUndoManager.Store(new RangeMaxChangeCommand(m_ForSliderCheckEffected, oldRangeMax, RangeMax));
         oldRangeMax = RangeMax;
     }
 }
示例#15
0
        private async Task LoadUserFile(string filename)
        {
            StorageFile localfile = await m_LocalUserFileFolder.CreateFileAsync(filename + ".xml", CreationCollisionOption.OpenIfExists);

            Clean();
            LoadContent(await LoadFile(localfile));

            SpacePage.SendSyncStateToService();
            SpacePage.RefreshStage();

            ReUndoManager.Clear();
        }
示例#16
0
        private void ColorModeSelection_Click(object sender, RoutedEventArgs e)
        {
            RadioButton colormodeselectionBtn = sender as RadioButton;

            switch (colormodeselectionBtn.Name)
            {
            case "Single":
                m_Info.ColorModeSelection = 1;

                TriggerColorPickerButtonBg.Opacity   = 1;
                TriggerColorPickerButtonBg.IsEnabled = true;

                RandomGroup.Opacity = 0.5;

                PatternGroup.Opacity    = 0.5;
                ColorPattern.IsEnabled  = false;
                PatternSwitch.IsEnabled = false;
                break;

            case "Random":
                m_Info.ColorModeSelection = 2;

                TriggerColorPickerButtonBg.Opacity   = 0.5;
                TriggerColorPickerButtonBg.IsEnabled = false;

                RandomGroup.Opacity = 1;

                PatternGroup.Opacity    = 0.5;
                ColorPattern.IsEnabled  = false;
                PatternSwitch.IsEnabled = false;
                break;

            case "Pattern":
                m_Info.ColorModeSelection = 3;

                TriggerColorPickerButtonBg.Opacity   = 0.5;
                TriggerColorPickerButtonBg.IsEnabled = false;

                RandomGroup.Opacity = 0.5;

                PatternGroup.Opacity    = 1;
                ColorPattern.IsEnabled  = true;
                PatternSwitch.IsEnabled = true;
                break;
            }

            if (m_Info.ColorModeSelection != _currentColorModeSelectionValue)
            {
                _oldColorModeSelectionValue     = _currentColorModeSelectionValue;
                _currentColorModeSelectionValue = m_Info.ColorModeSelection;
                ReUndoManager.Store(new ColorModeSelectionChangeCommand(m_Info, _oldColorModeSelectionValue, _currentColorModeSelectionValue));
            }
        }
示例#17
0
        private void AddEffectButton_Click(object sender, RoutedEventArgs e)
        {
            TriggerEffect effect = new TriggerEffect(GetCommonEffects().Length); // First trigger effect

            effect.Layer = m_Layer;
            m_EffectList.Add(effect);
            if (m_EffectList.Count != 0)
            {
                TriggerEffectTextBlock.Visibility = Visibility.Collapsed;
            }
            TriggerEffectListView.SelectedIndex = m_EffectList.Count - 1;
            ReUndoManager.Store(new AddEffectCommand(effect));
        }
示例#18
0
        private async void FileItem_Click(object sender, RoutedEventArgs e)
        {
            CanShowDeviceUpdateDialog = false;

            var    item         = sender as MenuFlyoutItem;
            string selectedName = item.Text;

            if (selectedName == CurrentUserFilename)
            {
                return;
            }

            ContentDialogResult result = ContentDialogResult.Secondary;

            if (NeedSave)
            {
                YesNoCancelDialog dialog = new YesNoCancelDialog
                {
                    DialogTitle               = resourceLoader.GetString("YesNoCancelDialog_SaveFile"),
                    DialogContent             = resourceLoader.GetString("YesNoCancelDialog_SaveHint"),
                    DialogYesButtonContent    = resourceLoader.GetString("YesNoCancelDialog_Save"),
                    DialogCancelButtonContent = resourceLoader.GetString("YesNoCancelDialog_Discard")
                };
                await dialog.ShowAsync();

                result = dialog.Result;
            }

            if (result != ContentDialogResult.None)
            {
                if (result == ContentDialogResult.Primary)
                {
                    bool successful = await SaveCurrentUserFile();

                    if (!successful)
                    {
                        return;
                    }

                    savedUndoCommand = ReUndoManager.CurUndoCommand;
                }

                Log.Debug("[FileItem_Click] Selected file name : " + selectedName);
                await LoadUserFile(selectedName);

                CurrentUserFilename = selectedName;

                ReUndoManager.Clear();
                SetLayerCounter = 1;
            }
        }
示例#19
0
        private void EditDoneButton_Click(object sender, RoutedEventArgs e)
        {
            if (SpacePage.GetSpaceStatus() == SpaceStatus.ReEditing)
            {
                LayerModel          layer    = LayerPage.CheckedLayer;
                DeviceZonesPairList oldpairs = new DeviceZonesPairList();
                DeviceZonesPairList newpairs = new DeviceZonesPairList();

                foreach (DeviceModel dm in SpacePage.DeviceModelCollection)
                {
                    var oldzones = layer.GetDeviceZones(dm.Type);
                    oldpairs.Add(new DevicZonesPair(dm.Type, oldzones));

                    List <int> selectedIndex = new List <int>();

                    foreach (var zone in dm.AllZones)
                    {
                        if (zone.Selected == true)
                        {
                            selectedIndex.Add(zone.Index);
                        }
                    }

                    layer.SetDeviceZones(dm.Type, selectedIndex.ToArray());
                    newpairs.Add(new DevicZonesPair(dm.Type, selectedIndex.ToArray()));
                }

                ReUndoManager.Store(new EditZonesCommand(layer, oldpairs, newpairs));
                SpacePage.WatchLayer(layer);
            }
            else // Sorting
            {
                var dmPositions = new Dictionary <DeviceModel, Tuple <double, double> >();

                foreach (var pair in oldSortingPositions)
                {
                    DeviceModel dm    = pair.Key;
                    double      moveX = dm.PixelLeft - pair.Value.X;
                    double      moveY = dm.PixelTop - pair.Value.Y;

                    SpacePage.Self.DeleteOverlappingTempDevice(dm);
                    SpacePage.Self.MoveMousePosition(dm, RoundToGrid(moveX), RoundToGrid(moveY));
                    dmPositions.Add(dm, new Tuple <double, double>(moveX, moveY));
                }

                ReUndoManager.Store(new MoveDevicesCommand(dmPositions));
                SpacePage.GoToBlankEditing();
            }

            MaskManager.GetInstance().ShowMask(MaskType.None);
        }
示例#20
0
        public async Task <Color> OpenColorPickerWindow(Color c, string ColorBgName)
        {
            ColorPickerDialog colorPickerDialog = new ColorPickerDialog(c);
            await colorPickerDialog.ShowAsync();

            if (colorPickerDialog.ColorPickerResult)
            {
                ReUndoManager.Store(new ColorChangeCommand(LayerPage.Self.CheckedEffect, ColorBgName, colorPickerDialog.PreColor, colorPickerDialog.CurrentColor));
                return(colorPickerDialog.CurrentColor);
            }
            else
            {
                return(colorPickerDialog.PreColor);
            }
        }
示例#21
0
        private void EffectLine_ManipulationCompleted(object sender, ManipulationCompletedRoutedEventArgs e)
        {
            _isPressed = false;
            m_ScrollTimerClock.Stop();
            LayerPage.Self.UpdateSupportLine(-1);

            if (elvm.Layer.ExceedIfApplyingEff(elvm))
            {
                if (mouseState == CursorState.SizeAll)
                {
                    EffectLeft = _undoValue;
                }
                else if (mouseState == CursorState.SizeLeft)
                {
                    double diff = _undoValue - EffectLeft;
                    EffectLeft   = _undoValue;
                    EffectWidth -= diff;
                }
                else if (mouseState == CursorState.SizeRight)
                {
                    EffectWidth = _undoValue;
                }

                // TODO : Show Dialog
            }
            else
            {
                double result     = elvm.Layer.ApplyEffect(elvm);
                var    containter = FindParentDependencyObject(this);
                containter.SetValue(Canvas.ZIndexProperty, 0);

                if (mouseState == CursorState.SizeAll)
                {
                    ReUndoManager.Store(new MoveEffectCommand(elvm, _undoValue, result));
                }
                else if (mouseState == CursorState.SizeLeft)
                {
                    ReUndoManager.Store(new WidthLeftEffectCommand(elvm, _undoValue, EffectLeft));
                }
                else if (mouseState == CursorState.SizeRight)
                {
                    ReUndoManager.Store(new WidthRightEffectCommand(elvm, _undoValue, EffectWidth));
                }
            }

            mouseState   = CursorState.None;
            this.Opacity = 1;
        }
示例#22
0
        public void DuplicateCheckedLayer()
        {
            if (CheckedLayer == null)
            {
                return;
            }

            ReUndoManager.Disable();
            int        index = Layers.IndexOf(CheckedLayer);
            LayerModel clone = LayerModel.Clone(CheckedLayer);

            Layers.Insert(index, clone);
            CheckedLayer = clone;
            ReUndoManager.Enable();

            ReUndoManager.Store(new AddLayerCommand(clone, index));
        }
示例#23
0
        private void TimelineEffectsChanged(object sender, NotifyCollectionChangedEventArgs e)
        {
            EffectLineViewModel model;

            switch (e.Action)
            {
            case NotifyCollectionChangedAction.Remove:
                model = e.OldItems[0] as EffectLineViewModel;
                ReUndoManager.Store(new RemoveEffectCommand(model));
                break;

            case NotifyCollectionChangedAction.Add:
                model = e.NewItems[0] as EffectLineViewModel;
                ReUndoManager.Store(new AddEffectCommand(model));
                break;
            }
        }
示例#24
0
        private void PushAllBehindEffect(EffectLineViewModel effect, double move)
        {
            foreach (EffectLineViewModel e in EffectLineViewModels)
            {
                if (effect.Equals(e))
                {
                    continue;
                }

                if (effect.Left <= e.Left)
                {
                    double target = e.Left + move;
                    e.MovePositionWithAnimation(target);
                    ReUndoManager.Store(new MoveEffectCommand(e, e.Left, target));
                }
            }
        }
示例#25
0
        public void OnCustomizeChanged()
        {
            var oldCPs = GetCustomizedLightData();

            SetColorPointBorders(CurrentColorPoints.ToList());

            CustomizeColorPoints.Clear();
            foreach (var cp in CurrentColorPoints)
            {
                CustomizeColorPoints.Add(ColorPointModel.Copy(cp));
            }

            var newCPs = GetCustomizedLightData();

            ReUndoManager.Store(new ColorPatternModifyCommand(mInfoModel, oldCPs, newCPs, Select, -1));

            Select = -1;
            RaisePropertyChanged("CurrentColorForground");
            RaisePropertyChanged("CustomizeColorForground");
        }
示例#26
0
        private void NameTextBox_LostFocus(object sender, RoutedEventArgs e)
        {
            if (NameTextBox.Text.Replace(" ", "") != "")
            {
                ReUndoManager.Store(new RenameCommand(m_Layer, NameTextBlock.Text, NameTextBox.Text));
                NameTextBlock.Text          = NameTextBox.Text;
                m_Layer.nameOfOriginalLayer = "";
                m_Layer.copy_count          = 0;
            }

            if (!RenameRightTapped)
            {
                NameTextBlock.Visibility = Visibility.Visible;
                NameTextBox.Visibility   = Visibility.Collapsed;
            }
            else
            {
                NameTextBox.Focus(FocusState.Programmatic);
                RenameRightTapped = false;
            }
        }
示例#27
0
        private void EffectSelected(object sender, RoutedEventArgs e)
        {
            var    item         = sender as MenuFlyoutItem;
            string selectedName = item.Name;

            if (selectedName == EffectSelectionButton.Content as string)
            {
                return;
            }

            _oldEffectInfoModel = new EffectInfoModel(m_TriggerEffect.Info);

            int type = GetEffIdxByEng(selectedName);

            m_TriggerEffect.ChangeType(type);
            ColorPattern.DataContext = new ColorPatternViewModel(m_Info);
            SetColorMode(m_TriggerEffect.Info);

            _currentEffectInfoModel = new EffectInfoModel(m_TriggerEffect.Info);
            ReUndoManager.Store(new EffectSelectedCommand(m_TriggerEffect, _oldEffectInfoModel, _currentEffectInfoModel));
        }
示例#28
0
        private void ActionButton_Click(object sender, RoutedEventArgs e)
        {
            var    item           = sender as MenuFlyoutItem;
            string selectedAction = item.Name;

            if (selectedAction == "Click")
            {
                TriggerActionButton.Content = resourceLoader.GetString("One_Click_Text");
            }
            else if (selectedAction == "Double_Click")
            {
                TriggerActionButton.Content = resourceLoader.GetString("Double_Click_Text");
            }
            m_Layer.TriggerAction = selectedAction;

            if (_currentActionSelected != selectedAction)
            {
                _oldActionSelected     = _currentActionSelected;
                _currentActionSelected = selectedAction;
                ReUndoManager.Store(new ActionSelectedCommand(_oldActionSelected, _currentActionSelected));
            }
        }
示例#29
0
        private void RainbowRoatationSwitch_Toggled(object sender, RoutedEventArgs e)
        {
            if (m_Info.RainbowSpecialEffects != RainbowRoatationSwitch.IsOn)
            {
                ReUndoManager.Store(new RainbowSpecialEffectOnOffCommand(LayerPage.Self.CheckedEffect, RainbowRoatationSwitch.IsOn));
            }

            if (RainbowRoatationSwitch.IsOn == true)
            {
                m_Info.RainbowSpecialEffects = true;
                AngleGridCC.IsEnabled        = false;
                AngleGridCC.Opacity          = 0.5;
                ClockwiseRbtCC.IsEnabled     = true;
                ClockwiseRbtCC.Opacity       = 1;
            }
            else
            {
                m_Info.RainbowSpecialEffects = false;
                AngleGridCC.IsEnabled        = true;
                AngleGridCC.Opacity          = 1;
                ClockwiseRbtCC.IsEnabled     = false;
                ClockwiseRbtCC.Opacity       = 0.5;
            }
        }
示例#30
0
 public void InsertLayer(LayerModel layer, int idx)
 {
     Layers.Insert(idx, layer);
     ReUndoManager.Store(new AddLayerCommand(layer, idx));
 }