Delphi-PRAXiS
Seite 14 von 14   « Erste     4121314   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   PlainEdit 1.7.6 - Texteditor für Windows (https://www.delphipraxis.net/81736-plainedit-1-7-6-texteditor-fuer-windows.html)

ToZie 4. Mai 2008 13:00

Re: PlainEdit 1.7.4 - Texteditor für Windows
 
Sehr nettes Tool, Hut ab!

Was mir aufgefallen ist:

PlainEdit startet in der Position und Größe in der ich es beim letzten Gebrauch verlassen habe - das ist schön. War PlainEdit allerdings maximiert startet es beim nächten Aufruf maximiert auf meinem primären Monitor, auch wenn es sich beim letzten Schließen auf dem zweiten oder dritten befand - das ist nicht schön :).

Vielen Dank

Torsten

Gaijin 4. Mai 2008 13:07

Re: PlainEdit 1.7.4 - Texteditor für Windows
 
Zitat:

Zitat von ToZie
War PlainEdit allerdings maximiert startet es beim nächten Aufruf maximiert auf meinem primären Monitor, auch wenn es sich beim letzten Schließen auf dem zweiten oder dritten befand - das ist nicht schön :).

Alle anderen Programme merken sich den Monitor auf dem sie zuletzt maximiert dargestellt wurden?

Selbst wenn ich den Monitor ermitteln könnte auf dem das Programm zuletzt angezeigt wurde, kann ich es nicht testen...

ToZie 4. Mai 2008 15:12

Re: PlainEdit 1.7.4 - Texteditor für Windows
 
Zitat:

Zitat von Gaijin
Zitat:

Zitat von ToZie
War PlainEdit allerdings maximiert startet es beim nächten Aufruf maximiert auf meinem primären Monitor, auch wenn es sich beim letzten Schließen auf dem zweiten oder dritten befand - das ist nicht schön :).

Alle anderen Programme merken sich den Monitor auf dem sie zuletzt maximiert dargestellt wurden?
Selbst wenn ich den Monitor ermitteln könnte auf dem das Programm zuletzt angezeigt wurde, kann ich es nicht testen...

Ja, zumindest die welche ich öfters maximiert benutze. Es ist gar nicht nötig den Monitor zu ermitteln, da sich die Koordinaten über alle vorhandenen Bildschirme erstrecken. Es würde also reichen zusätzlich zu Form.WindowState noch Form.Left zu sichern und zu setzen - leider ist auf diese Weise die 'normale' Position des maximierten Formulars nicht wiederherstellbar, darum mache ich es in etwa so:

Delphi-Quellcode:
uses
  windows, forms, registry;

procedure StoreFormPos(aForm: TForm; aRegPath: string);
var
  Placement: TWindowPlacement;
  Section: string;
begin
  if assigned(aForm) then with TRegistryIniFile.Create(aRegPath) do try
    Placement.Length := SizeOf(TWindowPlacement);
    GetWindowPlacement(aForm.Handle, @Placement);
    Section:=aForm.Name;
    with Placement, aForm do begin
      if (aForm = Application.MainForm) and IsIconic(Application.Handle) then
        ShowCmd := SW_SHOWMINIMIZED;
      if (FormStyle = fsMDIChild) and (WindowState = wsMinimized) then
        Flags:=Flags or WPF_SETMINPOSITION;
      WriteInteger(Section, 'Flags', Flags);
      WriteInteger(Section, 'ShowCmd', ShowCmd);
      WriteInteger(Section, 'Pixels', Screen.PixelsPerInch);
      WriteInteger(Section, 'MaxX', ptMaxPosition.X);
      WriteInteger(Section, 'MaxY', ptMaxPosition.Y);
      WriteInteger(Section, 'MinX', ptMinPosition.X);
      WriteInteger(Section, 'MinY', ptMinPosition.Y);
      WriteInteger(Section, 'Left', rcNormalPosition.Left);
      WriteInteger(Section, 'Top', rcNormalPosition.Top);
      WriteInteger(Section, 'Right', rcNormalPosition.Right);
      WriteInteger(Section, 'Bottom', rcNormalPosition.Bottom);
    end;
  finally
    Free;
  end
end;

procedure RestoreFormPos(aForm: TForm; aRegPath: string);
var
  Placement: TWindowPlacement;
  Section: string;
