public override void SetupDisplay()
        {
            base.SetupDisplay();
            bool bIsXP = !(Environment.OSVersion.Platform == PlatformID.Win32NT && Environment.OSVersion.Version.Major >= 6);

            if (bIsXP || !Common.AppSettings.Instance.UseGroups)
            {
                svGroups.Visibility  = System.Windows.Visibility.Collapsed;
                lbGroups.ItemsSource = null;
                ViewModels.SourceGroupModel grp = (this.DataContext as ViewModels.MainViewModel).SignalGroups.FirstOrDefault();
                if (grp == null)
                {
                    Common.SignalGroup sigGrp = new Common.SignalGroup()
                    {
                        GroupId = Guid.Empty, DisplayOrder = 0, GroupName = "Default", GroupMuted = false, GroupColorString = string.Empty
                    };
                    Common.AppSettings.Instance.SignalGroups.Add(sigGrp);
                    Common.AppSettings.Instance.SaveSettingsFile();
                    grp = new ViewModels.SourceGroupModel(sigGrp);
                }
                xpSourcesView.ItemsSource = grp.SignalSources;
                svXp.Visibility           = Visibility.Visible;
            }
            else
            {
                svGroups.Visibility      = System.Windows.Visibility.Visible;
                lbGroups.ItemsSource     = (this.DataContext as ViewModels.MainViewModel).SignalGroups;
                xpSourcesView.Visibility = System.Windows.Visibility.Collapsed;
                svXp.Visibility          = System.Windows.Visibility.Collapsed;
            }
        }
示例#2
0
 public override void SetupDisplay()
 {
     base.SetupDisplay();
     bool bIsXP = !(Environment.OSVersion.Platform == PlatformID.Win32NT && Environment.OSVersion.Version.Major >= 6);
     if (bIsXP || !Common.AppSettings.Instance.UseGroups)
     {
         svGroups.Visibility = System.Windows.Visibility.Collapsed;
         lbGroups.ItemsSource = null;
         ViewModels.SourceGroupModel grp = (this.DataContext as ViewModels.MainViewModel).SignalGroups.FirstOrDefault();
         if (grp == null)
         {
             Common.SignalGroup sigGrp = new Common.SignalGroup() { GroupId = Guid.Empty, DisplayOrder = 0, GroupName = "Default", GroupMuted = false, GroupColorString = string.Empty };
             Common.AppSettings.Instance.SignalGroups.Add(sigGrp);
             Common.AppSettings.Instance.SaveSettingsFile();
             grp = new ViewModels.SourceGroupModel(sigGrp);
         }
         xpSourcesView.ItemsSource = grp.SignalSources;
         svXp.Visibility = Visibility.Visible;
     }
     else
     {
         svGroups.Visibility = System.Windows.Visibility.Visible;
         lbGroups.ItemsSource = (this.DataContext as ViewModels.MainViewModel).SignalGroups;
         xpSourcesView.Visibility = System.Windows.Visibility.Collapsed;
         svXp.Visibility = System.Windows.Visibility.Collapsed;
     }
 }
        private void DragDropProviderItemsControl_Drop(object sender, DragEventArgs e)
        {
            ViewModels.SourceGroupModel grp = GetGroupModelFromSender(sender);
            if (grp == null)
            {
                return;
            }

            RadioLog.ViewModels.BaseSourceModel src = GetSourceModelFromDrop(e);
            if (src == null)
            {
                return;
            }

            e.Handled = true;

            if (src.SrcInfo.GroupId == GetGroupModelFromSender(sender).GroupId)
            {
                //could be re-ordering...
                RadioLog.ViewModels.BaseSourceModel tgt = GetTargetModelFromDrop(sender, e);
                if (tgt != null)
                {
                    ViewModels.BaseSourceModel[]      curModels = grp.SignalSources.ToArray();
                    List <ViewModels.BaseSourceModel> tmpList   = new List <ViewModels.BaseSourceModel>(curModels);
                    if (tmpList.Contains(src) && tmpList.Contains(tgt))
                    {
                        tmpList.Remove(src);
                        int indx = tmpList.IndexOf(tgt);
                        indx = Math.Max(indx, 0);
                        if (indx < (tmpList.Count - 2))
                        {
                            tmpList.Insert(indx, src);
                        }
                        else
                        {
                            tmpList.Add(src);
                        }
                        for (int i = 0; i < tmpList.Count; i++)
                        {
                            tmpList[i].DisplayOrder = ((i + 1) * 10);
                        }
                        Common.AppSettings.Instance.SaveSettingsFile();
                        grp.SignalSources.Sort();
                    }
                }

                return;
            }

            src.SrcInfo.GroupId = grp.GroupId;
            src.GroupInfo       = grp.GroupInfo;
            Common.AppSettings.Instance.SaveSettingsFile();
            Common.SignalSourceGroupChangeHolder changeHolder = new Common.SignalSourceGroupChangeHolder()
            {
                SignalSourceId = src.SrcInfo.SourceId, NewGroupId = grp.GroupId
            };
            Cinch.Mediator.Instance.NotifyColleagues <Common.SignalSourceGroupChangeHolder>("SOURCE_GROUP_CHANGE", changeHolder);
        }
 private void btnGroupSettings_Click(object sender, RoutedEventArgs e)
 {
     ViewModels.SourceGroupModel grp = GetDataContextFromButtonClick(sender, e) as ViewModels.SourceGroupModel;
     if (grp == null)
     {
         return;
     }
     Windows.GroupEditorDialog.ShowGroupEditorDialog(grp.GroupInfo);
 }