亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? delfor1.pas

?? 一個非常好用的DELPHI源碼格式化工具.
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
{|----------------------------------------------------------------------
 | Class:       TPascalParser
 |
 | Author:      Egbert van Nes
 |
 | Description: Format pascal code
 |
 | Copyright (c) 2000  Egbert van Nes
 |
 | Redistribution and use in source and binary form, with or without
 | modification, are permitted provided that the following conditions
 | are met:
 |
 | 1. Redistributions of source code must retain the above copyright
 |    notice, this list of conditions and the following disclaimer.
 |    If the source is modified, the complete original and unmodified
 |    source code has to distributed with the modified version.
 |
 | 2. Redistributions in binary form must reproduce the above
 |    copyright notice, these licence conditions and the disclaimer
 |    found at the end of this licence agreement in the documentation
 |    and/or other materials provided with the distribution.
 |
 | 3. Software using this code must contain a visible line of credit.
 |
 | 4. If my code is used in a "for profit" product, you have to donate
 |    to a registered charity in an amount that you feel is fair.
 |    You may use it in as many of your products as you like.
 |    Proof of this donation must be provided to the author of
 |    this software.
 |
 | 5. If you for some reasons don't want to give public credit to the
 |    author, you have to donate three times the price of your software
 |    product, or any other product including this component in any way,
 |    but no more than $500 US and not less than $200 US, or the
 |    equivalent thereof in other currency, to a registered charity.
 |    You have to do this for every of your products, which uses this
 |    code separately.
 |    Proof of this donations must be provided to the author of
 |    this software.
 |
 | DISCLAIMER:
 |
 | THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS'.
 |
 | ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 | THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
 | PARTICULAR PURPOSE ARE DISCLAIMED.
 |
 | IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
 | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 | WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 |
 |---------------------------------------------------------------------- |----------------------------------------------------------------------}

unit Delfor1;

interface

uses SysUtils, OObjects, Classes, ExtCtrls, Menus, DelForTypes, DelforEng
{$IFDEF CS_TRACE} ,CodeSiteLogging {$ENDIF};
{
  Main interface methods:

  TPascalParser = class(TObject)
  public
    constructor Create(ARootdir: PChar);
    procedure SetDefault;
    procedure LoadFromFile(AFileName: PChar);
    procedure LoadFromList(AList: TStringList);
    function Parse: Boolean;
    procedure WriteToFile(AFileName: PChar);
    destructor Destroy; override;
    property Text: PChar read GetTextStr write SetTextStr;
    property Settings: TSettings read FSettings write FSettings;
  end;
}
type
 TPascalParser = class(TObject)
 private
//  Timer: TTimer;
  FSettings: TSettings;
  FCapFileName: PChar;
  CapFileTime: Integer;
  FOnProgress: TProgressEvent;
  FCfgFile: string;
  FRootDir: string;
  procedure SetFillNewWords(AFillNewWords: TFillMode);
  procedure SetCapFileName(AFileName: PChar);
//  procedure TimerTimer(Sender: TObject);
  function GetNewCapFileTime: Integer;
  procedure SetTextStr(AText: PChar);
  function GetShortCut: TShortCut;
  procedure SetShortCut(AShortCut: TShortCut);
  procedure SetShortCutText(AShortCut: string);
  function GetShortCutText: string;
  function GetTextStr: PChar;
  function GetRootDir: string;
  procedure SetRootdir(const Value: string);
  procedure SetOnProgress(const Value: TProgressEvent);
 public
  procedure Activate;
  procedure deActivate;
  procedure SaveCapFile(AFileName: PChar);
  procedure LoadCapFile(AFileName: PChar);
  constructor Create(ARootdir: PChar);
  procedure Clear;
  procedure SetDefault;
  procedure SetBorland;
  procedure LoadFromFile(AFileName: PChar);
  procedure LoadFromList(AList: TStringList);
  function Parse: Boolean;
  procedure Config(DoRead: Boolean);
  procedure WriteToFile(AFileName: PChar);
  destructor Destroy; override;
  property SpacePerIndent: Integer read FSettings.SpacePerIndent write
   FSettings.SpacePerIndent;
  property SpaceOperators: TSpaceBefore read FSettings.SpaceOperators write
   FSettings.SpaceOperators;
  property SpaceEqualOper: TSpaceBefore read FSettings.SpaceEqualOper write
   FSettings.SpaceEqualOper;
  property SpaceColon: TSpaceBefore read FSettings.SpaceColon write
   FSettings.SpaceColon;
  property SpaceComma: TSpaceBefore read FSettings.SpaceComma write
   FSettings.SpaceComma;
  property SpaceSemiColon: TSpaceBefore read FSettings.SpaceSemiColon write
   FSettings.SpaceSemiColon;
  property SpaceLeftBr: TSpaceBefore read FSettings.SpaceLeftBr write
   FSettings.SpaceLeftBr;
  property SpaceRightBr: TSpaceBefore read FSettings.SpaceRightBr write
   FSettings.SpaceRightBr;
  property SpaceLeftHook: TSpaceBefore read FSettings.SpaceLeftHook write
   FSettings.SpaceLeftHook;
  property SpaceRightHook: TSpaceBefore read FSettings.SpaceRightHook write
   FSettings.SpaceRightHook;
  property UpperCompDirectives: Boolean read FSettings.UpperCompDirectives
   write FSettings.UpperCompDirectives;
  property UpperNumbers: Boolean read FSettings.UpperNumbers write
   FSettings.UpperNumbers;
  property ReservedCase: TCase read FSettings.ReservedCase write
   FSettings.ReservedCase;
  property StandDirectivesCase: TCase read FSettings.StandDirectivesCase write
   FSettings.StandDirectivesCase;
  property ChangeIndent: Boolean read FSettings.ChangeIndent write
   FSettings.ChangeIndent;
  property indentBegin: Boolean read FSettings.indentBegin write
   FSettings.indentBegin;
  property NoIndentElseIf: Boolean read FSettings.NoIndentElseIf write
   FSettings.NoIndentElseIf;
  property IndentComments: Boolean read FSettings.IndentComments write
   FSettings.IndentComments;
  property IndentCompDirectives: Boolean read FSettings.IndentCompDirectives
   write FSettings.IndentCompDirectives;
  property IndentTry: Boolean read FSettings.IndentTry write
   FSettings.IndentTry;
  property IndentTryElse: Boolean read FSettings.IndentTryElse write
   FSettings.IndentTryElse;
  property IndentCaseElse: Boolean read FSettings.IndentCaseElse write
   FSettings.IndentCaseElse;
  property BlankProc: Boolean read FSettings.BlankProc write
   FSettings.BlankProc;
  property RemoveDoubleBlank: Boolean read FSettings.RemoveDoubleBlank write
   FSettings.RemoveDoubleBlank;
  property FeedRoundBegin: TFeedBegin read FSettings.FeedRoundBegin write
   FSettings.FeedRoundBegin;
  property FeedAfterThen: Boolean read FSettings.FeedAfterThen write
   FSettings.FeedAfterThen;
  property ExceptSingle: Boolean read FSettings.ExceptSingle write
   FSettings.ExceptSingle;
  property NoFeedBeforeThen: Boolean read FSettings.NoFeedBeforeThen write
   FSettings.NoFeedBeforeThen;
  property FeedElseIf: Boolean read FSettings.FeedElseIf write
   FSettings.FeedElseIf;
  property FeedEachUnit: Boolean read FSettings.FeedEachUnit write
   FSettings.FeedEachUnit;
  property FeedAfterVar: Boolean read FSettings.FeedAfterVar write
   FSettings.FeedAfterVar;
  property WrapLines: Boolean read FSettings.WrapLines write
   FSettings.WrapLines;
  property WrapPosition: Byte read FSettings.WrapPosition write
   FSettings.WrapPosition;
  property AlignCommentPos: Byte read FSettings.AlignCommentPos write
   FSettings.AlignCommentPos;
  property AlignComments: Boolean read FSettings.AlignComments write
   FSettings.AlignComments;
  property AlignVarPos: Byte read FSettings.AlignVarPos write
   FSettings.AlignVarPos;
  property AlignVar: Boolean read FSettings.AlignVar write
   FSettings.AlignVar;
  property FeedBeforeEnd: Boolean read FSettings.FeedBeforeEnd write
   FSettings.FeedBeforeEnd;
  property FillNewWords: TFillMode read FSettings.FillNewWords write
   SetFillNewWords;
  property FeedAfterSemiColon: Boolean read FSettings.FeedAfterSemiColon write
   FSettings.FeedAfterSemiColon;
  property BlankSubProc: Boolean read FSettings.BlankSubProc write
   FSettings.BlankSubProc;
  property CommentFunction: Boolean read FSettings.CommentFunction write
   FSettings.CommentFunction;
  property CommentUnit: Boolean read FSettings.CommentUnit write
   FSettings.CommentUnit;
  property StartCommentOut: TCommentArray read FSettings.StartCommentOut write
   FSettings.StartCommentOut;
  property EndCommentOut: TCommentArray read FSettings.EndCommentOut write
   FSettings.EndCommentOut;
  property CapFileName: PChar read FCapFileName write SetCapFileName;
  property Text: PChar read GetTextStr write SetTextStr;
  property OnProgress: TProgressEvent read FOnProgress write SetOnProgress;
  property ShortCutText: string read GetShortCutText write SetShortCutText;
  property ShortCut: TShortCut read GetShortCut write SetShortCut;
  property CfgFile: string read FCfgFile write FCfgFile;
  property RootDir: string read GetRootDir write SetRootdir;
  property Settings: TSettings read FSettings write FSettings;
 end;
 
var
 Formatter: TPascalParser;
 
implementation

uses Dialogs, {FileCtrl,} DelForExpert;

constructor TPascalParser.Create(ARootdir: PChar);
begin
  {$IFDEF CS_TRACE}CodeSite.EnterMethod( Self, 'Create' );{$ENDIF}
 Formatter := Self;
 CapFileTime := -1;
 SetDefault;
// Timer := TTimer.Create(nil);
// Timer.Interval := 1000;
// Timer.OnTimer := TimerTimer;
 RootDir := ARootdir;
 Activate;
  {$IFDEF CS_TRACE}CodeSite.ExitMethod( Self, 'Create' );{$ENDIF}
end;

procedure TPascalParser.Activate;
begin
  {$IFDEF CS_TRACE}CodeSite.EnterMethod( Self, 'Activate' );{$ENDIF}
 LoadDll(PChar(RootDir));
  {$IFDEF CS_TRACE}CodeSite.ExitMethod( Self, 'Activate' );{$ENDIF}
end;

procedure TPascalParser.deActivate;
begin
  {$IFDEF CS_TRACE}CodeSite.EnterMethod( Self, 'deActivate' );{$ENDIF}
 FreeDll;
  {$IFDEF CS_TRACE}CodeSite.ExitMethod( Self, 'deActivate' );{$ENDIF}
end;

procedure TPascalParser.SetDefault;
begin
  {$IFDEF CS_TRACE}CodeSite.EnterMethod( Self, 'SetDefault' );{$ENDIF}
 CapFileName := nil;
 WrapLines := False;
 WrapPosition := 81;
 AlignCommentPos := 40;
 AlignComments := False;
 AlignVarPos := 20;
 AlignVar := False;
 SpaceEqualOper := spBoth;
 SpaceOperators := spBoth;
 SpaceColon := spAfter;
 SpaceComma := spAfter;
 SpaceSemiColon := spAfter;
 SpaceLeftBr := spNone;
 SpaceRightBr := spNone;
 SpaceLeftHook := spNone;
 SpaceRightHook := spNone;
 ReservedCase := rfLowerCase;
 StandDirectivesCase := rfLowerCase;
 ChangeIndent := True;
 indentBegin := False;
 IndentComments := False;
 IndentCompDirectives := False;
 IndentTryElse := False;
 IndentCaseElse := False;
 FeedAfterThen := False;
 ExceptSingle := False;
 FeedElseIf := False;
 FeedEachUnit := False;
 NoFeedBeforeThen := False;
 NoIndentElseIf := False;
 FeedAfterVar := False;
 FeedBeforeEnd := False;
 FeedRoundBegin := UnChanged;
 FeedAfterSemiColon := False;
 FillNewWords := fmUnchanged;
 IndentTry := False;
 UpperCompDirectives := True;
 UpperNumbers := True;
 SpacePerIndent := 2;
 BlankProc := True;
 RemoveDoubleBlank := False;
 BlankSubProc := False;
 CommentFunction := False;
 CommentUnit := False;
 StrCopy(StartCommentOut, '{(*}');
 StrCopy(EndCommentOut, '{*)}');
 ShortCut := Menus.ShortCut(Word('D'), [ssCtrl]);
  {$IFDEF CS_TRACE}CodeSite.ExitMethod( Self, 'SetDefault' );{$ENDIF}
end;

procedure TPascalParser.SetBorland;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区欧美在线观看| 日韩中文字幕av电影| 91高清视频免费看| 极品尤物av久久免费看| 一区二区三区蜜桃| 国产日韩在线不卡| 日韩一区和二区| 91美女片黄在线观看91美女| 黄色成人免费在线| 午夜精品在线视频一区| 亚洲天堂免费在线观看视频| 久久午夜色播影院免费高清| 欧美视频精品在线观看| 成人黄色777网| 韩国v欧美v亚洲v日本v| 婷婷成人激情在线网| 《视频一区视频二区| 26uuu色噜噜精品一区二区| 欧美日韩综合在线| 91浏览器入口在线观看| 国产精品456露脸| 国产在线精品一区二区不卡了| 亚洲韩国精品一区| 欧美国产欧美亚州国产日韩mv天天看完整| 91精选在线观看| 欧美精品丝袜中出| 在线免费观看日本一区| 99视频一区二区三区| 国产成人综合亚洲网站| 捆绑调教一区二区三区| 美国毛片一区二区| 日本成人在线看| 五月天丁香久久| 亚洲午夜一二三区视频| 一区二区三区自拍| 亚洲欧美日韩人成在线播放| 国产精品高清亚洲| 国产精品每日更新| 欧美国产精品一区二区三区| 欧美激情在线一区二区| 国产精品色婷婷| 中文无字幕一区二区三区| 中文子幕无线码一区tr| 国产精品久久久久久久久久免费看| 国产日韩欧美综合在线| 国产精品系列在线| 国产精品免费丝袜| 亚洲同性gay激情无套| 亚洲欧美日韩综合aⅴ视频| 一区二区三区日本| 五月婷婷激情综合| 日本不卡高清视频| 精品一区二区久久久| 国产一区二区三区免费播放| 成人听书哪个软件好| 成人av影院在线| 色综合网站在线| 欧美日韩日日夜夜| 日韩欧美资源站| 国产午夜精品久久久久久久 | 中文字幕日韩av资源站| 综合自拍亚洲综合图不卡区| 亚洲色图.com| 亚洲国产欧美日韩另类综合 | 一级精品视频在线观看宜春院| 一区二区三区欧美亚洲| 日韩主播视频在线| 国产裸体歌舞团一区二区| 成人av在线网| 4438成人网| 久久精品一区二区三区不卡牛牛| 国产精品的网站| 五月天亚洲婷婷| 国产精品综合一区二区三区| 99久久精品久久久久久清纯| 欧美亚一区二区| 亚洲精品在线网站| 亚洲欧美综合网| 欧美96一区二区免费视频| 国产ts人妖一区二区| 欧美在线观看一区二区| 欧美成人一区二区三区在线观看 | 欧美精品v国产精品v日韩精品 | 一区二区三区不卡视频在线观看| 日韩专区欧美专区| 成人ar影院免费观看视频| 欧美日韩精品免费观看视频 | 国产精品国产a| 日本成人在线网站| 99国产精品一区| 精品精品国产高清a毛片牛牛| 国产精品美女www爽爽爽| 日韩成人免费电影| 91婷婷韩国欧美一区二区| 精品久久一区二区| 亚洲一区二区在线播放相泽| 国产乱码精品一品二品| 欧美日韩亚洲国产综合| 国产欧美日韩在线| 另类小说一区二区三区| 色激情天天射综合网| 国产欧美日韩视频一区二区| 午夜精品123| eeuss影院一区二区三区| 欧美一区二区三区日韩| 亚洲色图一区二区三区| 国产精一区二区三区| 欧美日韩精品综合在线| 亚洲女爱视频在线| 成人性色生活片| 久久婷婷国产综合国色天香| 天天av天天翘天天综合网色鬼国产| 成人aa视频在线观看| 久久精子c满五个校花| 奇米亚洲午夜久久精品| 91国在线观看| 1024精品合集| 成人动漫精品一区二区| 国产日产欧美一区二区视频| 免费观看成人av| 欧美日韩日本视频| 亚洲国产成人av网| 欧美在线观看视频一区二区三区| 国产精品国产三级国产aⅴ中文| 国产精品一区二区视频| 欧美精品一区二区三区久久久| 日本成人超碰在线观看| 欧美日韩成人综合| 日韩国产精品大片| 欧美一区日韩一区| 首页国产欧美日韩丝袜| 欧美日韩精品专区| 性感美女极品91精品| 欧美色图天堂网| 亚洲国产精品影院| 911精品产国品一二三产区| 亚洲妇女屁股眼交7| 欧美日韩色综合| 日本vs亚洲vs韩国一区三区 | 国产一区视频导航| 久久女同精品一区二区| 国产剧情一区在线| 国产三级精品三级| 99re这里只有精品6| 中文字幕一区在线| 色94色欧美sute亚洲线路一ni| 亚洲靠逼com| 欧美日韩成人综合在线一区二区| 日日噜噜夜夜狠狠视频欧美人 | 色偷偷久久人人79超碰人人澡| 亚洲欧洲精品一区二区三区不卡 | 欧美日本精品一区二区三区| 亚洲成人精品影院| 欧美一区二区三区思思人| 另类中文字幕网| 国产精品女同互慰在线看| 色婷婷综合视频在线观看| 亚洲国产成人av好男人在线观看| 5858s免费视频成人| 激情五月激情综合网| 亚洲国产精品ⅴa在线观看| 99在线视频精品| 午夜精品久久久久久久久| 欧美成人国产一区二区| 成人av在线观| 亚洲无人区一区| 久久亚洲影视婷婷| 色综合视频在线观看| 五月天久久比比资源色| 久久日一线二线三线suv| 99精品国产一区二区三区不卡| 亚洲国产中文字幕在线视频综合| 欧美一区二区视频在线观看2020| 国产乱人伦精品一区二区在线观看| 亚洲人成人一区二区在线观看| 欧美久久久久久蜜桃| 国产精品亚洲人在线观看| 亚洲一区二区三区小说| 精品国精品国产尤物美女| 色婷婷久久久综合中文字幕| 日本三级亚洲精品| 国产精品天干天干在线综合| 欧美日韩国产在线播放网站| 国产精品自拍网站| 午夜不卡在线视频| 国产精品久久久久久一区二区三区 | 又紧又大又爽精品一区二区| 日韩欧美一区二区三区在线| 成人av电影在线| 麻豆国产精品视频| 亚洲激情欧美激情| 国产性色一区二区| 91麻豆精品国产91久久久资源速度 | 久久精品国产免费| 亚洲欧美日韩久久精品| 2020日本不卡一区二区视频| 欧美日韩亚洲国产综合| 99久久er热在这里只有精品66| 日本在线不卡视频一二三区| 亚洲女人****多毛耸耸8|