begin
  if assigned(aForm) then with TRegistryIniFile.Create(aRegPath) do try
    Placement.Length := SizeOf(TWindowPlacement);
    GetWindowPlacement(aForm.Handle, @Placement);
    Section:=aForm.Name;
    if Screen.PixelsPerInch=ReadInteger(Section, 'Pixels', 0) then with Placement, aForm do begin
      Flags:=ReadInteger(Section, 'Flags', Flags);
      ShowCmd:=ReadInteger(Section, 'ShowCmd', ShowCmd);
      ptMaxPosition.X:=ReadInteger(Section, 'MaxX', ptMaxPosition.X);
      ptMaxPosition.Y:=ReadInteger(Section, 'MaxY', ptMaxPosition.Y);
      ptMinPosition.X:=ReadInteger(Section, 'MinX', ptMinPosition.X);
      ptMinPosition.Y:=ReadInteger(Section, 'MinY', ptMinPosition.Y);
      rcNormalPosition.Left:=ReadInteger(Section, 'Left', rcNormalPosition.Left);
      rcNormalPosition.Top:=ReadInteger(Section, 'Top', rcNormalPosition.Top);
      rcNormalPosition.Right:=ReadInteger(Section, 'Right', rcNormalPosition.Right);
      rcNormalPosition.Bottom:=ReadInteger(Section, 'Bottom', rcNormalPosition.Bottom);
      SetWindowPlacement(Handle, @Placement);
    end; // Formular nicht gespeichert oder Auflösung geändert
  finally
    Free;
  end
end;
Jeweils im OnCreate bzw. OnDestroy des Formulars eingebaut.

Grüße

Torsten

Gaijin 5. Okt 2008 08:06

Re: PlainEdit 1.7.5 - Texteditor für Windows
 
Version 1.7.5:
[+] Beim Zuweisen von Shortcuts wird der Fokus nicht mehr automatisch gesetzt. Dies ermöglicht die Navigation mit den Cursortasten.
[+] Für schreibgeschützte Dateien kann nun für das betreffende Dokument die Eingabe gesperrt werden.
[+] In der Druckvorschau kann jetzt mit den Tasten "Bild auf", "Bild ab", "Pos1" und "Ende" in den Seiten navigiert werden.

Version 1.7.4.2:
[*] Diverse kleinere Änderungen und Korrekturen.

Version 1.7.4.1:
[+] Eine russische Sprachdatei wurde hinzugefügt.
[+] Eine spanische Sprachdatei wurde hinzugefügt.
[-] Der Menüpunkt "Auswahl ausführen" wurde unabhängig von der eingestellten Sprache in Deutsch angezeigt.

(Download im ersten Posting)

xZise 22. Dez 2008 19:49

Re: PlainEdit 1.7.5 - Texteditor für Windows
 
Hi Gaijin,

nachdem ich jetzt die neueste UpdatePlugin Version veröffentlicht habe, würde ich gerne wissen, ob es möglich ist, den Einstellungenpfad der Anwendung zu ermitteln. Also am Anfang kann man ja einstellen, ob es in dem Anwendungsordner gespeichert wird, oder Anwendungsdaten oder ein spezieller Pfad. Genau daran möchte ich kommen :)

MfG
xZise

Gaijin 22. Dez 2008 21:09

Re: PlainEdit 1.7.5 - Texteditor für Windows
 
Ab der Version 1.7.4 steht dafür die Funktion "GetUserPath" zur Verfügung.

BullsEye 23. Dez 2008 00:10

Re: PlainEdit 1.7.5 - Texteditor für Windows
 
Ich weiß nicht, ob das schonmal erwähnt wurde. Aber wenn ich das Programm starte, dann startet es oben links in der Ecke. Ist bei mir ein wenig problematisch, da ich meine Taskleiste oben habe. Besser wäre da die Desktop Mitte ;)

Gaijin 23. Dez 2008 07:35

Re: PlainEdit 1.7.5 - Texteditor für Windows
 
Danke!
In der nächsten Version wird das Programmfenster beim ersten Programmstart in der Mitte angezeigt.

Gaijin 11. Jan 2009 09:53

Re: PlainEdit 1.7.6 - Texteditor für Windows
 
Version 1.7.6:
[+] Die untere Anzeigenleiste kann jetzt mit der Escape-Taste ausgeblendet werden, sofern die ESC-Taste nicht zum Schließen von PlainEdit verwendet wird.
[+] In der Titelleiste kann eine geänderte Datei optional mit einem Stern (*) kenntlich gemacht werden.
[+] In der Titelleiste kann jetzt optional der vollständige Dateiname der aktuellen Datei angezeigt werden.
[*] Das Programmfenster wird bei ersten Start nicht mehr an der oberen linken Ecke, sondern zentriert angezeigt.
[*] Wenn die Eingabe für das aktuelle Dokument gesperrt ist, kann nun kein Snippet und keine Vorlage mehr eingefügt werden.

(Download im ersten Posting)


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:04 Uhr.
Seite 14 von 14   « Erste     4121314   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz