Weihnachts- Package (Kralle F12)

Rund um die LCL und andere Komponenten
Antworten
Benutzeravatar
AlterPascaler
Beiträge: 98
Registriert: Mo 26. Jun 2023, 18:56
OS, Lazarus, FPC: Linux, Lazarus, Free Pascal
CPU-Target: xxBit
Wohnort: Deutschland, NRW

Weihnachts- Package (Kralle F12)

Beitrag von AlterPascaler »

Bei unseren letzten Norddeutschen Lazarustreffen kam Kralles Idee wieder auf den Tisch.
Die Idee: Umschalten der Desktops mit der Funktion „Formular-/Unit- Ansicht umschalten [F12]“ zu verbinden. Siehe auch viewtopic.php?f=5&t=10896
Die Idee war, dass ein Package schön wäre, wo man auch unter „Menu→Werkzeuge→Einstellungen“ die Desktops zuordnen kann. Nach 1 Stunde probieren haben wir uns dem nächsten Thema zugewandt. :lol:
Vor 4 Wochen dachte ich, das machste gerade mal, nach einer Woche glaubte ich, das ich fertig wäre, noch schnell „DockedFormEditor“ Package testen und fertig. Bei Mensch ärgere dich nicht heißt das „zurück zum Start“. Man sollte nicht testen, oder??
Drei Wochen später ist heute. Package ist fertig. Getestet unter Windows 10, Linux mit GTK2 und den Lazarusversionen 3.4 und 4.4
Eine kurze Anleitung findet ihr in der „LIESMICH.MD“.
Die aktuelle Version bekommt ihr hier:https://gitlab.com/FpTuxe/desktopswitch.

Unter Linux gibt's mit AnchorDocking und dem ObjektInspektor ein Problem. Siehe LIESMICH.MD

Wenn ihr schon Kralles/Plutos Änderung eingebaut habt, dann müsst ihr sie vorher wieder zurücknehmen.
Original Methode in der Main.pp

Code: Alles auswählen

procedure TMainIDE.mnuToggleFormUnitClicked(Sender: TObject);
begin
  if IDETabMaster <> nil then begin
    IDETabMaster.ToggleFormUnit;
  end else begin
    DoBringToFrontFormOrUnit;
  end;
end;
Nach Änderung IDE neu kompilieren.

Hoffentlich habt ihr Freude daran.
desktopswitch.zip
(26.88 KiB) 257-mal heruntergeladen
Viele Grüße
AlterPascaler

Benutzeravatar
AlterPascaler
Beiträge: 98
Registriert: Mo 26. Jun 2023, 18:56
OS, Lazarus, FPC: Linux, Lazarus, Free Pascal
CPU-Target: xxBit
Wohnort: Deutschland, NRW

Re: Weihnachts- Package (Kralle F12)

Beitrag von AlterPascaler »

Hallo zusammen,

1. Habe die Datei oben "desktopswitch.zip" eben erneuert. War ein Käfer drin, der das Ausschalten des Verhaltens verhinderte.

2. Hat schon jemand Erfahrung mit dem Package gemacht?

3. Bei mir schmiert der Object Inspector immer ab. Das passiert nur unter Linux mit AnchorDocking. Dieser Fehler tritt auf, wenn man den Object Inspector schließt und wieder öffnet. Danach sind meisten die Enumerationsfelder fehlerhaft. Mein System ist Linux Manjaro/XFCE.

Würde mich freuen wenn der Eine oder Andere das auch mal testen kann. Auch Windows User dürfen sich angesprochen fühlen. Sollte sich das als Fehler herausstellen, also nicht nur mein Rechner betroffen ist, würde ich das bei Lazarus melden.

Hier der Workflow:
Object Inspector aus AnchorDocking raus ziehen
Object Inspector schließen
Mit F11 Object Inspector öffnen

Jetzt sollte das Fehlverhalten auftreten.
Viele Grüße
AlterPascaler

Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 1278
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Manjaro Linux, Mint und Windows 10 ,Lazarus 4.99, FPC-Version: 3.3.1
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

Re: Weihnachts- Package (Kralle F12)

Beitrag von kralle »

Moin,

Klasse dass das jetzt jemand in die Hand nimmt, der mehr Ahnung hat als ich.

Siehe mal in der PDF auf Seite 13.
Ich hatte auch schon ein Problem mit dem Umschalter.

Hast Du in Deiner Komponente an die anderen Möglichkeiten der Umschaltung als F12 gedacht?

Durch Anklicken der Tabs und durch auswählen des entsprechenden Menüpunktes, ...

Gruß Kralle
Dateianhänge
Vortrag.pdf
(778.63 KiB) 214-mal heruntergeladen
OS: MX Linux, Linux Mint und Windows 10
FPC-Version: 3.3.1 , Lazarus 3.99
+ Delphi XE7SP1

Benutzeravatar
AlterPascaler
Beiträge: 98
Registriert: Mo 26. Jun 2023, 18:56
OS, Lazarus, FPC: Linux, Lazarus, Free Pascal
CPU-Target: xxBit
Wohnort: Deutschland, NRW

Re: Weihnachts- Package (Kralle F12)

Beitrag von AlterPascaler »

@Kralle
Wenn man Docking ausschaltet funktioniert der DesktopSwitch nicht mehr. Wenn du das meinst, dann hast du recht. Habe ich nicht getestet. Schlamperei!!
Sollte aber zu lösen sein.

Das Umschalten aus dem Menü „Ansicht“ funktioniert bei mir.

Die Events für das Umschalten der Tabs im DockedFormEditor habe ich noch nicht gefunden. Probiert habe ich die Events selber zu erzeugen, in dem ich regelmäßig den „IDETabMaster.TabDisplayState abfrage“. Das hat geklappt, aber leider hat die Stabilität der Ide darunter gelitten. Das will ja keiner.

Wenn sich jemand mit dem DockedFormEditor auskennt oder eine Idee hat, wie wir an die Events kommen dann nur zu. Keine Hemmungen.
Viele Grüße
AlterPascaler

Antworten