private void PopulateDocumentList(ResourceList list)
        {
            lstResources.Clear();
            SortedList <string, ResourceListResourceDocument> items = new SortedList <string, ResourceListResourceDocument>();

            foreach (var item in list.Items)
            {
                var doc = item as ResourceListResourceDocument;
                if (doc != null)
                {
                    string sortKey = doc.Name + "." + doc.ResourceType;
                    items.Add(sortKey, doc);
                }
            }
            foreach (var doc in items.Values)
            {
                var li = new ListViewItem(doc.Name);
                li.Tag = doc;

                try
                {
                    var rt = ResourceIdentifier.GetResourceTypeAsString(doc.ResourceId);
                    li.ImageIndex = RepositoryIcons.GetImageIndexForResourceType(rt);
                }
                catch
                {
                    li.ImageIndex = RepositoryIcons.RES_UNKNOWN;
                }

                lstResources.Items.Add(li);
            }
        }
Example #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PackageEditorDialog"/> class.
 /// </summary>
 /// <param name="filename">The filename.</param>
 /// <param name="conn">The conn.</param>
 public PackageEditorDialog(string filename, IServerConnection conn)
     : this()
 {
     _conn                  = conn;
     m_filename             = filename;
     m_resources            = new Dictionary <string, ResourceItem>();
     ResourceTree.ImageList = RepositoryIcons.CreateImageList();              //owner.ResourceEditorMap.SmallImageList;
     ResourceDataFileList.SmallImageList = RepositoryIcons.CreateImageList(); //ResourceEditors.ShellIcons.ImageList;
 }
Example #3
0
        private void RebuildTree()
        {
            ResourceTree.Nodes.Clear();
            TreeNode root = ResourceTree.Nodes.Add("Library://");

            root.ImageIndex = root.SelectedImageIndex = RepositoryIcons.RES_ROOT;

            foreach (ResourceItem ri in m_resources.Values)
            {
                string   partial = ri.ResourcePath.Substring(root.Text.Length);
                string[] parts   = partial.Split('/');
                TreeNode cur     = root;
                root.Expand();

                for (int i = 0; i < parts.Length - 1; i++)
                {
                    TreeNode next = null;
                    foreach (TreeNode n in cur.Nodes)
                    {
                        if (n.Text == parts[i])
                        {
                            next = n;
                            break;
                        }
                    }
                    if (next == null)
                    {
                        cur            = cur.Nodes.Add(parts[i]);
                        cur.ImageIndex = cur.SelectedImageIndex = RepositoryIcons.RES_FOLDER;
                    }
                    else
                    {
                        cur = next;
                    }

                    cur.Expand();
                }

                if (parts[parts.Length - 1].Trim().Length > 0)
                {
                    TreeNode n = cur.Nodes.Add(parts[parts.Length - 1]);
                    n.Tag        = ri;
                    n.ImageIndex = n.SelectedImageIndex = RepositoryIcons.GetImageIndexForResourceType(ResourceIdentifier.GetResourceTypeAsString(ri.ResourcePath));
                }
                else
                {
                    cur.Tag = ri;
                }
            }
        }
 public RepositoryModelItem(IRepositoryItem item)
 {
     _item = item;
     if (this.IsRoot)
     {
         this.ImageIndex = RepositoryIcons.RES_ROOT;
     }
     else
     {
         if (this.IsFolder)
         {
             this.ImageIndex = RepositoryIcons.RES_FOLDER;
         }
         else
         {
             this.ImageIndex = RepositoryIcons.GetImageIndexForResourceType(_item.ResourceType);
         }
     }
 }
Example #5
0
        private void AddResourceButton_Click(object sender, EventArgs e)
        {
            var dlg = new AddResourceEntryDialog();

            if (dlg.ShowDialog(this) == DialogResult.OK)
            {
                int          imageindex = RepositoryIcons.GetImageIndexForResourceType(Path.GetExtension(dlg.ResourceName).Replace(".", ""));
                TreeNode     n          = new TreeNode(dlg.ResourceName, imageindex, imageindex);
                ResourceItem i          = new ResourceItem("", dlg.HeaderFilepath, dlg.ContentFilepath);
                i.EntryType = EntryTypeEnum.Added;
                n.Tag       = i;

                if (ResourceTree.SelectedNode == null || ResourceTree.SelectedNode.Parent == null)
                {
                    ResourceTree.Nodes[0].Nodes.Add(n);
                }
                else if (ResourceTree.SelectedNode.Tag as ResourceItem != null)
                {
                    if ((ResourceTree.SelectedNode.Tag as ResourceItem).IsFolder)
                    {
                        ResourceTree.SelectedNode.Nodes.Add(n);
                    }
                    else if (ResourceTree.SelectedNode.Parent == null)
                    {
                        ResourceTree.Nodes[0].Nodes.Add(n);
                    }
                    else
                    {
                        ResourceTree.SelectedNode.Parent.Nodes.Add(n);
                    }
                }

                n.EnsureVisible();
                ResourceTree.SelectedNode = n;
                ResourceTree.Focus();
            }
        }
 /// <summary>
 /// Raises the Load event
 /// </summary>
 /// <param name="e"></param>
 protected override void OnLoad(EventArgs e)
 {
     base.OnLoad(e);
     RepositoryIcons.PopulateImageList(resImageList);
 }
 private ResourcePicker()
 {
     InitializeComponent();
     RepositoryIcons.PopulateImageList(resImageList);
     RepositoryIcons.PopulateImageList(folderImageList);
 }