亚洲欧美第一页_禁久久精品乱码_粉嫩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电影在线| 555www色欧美视频| 男女男精品视频网| 久久久久久电影| av亚洲精华国产精华精| 亚洲综合免费观看高清完整版在线| 欧美日韩国产一二三| 麻豆91在线观看| 国产精品欧美经典| 欧美视频在线不卡| 久草中文综合在线| 国产精品初高中害羞小美女文| 在线观看亚洲a| 激情欧美日韩一区二区| 中文字幕一区二区三区不卡| 欧美精选在线播放| 国产伦精品一区二区三区免费迷| 中文字幕欧美一| 日韩欧美一区二区视频| 波多野结衣一区二区三区| 午夜精品123| 国产午夜亚洲精品不卡| 欧美综合久久久| 狠狠网亚洲精品| 亚洲一区二区综合| 久久久欧美精品sm网站| 欧美午夜精品一区二区三区| 精品一二三四在线| 亚洲午夜电影网| 国产亚洲一区二区三区四区| 欧洲国内综合视频| 国产成人在线网站| 免费精品视频在线| 亚洲人精品一区| 精品动漫一区二区三区在线观看| 91精彩视频在线| 五月激情综合网| 国产成人综合在线播放| 亚洲国产日韩精品| 国产精品久久一卡二卡| 日韩一级完整毛片| 欧美做爰猛烈大尺度电影无法无天| 国产在线观看一区二区| 日韩激情视频网站| 一区二区免费看| 国产精品毛片a∨一区二区三区| 欧美一区二区免费视频| 欧美亚洲综合色| av在线不卡观看免费观看| 黄页网站大全一区二区| 蜜臀精品久久久久久蜜臀| 亚洲在线观看免费视频| 日韩一区欧美小说| 中文在线一区二区| 久久综合久色欧美综合狠狠| 欧美一级午夜免费电影| 欧美精品电影在线播放| 日本黄色一区二区| 色综合中文字幕| 99久久精品久久久久久清纯| 成人做爰69片免费看网站| 国产精品99久久久久久久vr| 久久精品国产精品亚洲综合| 五月婷婷久久综合| 日韩精品一级中文字幕精品视频免费观看 | 欧美日韩国产a| 在线视频国内自拍亚洲视频| 色婷婷亚洲综合| 91福利视频久久久久| 欧美艳星brazzers| 欧洲亚洲精品在线| 欧美日免费三级在线| 欧美午夜电影一区| 欧美精品一二三四| 日韩欧美国产精品一区| 精品成人私密视频| 精品久久久久一区| 精品国产污污免费网站入口| 国产日韩欧美电影| 99久久er热在这里只有精品15 | 国产精品亲子乱子伦xxxx裸| 色婷婷精品久久二区二区蜜臀av| 亚洲第一福利视频在线| 国产精品欧美综合在线| 国产日韩欧美高清| 欧美电影精品一区二区| 欧美午夜影院一区| 欧美日韩视频在线观看一区二区三区| 成人免费视频caoporn| 国产在线观看免费一区| 极品销魂美女一区二区三区| 日日欢夜夜爽一区| 国产综合色产在线精品| 久久99精品网久久| 99re8在线精品视频免费播放| 亚洲成人一二三| 成人免费黄色大片| 欧美日韩国产系列| 色噜噜狠狠一区二区三区果冻| 日韩av不卡一区二区| 亚洲综合一区在线| 婷婷综合另类小说色区| 国产成人啪免费观看软件| 亚洲一区二区三区四区在线观看 | 日韩一级在线观看| 欧美精品一区二区久久婷婷| 国产精品婷婷午夜在线观看| 一区二区在线观看免费视频播放 | 欧美成人午夜电影| 欧美国产欧美综合| 亚洲国产一区二区在线播放| 国内精品国产成人国产三级粉色| 成人av电影免费在线播放| 7777精品伊人久久久大香线蕉最新版 | 国产99久久久国产精品潘金网站| 色婷婷综合视频在线观看| 日韩一区二区三区视频| 国产精品国产三级国产三级人妇| 亚洲一区中文日韩| 国产高清成人在线| 在线不卡免费欧美| 亚洲色图丝袜美腿| 韩国av一区二区三区| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 欧美成人精品福利| 亚洲精品美腿丝袜| 国产电影一区在线| 日韩亚洲欧美在线| 亚洲一区二区影院| 99re热这里只有精品视频| 日韩精品在线一区二区| 午夜国产精品影院在线观看| 欧美久久久影院| ㊣最新国产の精品bt伙计久久| 手机精品视频在线观看| 国产成人精品免费一区二区| 日韩女优av电影在线观看| 亚洲综合偷拍欧美一区色| 顶级嫩模精品视频在线看| 7777精品伊人久久久大香线蕉的 | 国产精品对白交换视频| 狠狠狠色丁香婷婷综合久久五月| 91久久线看在观草草青青| 亚洲国产精品v| 狠狠色丁香久久婷婷综合丁香| 欧美理论在线播放| 亚洲国产乱码最新视频| 色哟哟精品一区| 亚洲欧美怡红院| 波多野结衣精品在线| 亚洲国产高清不卡| 国产aⅴ综合色| 国产喷白浆一区二区三区| 蜜臀av性久久久久蜜臀av麻豆| 欧美日韩精品高清| 亚洲一区在线视频观看| 欧美在线免费播放| 夜夜嗨av一区二区三区中文字幕| 99re亚洲国产精品| 亚洲黄色尤物视频| 色狠狠av一区二区三区| 亚洲久草在线视频| 91在线丨porny丨国产| 日韩一区日韩二区| 日本电影亚洲天堂一区| 亚洲欧美日韩久久| 91国模大尺度私拍在线视频 | 午夜久久久影院| 欧美老女人在线| 麻豆精品一区二区综合av| 精品久久久久久久久久久院品网| 久久国产精品99久久人人澡| 精品免费视频.| 国产传媒日韩欧美成人| 国产精品久久久一区麻豆最新章节| 波多野结衣亚洲| 亚洲午夜免费视频| 日韩欧美国产1| 成人精品亚洲人成在线| 亚洲男人的天堂在线aⅴ视频| 91麻豆精品视频| 亚洲成av人片一区二区三区 | 精品视频一区三区九区| 天天做天天摸天天爽国产一区| 欧美一区二区人人喊爽| 国产乱码精品一区二区三区av| 中文字幕第一区| 91黄视频在线| 日本伊人午夜精品| 中文字幕欧美激情一区| 91成人国产精品| 激情文学综合插| 中文字幕中文乱码欧美一区二区 | 精品少妇一区二区三区视频免付费 | 午夜在线电影亚洲一区| 日韩欧美一级二级三级久久久| 91麻豆免费看| 一本到不卡免费一区二区| 日韩av在线发布|