Seite 6 von 29
Re: DialogDesign0R V1.09
Verfasst: 16.03.2018 15:25
von HeX0R
Ja Ja, *nörgel* *nörgel*
Ehrlich gesagt mache ich immer einen Punkt für Linux, keine Ahnung, wieso ich es in diesem Tool vergessen habe.
Re: DialogDesign0R V1.09
Verfasst: 17.03.2018 11:25
von hjf
Hallo HeXOR,
wenn der Dialog etwas größer wird, z.B. der des DD, wird doch die Orientierung im Tree
schnell etwas unübersichtlich. Zudem ein im Tree gewähltes Gadget im Vorschau-Dialog
nicht markiert ist.
Durch das Einfügen der Comments besteht ja die Möglichkeit, die Ansicht im Tree
etwas zu kommentieren. Da wäre es schön, wenn nach dem -comment- in Klammern
der Comment-Text mit angezeigt wird, wie bei den Gadgets, vielleicht dann sogar farbig.
Schönes WE
hjf
Re: DialogDesign0R V1.09
Verfasst: 17.03.2018 11:58
von hjf
Hallo HeXOR,
habe mal was gebastelt, das könnte z.B. so aussehen könnte:
Code: Alles auswählen
Procedure BuildUpTree(*node = 0, TreePos = 0) ;rebuild the whole ObjectTree
...
...
Case #PB_XML_Comment
; AddGadgetItem(DID("tree_objects"), -1, "-comment-", ImageID(#Image_Comments), TreePos)
;-----------------------------------------------------------
Protected sBuf.s
sBuf = GetXMLNodeText(*node)
If sBuf = ""
AddGadgetItem(DID("tree_objects"), -1, "-comment-" + GetXMLNodeText(*node), ImageID(#Image_Comments), TreePos)
Else
AddGadgetItem(DID("tree_objects"), -1, "< " + sBuf + " >", ImageID(#Image_Comments), TreePos)
EndIf
SetGadgetItemColor(DID("tree_objects"), CountGadgetItems(DID("tree_objects")) - 1, #PB_Gadget_FrontColor, #Red)
;-----------------------------------------------------------
SetGadgetItemData(DID("tree_objects"), CountGadgetItems(DID("tree_objects")) - 1, *node)
Code: Alles auswählen
Runtime Procedure OnStringChanged() ;string text changed
Protected *node, a$, b$, c$, Key.s, Gadget, Selected, i, j, k
i = GetGadgetState(DID("tree_objects"))
If i > -1
b$ = GetGadgetItemText(DID("tree_objects"), i)
*node = GetGadgetItemData(DID("tree_objects"), i)
Gadget = EventGadget()
If XMLNodeType(*node) = #PB_XML_Comment
SetXMLNodeText(*node, GetGadgetText(Gadget))
;-----------------------------------------------------------
Protected sBuf.s = GetGadgetText(Gadget)
If sBuf = ""
SetGadgetItemText(DID("tree_objects"), i, "-comment-")
Else
SetGadgetItemText(DID("tree_objects"), i, "< " + sBuf + " >")
EndIf
SetGadgetItemColor(DID("tree_objects"), i, #PB_Gadget_FrontColor, #Red)
;-----------------------------------------------------------
ProcedureReturn 0
Ich hoffe, das es prinzipiell so geht.
hjf
Re: DialogDesign0R V1.10
Verfasst: 17.03.2018 14:35
von HeX0R
V1.10
- Settings Path für Linux geändert
- Move-Up/Down verbessert (kein Neuladen des ganzen Trees mehr, allerdings sind die verschobenen Items dann zugeklappt, irgendwie ärgert mich das TreeGadget hier, lasse es erst mal so)
- Texte der Kommentare werden jetzt im Tree angezeigt (max. 24 Zeichen, lässt sich in der settings.prefs anpassen "maxcommentlength")
- Farben für Kommentare optional, ich persönlich mag keine Farben, daher erst mal deaktiviert, setze "commentcolor = 255" in der settings.prefs, für Rot z.B.
Re: DialogDesign0R V1.10
Verfasst: 18.03.2018 20:52
von hjf
Hallo HeXOR,
prima, aber neueingefügte Comments erst nach dem Neuladen des Dialogs eingefärbt.
in OnStringChanged() fehlt noch:
SetGadgetItemColor(DID("tree_objects"), i, #PB_Gadget_FrontColor, CommentColor)
hjf
Re: DialogDesign0R V1.10
Verfasst: 19.03.2018 12:44
von HeX0R
Das kann ich unter Windows nicht bestätigen, neu eingefügte Kommentare sind sofort eingefärbt.
Reden wir von Linux?
Re: DialogDesign0R V1.10
Verfasst: 19.03.2018 14:15
von hjf
Hier bei mir gehts jetzt auch (Win7), gestern gings unter Win10 nicht.
Ich teste heute abend nochmal unter Win10.
Ich nutze PB5.62/x86.
Unter folgenden Bedingungen bleibt der Comment schwarz:
Neuer Dialog
RMB, add window
RMB, add vbox
RMB, add button
RMB auf vbox, add command
RMB auf command, Move up.
Dann ist der Comment schwarz, bei mir!
Wenn ich jetzt mit RMB auf den Comment, Comment delete ausführe, crasht der DD.
mfG.
hjf
Re: DialogDesign0R V1.10
Verfasst: 19.03.2018 14:28
von HeX0R
Bestätigt!
Schau ich mir heute Abend an, Danke!
Re: DialogDesign0R V1.10
Verfasst: 19.03.2018 23:23
von HeX0R
Das ist mal wieder ein PB-Bug, siehe hier:
http://www.purebasic.fr/english/viewtop ... 52#p519752
Habe jetzt versucht drumrum zu programmieren, aber dann entnervt aufgegeben.
Werde die Tage mal in Ruhe drüber nachdenken, wenn ich mehr Zeit habe.
Weil ein PB fix ist sicherlich so schnell nicht in Sicht.
[Edit]
Hab jetzt doch einen recht simplen Fix gefunden.
Scheint, das alles passiert nur, wenn man etwas als ersten Child einfügen möchte.
V1.11 ist online
Re: DialogDesign0R V1.12
Verfasst: 20.03.2018 23:53
von HeX0R
V1.12
Sorry an die Linux-Jünger, ich musste den Pfad für die Settings nochmal verändern, weil ich es gleich machen wollte für Win und Linux (und mir Compilerdirectiven sparen wollte, sind eh schon zuviele drin).
/.config/DDesign0r kann gelöscht werden, wird nun in /.hex0r/DDesign0r gespeichert.
Ausserdem habe ich das leidliche Problem mit den zusammengeklappten Childs beim Verschieben (hoffentlich) nun endlich gelöst.