AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Neuerung ab Delphi 10.4: Schriftgröße änderbar! Wie IOTA-mäßig abfragen?

Neuerung ab Delphi 10.4: Schriftgröße änderbar! Wie IOTA-mäßig abfragen?

Ein Thema von r29d43 · begonnen am 16. Jun 2021 · letzter Beitrag vom 17. Jun 2021
Antwort Antwort
r29d43

Registriert seit: 18. Jan 2007
275 Beiträge
 
Delphi 10.4 Sydney
 
#1

Neuerung ab Delphi 10.4: Schriftgröße änderbar! Wie IOTA-mäßig abfragen?

  Alt 16. Jun 2021, 20:42
Hallo,

mit Delphi 10.4 kam die Neuerung, die Schriftgröße des IDE-Editors frei wählbar zu machen.

Weiß eventuell jemand, wo man IOTA-mäßig an diese Einstellung herankommt bzw. diese auslesen kann?

Da es dieses Feature noch nicht lange gibt, nehme ich mal an, wird man in ToolsAPI.pas danach vergeblich suchen?

Thx im Voraus
..

Geändert von r29d43 (17. Jun 2021 um 09:09 Uhr)
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
2.811 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#2

AW: IOTA-Neuerung ab Delphi 10.4: Schriftgröße änderbar! Wie abfragen?

  Alt 17. Jun 2021, 08:31
Ich nehme an, du meinst diese neue Möglichkeit mit der TTrackbar und den beiden TButtons für kleiner und größer unterhalb des Editorsfensters.
Das sind ja nur Controls, die auf die bisherige Schrifteinstellung über Tools | Options | IDE | User Interface | Editor | Display mappen.

Da die Wizards vom CnPack das schon gefühlt schon immer konnten, lohnt sich ein Blick ins öffentliche GitHub-Repository:
https://github.com/cnpack/cnwizards/...orFontZoom.pas
https://github.com/cnpack/cnwizards/...CnWizUtils.pas

Daraus folgt für größer:
Delphi-Quellcode:
procedure TCnEditorFontInc.Execute;
var
  Option: IOTAEditOptions;
begin
  Option := CnOtaGetEditOptions;
  if Assigned(Option) then
    Option.FontSize := Round(Option.FontSize * 1.1);
end;

Und für kleiner:
Delphi-Quellcode:
procedure TCnEditorFontDec.Execute;
var
  Option: IOTAEditOptions;
begin
  Option := CnOtaGetEditOptions;
  if Assigned(Option) then
    Option.FontSize := Round(Option.FontSize / 1.1);
end;

Natürlich mithilfe von:
Delphi-Quellcode:
function CnOtaGetEditOptions: IOTAEditOptions;
var
  Svcs: IOTAEditorServices;
begin
  QuerySvcs(BorlandIDEServices, IOTAEditorServices, Svcs);
  if Assigned(Svcs) then
  begin
  {$IFDEF COMPILER7_UP}
    if Assigned(Svcs.GetTopBuffer) then
      Result := Svcs.GetTopBuffer.EditOptions
    else if Svcs.EditOptionsCount > 0 then
      Result := Svcs.GetEditOptionsIndex(0)
    else
      Result := nil;
  {$ELSE}
    Result := Svcs.GetEditOptions;
  {$ENDIF}
  end
  else
    Result := nil;
end;
QuerySvcs ist hier nur ein Wrapper mit Logmöglichkeit für das normale Supports() und kann damit ersetzt werden.
  Mit Zitat antworten Zitat
r29d43

Registriert seit: 18. Jan 2007
275 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Neuerung ab Delphi 10.4: Schriftgröße änderbar! Wie IOTA-mäßig abfragen?

  Alt 17. Jun 2021, 08:37
Ja, thx, ich werde mir das nachher mal ansehen.

Ich hatte mich jetzt allerdings auch zu einer Lösung durchgewühlt:

Im

Zitat:
TViewPaintNotifier = class(TInterfacedObject, IOTANotifier, INTAEditViewNotifier)
steht nämlich diese von mir gesuchte Information faktisch im CellSize:TSize -Parameter der PaintLine-Procedure:

Delphi-Quellcode:
    procedure PaintLine(const View: IOTAEditView; LineNumber: Integer;
      const LineText: PAnsiChar; const TextWidth: Word;
      const LineAttributes: TOTAAttributeArray; const Canvas: TCanvas;
      const TextRect: TRect; const LineRect: TRect; const CellSize: TSize);
CellSize.CX ist da die Pixelzahl was ein Char breit ist.
CellSize.CY ist da die Pixelzahl was ein Char hoch ist.

Wird nun die Schriftgrößte per IDE-Schriftgrößtenregler geändert, spiegelt sich das also sofort auch in diesem Parameter wieder. Muss ja auch

Geändert von r29d43 (17. Jun 2021 um 09:10 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
3.834 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#4

AW: IOTA-Neuerung ab Delphi 10.4: Schriftgröße änderbar! Wie abfragen?

  Alt 17. Jun 2021, 18:09
Das sind ja nur Controls, die auf die bisherige Schrifteinstellung über Tools | Options | IDE | User Interface | Editor | Display mappen.
Bzw Strg + Num+/-
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +2. Es ist jetzt 21:36 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf