Type Library Editor : Options Editor for customization.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4189 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
inoussa
2015-06-13 12:33:36 +00:00
parent 15a0e9c9c2
commit 22e5adbb82
7 changed files with 256 additions and 121 deletions

View File

@ -33,7 +33,7 @@
<PackageName Value="SynEdit"/>
</Item2>
</RequiredPackages>
<Units Count="24">
<Units Count="25">
<Unit0>
<Filename Value="typ_lib_edtr.lpr"/>
<IsPartOfProject Value="True"/>
@ -44,7 +44,6 @@
<ComponentName Value="fWstTypeLibraryEdit"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="uwsttypelibraryedit"/>
</Unit1>
<Unit2>
<Filename Value="uabout.pas"/>
@ -52,7 +51,6 @@
<ComponentName Value="fAbout"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="uabout"/>
</Unit2>
<Unit3>
<Filename Value="ufenumedit.pas"/>
@ -65,17 +63,14 @@
<Unit4>
<Filename Value="view_helper.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="view_helper"/>
</Unit4>
<Unit5>
<Filename Value="..\ws_helper\source_utils.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="source_utils"/>
</Unit5>
<Unit6>
<Filename Value="edit_helper.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="edit_helper"/>
</Unit6>
<Unit7>
<Filename Value="ufclassedit.pas"/>
@ -83,7 +78,6 @@
<ComponentName Value="fClassEdit"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="ufclassedit"/>
</Unit7>
<Unit8>
<Filename Value="ufpropedit.pas"/>
@ -91,7 +85,6 @@
<ComponentName Value="fPropEdit"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="ufpropedit"/>
</Unit8>
<Unit9>
<Filename Value="uinterfaceedit.pas"/>
@ -99,7 +92,6 @@
<ComponentName Value="fInterfaceEdit"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="uinterfaceedit"/>
</Unit9>
<Unit10>
<Filename Value="udm.pas"/>
@ -107,17 +99,14 @@
<ComponentName Value="DM"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="DataModule"/>
<UnitName Value="udm"/>
</Unit10>
<Unit11>
<Filename Value="..\ws_helper\pascal_parser_intf.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="pascal_parser_intf"/>
</Unit11>
<Unit12>
<Filename Value="..\ws_helper\generator.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="generator"/>
</Unit12>
<Unit13>
<Filename Value="uprocedit.pas"/>
@ -125,12 +114,10 @@
<ComponentName Value="fProcEdit"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="uprocedit"/>
</Unit13>
<Unit14>
<Filename Value="common_gui_utils.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="common_gui_utils"/>
</Unit14>
<Unit15>
<Filename Value="uargedit.pas"/>
@ -138,21 +125,19 @@
<ComponentName Value="fArgEdit"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="uargedit"/>
</Unit15>
<Unit16>
<Filename Value="umoduleedit.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="fModuleEdit"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="umoduleedit"/>
</Unit16>
<Unit17>
<Filename Value="ubindingedit.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="fBindingEdit"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="ubindingedit"/>
</Unit17>
<Unit18>
<Filename Value="ufrmsaveoption.pas"/>
@ -160,7 +145,6 @@
<ComponentName Value="frmSaveOptions"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="ufrmsaveoption"/>
</Unit18>
<Unit19>
<Filename Value="ufarrayedit.pas"/>
@ -168,7 +152,6 @@
<ComponentName Value="fArrayEdit"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="ufarrayedit"/>
</Unit19>
<Unit20>
<Filename Value="uftypealiasedit.pas"/>
@ -176,7 +159,6 @@
<ComponentName Value="fTypeAliasEdit"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="uftypealiasedit"/>
</Unit20>
<Unit21>
<Filename Value="ufrecordedit.pas"/>
@ -184,18 +166,21 @@
<ComponentName Value="fRecordEdit"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="ufrecordedit"/>
</Unit21>
<Unit22>
<Filename Value="..\ws_helper\wsdl_generator.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="wsdl_generator"/>
</Unit22>
<Unit23>
<Filename Value="..\ws_helper\xsd_parser.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="xsd_parser"/>
</Unit23>
<Unit24>
<Filename Value="ueditoptions.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="fEditOptions"/>
<ResourceBaseClass Value="Form"/>
</Unit24>
</Units>
</ProjectOptions>
<CompilerOptions>
@ -225,11 +210,7 @@
</Options>
</Linking>
<Other>
<CompilerMessages>
<UseMsgFile Value="True"/>
</CompilerMessages>
<CustomOptions Value="-dWST_HANDLE_DOC"/>
<CompilerPath Value="$(CompPath)"/>
</Other>
</CompilerOptions>
</CONFIG>

View File

@ -12,7 +12,7 @@ uses
edit_helper, ufclassedit, ufpropedit, uinterfaceedit, udm,
pascal_parser_intf, uprocedit, common_gui_utils, uargedit,
umoduleedit, ubindingedit, ufrmsaveoption, ufarrayedit, generator,
uftypealiasedit, ufrecordedit, wsdl_generator, xsd_parser;
uftypealiasedit, ufrecordedit, wsdl_generator, xsd_parser, ueditoptions;
begin
Application.Initialize;

View File

@ -5,10 +5,14 @@ unit udm;
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Dialogs, IniFiles;
Classes, SysUtils, LResources, Forms, Controls, Dialogs, IniFiles,
pascal_parser_intf;
{$IFNDEF WST_IDE}
const
SECTION_OPTIONS = 'Options';
CASE_SENSITIVE = 'CaseSensitive';
STRING_MAPPING = 'StringMapping';
{$IFNDEF WST_IDE}
sLAST_PATH = 'LastPath';
{$ENDIF WST_IDE}
@ -23,12 +27,20 @@ type
FOptions : TMemIniFile;
function GetOtions: TCustomIniFile;
{$ENDIF WST_IDE}
private
FXsdStringMaping : TXSDStringMaping;
FCaseSensitive : Boolean;
private
procedure LoadOptions(AStore : TCustomIniFile);
procedure SaveOptions(AStore : TCustomIniFile);
public
constructor Create(AOwner : TComponent);override;
destructor Destroy();override;
{$IFNDEF WST_IDE}
property Options : TCustomIniFile read GetOtions;
{$ENDIF WST_IDE}
property XsdStringMaping : TXSDStringMaping read FXsdStringMaping write FXsdStringMaping default xsmUnicodeString;
property CaseSensitive : Boolean read FCaseSensitive write FCaseSensitive default CASE_SENSITIVE_DEFAULT;
end;
var
@ -47,11 +59,30 @@ begin
end;
{$ENDIF WST_IDE}
procedure TDM.LoadOptions(AStore: TCustomIniFile);
var
i : Integer;
begin
i := AStore.ReadInteger(SECTION_OPTIONS,STRING_MAPPING,Ord(XsdStringMaping));
if (i >= Ord(Low(TXSDStringMaping))) and (i <= Ord(High(TXSDStringMaping))) then
XsdStringMaping := TXSDStringMaping(i);
CaseSensitive := AStore.ReadBool(SECTION_OPTIONS,CASE_SENSITIVE,CaseSensitive);
end;
procedure TDM.SaveOptions(AStore: TCustomIniFile);
begin
AStore.WriteInteger(SECTION_OPTIONS,STRING_MAPPING,Ord(XsdStringMaping));
AStore.WriteBool(SECTION_OPTIONS,CASE_SENSITIVE,CaseSensitive);
end;
constructor TDM.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FXsdStringMaping := xsmUnicodeString;
FCaseSensitive := CASE_SENSITIVE_DEFAULT;
{$IFNDEF WST_IDE}
FOptions := TMemIniFile.Create(ChangeFileExt(GetAppConfigFile(False),'.ini'));
LoadOptions(FOptions);
{$ENDIF WST_IDE}
end;
@ -59,6 +90,7 @@ destructor TDM.Destroy();
begin
{$IFNDEF WST_IDE}
if ( FOptions <> nil ) then begin
SaveOptions(FOptions);
if not DirectoryExists(FOptions.FileName) then
ForceDirectories(ExtractFileDir(FOptions.FileName));
FOptions.UpdateFile();

View File

@ -0,0 +1,99 @@
object fEditOptions: TfEditOptions
Left = 755
Height = 233
Top = 221
Width = 448
BorderStyle = bsSizeToolWin
Caption = 'Options'
ClientHeight = 233
ClientWidth = 448
OnCreate = FormCreate
Position = poDesktopCenter
LCLVersion = '1.4.1.0'
object Panel1: TPanel
Left = 0
Height = 50
Top = 183
Width = 448
Align = alBottom
ClientHeight = 50
ClientWidth = 448
TabOrder = 0
object Button1: TButton
Left = 358
Height = 25
Top = 14
Width = 75
Anchors = [akTop, akRight]
BorderSpacing.InnerBorder = 4
Cancel = True
Caption = 'Cancel'
ModalResult = 2
TabOrder = 0
end
object Button2: TButton
Left = 270
Height = 25
Top = 14
Width = 75
Action = actOK
Anchors = [akTop, akRight]
BorderSpacing.InnerBorder = 4
Default = True
TabOrder = 1
end
end
object Panel2: TPanel
Left = 0
Height = 183
Top = 0
Width = 448
Align = alClient
ClientHeight = 183
ClientWidth = 448
TabOrder = 1
object edtStringType: TRadioGroup
Left = 16
Height = 105
Top = 16
Width = 416
Anchors = [akTop, akLeft, akRight]
AutoFill = True
Caption = ' String Type '
ChildSizing.LeftRightSpacing = 6
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.ShrinkHorizontal = crsScaleChilds
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 1
ClientHeight = 87
ClientWidth = 412
ItemIndex = 0
Items.Strings = (
'UnicodeString'
'String'
)
TabOrder = 0
end
object edtCaseSensitive: TCheckBox
Left = 16
Height = 17
Top = 147
Width = 90
Caption = 'Case Sensitive'
Checked = True
State = cbChecked
TabOrder = 1
end
end
object AL: TActionList
left = 248
top = 80
object actOK: TAction
Caption = 'OK'
OnExecute = actOKExecute
OnUpdate = actOKUpdate
end
end
end

View File

@ -0,0 +1,71 @@
unit ueditoptions;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ActnList,
ExtCtrls, StdCtrls;
type
{ TfEditOptions }
TfEditOptions = class(TForm)
actOK: TAction;
AL: TActionList;
Button1: TButton;
Button2: TButton;
edtCaseSensitive: TCheckBox;
Panel1: TPanel;
Panel2: TPanel;
edtStringType: TRadioGroup;
procedure actOKExecute(Sender: TObject);
procedure actOKUpdate(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
fEditOptions: TfEditOptions;
implementation
uses
pascal_parser_intf, udm;
{$R *.lfm}
{ TfEditOptions }
procedure TfEditOptions.actOKExecute(Sender: TObject);
var
i : Integer;
begin
DM.CaseSensitive := edtCaseSensitive.Checked;
i := edtStringType.ItemIndex;
if (i >= Ord(Low(TXSDStringMaping))) and (i <= Ord(High(TXSDStringMaping))) then
DM.XsdStringMaping := TXSDStringMaping(i);
ModalResult := mrOk;
end;
procedure TfEditOptions.actOKUpdate(Sender: TObject);
var
i : Integer;
begin
i := edtStringType.ItemIndex;
TCustomAction(Sender).Enabled :=
(i >= Ord(Low(TXSDStringMaping))) and (i <= Ord(High(TXSDStringMaping)));
end;
procedure TfEditOptions.FormCreate(Sender: TObject);
begin
edtCaseSensitive.Checked := DM.CaseSensitive;
edtStringType.ItemIndex := Ord(DM.XsdStringMaping);
end;
end.

View File

@ -1,7 +1,7 @@
object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
Left = 287
Left = 311
Height = 644
Top = 196
Top = 82
Width = 833
AllowDropFiles = True
Caption = '[Web Services Toolkit ] Type Library Editor'
@ -12,7 +12,7 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
OnDropFiles = FormDropFiles
OnShow = FormShow
Position = poDesktopCenter
LCLVersion = '1.2.5.0'
LCLVersion = '1.4.1.0'
object SB: TStatusBar
Left = 0
Height = 20
@ -503,7 +503,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
VisibleSpecialChars = [vscSpace, vscTabAtLast]
ReadOnly = True
SelectedColor.FrameEdges = sfeAround
SelectedColor.BackPriority = 50
SelectedColor.ForePriority = 50
SelectedColor.FramePriority = 50
@ -511,23 +510,17 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
SelectedColor.ItalicPriority = 50
SelectedColor.UnderlinePriority = 50
SelectedColor.StrikeOutPriority = 50
IncrementColor.FrameEdges = sfeAround
HighlightAllColor.FrameEdges = sfeAround
BracketHighlightStyle = sbhsBoth
BracketMatchColor.Background = clNone
BracketMatchColor.Foreground = clNone
BracketMatchColor.FrameEdges = sfeAround
BracketMatchColor.Style = [fsBold]
FoldedCodeColor.Background = clNone
FoldedCodeColor.Foreground = clGray
FoldedCodeColor.FrameColor = clGray
FoldedCodeColor.FrameEdges = sfeAround
MouseLinkColor.Background = clNone
MouseLinkColor.Foreground = clBlue
MouseLinkColor.FrameEdges = sfeAround
LineHighlightColor.Background = clNone
LineHighlightColor.Foreground = clNone
LineHighlightColor.FrameEdges = sfeAround
inline TSynGutterPartList
object TSynGutterMarks
Width = 24
@ -538,7 +531,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clBtnFace
MarkupInfo.Foreground = clNone
MarkupInfo.FrameEdges = sfeAround
DigitCount = 2
ShowOnlyLineNumbersMultiplesOf = 1
ZeroStart = False
@ -555,7 +547,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clWhite
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
end
object TSynGutterCodeFolding
MouseActions = <
@ -586,7 +577,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
MarkupInfo.Background = clNone
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
MouseActionsExpanded = <
item
ClickCount = ccAny
@ -1048,7 +1038,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
VisibleSpecialChars = [vscSpace, vscTabAtLast]
ReadOnly = True
SelectedColor.FrameEdges = sfeAround
SelectedColor.BackPriority = 50
SelectedColor.ForePriority = 50
SelectedColor.FramePriority = 50
@ -1056,23 +1045,17 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
SelectedColor.ItalicPriority = 50
SelectedColor.UnderlinePriority = 50
SelectedColor.StrikeOutPriority = 50
IncrementColor.FrameEdges = sfeAround
HighlightAllColor.FrameEdges = sfeAround
BracketHighlightStyle = sbhsBoth
BracketMatchColor.Background = clNone
BracketMatchColor.Foreground = clNone
BracketMatchColor.FrameEdges = sfeAround
BracketMatchColor.Style = [fsBold]
FoldedCodeColor.Background = clNone
FoldedCodeColor.Foreground = clGray
FoldedCodeColor.FrameColor = clGray
FoldedCodeColor.FrameEdges = sfeAround
MouseLinkColor.Background = clNone
MouseLinkColor.Foreground = clBlue
MouseLinkColor.FrameEdges = sfeAround
LineHighlightColor.Background = clNone
LineHighlightColor.Foreground = clNone
LineHighlightColor.FrameEdges = sfeAround
inline TSynGutterPartList
object TSynGutterMarks
Width = 24
@ -1083,7 +1066,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clBtnFace
MarkupInfo.Foreground = clNone
MarkupInfo.FrameEdges = sfeAround
DigitCount = 2
ShowOnlyLineNumbersMultiplesOf = 1
ZeroStart = False
@ -1100,7 +1082,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clWhite
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
end
object TSynGutterCodeFolding
MouseActions = <
@ -1131,7 +1112,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
MarkupInfo.Background = clNone
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
MouseActionsExpanded = <
item
ClickCount = ccAny
@ -1593,7 +1573,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
VisibleSpecialChars = [vscSpace, vscTabAtLast]
ReadOnly = True
SelectedColor.FrameEdges = sfeAround
SelectedColor.BackPriority = 50
SelectedColor.ForePriority = 50
SelectedColor.FramePriority = 50
@ -1601,23 +1580,17 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
SelectedColor.ItalicPriority = 50
SelectedColor.UnderlinePriority = 50
SelectedColor.StrikeOutPriority = 50
IncrementColor.FrameEdges = sfeAround
HighlightAllColor.FrameEdges = sfeAround
BracketHighlightStyle = sbhsBoth
BracketMatchColor.Background = clNone
BracketMatchColor.Foreground = clNone
BracketMatchColor.FrameEdges = sfeAround
BracketMatchColor.Style = [fsBold]
FoldedCodeColor.Background = clNone
FoldedCodeColor.Foreground = clGray
FoldedCodeColor.FrameColor = clGray
FoldedCodeColor.FrameEdges = sfeAround
MouseLinkColor.Background = clNone
MouseLinkColor.Foreground = clBlue
MouseLinkColor.FrameEdges = sfeAround
LineHighlightColor.Background = clNone
LineHighlightColor.Foreground = clNone
LineHighlightColor.FrameEdges = sfeAround
inline TSynGutterPartList
object TSynGutterMarks
Width = 24
@ -1628,7 +1601,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clBtnFace
MarkupInfo.Foreground = clNone
MarkupInfo.FrameEdges = sfeAround
DigitCount = 2
ShowOnlyLineNumbersMultiplesOf = 1
ZeroStart = False
@ -1645,7 +1617,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clWhite
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
end
object TSynGutterCodeFolding
MouseActions = <
@ -1676,7 +1647,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
MarkupInfo.Background = clNone
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
MouseActionsExpanded = <
item
ClickCount = ccAny
@ -2138,7 +2108,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
VisibleSpecialChars = [vscSpace, vscTabAtLast]
ReadOnly = True
SelectedColor.FrameEdges = sfeAround
SelectedColor.BackPriority = 50
SelectedColor.ForePriority = 50
SelectedColor.FramePriority = 50
@ -2146,23 +2115,17 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
SelectedColor.ItalicPriority = 50
SelectedColor.UnderlinePriority = 50
SelectedColor.StrikeOutPriority = 50
IncrementColor.FrameEdges = sfeAround
HighlightAllColor.FrameEdges = sfeAround
BracketHighlightStyle = sbhsBoth
BracketMatchColor.Background = clNone
BracketMatchColor.Foreground = clNone
BracketMatchColor.FrameEdges = sfeAround
BracketMatchColor.Style = [fsBold]
FoldedCodeColor.Background = clNone
FoldedCodeColor.Foreground = clGray
FoldedCodeColor.FrameColor = clGray
FoldedCodeColor.FrameEdges = sfeAround
MouseLinkColor.Background = clNone
MouseLinkColor.Foreground = clBlue
MouseLinkColor.FrameEdges = sfeAround
LineHighlightColor.Background = clNone
LineHighlightColor.Foreground = clNone
LineHighlightColor.FrameEdges = sfeAround
inline TSynGutterPartList
object TSynGutterMarks
Width = 24
@ -2173,7 +2136,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clBtnFace
MarkupInfo.Foreground = clNone
MarkupInfo.FrameEdges = sfeAround
DigitCount = 2
ShowOnlyLineNumbersMultiplesOf = 1
ZeroStart = False
@ -2190,7 +2152,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clWhite
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
end
object TSynGutterCodeFolding
MouseActions = <
@ -2221,7 +2182,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
MarkupInfo.Background = clNone
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
MouseActionsExpanded = <
item
ClickCount = ccAny
@ -2683,7 +2643,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
VisibleSpecialChars = [vscSpace, vscTabAtLast]
ReadOnly = True
SelectedColor.FrameEdges = sfeAround
SelectedColor.BackPriority = 50
SelectedColor.ForePriority = 50
SelectedColor.FramePriority = 50
@ -2691,23 +2650,17 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
SelectedColor.ItalicPriority = 50
SelectedColor.UnderlinePriority = 50
SelectedColor.StrikeOutPriority = 50
IncrementColor.FrameEdges = sfeAround
HighlightAllColor.FrameEdges = sfeAround
BracketHighlightStyle = sbhsBoth
BracketMatchColor.Background = clNone
BracketMatchColor.Foreground = clNone
BracketMatchColor.FrameEdges = sfeAround
BracketMatchColor.Style = [fsBold]
FoldedCodeColor.Background = clNone
FoldedCodeColor.Foreground = clGray
FoldedCodeColor.FrameColor = clGray
FoldedCodeColor.FrameEdges = sfeAround
MouseLinkColor.Background = clNone
MouseLinkColor.Foreground = clBlue
MouseLinkColor.FrameEdges = sfeAround
LineHighlightColor.Background = clNone
LineHighlightColor.Foreground = clNone
LineHighlightColor.FrameEdges = sfeAround
inline TSynGutterPartList
object TSynGutterMarks
Width = 24
@ -2718,7 +2671,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clBtnFace
MarkupInfo.Foreground = clNone
MarkupInfo.FrameEdges = sfeAround
DigitCount = 2
ShowOnlyLineNumbersMultiplesOf = 1
ZeroStart = False
@ -2735,7 +2687,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clWhite
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
end
object TSynGutterCodeFolding
MouseActions = <
@ -2766,7 +2717,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
MarkupInfo.Background = clNone
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
MouseActionsExpanded = <
item
ClickCount = ccAny
@ -3271,7 +3221,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
VisibleSpecialChars = [vscSpace, vscTabAtLast]
ReadOnly = True
SelectedColor.FrameEdges = sfeAround
SelectedColor.BackPriority = 50
SelectedColor.ForePriority = 50
SelectedColor.FramePriority = 50
@ -3279,23 +3228,17 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
SelectedColor.ItalicPriority = 50
SelectedColor.UnderlinePriority = 50
SelectedColor.StrikeOutPriority = 50
IncrementColor.FrameEdges = sfeAround
HighlightAllColor.FrameEdges = sfeAround
BracketHighlightStyle = sbhsBoth
BracketMatchColor.Background = clNone
BracketMatchColor.Foreground = clNone
BracketMatchColor.FrameEdges = sfeAround
BracketMatchColor.Style = [fsBold]
FoldedCodeColor.Background = clNone
FoldedCodeColor.Foreground = clGray
FoldedCodeColor.FrameColor = clGray
FoldedCodeColor.FrameEdges = sfeAround
MouseLinkColor.Background = clNone
MouseLinkColor.Foreground = clBlue
MouseLinkColor.FrameEdges = sfeAround
LineHighlightColor.Background = clNone
LineHighlightColor.Foreground = clNone
LineHighlightColor.FrameEdges = sfeAround
inline TSynGutterPartList
object TSynGutterMarks
Width = 24
@ -3306,7 +3249,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clBtnFace
MarkupInfo.Foreground = clNone
MarkupInfo.FrameEdges = sfeAround
DigitCount = 2
ShowOnlyLineNumbersMultiplesOf = 1
ZeroStart = False
@ -3323,7 +3265,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
MouseActions = <>
MarkupInfo.Background = clWhite
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
end
object TSynGutterCodeFolding
MouseActions = <
@ -3354,7 +3295,6 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end>
MarkupInfo.Background = clNone
MarkupInfo.Foreground = clGray
MarkupInfo.FrameEdges = sfeAround
MouseActionsExpanded = <
item
ClickCount = ccAny
@ -3441,6 +3381,7 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end
object ToolButton3: TToolButton
Left = 93
Height = 22
Top = 2
Width = 5
Caption = 'ToolButton3'
@ -3478,6 +3419,7 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end
object ToolButton11: TToolButton
Left = 241
Height = 22
Top = 2
Width = 5
Caption = 'ToolButton11'
@ -3495,6 +3437,7 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end
object ToolButton13: TToolButton
Left = 338
Height = 22
Top = 2
Width = 5
Caption = 'ToolButton13'
@ -3527,6 +3470,7 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end
object ToolButton19: TToolButton
Left = 121
Height = 22
Top = 2
Width = 5
Caption = 'ToolButton19'
@ -3641,6 +3585,12 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
Action = actDelete
OnClick = actDeleteExecute
end
object MenuItem57: TMenuItem
Caption = '-'
end
object MenuItem58: TMenuItem
Action = actShowOptions
end
end
object MenuItem6: TMenuItem
Action = actAbout
@ -3789,6 +3739,11 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
OnExecute = actAddXsdImportExecute
OnUpdate = actAddXsdImportUpdate
end
object actShowOptions: TAction
Caption = 'Options ...'
ImageIndex = 9
OnExecute = actShowOptionsExecute
end
end
object OD: TOpenDialog
Filter = 'wsdl files(*.wsdl)|*.wsdl|Pascal file (*.pas)|*.pas|XSD files ( *.xsd )|*.xsd|WDSL files(*.WSDL)|*.WSDL'
@ -3799,22 +3754,11 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
end
object SynPasSyn1: TSynPasSyn
Enabled = False
AsmAttri.FrameEdges = sfeAround
CommentAttri.Foreground = clBlue
CommentAttri.FrameEdges = sfeAround
CommentAttri.Style = [fsBold]
IDEDirectiveAttri.FrameEdges = sfeAround
IdentifierAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
StringAttri.Foreground = clMaroon
StringAttri.FrameEdges = sfeAround
SymbolAttri.FrameEdges = sfeAround
SymbolAttri.Style = [fsBold]
CaseLabelAttri.FrameEdges = sfeAround
DirectiveAttri.Foreground = clGreen
DirectiveAttri.FrameEdges = sfeAround
DirectiveAttri.Style = [fsBold]
CompilerMode = pcmDelphi
NestedComments = True
@ -4738,20 +4682,7 @@ object fWstTypeLibraryEdit: TfWstTypeLibraryEdit
DefaultFilter = 'Documents WSDL (*.wsdl)|*.wsdl'
Enabled = False
ElementAttri.Foreground = clNavy
ElementAttri.FrameEdges = sfeAround
AttributeAttri.FrameEdges = sfeAround
NamespaceAttributeAttri.FrameEdges = sfeAround
AttributeValueAttri.Foreground = clPurple
AttributeValueAttri.FrameEdges = sfeAround
NamespaceAttributeValueAttri.FrameEdges = sfeAround
TextAttri.FrameEdges = sfeAround
CDATAAttri.FrameEdges = sfeAround
EntityRefAttri.FrameEdges = sfeAround
ProcessingInstructionAttri.FrameEdges = sfeAround
CommentAttri.FrameEdges = sfeAround
DocTypeAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
SymbolAttri.FrameEdges = sfeAround
WantBracesParsed = False
left = 466
top = 252

View File

@ -43,6 +43,7 @@ type
actEditSearch : TAction;
actClone : TAction;
actAddXsdImport : TAction;
actShowOptions: TAction;
actSaveXSD : TAction;
actTreeSearch : TAction;
actRecordCreate : TAction;
@ -105,6 +106,8 @@ type
MenuItem54 : TMenuItem;
MenuItem55 : TMenuItem;
MenuItem56 : TMenuItem;
MenuItem57: TMenuItem;
MenuItem58: TMenuItem;
MenuItem6: TMenuItem;
MenuItem7 : TMenuItem;
MenuItem8: TMenuItem;
@ -191,6 +194,7 @@ type
procedure actEditSearchExecute(Sender : TObject);
procedure actEditSearchUpdate(Sender : TObject);
procedure actSaveXSDExecute(Sender : TObject);
procedure actShowOptionsExecute(Sender: TObject);
procedure actTreeSearchExecute(Sender : TObject);
procedure actTreeSearchUpdate(Sender : TObject);
procedure actTypeALiasCreateExecute(Sender : TObject);
@ -249,7 +253,7 @@ uses
view_helper, DOM, wst_fpc_xml, XMLWrite,
xsd_parser, wsdl_parser, source_utils, command_line_parser, generator, metadata_generator,
binary_streamer, wst_resources_utils, xsd_generator, wsdl_generator,
uabout, edit_helper, udm, ufrmsaveoption, pparser, SynEditTypes
uabout, edit_helper, udm, ufrmsaveoption, ueditoptions, pparser, SynEditTypes
{$IFDEF WST_IDE},LazIDEIntf,IDEMsgIntf, IDEExternToolIntf{$ENDIF}
, xsd_consts, parserutils, locators;
@ -343,6 +347,8 @@ begin
try
Result := TwstPasTreeContainer.Create();
try
Result.CaseSensitive := DM.CaseSensitive;
Result.XsdStringMaping := DM.XsdStringMaping;
prsr := TWsdlParser.Create(locDoc,Result,ANotifier);
locContext := prsr as IParserContext;
if (locContext <> nil) then begin
@ -400,10 +406,13 @@ begin
prsr := nil;
locDoc := ReadXMLFile(AContent);
try
if (ASymbols = nil) then
Result := TwstPasTreeContainer.Create()
else
if (ASymbols = nil) then begin
Result := TwstPasTreeContainer.Create();
Result.CaseSensitive := DM.CaseSensitive;
Result.XsdStringMaping := DM.XsdStringMaping;
end else begin
Result := ASymbols;
end;
try
prsr := TXsdParser.Create(locDoc,Result,'',ANotifier);
locContext := prsr as IParserContext;
@ -671,6 +680,18 @@ begin
end;
end;
procedure TfWstTypeLibraryEdit.actShowOptionsExecute(Sender: TObject);
var
f : TfEditOptions;
begin
f := TfEditOptions.Create(nil);
try
f.ShowModal();
finally
f.Release();
end;
end;
procedure TfWstTypeLibraryEdit.actTreeSearchExecute(Sender : TObject);
begin
FSearchArea := saTree;