Seite 23 von 23
Re: Multicolor Procedure List
Verfasst: 21.09.2024 16:28
von RSBasic
DePe hat geschrieben: 20.09.2024 17:42Ich habe das MulticolorProcedurList-Tool in PureBasic nachprogrammiert und in die IDE eingefügt.
Meinst du direkt in den PB IDE-Quellcode nativ implementiert ohne externes Werkzeug wie Multicolor Procedure List?
Wenn ja, hast du schon deinen Code auf Github ein Pull Request eingeleitet? Dann kann Fred deine Implementierung in die zukünftige PB-Version übernehmen.
Wenn dein Nachbau genauso gut und plattformunabhängig funktioniert, dann freut mich das sehr, dann hätten alle PB-User eine neue geile IDE-Funktion. Wenn diese Funktion übernommen wird, dann braucht man mein Werkzeug nicht mehr und die Entwicklung wird eingestellt.
Re: Multicolor Procedure List
Verfasst: 21.09.2024 17:01
von DePe
Ja, meine Änderungen habe ich direkt in der IDE gemacht, es ist reiner PB-Code ohne API.
Ich habe noch die Funktion für das Deaktivieren des automatischen Ausklappen von Code hinzugefügt, und das Kopieren der Prozedurliste mit Optionen in die Zwischenablage. Alles, oder nur die Prozeduren, und mit Argumenten.
Dein Tool funktioniert mit dem Code von der IDE nicht gut. Gerade im Modul ProcedureBrowser.pb kommt so oft das Wort 'Procedure' vor, dass oft eine falsche oder keine Prozedure in der Prozedurliste ausgewählt ist.
Mit dem Code bin ich fast fertig, er funktioniert sehr gut, soweit ich das Testen kann.
Aber für die Integration in die 'öffentliche' IDE reicht es sicher (noch) nicht. Die Funktion müsste man auch abschaltbar machen, das fehlt jetzt.
Peter
Re: Multicolor Procedure List
Verfasst: 22.09.2024 10:47
von DePe
Ich habe eine Option für das Ein-/Ausschalten der Multicolor-Liste zu den Preferenzen hinzugefügt. Man kann jederzeit zur normalen Ansicht umschalten.
Es gibt einen Fehler bei der Darstellung, die Checkbox wird unten abgeschnitten. Macht man die Checkbox höher, wird sie umsomehr abschnitten, bis die Checkbox verschwindet. Der Bereich dürfte ein Dialog mit Container und Scrollarea sein, aber ich habe nicht gefunden wo und wie der Bereich erstellt wird.
https://www.dreisiebner.at/temp/PB_Mult ... ndows7.png
Auf das Sortieren der Prozedurliste habe ich allerdings vergessen, das verwende ich normalerweise nicht. Sollte das dann auch noch funktionieren, werde ich um Hilfe bitten, wie man die Änderungen in die offizielle IDE integrieren kann, wenn das überhaupt gewünscht ist.
Peter
Re: Multicolor Procedure List
Verfasst: 22.09.2024 20:18
von DePe
Ich habe den Code fertig, hoffe ich. Getestet habe ich momentan nur mit Windows 7.
Wer mutig ist und testen möchte, ich habe Windowsversionen kompiliert mit PB v6.12, 32- und 64-Bit (Asm-Backend):
Code: Alles auswählen
https://www.dreisiebner.at/temp/PB-v612-MulticolorProcedureList.zip
Edit: Eine Version für Debian 12 x64 ist jetzt auch im ZIP-Archiv vorhanden.
Edit: Eine Version für Raspberry Pi OS 12 x64 ist jetzt auch im ZIP-Archiv vorhanden.
Es ist noch eine Datei mit den Preferenzen als Ausschnitt dabei.
Aktivieren muss man die Multicolor-Liste in den Einstellungen bei den Tool-Optionen für den Prozedur-Browser.
Momentan habe ich noch Debug-Anweisungen im Code, diese sind aber deaktiviert. Ansonst kann ich diesen auch zum Herunterladen bereitstellen.
Peter
Re: Multicolor Procedure List
Verfasst: 23.09.2024 09:42
von DePe
Einen Fehler habe ich gefunden. Wenn bei einen Marker der Hintergrund eingefärbt wird, ist die Schriftfarbe schwarz. Jetzt belbt die Schriftfarbe in der eingestellten Farbe für Kommentare.
Ich habe das ZIP-Archiv mit den Windows-Versionen aktualisiert.
Peter
Re: Multicolor Procedure List
Verfasst: 23.09.2024 16:33
von Axolotl
Hi PeDe,
ich denke, dass das eine coole Erweiterung der IDE ist. (Ich habe die bisherige Lösung nie ausprobiert).
Pull-Request per Github ist wahrscheinlich eine (die beste) Vorgehensweise. (Ich kann aber verstehen, wenn man nicht Gibhub lernen möchte)
Auf jeden Fall würde ich das im Englischen Forum besprechen, da sind einige dabei, die die IDE schon geforkt haben.... .
Auch die Test-Basis wäre deutlich größer.
Jedenfalls vielen Dank für den Einsatz und das Teilen.
EDIT: Ha, haste schon gemacht.... (super.)

