Multicolor Procedure List

Anwendungen, Tools, Userlibs und anderes nützliches.
DePe
Beiträge: 153
Registriert: 26.11.2017 16:17
Wohnort: Wien
Kontaktdaten:

Re: Multicolor Procedure List

Beitrag von DePe »

Ich habe die einzelne Moduldatei und das gesamte Projekt, im 'Plain Text'-Format, auf einem anderen PC mit Windows 8.1 getestet. Dort funktioniert das MPL-Tool ohne Probleme. Es gibt also einen Unterschied zwischen XP und allen neueren Windows-Versionen.

Edit: Habe auch das Tool und PB per Taskmanager an eine CPU gebunden (Core2Duo), funktioniert ebenfalls ohne Probleme.
Den Fokus erhält PB nach dem Start auch immer.

Peter
DePe
Beiträge: 153
Registriert: 26.11.2017 16:17
Wohnort: Wien
Kontaktdaten:

Re: Multicolor Procedure List

Beitrag von DePe »

Ich habe ein Video aufgezeichnet, wo ich den Cursor zeichenweise bewege und man die Änderung im MPL-Tool sieht. Es tauchen auch hier die nicht darstellbaren Zeichen auf.
Das Video ist ein WMV mit 500 kB, Format 'Windows Media Video 7 692x424 5fps':

Edit: [Link gelöscht]

PB 5.71b1, Win XP SP3, Dateiformat 'Plain Text'

Peter
Zuletzt geändert von DePe am 17.06.2019 15:55, insgesamt 1-mal geändert.
DePe
Beiträge: 153
Registriert: 26.11.2017 16:17
Wohnort: Wien
Kontaktdaten:

Re: Multicolor Procedure List

Beitrag von DePe »

Jetzt habe ich auf einem Windows XP Notebook mit Pentium M 1,4 GHz getestet. Damit funktioniert die Anzeige ebenfalls nicht richtig. Auch mit dem alten PB 5.31 gibt es das gleiche Problem.

Das Tool von Kiffi hat das Problem nicht, es zeigt immer den richtigen Prozedurnamen an. Es sucht zwar nur in der Prozedur und nicht im ganzen Modul, aber es gibt keine Cursorposition wo es etwas falsches anzeigt.

Peter
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Multicolor Procedure List

Beitrag von RSBasic »

Besteht das Problem ausschließlich unter Windows XP? Konntest du dieses Problem jemals ab Windows 7 nachstellen?
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
DePe
Beiträge: 153
Registriert: 26.11.2017 16:17
Wohnort: Wien
Kontaktdaten:

Re: Multicolor Procedure List

Beitrag von DePe »

RSBasic hat geschrieben:Besteht das Problem ausschließlich unter Windows XP? Konntest du dieses Problem jemals ab Windows 7 nachstellen?
Das Problem habe ich nur mit XP. Mit Win 7/8.1/10 gibt es das Problem nicht.

Peter
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Multicolor Procedure List

Beitrag von RSBasic »

Ich konnte bezüglich des Cursorproblems unter Windows XP jetzt endlich nachstellen und habe nach mehreren, unterschiedlichen Tests herausgefunden, dass unter Windows XP ein Umlautproblem besteht. Sobald im Quellcode ein Umlautzeichen vorhanden ist, dann wird dieses Zeichen nicht ein Zeichen berechnet, sondern zwei Zeichen (oder gar keins?). Aufgrund dessen verschiebt sich die Cursorposition um 1 pro Umlaut, weil er das Umlautzeichen per WinAPI nicht korrekt unter Windows XP ermitteln kann. Wenn du z.B. in deiner Prozedur viele Umlaute hintereinander schreibst, dann verschiebt sich der ermittelte Cursor noch weiter oder wenn du alle Umlaute entfernst, dann funktioniert die Anzeige wieder korrekt, egal wie groß der Quellcode ist.

Zum Ermitteln des Quellcodes aus dem Arbeitsspeicher des Prozesses von PureBasic benutze ich UTF8. Das ist das, was Windows XP anscheinend nicht kann oder nicht richtig unterstützt.

Ehrlich gesagt möchte ich ein 17 Jahres altes Betriebssystem nicht mehr unterstützen.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Multicolor Procedure List

Beitrag von RSBasic »

Multicolor Procedure List 1.2.4 wurde veröffentlicht.

Changelog:
  • Geändert: Die aktuelle Prozedur wird jetzt auch ermittelt, wenn sich der Cursor in der ersten Zeile der aktuellen Prozedur befindet.
  • Geändert: Der Text "Aktuell: <Prozedur>" wird jetzt genauso formatiert wie die Prozedurliste.
  • Geändert: Der Fokus wird beim Start auf den Editor gesetzt.
  • Geändert: Horizontale Scrollleiste wird jetzt immer versteckt.
Kurzer hat geschrieben:Das Tool erkennt jetzt zwar auch Prozedurnamen, wen die Prozedur zugeklappt ist, aber der Name wird dabei nur bis zur aktuellen Cursorposition ermittelt. Steht der Cursor also in einer Zeile namens "Procedure GetIrgendwas()" direkt hinter "Get", also zwischen dem "t" und dem "I", dann zeigt dein Tool in der Zeile oben "Aktuell: Get" an. Der Rest des Prozedurnamens wird nicht angezeigt.
Erledigt
DePe hat geschrieben:Könntest du für die Anzeige der aktuellen Prozedur die selbe Schrift verwenden, wie bei den Einstellungen 'Tool Panel -> Options' eingestellt ist?
Erledigt
DePe hat geschrieben:PB verliert direkt nach dem Start auch wieder den Fokus.
Erledigt. Ist es jetzt besser?

@Kurzer
Es gibt jetzt 5 weitere Einstellungen, die aber versteckt sind bzw. die man nur in der Einstellungsdatei ändern kann, sonst wird es zu viele Buttons.
Da du das zusätzliche Unterstreichen der aktuellen Prozedur haben wolltest, hast du jetzt für die aktuelle Prozedur noch weitere Einstellungen zum Formatieren:
  • HighlightProcedure_Color: RGB-Wert. Wenn 0, dann Standard.
  • HighlightProcedure_BackColor: RGB-Wert. Wenn 0, dann Standard.
  • HighlightProcedure_FontName: Wenn 0, dann Standard.
  • HighlightProcedure_FontSize: Wenn 0, dann Standard.
  • HighlightProcedure_FontStyle: Wert von #PB_Font_... Wenn 0, dann Standard.
Nach der Änderung in der Einstellungsdatei ist ein Neustart meines Werkzeuges notwendig.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Kurzer
Beiträge: 1614
Registriert: 25.04.2006 17:29
Wohnort: Nähe Hamburg

Re: Multicolor Procedure List

Beitrag von Kurzer »

RSBasic hat geschrieben:Da du das zusätzliche Unterstreichen der aktuellen Prozedur haben wolltest, hast du jetzt für die aktuelle Prozedur noch weitere Einstellungen zum Formatieren:
  • HighlightProcedure_Color: RGB-Wert. Wenn 0, dann Standard.
  • HighlightProcedure_BackColor: RGB-Wert. Wenn 0, dann Standard.
  • HighlightProcedure_FontName: Wenn 0, dann Standard.
  • HighlightProcedure_FontSize: Wenn 0, dann Standard.
  • HighlightProcedure_FontStyle: Wert von #PB_Font_... Wenn 0, dann Standard.
Nach der Änderung in der Einstellungsdatei ist ein Neustart meines Werkzeuges notwendig.
Wie geil ist das denn??? :allright: Danke! :praise:
Da ich ja jetzt eine eindeutige Hintergrundfarbe setzen kann, kann ich auch die Unterstreichung auch wieder deaktivieren - oder ist das fest verdrahtet?

Ah geht zumindest mit HighlightProcedure_FontStyle = 1 (wobei 1 vermutlich von PB nicht definiert ist). Jedenfalls ist die Unterstreichung damit weg. :)

Hervorragend!!!!!!
Bild

Gruß Kurzer
"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.02 x64, OS: Win 7 Pro x64 & Win 11 x64, Desktopscaling: 125%, CPU: I7 6500, RAM: 16 GB, GPU: Intel Graphics HD 520
Useralter in 2023: 56 Jahre.
DePe
Beiträge: 153
Registriert: 26.11.2017 16:17
Wohnort: Wien
Kontaktdaten:

Re: Multicolor Procedure List

Beitrag von DePe »

Mit Windows XP funktioniert das Tool v1.2.4, zumindest bei mir nicht mehr richtig.
Wenn man eine Prozedur in der Liste auswählt, werden die definierten Farben nicht mehr angezeigt. Ist die Anzeige der Modulnamen aktiviert, dann wird die aktuelle Prozedur nicht mehr fett und unterstrichen angezeigt.
Edit: Wenn man die Markierung der Prozedur ausschaltet, werden die Farben wieder angezeigt.

Der Fokus funktioniert jetzt wieder richtig beim Start von PB.

Danke für die Erforschung des Fehlers unter Windows XP, gut zu wissen.
Aber du brauchst wegen mir nichts testen oder ändern, ich kann eine ältere Version verwenden.

Danke nochmals,
Peter
Benutzeravatar
Kurzer
Beiträge: 1614
Registriert: 25.04.2006 17:29
Wohnort: Nähe Hamburg

Re: Multicolor Procedure List

Beitrag von Kurzer »

Da ich mehrere Versionen von PB installiert habe und alle per Batch auf den gleichen Stand bzgl. Tools und Settings halte, fällt mir auf, dass das Multicolor Procedure List Tool offenbar erst ab PB 5.00 funktioniert.

In den Versionen < 5.00 kommt es zu folgendem Fehler:
Bild

PS: Was für mich aber kein Problem darstellt, da ich das Tool dann halt nur mit PB Version 500+ benutzen werde.
Die anderen Versionen habe ich eh nur, um damit ausnahmsweise mal älteren Code aus dem Forum laufen zu lassen.

Kurzer Gruß.
"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.02 x64, OS: Win 7 Pro x64 & Win 11 x64, Desktopscaling: 125%, CPU: I7 6500, RAM: 16 GB, GPU: Intel Graphics HD 520
Useralter in 2023: 56 Jahre.
Antworten