2 // System.Drawing.Design.IToolboxService.cs
5 // Alejandro Sánchez Acosta <raciel@es.gnu.org>
6 // Andreas Nahr (ClassDevelopment@A-SoftTech.com)
8 // (C) Alejandro Sánchez Acosta
9 // (C) 2003 Andreas Nahr
13 // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
15 // Permission is hereby granted, free of charge, to any person obtaining
16 // a copy of this software and associated documentation files (the
17 // "Software"), to deal in the Software without restriction, including
18 // without limitation the rights to use, copy, modify, merge, publish,
19 // distribute, sublicense, and/or sell copies of the Software, and to
20 // permit persons to whom the Software is furnished to do so, subject to
21 // the following conditions:
23 // The above copyright notice and this permission notice shall be
24 // included in all copies or substantial portions of the Software.
26 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
27 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
28 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
29 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
30 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
31 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
32 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
35 using System
.Collections
;
36 using System
.ComponentModel
.Design
;
37 using System
.Runtime
.InteropServices
;
39 namespace System
.Drawing
.Design
41 [Guid("4BACD258-DE64-4048-BC4E-FEDBEF9ACB76"),
42 InterfaceType(ComInterfaceType
.InterfaceIsIUnknown
)]
43 public interface IToolboxService
45 CategoryNameCollection CategoryNames {get;}
47 string SelectedCategory {get; set;}
49 void AddCreator (ToolboxItemCreatorCallback creator
, string format
);
51 void AddCreator (ToolboxItemCreatorCallback creator
, string format
, IDesignerHost host
);
53 void AddLinkedToolboxItem (ToolboxItem toolboxItem
, IDesignerHost host
);
55 void AddLinkedToolboxItem (ToolboxItem toolboxItem
, string category
, IDesignerHost host
);
57 void AddToolboxItem (ToolboxItem toolboxItem
, String category
);
59 void AddToolboxItem (ToolboxItem toolboxItem
);
61 ToolboxItem
DeserializeToolboxItem (object serializedObject
);
63 ToolboxItem
DeserializeToolboxItem (object serializedObject
, IDesignerHost host
);
65 ToolboxItem
GetSelectedToolboxItem ();
67 ToolboxItem
GetSelectedToolboxItem (IDesignerHost host
);
69 ToolboxItemCollection
GetToolboxItems ();
71 ToolboxItemCollection
GetToolboxItems (IDesignerHost host
);
73 ToolboxItemCollection
GetToolboxItems (String category
);
75 ToolboxItemCollection
GetToolboxItems (String category
, IDesignerHost host
);
77 bool IsSupported (object serializedObject
, ICollection filterAttributes
);
79 bool IsSupported (object serializedObject
, IDesignerHost host
);
81 bool IsToolboxItem (object serializedObject
);
83 bool IsToolboxItem (object serializedObject
, IDesignerHost host
);
87 void RemoveCreator (string format
);
89 void RemoveCreator (string format
, IDesignerHost host
);
91 void RemoveToolboxItem (ToolboxItem toolboxItem
);
93 void RemoveToolboxItem (ToolboxItem toolboxItem
, string category
);
95 void SelectedToolboxItemUsed ();
97 object SerializeToolboxItem (ToolboxItem toolboxItem
);
101 void SetSelectedToolboxItem (ToolboxItem toolboxItem
);