Browse Source

snk files now have an icon when displayed in the IDE.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@3192 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Justin Dearing 18 years ago
parent
commit
ea4459b6ce
  1. 5
      AddIns/ICSharpCode.SharpDevelop.addin
  2. 91
      src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/TreeModel/Adapters/TreeViewVarNode.cs
  3. BIN
      src/Main/StartUp/Project/Resources/BitmapResources.resources

5
AddIns/ICSharpCode.SharpDevelop.addin

@ -2099,9 +2099,12 @@ @@ -2099,9 +2099,12 @@
extensions = ".txt,.doc"
resource = "Icons.16x16.TextFileIcon"/>
<Icon id = "CssFileIcon"
<Icon id= "CssFileIcon"
extensions = ".css"
resource = "Icons.16x16.CSSIcon"/>
<Icon id = "StrongNameKeyFileIcon"
extensions = ".snk"
resource = "Icons.16x16.StrongNameKeyFileIcon"/>
</Path>
<Path name = "/SharpDevelop/Workbench/MainMenu/View">

91
src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/TreeModel/Adapters/TreeViewVarNode.cs

@ -11,6 +11,7 @@ using System.Drawing; @@ -11,6 +11,7 @@ using System.Drawing;
using System.Windows.Forms;
using Aga.Controls.Tree;
using Aga.Controls.Tree.NodeControls;
using Debugger.Util;
@ -19,6 +20,96 @@ using ICSharpCode.SharpDevelop.Gui.Pads; @@ -19,6 +20,96 @@ using ICSharpCode.SharpDevelop.Gui.Pads;
namespace Debugger.AddIn.TreeModel
{
public sealed class ItemIcon: NodeIcon {
protected override System.Drawing.Image GetIcon(TreeNodeAdv node)
{
return ((TreeViewVarNode)node).Content.Image;
}
}
public sealed class ItemName: NodeTextBox {
protected override bool CanEdit(TreeNodeAdv node)
{
return false;
}
public override object GetValue(TreeNodeAdv node)
{
if (node is TreeViewVarNode) {
return ((TreeViewVarNode)node).Content.Name;
} else {
// Happens during incremental search
return base.GetValue(node);
}
}
}
public sealed class ItemText: NodeTextBox {
public ItemText()
{
this.EditEnabled = true;
this.EditOnClick = true;
}
protected override bool CanEdit(TreeNodeAdv node)
{
AbstractNode content = ((TreeViewVarNode)node).Content;
return (content is ISetText) && ((ISetText)content).CanSetText;
}
public override object GetValue(TreeNodeAdv node)
{
if (node is TreeViewVarNode) {
return ((TreeViewVarNode)node).Content.Text;
} else {
// Happens during incremental search
return base.GetValue(node);
}
}
public override void SetValue(TreeNodeAdv node, object value)
{
ISetText content = (ISetText)((TreeViewVarNode)node).Content;
if (content.CanSetText) {
content.SetText(value.ToString());
}
}
protected override void OnDrawText(DrawEventArgs args)
{
AbstractNode content = ((TreeViewVarNode)args.Node).Content;
if (content is ErrorNode) {
args.TextColor = Color.Red;
} else if (((TreeViewVarNode)args.Node).TextChanged) {
args.TextColor = Color.Blue;
}
base.OnDrawText(args);
}
public override void MouseDown(TreeNodeAdvMouseEventArgs args)
{
AbstractNode content = ((TreeViewVarNode)args.Node).Content;
if (content is IContextMenu && args.Button == MouseButtons.Right) {
ContextMenuStrip menu = ((IContextMenu)content).GetContextMenu();
if (menu != null) {
menu.Show(args.Node.Tree, args.Location);
}
} else {
base.MouseDown(args);
}
}
}
public sealed class ItemType: NodeTextBox {
protected override bool CanEdit(TreeNodeAdv node)
{
return false;
}
public override object GetValue(TreeNodeAdv node)
{
if (node is TreeViewVarNode) {
return ((TreeViewVarNode)node).Content.Type;
} else {
// Happens during incremental search
return base.GetValue(node);
}
}
}
/// <summary>
/// A child class of TreeNodeAdv that displays exceptions.
/// </summary>

BIN
src/Main/StartUp/Project/Resources/BitmapResources.resources

Binary file not shown.
Loading…
Cancel
Save