コード例 #1
0
ファイル: MainViewModel.cs プロジェクト: sqirrel99/FreeMi
        /// <summary>
        /// Add new folder
        /// </summary>
        /// <param name="itemKey">key of the item to add</param>
        protected void New(string itemKey)
        {
            var selectedItem     = SelectedItem;
            var parentCollection = (selectedItem == null || !(selectedItem is FolderViewModel) ? Entries : ((FolderViewModel)selectedItem).Children);
            var newItem          = new TreeViewItemViewModelFactory().CreateTreeViewItemViewModel(this,
                                                                                                  (Entry)Activator.CreateInstance(Type.GetType("FreeMi.Core.Entries." + itemKey + ", FreeMi.Core")));

            parentCollection.Add(newItem);
            if (selectedItem is FolderViewModel)
            {
                ((FolderViewModel)selectedItem).IsExpanded = true;
            }
            newItem.IsSelected = true;
        }
コード例 #2
0
        /// <summary>
        /// Initializes a new instance of the FolderViewModel class
        /// </summary>
        /// <param name="mainViewModel">main view model</param>
        /// <param name="folder">folder</param>
        public FolderViewModel(MainViewModel mainViewModel, Folder folder)
            : base(mainViewModel, folder)
        {
            var children = new TreeViewItemViewModelCollection(this);

            Children = children;
            ITreeViewItemViewModel       itemViewModel;
            TreeViewItemViewModelFactory factory = null;

            foreach (var child in folder.Children)
            {
                if (factory == null)
                {
                    factory = new TreeViewItemViewModelFactory();
                }
                itemViewModel = factory.CreateTreeViewItemViewModel(mainViewModel, child);
                children.Add(itemViewModel);
            }
        }
コード例 #3
0
ファイル: MainViewModel.cs プロジェクト: sqirrel99/FreeMi
        private void Init()
        {
            var entries = new TreeViewItemViewModelCollection(null);
            var factory = new TreeViewItemViewModelFactory();

            foreach (var entry in Settings.Default.Entries)
            {
                entries.Add(factory.CreateTreeViewItemViewModel(this, entry));
            }
            var treeViewItemViewModel = entries.FirstOrDefault();

            if (treeViewItemViewModel != null)
            {
                treeViewItemViewModel.IsSelected = true;
            }
            Entries = entries;

            if (RunAtWindowsStartupVisible && !Application.IsMono)
            {
                try
                {
                    var rkApp = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", false);
                    try
                    {
                        object value = rkApp.GetValue(Application.ProductName, false);
                        RunAtWindowsStartup = (value is string && (string)value == Application.ExecutablePath);
                    }
                    finally
                    {
                        rkApp.Close();
                    }
                }
                catch (Exception)
                {
                }
            }
        }