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

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

?? dmain.pas

?? Delphi編寫的一個支持語法高亮顯示和很多語言的文本編輯器
?? PAS
?? 第 1 頁 / 共 5 頁
字號:
var
   sr : string;
   i,b,s,f:integer;
   g: PChar;
   linecnt: Integer;
   pct : Integer;
   pPC : PChar;
begin

  if selDoc <> nil then
    if SelDoc.bHexMode = false then begin
      {bDunUpdate := True;
      lineCnt := 0;
      if SelDoc.SciMain.SelLength > 1 then begin
        g := PChar(selDoc.sciMain.SelText);
        for i:= 0 to strLen(g) do begin
          if g[i] = chr(10) then lineCnt := lineCnt + 1;
        end;
      end;
      b := seldoc.sciMain.CharIndexToRowCol(seldoc.sciMain.SelStart).Y;
      for i:= (b-1) to (b-1) + (linecnt) do begin

        for s := selDoc.cmbKeywords.Items.Count-1 downto 0 do begin

          if Integer(selDoc.cmbKeywords.Items.Objects[s]) = i + 1 then
            SelDoc.cmbKeywords.Items.Delete(s);
        end;
      end;
//      selDoc.NeedUpdateFunc(-(linecnt-1));
      selDoc.sciMain.CutToClipboard;
      With TClipBoard.Create do begin
        g := PChar(asText);
      end;
      //LineCnt := 0;
      iAdd := LineCnt + 1;
      selDoc.NeedUpdateFunc(-(linecnt));}
      selDoc.sciMain.CutToClipboard;
    end
    else begin
      with selDoc.hxMain
      do begin
        pCT := SelCount;
        pPC := BufferFromFile ( Min ( SelStart , SelEnd ) , pCT );
        SetCBText ( pPC , pCT );
        FreeMem ( pPC , pCT );
        DeleteSelection;
      end;
    end;


end;

procedure TdmMain.actEditAppendCutExecute(Sender: TObject);
var
   sr : string;
   i,b,s,f:integer;
   g: PChar;
   linecnt: Integer;
   pct : Integer;
   pPC : PChar;
begin
    if dmMain.SelDoc = nil then exit;
    if SelDoc.bHexMode then exit;
    with TClipboard.Create do
      try

        AsText := AsText {+ CrLf} + dmMain.SelDoc.sciMain.SelText;
      finally
        Free;
      end;
{      bDunUpdate := True;
      lineCnt := 0;
      if SelDoc.SciMain.SelLength > 1 then begin
        g := PChar(selDoc.sciMain.SelText);
        for i:= 0 to strLen(g) do begin
          if g[i] = chr(10) then lineCnt := lineCnt + 1;
        end;
      end;
      b := selDoc.sciMain.CaretXY.Y;
      for i:= (b-1) to (b-1) + (linecnt) do begin

        for s := selDoc.cmbKeywords.Items.Count-1 downto 0 do begin

          if Integer(selDoc.cmbKeywords.Items.Objects[s]) = i + 1 then
            SelDoc.cmbKeywords.Items.Delete(s);
        end;
      end;
//      selDoc.NeedUpdateFunc(-(linecnt-1));
      dmMain.SelDoc.sciMain.SelText := '';
      With TClipBoard.Create do begin
        g := PChar(asText);
      end;
      //LineCnt := 0;
      iadd := 1;
      selDoc.NeedUpdateFunc(-(linecnt));}

end;

procedure TdmMain.actEditCopyExecute(Sender: TObject);
var
  pct : Integer;
  pPC : PChar;
begin
  if selDoc <> nil then
    if SelDoc.bHexMode = false then
      selDoc.sciMain.CopyToClipboard
    else begin
      with SelDoc.hxMain
      do begin
        pCT := SelCount;
        pPC := BufferFromFile ( Min ( SelStart , SelEnd ) , pCT );
        SetCBText ( pPC , pCT );
        FreeMem ( pPC , pCT );
      end;
    end;

end;

procedure TdmMain.actEditAppendCopyExecute(Sender: TObject);
begin
    if dmMain.SelDoc = nil then exit;
    if SelDoc.bHexMode then exit;    
    with TClipboard.Create do
      try
        AsText := AsText {+ CrLf} + dmMain.SelDoc.sciMain.SelText;
      finally
        Free;
      end;
end;