Re: Multicolor Procedure List
Verfasst: 23.09.2024 19:12
von DePe
Ich habe das ZIP-Archiv mit Versionen für Debian 12 x64 und Raspberry Pi OS 12 x64 aktualisiert.
Peter
EDIT: Achtung, die Raspberry Pi Version verhält sich gerade ungewöhnlich bei mir. Die IDE startet nicht richtig, sondern es sieht so aus, als sie startet und gleich wieder beendet wird. Das geht einige Minuten bis zum Einfrieren des Systems.
EDIT2: Die Raspberry Pi Version funktioniert wieder, das ZIP-Archiv ist aktualisiert.
Re: Multicolor Procedure List
Verfasst: 24.09.2024 08:29
von DePe
Ich habe die vier Versionen für Windows, Debian und Raspberry Pi aktualisiert:
Code: Alles auswählen
https://www.dreisiebner.at/temp/PB-v612-MulticolorProcedureList.zip
Ich hatte einen Fehler in der Timer-Prozedur, die auf die interne PB ProcedureList() zugegriffen hat, obwohl sie leer war. Das ist erst mit dem langsamen Raspberry Pi aufgefallen. Jetzt fehlen nur noch Icons für die Schaltflächen.
Beim Beenden der IDE wird ein Fenster mit Geschwindigkeitsmessungen angezeigt. Das ist eigentlich nur zur Erinnerng dass es nicht die offizielle IDE ist.
Falls die eingestellten Farben der Prozedurliste wichtig sind, sollte man die Preferenz-Datei von PB sichern.
Ansonst werden sie beim Start der offiziellen IDE wieder gelöscht.
Edit: ZIP-Archiv aktualisiert, jetzt zeigt der Farbauswahldialog beim Öffnen auch die aktuelle Farbe an.
Edit2: Hier ist der Code von der PB IDE v6.12 von 2024-09-13:
Code: Alles auswählen
https://www.dreisiebner.at/temp/PB-IDE-v612-Code-MulticoloredProcedureList.zip
Es wurden die drei Dateien geändert:
Common.pb
Language.pb
ProcedureBrowser.pb
An jeder Änderung wurde das Kommentar '; PeDre' am Ende angefügt.
Der Code enthält keine Debugausgaben bzw. Geschwindigkeitsmessungen.
EDIT: Im englischen Forum sind einige Änderungen beschrieben:
Integrated 'Multicolored Procedure List' in IDE
https://www.purebasic.fr/english/viewtopic.php?t=85421
Peter
Re: Multicolor Procedure List
Verfasst: 03.10.2024 07:00
von DePe
Die Funktionen der Prozedurliste sind jetzt alle fertig. Die ZIP-Archive wurden aktualisiert:
Code: Alles auswählen
https://www.dreisiebner.at/temp/PB-v612-MulticolorProcedureList.zip
https://www.dreisiebner.at/temp/PB-IDE-v612-Code-MulticoloredProcedureList.zip
Die neue Prozedurliste muss man in den Einstellungen unter 'Werkzeugtafel'->'Prozedurliste'->'Konfiguration' aktivieren.
Es werden Icons für die Schaltflächen verwendet. Dafür muss man das SilkTheme_PBMC.zip Archiv in das Verzeichnis 'Themes' von PB kopieren. Danach kann man in den Einstellungen unter 'Allgemein'->'Themen' die Icons auswählen. Zur Unterscheidung gibt es in der dritten Zeile den Hinweis 'Version for Multicolored Procedure Liat'. Das ist nur eine temporäre Lösung, bis die Änderungen eventuell in die offizielle IDE aufgenommen werden.
Eine Mac-Version kann ich nicht bereitstellen, bzw. weder kompilieren noch testen.
Für das Einfärben der Einträge wird der Text mit dem Anfang der Einträge verglichen. Wenn man z.B. eine Prozedur, Marker oder Makro 'Test' auswählt und einfärbt, werden alle Einträge die 'Test' am Anfang enthalten ebenfalls eingefärbt.
'Probleme' bzw. 'Issues' kann man nicht direkt einfärben. Aber man kann einen Marker erstellen z.B. ';- TODO', diesen einfärben und den Marker wieder löschen. Dann werden alle Einträge mit 'TODO' am Anfang eingefärbt. Anders geht es nicht, da ich keinen Zugriff zu den Namen der 'Probleme' habe, bzw. gar nicht weiß wie das funktionieren könnte.
Alle Einstellungen werden in der normalen 'PureBasic.prefs' von PB gespeichert. Wenn man die offizielle IDE startet gehen die Einstellungen wieder verloren. Man kann also einmal alles einstellen und einfärben, und dann die Abschnitte '[ProcedureBrowser]' und '[ProcedureBrowser_ItemColor]' kopieren und sichern.
Ich werde demnächst versuchen ob ich mit Git einen Pull-Request erstellen kann. Fred hat zmindest nicht ablehnend reagiert.
Edit: In dem Code-Archiv sind die aktualisierten Sprachdateien für die Tooltips. Die muss man auch kopieren, ansonst werden sie in englisch angezeigt.
Peter