Exemplo n.º 1
0
 private void LogicalFoldersTreeView_AfterLabelEdit(object sender, NodeLabelEditEventArgs e)
 {
     if (e.Label != null)
     {
         if (e.Label == string.Empty)
         {
             e.CancelEdit = true;
             return;
         }
         LogicalFolder lf = e.Node.Tag as LogicalFolder;
         if (e.Node.Parent != null)
         {
             LogicalFolder parentFolder = e.Node.Parent.Tag as LogicalFolder;
             if (!parentFolder.ValidSubFolderName(e.Label))
             {
                 e.CancelEdit = true;
                 MessageBox.Show("Folder name contains invalid chars or is not unique.", ProductName, MessageBoxButtons.OK, MessageBoxIcon.Hand);
             }
             else
             {
                 lf.Name = e.Label;
                 OnLogicalFolderUpdated();
             }
         }
         else // nie mo¿na edytowaæ folderów root
         {
             e.CancelEdit = true;
         }
     }
 }
Exemplo n.º 2
0
        void cmDeleteFolder_Click(object sender, EventArgs e)
        {
            TreeNode selectedNode = SelectedNode;

            if (selectedNode != null)
            {
                if (selectedNode.Parent != null)
                {
                    if (MessageBox.Show("Are you sure to delete selected folder?", ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        LogicalFolder selectedLogicalFolder = selectedNode.Tag as LogicalFolder;
                        selectedNode.Remove();
                        if (selectedLogicalFolder.Parent != null)
                        {
                            selectedLogicalFolder.Parent.RemoveFolder(selectedLogicalFolder);
                        }
                        else
                        {
                            FrmMain.Database.RemoveLogicalFolder(selectedLogicalFolder);
                        }
                        OnLogicalFolderDeleted();
                    }
                }
                else
                {
                    MessageBox.Show("Can't delete this folder.", ProductName, MessageBoxButtons.OK, MessageBoxIcon.Hand);
                }
            }
        }
Exemplo n.º 3
0
        void cmEditFolder_Click(object sender, EventArgs e)
        {
            TreeNode selectedNode = SelectedNode;

            if (selectedNode != null)
            {
                // LogicalFolder parent;
                if (selectedNode.Parent != null)
                {
                    LogicalFolder     selectedLogicalFolder = selectedNode.Tag as LogicalFolder;
                    LogicalFolder     parent = selectedNode.Parent.Tag as LogicalFolder;
                    LogicalFolderInfo info   = new LogicalFolderInfo(selectedLogicalFolder.Name, selectedLogicalFolder.FolderType, selectedLogicalFolder.MaxSizeSelected, selectedLogicalFolder.MaxSize, selectedLogicalFolder.GetSize(), selectedLogicalFolder.Description);
                    using (DlgEditLogicalFolder dlg = new DlgEditLogicalFolder(info, ilFolders, parent)) {
                        if (dlg.ShowDialog() == DialogResult.OK)
                        {
                            info = dlg.Properties;
                            selectedLogicalFolder.Name            = info.Name;
                            selectedLogicalFolder.MaxSize         = info.MaxSize;
                            selectedLogicalFolder.MaxSizeSelected = info.MaxSizeSelected;
                            selectedLogicalFolder.Description     = info.Description;
                            updateSelectedNodeProperties(selectedNode, selectedLogicalFolder);
                            OnLogicalFolderUpdated();
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Can't edit this folder.", ProductName, MessageBoxButtons.OK, MessageBoxIcon.Hand);
                }
            }
        }
Exemplo n.º 4
0
    private void AddReplacement(LogicalFolder logicalFolder)
    {
        var key   = "$(" + logicalFolder.Name + ")";
        var value = logicalFolder.Folder;

        if (Replacements.ContainsKey(key))
        {
            throw new Exception($"Logical folder {key} is already mapped");
        }
        Replacements.Add(key, value);
    }
Exemplo n.º 5
0
        private TreeNode addToLogicalFoldersTreeView(TreeNode selectedNode, LogicalFolder parentLogicalFolder, LogicalFolder newFolder)
        {
            parentLogicalFolder.AddFolder(newFolder);
            TreeNode newNode = new TreeNode(newFolder.Name);

            newNode.ImageIndex = newNode.SelectedImageIndex = (int)newFolder.FolderType;
            selectedNode.Nodes.Add(newNode);
            newNode.Tag = newFolder;
            newNode.EnsureVisible();
            SelectedNode = newNode;
            return(newNode);
        }
Exemplo n.º 6
0
        void cmNewFolder_Click(object sender, EventArgs e)
        {
            TreeNode selectedNode = SelectedNode;

            if (selectedNode != null)
            {
                LogicalFolder selectedLogicalFolder = selectedNode.Tag as LogicalFolder;
                LogicalFolder newFolder             = new LogicalFolder(selectedLogicalFolder.FolderType);
                TreeNode      newNode = addToLogicalFoldersTreeView(selectedNode, selectedLogicalFolder, newFolder);
                newNode.BeginEdit();
                OnNewLogicalFolderAdded();
            }
        }
Exemplo n.º 7
0
 private static void updateSelectedNodeProperties(TreeNode selectedNode, LogicalFolder changedFolder)
 {
     selectedNode.Text       = changedFolder.Name;
     selectedNode.ImageIndex = selectedNode.SelectedImageIndex = (int)changedFolder.FolderType;
 }