procedure TdmMain.actEditPasteExecute(Sender: TObject);
var
   sr : string;
   i,b,s,f:integer;
   g: PChar;
   linecnt: Integer;
begin

  if selDoc <> nil then
    if SelDoc.bHexMode = false then begin
{      bDunUpdate := True;
      lineCnt := 0;
      if SelDoc.SciMain.SelLength > 1 then begin
        g := PChar(selDoc.sciMain.SelText);
        for i:= 0 to strLen(g) do begin
          if g[i] = chr(10) then lineCnt := lineCnt + 1;
        end;
      end;

//      if selDoc.sciMain.SelStart < selDoc.sciMain.CaretX
      b := seldoc.sciMain.CharIndexToRowCol(seldoc.sciMain.SelStart).Y;
//      b := selDoc.sciMain.CaretXY.Y;
      for i:= (b-1) to (b-1) + (linecnt) do begin

        for s := selDoc.cmbKeywords.Items.Count-1 downto 0 do begin

          if Integer(selDoc.cmbKeywords.Items.Objects[s]) = i + 1 then
            SelDoc.cmbKeywords.Items.Delete(s);
        end;
      end;
//      selDoc.NeedUpdateFunc(-(linecnt-1));}
      selDoc.sciMain.PasteFromClipboard;     {
      With TClipBoard.Create do begin
        g := PChar(asText);
      end;
      LineCnt := 0;
      for s := 0 to StrLen(g) do begin
        if g[s] = chr(10) then
          LineCnt:=LineCnt+1;
      end;
      iadd := lineCnt + 1; //25; //lineCnt;
      selDoc.NeedUpdateFunc((seldoc.sciMain.CaretY - b)); // - 1 - (linecnt-1)));
      selDoc.ListFunctionsY(b-1, seldoc.sciMain.CaretY);}
    end
    else begin
      sr := Clipboard.AsText;
      SelDoc.hxMain.ReplaceSelection ( @sr[1] , Length ( sr ) );
    end;
end;

procedure TdmMain.actEditDeleteExecute(Sender: TObject);
var
b: PChar;
begin
  b := PChar(SelDOc.sciMain.Text);

  if (Pos(Chr(10), selDoc.sciMain.SelText) <> 0) then begin
    bDunUpdate := true;
//    iadd := 1;
    SelDOc.NeedUpdateFunc(0);
  end
  else if (b[selDoc.sciMain.SelStart + 1] = chr(10)) then begin
    bDunUpdate := true;
    SelDoc.NeedUpdateFunc(-1);
  end;
  if dmMain.SelDoc <> nil then
    dmMain.SelDoc.sciMain.ExecuteCommand(ecDeleteChar, #0, nil);
end;

procedure TdmMain.actEditModifiedExecute(Sender: TObject);
begin
  if dmMain.SelDoc <> nil then
    dmMain.SelDoc.sciMain.Modified := actEditModified.Checked;
end;

procedure TdmMain.actEditReadOnlyExecute(Sender: TObject);
begin
  if dmMain.SelDoc <> nil then
    dmMain.SelDoc.sciMain.ReadOnly := actEditReadOnly.Checked;
end;

procedure TdmMain.actEditSelectAllExecute(Sender: TObject);
begin
  if dmMain.SelDoc <> nil then
    dmMain.SelDoc.sciMain.SelectAll;
end;

procedure TdmMain.actGoto0Execute(Sender: TObject);
begin
  if SelDoc <> nil then
    SelDoc.sciMain.GotoBookMark((Sender as Taction).Tag);
end;

procedure TdmMain.SetBookmark(const AIndex: integer);
begin
  if selDoc <> nil then
    with selDoc.sciMain do
      if IsBookmark(AIndex) then
        ClearBookMark(AIndex)
      else
        SetBookMark(AIndex, CaretX, CaretY);
end;

procedure TdmMain.actToggle0Execute(Sender: TObject);
begin
  if SelDoc <> nil then
    SetBookmark((Sender as Taction).tag);
end;

procedure TdmMain.actEditHexExecute(Sender: TObject);
var
  Stream: TMemoryStream;
  XY: Integer;
begin
  if SelDoc = nil then exit;
  dmMain.actEditHex.Checked := not dmMain.actEditHex.Checked;
  frmMain.HexEdit1.Checked := dmMain.actEditHex.Checked;
  frmMain.tbbHex.Down := dmMain.actedithex.Checked;

  With SelDoc do begin
    stream := TMemoryStream.Create;
    if dmMain.actEditHex.Checked = True then begin
      XY := sciMain.SelStart;
      if xy > strLen(PChar(sciMain.Text)) then xy := strlen(PChar(sciMain.Text));
      sciMain.Lines.SaveToStream(Stream);
      HxMain.LoadFromStream(Stream);
      if XY > 1 then
        hxMain.SelStart := XY-1;
      hxMain.BringToFront;
      bHexMode := True;
      Windows.SetFocus(hxMain.Handle);
    end
    else begin
      XY := hxMain.SelStart;
      hxMain.SaveToStream(Stream);
      sciMain.Lines.LoadFromStream(Stream);
      sciMain.SelStart := XY+1;
      sciMain.BringToFront;
      bHexMode := False;
      Windows.SetFocus(sciMain.Handle);
    end;
  end;
end;

procedure TdmMain.actViewPrefrencesExecute(Sender: TObject);
begin
  ShowOpt;
end;

procedure TdmMain.actHelpAboutExecute(Sender: TObject);
begin
  With TfrmAbout.Create(frmMain) do begin
    ShowModal;
  end;
end;

procedure TdmMain.actFindFindExecute(Sender: TObject);
begin
  if dmMain.SelDoc = nil then exit;
  frmFindText := TfrmFindText.Create(self);
  frmFindText.cmbFind.Text := dmMain.SelDoc.sciMain.SelText;
  if SelDoc.bHexMode = false then begin
    With frmFindText do begin
      SearchText := gsSearchText;
      if (dmMain.SelDoc.sciMain.SelText <> '') then
        SearchText := dmMain.SelDoc.sciMain.SelText;
      SearchTextHistory := gsSearchTextHistory;
      SearchWholeWords := gbSearchWholeWords;
      if ShowModal = mrOK then begin
        gbSearchBackwards := SearchBackwards;
        gbSearchCaseSensitive := SearchCaseSensitive;
        gbSearchFromCaret := SearchFromCursor;
        gbWrapAround := WrapAround;
        gbSearchSelectionOnly := SearchInSelectionOnly;
        gbSearchWholeWords := SearchWholeWords;
        gsSearchText := SearchText;
        gsSearchTextHistory := SearchTextHistory;
        fSearchFromCaret := gbSearchFromCaret;
        if gbSearchBackwards then iSearchDir := 1
        else iSearchDir := 0;
        if gsSearchText <> '' then begin
          DoSearchReplaceText(False, gbSearchBackwards);
          fSearchFromCaret := TRUE;
        end;
      end;

      Destroy;
    end;
  end
  else begin
    With TfrmFindHex.Create(nil) do begin
      if selDoc.hxMain.DataSize = 0 then exit;
      ShowModal;
    end;
  end;
end;

procedure TdmMain.actFindNextExecute(Sender: TObject);
begin
  if dmMain.SelDoc <> nil then begin
    DoSearchReplaceText(False, False);
    if iSearchDir = 1 then
      DoSearchReplaceText(False, False);
    iSearchDir := 0;
  end;
end;


procedure TdmMain.actFindReplaceExecute(Sender: TObject);
var
  mResult: Integer;
begin
  if dmMain.SelDoc = nil then exit;
  With TfrmReplace.Create(self) do begin
    cmbFind.Text := dmMain.SelDoc.sciMain.SelText;
    SearchText := gsSearchText;
    if (dmMain.SelDoc.sciMain.SelText <> '') then
      SearchText := dmMain.SelDoc.sciMain.SelText;
    SearchTextHistory := gsSearchTextHistory;
    SearchWholeWords := gbSearchWholeWords;
    mResult := ShowModal;
    if (mResult = mrOK) or (mResult = mrAll) then begin
      gbSearchBackwards := SearchBackwards;
      gbSearchCaseSensitive := SearchCaseSensitive;
      gbSearchFromCaret := SearchFromCursor;
      gbSearchSelectionOnly := SearchInSelectionOnly;
      gbSearchWholeWords := SearchWholeWords;
      gsSearchText := SearchText;
      gsReplaceText := ReplaceText;
      gsSearchTextHistory := SearchTextHistory;

      fSearchFromCaret := gbSearchFromCaret;
      if gbSearchBackwards then iSearchDir := 1
      else iSearchDir := 0;
      if gsSearchText <> '' then begin
        if mResult = mrOK then
          DoSearchReplaceText(True, gbSearchBackwards)
        else begin
          DoSearchReplaceText(True, gbSearchBackwards, true);
        end;
        fSearchFromCaret := TRUE;
      end;
    end;
    Destroy;
  end;
end;

procedure TdmMain.DoSearchReplaceText(AReplace: boolean;
  ABackwards: boolean; aRepAll: Boolean=False);
var
  Options: TSynSearchOptions;
begin
  frmMain.stbMain.SimpleText := '';
  if AReplace then
    Options := [ssoPrompt, ssoReplace, ssoReplaceAll]
  else
    Options := [];
  if ABackwards then
    Include(Options, ssoBackwards);
  if gbSearchCaseSensitive then
    Include(Options, ssoMatchCase);
  if not fSearchFromCaret then
    Include(Options, ssoEntireScope);
  if gbSearchSelectionOnly then
    Include(Options, ssoSelectedOnly);
  if gbSearchWholeWords then
    Include(Options, ssoWholeWord);
      if(aReplace) and (aRepAll) then begin
        bReplaceAll := True;
        Include(Options, ssoReplaceAll);
      end;
  dmMain.SelDoc.sciMain.SearchEngine := dmMain.SynEditSearch;
  if dmMain.SelDoc.sciMain.SearchReplace(gsSearchText, gsReplaceText, Options) = 0 then
  begin
    if gbWrapAround then begin
      //LockWindowUpdate(dmMain.SelDoc.sciMain.Handle);
      {x:= dmMain.SelDoc.sciMain.SelStart;
      y:= dmMain.SelDoc.sciMain.SelEnd;}
      Include(Options, ssoEntireScope);
      {if ABackwards = False then begin
        dmMain.SelDoc.sciMain.SelStart := 1;
        dmMain.SelDoc.sciMain.SelEnd := 1;
      end
      else begin
        dmMain.SelDoc.sciMain.SelStart := Length(dmMain.SelDoc.sciMain.Text);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕第一页久久| 亚洲成人av免费| 懂色av一区二区三区蜜臀| 亚洲www啪成人一区二区麻豆| 日产欧产美韩系列久久99| 欧美精品99久久久**| 日韩一区和二区| 不卡的av在线播放| 色婷婷综合久久久久中文| 亚洲欧美日韩综合aⅴ视频| 91偷拍与自偷拍精品| 亚洲自拍偷拍麻豆| 日韩精品综合一本久道在线视频| 精品一区二区三区影院在线午夜| 久久久久久夜精品精品免费| 99久久国产免费看| 亚洲成人在线观看视频| www国产亚洲精品久久麻豆| 成人va在线观看| 亚洲一级二级在线| 欧美电影精品一区二区| 欧美videofree性高清杂交| 专区另类欧美日韩| 麻豆一区二区99久久久久| 精品一区二区三区欧美| 欧美色男人天堂| 欧美午夜片在线看| 欧美亚洲国产怡红院影院| 色狠狠综合天天综合综合| 91精品国产福利在线观看| 国产精品久久久久一区二区三区| 亚洲欧美日本韩国| 国产一区二区三区黄视频 | 亚洲美女视频在线| 欧美日韩国产精品成人| 蜜桃精品视频在线观看| 4hu四虎永久在线影院成人| 亚洲尤物视频在线| 日本不卡视频在线| 91老师国产黑色丝袜在线| 久久午夜色播影院免费高清 | 国产欧美日韩在线| 一区二区成人在线视频| 91偷拍与自偷拍精品| 国产色综合一区| 国产福利一区在线| 国产亚洲一区字幕| 国产一区视频网站| 国产精品免费视频观看| 性久久久久久久久| 国产视频亚洲色图| 热久久国产精品| 久久久久久日产精品| 无码av中文一区二区三区桃花岛| 麻豆精品在线看| 欧美日韩国产一级| 性欧美疯狂xxxxbbbb| 国产日韩精品一区| 国产精品人成在线观看免费| 欧美性大战久久久久久久| 亚洲美女屁股眼交| 亚洲国产精品精华液2区45| 欧美成人福利视频| 91精品国产黑色紧身裤美女| 欧美网站大全在线观看| 99精品欧美一区二区三区小说| 国产伦精品一区二区三区免费迷| 成人av影院在线| 顶级嫩模精品视频在线看| 中文字幕欧美一区| 国产成人鲁色资源国产91色综| 久久精品视频免费| 欧美专区亚洲专区| 色欧美88888久久久久久影院| 亚洲v中文字幕| 日本一区免费视频| 91精品国产一区二区三区| 精品在线观看视频| 一二三四社区欧美黄| 免费人成黄页网站在线一区二区| 国产精品系列在线观看| 午夜精品成人在线| 日韩丝袜美女视频| 日韩一区二区三区视频在线| 欧美三级三级三级| 国产精品无遮挡| 欧美综合亚洲图片综合区| 成人av网站在线| av一二三不卡影片| 色综合久久88色综合天天6| 日本乱人伦一区| 欧美日韩高清在线| 精品乱人伦小说| 中文在线免费一区三区高中清不卡| 久久久久久99久久久精品网站| 精品国产伦一区二区三区免费| 久久精品网站免费观看| 国产精品家庭影院| 亚洲欧洲日韩综合一区二区| 日本一区二区视频在线| 亚洲乱码一区二区三区在线观看| 国产精品欧美一区二区三区| 26uuu久久天堂性欧美| 91蝌蚪国产九色| fc2成人免费人成在线观看播放| 国产主播一区二区三区| 免费在线观看不卡| 国产欧美一区二区在线观看| 色老汉av一区二区三区| 美女www一区二区| 国模冰冰炮一区二区| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 亚洲国产日韩综合久久精品| 亚洲精品一二三| 午夜伦欧美伦电影理论片| 蜜桃av一区二区| 国产传媒日韩欧美成人| 97精品国产露脸对白| jiyouzz国产精品久久| 成人在线综合网站| 91在线精品秘密一区二区| 欧美日韩亚洲综合在线| 精品国产成人在线影院| 26uuu久久天堂性欧美| 91麻豆精品国产91久久久久久久久 | 国产精品资源网| 成人精品免费视频| 欧洲av一区二区嗯嗯嗯啊| 色综合天天狠狠| 国产亚洲一区二区三区四区| 青青草精品视频| 精品理论电影在线观看| 久久国产精品免费| 成人午夜电影小说| 在线免费视频一区二区| 日韩精品一区二区三区在线观看| 国产精品毛片大码女人| 天堂精品中文字幕在线| 精品日韩在线一区| 欧美精品亚洲一区二区在线播放| 久久精品99国产国产精| 欧美一级高清片| 日韩一区中文字幕| 精品伊人久久久久7777人| 欧美怡红院视频| 1区2区3区国产精品| 国产精品一二三区| 91精品视频网| 亚洲国产一区二区视频| 91老师片黄在线观看| 奇米色一区二区| 欧美色窝79yyyycom| 亚洲精品日韩综合观看成人91| 福利一区二区在线观看| 亚洲日本一区二区三区| 美女一区二区视频| 精品91自产拍在线观看一区| 成人免费看视频| 国产精品成人一区二区艾草 | 91视频免费播放| 老司机一区二区| 暴力调教一区二区三区| 欧美日韩成人一区二区| 亚洲激情av在线| 99久久99久久精品免费看蜜桃| 久久久久久久久久久久久久久99| 奇米影视在线99精品| 91.xcao| 亚洲免费伊人电影| 99re视频这里只有精品| 亚洲日本青草视频在线怡红院| 成人av一区二区三区| 亚洲色图.com| 在线国产电影不卡| 日韩精品欧美精品| 日韩午夜中文字幕| 精品亚洲aⅴ乱码一区二区三区| 欧美成va人片在线观看| 国产精品一区二区果冻传媒| 中文av一区二区| 91丝袜美腿高跟国产极品老师| 国产精品欧美久久久久无广告| 成人午夜精品一区二区三区| 亚洲品质自拍视频| 欧美性受xxxx黑人xyx性爽| 亚洲国产日韩在线一区模特| 6080日韩午夜伦伦午夜伦| 麻豆精品久久精品色综合| 久久综合色8888| www.亚洲人| 亚洲va韩国va欧美va精品 | 亚洲欧洲另类国产综合| 奇米影视在线99精品| 麻豆国产精品一区二区三区| 亚洲成年人影院| 亚洲综合自拍偷拍| 三级久久三级久久| 亚洲欧美成人一区二区三区| 精品国产乱码久久久久久牛牛| 欧美精品在线视频|