📄 ganttdatabinder3.pas
字号:
{*******************************************************************}
{ }
{ Delphi XML Data Binding }
{ }
{ Generated on: 20/04/2007 10:56:42 }
{ Generated from: D:\Fish Soft\Gantt Creator\GanttModel.xml }
{ Settings stored in: D:\Fish Soft\Gantt Creator\GanttModel.xdb }
{ }
{*******************************************************************}
unit GanttDataBinder3;
interface
uses xmldom, XMLDoc, XMLIntf;
type
{ Forward Decls }
IXMLRoot_ElementType = interface;
IXMLGantt_ChartType = interface;
IXMLGantt_Chart_DetailsType = interface;
IXMLGantt_ProjectsType = interface;
IXMLGantt_ProjectType = interface;
IXMLGantt_Project_ItemsType = interface;
IXMLProject_ItemType = interface;
IXMLItem_BrushType = interface;
IXMLItem_PenType = interface;
IXMLItem_LinkType = interface;
{ IXMLRoot_ElementType }
IXMLRoot_ElementType = interface(IXMLNode)
['{0197FE8E-8C86-49A3-ABF3-929975CB8E2F}']
{ Property Accessors }
function Get_Gantt_Chart: IXMLGantt_ChartType;
{ Methods & Properties }
property Gantt_Chart: IXMLGantt_ChartType read Get_Gantt_Chart;
end;
{ IXMLGantt_ChartType }
IXMLGantt_ChartType = interface(IXMLNode)
['{68D48272-6325-4A95-94B1-875DB6AE7CB0}']
{ Property Accessors }
function Get_Gantt_Chart_Details: IXMLGantt_Chart_DetailsType;
function Get_Gantt_Projects: IXMLGantt_ProjectsType;
{ Methods & Properties }
property Gantt_Chart_Details: IXMLGantt_Chart_DetailsType read Get_Gantt_Chart_Details;
property Gantt_Projects: IXMLGantt_ProjectsType read Get_Gantt_Projects;
end;
{ IXMLGantt_Chart_DetailsType }
IXMLGantt_Chart_DetailsType = interface(IXMLNode)
['{2DAC9625-4E04-44D6-B364-E126C5673879}']
{ Property Accessors }
function Get_Gantt_Title: WideString;
function Get_Start_Month: Integer;
function Get_Number_of_Months: Integer;
function Get_Project_Title_Colour: WideString;
function Get_Project_Height: Integer;
function Get_Day_Width: Integer;
function Get_Shadow_Colour: WideString;
function Get_Gantt_Version: WideString;
procedure Set_Gantt_Title(Value: WideString);
procedure Set_Start_Month(Value: Integer);
procedure Set_Number_of_Months(Value: Integer);
procedure Set_Project_Title_Colour(Value: WideString);
procedure Set_Project_Height(Value: Integer);
procedure Set_Day_Width(Value: Integer);
procedure Set_Shadow_Colour(Value: WideString);
procedure Set_Gantt_Version(Value: WideString);
{ Methods & Properties }
property Gantt_Title: WideString read Get_Gantt_Title write Set_Gantt_Title;
property Start_Month: Integer read Get_Start_Month write Set_Start_Month;
property Number_of_Months: Integer read Get_Number_of_Months write Set_Number_of_Months;
property Project_Title_Colour: WideString read Get_Project_Title_Colour write Set_Project_Title_Colour;
property Project_Height: Integer read Get_Project_Height write Set_Project_Height;
property Day_Width: Integer read Get_Day_Width write Set_Day_Width;
property Shadow_Colour: WideString read Get_Shadow_Colour write Set_Shadow_Colour;
property Gantt_Version: WideString read Get_Gantt_Version write Set_Gantt_Version;
end;
{ IXMLGantt_ProjectsType }
IXMLGantt_ProjectsType = interface(IXMLNodeCollection)
['{0707B6F5-324C-4DA6-B734-BA68C0408EC5}']
{ Property Accessors }
function Get_Gantt_Project(Index: Integer): IXMLGantt_ProjectType;
{ Methods & Properties }
function Add: IXMLGantt_ProjectType;
function Insert(const Index: Integer): IXMLGantt_ProjectType;
property Gantt_Project[Index: Integer]: IXMLGantt_ProjectType read Get_Gantt_Project; default;
end;
{ IXMLGantt_ProjectType }
IXMLGantt_ProjectType = interface(IXMLNode)
['{EAAB338F-D8B4-4D89-BC71-B4F49300F0F4}']
{ Property Accessors }
function Get_Gantt_Project_Name: WideString;
function Get_Gantt_Project_Resource1: WideString;
function Get_Gantt_Project_Resource2: WideString;
function Get_Gantt_Project_Items: IXMLGantt_Project_ItemsType;
procedure Set_Gantt_Project_Name(Value: WideString);
procedure Set_Gantt_Project_Resource1(Value: WideString);
procedure Set_Gantt_Project_Resource2(Value: WideString);
{ Methods & Properties }
property Gantt_Project_Name: WideString read Get_Gantt_Project_Name write Set_Gantt_Project_Name;
property Gantt_Project_Resource1: WideString read Get_Gantt_Project_Resource1 write Set_Gantt_Project_Resource1;
property Gantt_Project_Resource2: WideString read Get_Gantt_Project_Resource2 write Set_Gantt_Project_Resource2;
property Gantt_Project_Items: IXMLGantt_Project_ItemsType read Get_Gantt_Project_Items;
end;
{ IXMLGantt_Project_ItemsType }
IXMLGantt_Project_ItemsType = interface(IXMLNodeCollection)
['{104892A3-9DDE-4700-B5BB-BC0BDC389FF1}']
{ Property Accessors }
function Get_Project_Item(Index: Integer): IXMLProject_ItemType;
{ Methods & Properties }
function Add: IXMLProject_ItemType;
function Insert(const Index: Integer): IXMLProject_ItemType;
property Project_Item[Index: Integer]: IXMLProject_ItemType read Get_Project_Item; default;
end;
{ IXMLProject_ItemType }
IXMLProject_ItemType = interface(IXMLNode)
['{20A0AB91-EC5C-4F33-B34C-3BA6438D3848}']
{ Property Accessors }
function Get_Item_Name: WideString;
function Get_Item_Type: WideString;
function Get_Item_Status: WideString;
function Get_Item_Percent_Completed: Integer;
function Get_Item_Colour: WideString;
function Get_Item_Start_Date: WideString;
function Get_Item_Days: Integer;
function Get_Item_Brush: IXMLItem_BrushType;
function Get_Item_Pen: IXMLItem_PenType;
function Get_Item_Link: IXMLItem_LinkType;
procedure Set_Item_Name(Value: WideString);
procedure Set_Item_Type(Value: WideString);
procedure Set_Item_Status(Value: WideString);
procedure Set_Item_Percent_Completed(Value: Integer);
procedure Set_Item_Colour(Value: WideString);
procedure Set_Item_Start_Date(Value: WideString);
procedure Set_Item_Days(Value: Integer);
{ Methods & Properties }
property Item_Name: WideString read Get_Item_Name write Set_Item_Name;
property Item_Type: WideString read Get_Item_Type write Set_Item_Type;
property Item_Status: WideString read Get_Item_Status write Set_Item_Status;
property Item_Percent_Completed: Integer read Get_Item_Percent_Completed write Set_Item_Percent_Completed;
property Item_Colour: WideString read Get_Item_Colour write Set_Item_Colour;
property Item_Start_Date: WideString read Get_Item_Start_Date write Set_Item_Start_Date;
property Item_Days: Integer read Get_Item_Days write Set_Item_Days;
property Item_Brush: IXMLItem_BrushType read Get_Item_Brush;
property Item_Pen: IXMLItem_PenType read Get_Item_Pen;
property Item_Link: IXMLItem_LinkType read Get_Item_Link;
end;
{ IXMLItem_BrushType }
IXMLItem_BrushType = interface(IXMLNode)
['{888A4162-95E5-443F-BC47-AB8AB5BFC99D}']
{ Property Accessors }
function Get_Item_Brush_Colour: WideString;
function Get_Item_Brush_Style: WideString;
procedure Set_Item_Brush_Colour(Value: WideString);
procedure Set_Item_Brush_Style(Value: WideString);
{ Methods & Properties }
property Item_Brush_Colour: WideString read Get_Item_Brush_Colour write Set_Item_Brush_Colour;
property Item_Brush_Style: WideString read Get_Item_Brush_Style write Set_Item_Brush_Style;
end;
{ IXMLItem_PenType }
IXMLItem_PenType = interface(IXMLNode)
['{ED1BB30F-0718-4CB7-BCF2-5836FFD712DD}']
{ Property Accessors }
function Get_Item_Pen_Colour: WideString;
function Get_Item_Pen_Size: Integer;
procedure Set_Item_Pen_Colour(Value: WideString);
procedure Set_Item_Pen_Size(Value: Integer);
{ Methods & Properties }
property Item_Pen_Colour: WideString read Get_Item_Pen_Colour write Set_Item_Pen_Colour;
property Item_Pen_Size: Integer read Get_Item_Pen_Size write Set_Item_Pen_Size;
end;
{ IXMLItem_LinkType }
IXMLItem_LinkType = interface(IXMLNode)
['{D19A95AB-6C78-47BA-AE04-E061699FC80C}']
{ Property Accessors }
function Get_Project_ID: Integer;
function Get_Item_ID: Integer;
function Get_Link_Type : String;
procedure Set_Project_ID(Value: Integer);
procedure Set_Item_ID(Value: Integer);
procedure Set_Link_Type(Value : String);
{ Methods & Properties }
property Project_ID: Integer read Get_Project_ID write Set_Project_ID;
property Item_ID: Integer read Get_Item_ID write Set_Item_ID;
property Link_Type: String read Get_Link_Type write Set_Link_Type;
end;
{ Forward Decls }
TXMLRoot_ElementType = class;
TXMLGantt_ChartType = class;
TXMLGantt_Chart_DetailsType = class;
TXMLGantt_ProjectsType = class;
TXMLGantt_ProjectType = class;
TXMLGantt_Project_ItemsType = class;
TXMLProject_ItemType = class;
TXMLItem_BrushType = class;
TXMLItem_PenType = class;
TXMLItem_LinkType = class;
{ TXMLRoot_ElementType }
TXMLRoot_ElementType = class(TXMLNode, IXMLRoot_ElementType)
protected
{ IXMLRoot_ElementType }
function Get_Gantt_Chart: IXMLGantt_ChartType;
public
procedure AfterConstruction; override;
end;
{ TXMLGantt_ChartType }
TXMLGantt_ChartType = class(TXMLNode, IXMLGantt_ChartType)
protected
{ IXMLGantt_ChartType }
function Get_Gantt_Chart_Details: IXMLGantt_Chart_DetailsType;
function Get_Gantt_Projects: IXMLGantt_ProjectsType;
public
procedure AfterConstruction; override;
end;
{ TXMLGantt_Chart_DetailsType }
TXMLGantt_Chart_DetailsType = class(TXMLNode, IXMLGantt_Chart_DetailsType)
protected
{ IXMLGantt_Chart_DetailsType }
function Get_Gantt_Title: WideString;
function Get_Start_Month: Integer;
function Get_Number_of_Months: Integer;
function Get_Project_Title_Colour: WideString;
function Get_Project_Height: Integer;
function Get_Day_Width: Integer;
function Get_Shadow_Colour: WideString;
function Get_Gantt_Version: WideString;
procedure Set_Gantt_Title(Value: WideString);
procedure Set_Start_Month(Value: Integer);
procedure Set_Number_of_Months(Value: Integer);
procedure Set_Project_Title_Colour(Value: WideString);
procedure Set_Project_Height(Value: Integer);
procedure Set_Day_Width(Value: Integer);
procedure Set_Shadow_Colour(Value: WideString);
procedure Set_Gantt_Version(Value: WideString);
end;
{ TXMLGantt_ProjectsType }
TXMLGantt_ProjectsType = class(TXMLNodeCollection, IXMLGantt_ProjectsType)
protected
{ IXMLGantt_ProjectsType }
function Get_Gantt_Project(Index: Integer): IXMLGantt_ProjectType;
function Add: IXMLGantt_ProjectType;
function Insert(const Index: Integer): IXMLGantt_ProjectType;
public
procedure AfterConstruction; override;
end;
{ TXMLGantt_ProjectType }
TXMLGantt_ProjectType = class(TXMLNode, IXMLGantt_ProjectType)
protected
{ IXMLGantt_ProjectType }
function Get_Gantt_Project_Name: WideString;
function Get_Gantt_Project_Resource1: WideString;
function Get_Gantt_Project_Resource2: WideString;
function Get_Gantt_Project_Items: IXMLGantt_Project_ItemsType;
procedure Set_Gantt_Project_Name(Value: WideString);
procedure Set_Gantt_Project_Resource1(Value: WideString);
procedure Set_Gantt_Project_Resource2(Value: WideString);
public
procedure AfterConstruction; override;
end;
{ TXMLGantt_Project_ItemsType }
TXMLGantt_Project_ItemsType = class(TXMLNodeCollection, IXMLGantt_Project_ItemsType)
protected
{ IXMLGantt_Project_ItemsType }
function Get_Project_Item(Index: Integer): IXMLProject_ItemType;
function Add: IXMLProject_ItemType;
function Insert(const Index: Integer): IXMLProject_ItemType;
public
procedure AfterConstruction; override;
end;
{ TXMLProject_ItemType }
TXMLProject_ItemType = class(TXMLNode, IXMLProject_ItemType)
protected
{ IXMLProject_ItemType }
function Get_Item_Name: WideString;
function Get_Item_Type: WideString;
function Get_Item_Status: WideString;
function Get_Item_Percent_Completed: Integer;
function Get_Item_Colour: WideString;
function Get_Item_Start_Date: WideString;
function Get_Item_Days: Integer;
function Get_Item_Brush: IXMLItem_BrushType;
function Get_Item_Pen: IXMLItem_PenType;
function Get_Item_Link: IXMLItem_LinkType;
procedure Set_Item_Name(Value: WideString);
procedure Set_Item_Type(Value: WideString);
procedure Set_Item_Status(Value: WideString);
procedure Set_Item_Percent_Completed(Value: Integer);
procedure Set_Item_Colour(Value: WideString);
procedure Set_Item_Start_Date(Value: WideString);
procedure Set_Item_Days(Value: Integer);
public
procedure AfterConstruction; override;
end;
{ TXMLItem_BrushType }
TXMLItem_BrushType = class(TXMLNode, IXMLItem_BrushType)
protected
{ IXMLItem_BrushType }
function Get_Item_Brush_Colour: WideString;
function Get_Item_Brush_Style: WideString;
procedure Set_Item_Brush_Colour(Value: WideString);
procedure Set_Item_Brush_Style(Value: WideString);
end;
{ TXMLItem_PenType }
TXMLItem_PenType = class(TXMLNode, IXMLItem_PenType)
protected
{ IXMLItem_PenType }
function Get_Item_Pen_Colour: WideString;
function Get_Item_Pen_Size: Integer;
procedure Set_Item_Pen_Colour(Value: WideString);
procedure Set_Item_Pen_Size(Value: Integer);
end;
{ TXMLItem_LinkType }
TXMLItem_LinkType = class(TXMLNode, IXMLItem_LinkType)
protected
{ IXMLItem_LinkType }
function Get_Project_ID: Integer;
function Get_Item_ID: Integer;
function Get_Link_Type : String;
procedure Set_Project_ID(Value: Integer);
procedure Set_Item_ID(Value: Integer);
procedure Set_Link_Type(Value : String);
end;
{ Global Functions }
function GetRoot_Element(Doc: IXMLDocument): IXMLRoot_ElementType;
function LoadRoot_Element(const FileName: WideString): IXMLRoot_ElementType;
function NewRoot_Element: IXMLRoot_ElementType;
implementation
{ Global Functions }
function GetRoot_Element(Doc: IXMLDocument): IXMLRoot_ElementType;
begin
Result := Doc.GetDocBinding('Root_Element', TXMLRoot_ElementType) as IXMLRoot_ElementType;
end;
function LoadRoot_Element(const FileName: WideString): IXMLRoot_ElementType;
begin
Result := LoadXMLDocument(FileName).GetDocBinding('Root_Element', TXMLRoot_ElementType) as IXMLRoot_ElementType;
end;
function NewRoot_Element: IXMLRoot_ElementType;
begin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -