Brauchen wir einen weiteren VisualDesigner?
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
>> Außerdem ist kein einziger dieser Editoren im Stande korrekt mit der Z-Order der Gadgets umgehen.
> Macht auch wenig Sinn, da PB das selbst ja auch nicht wirklich unterstützt.
unterstützt das denn Windows überhaupt richtig?
auch im VD vom VS konnte man die Fensterelemente nur hoch oder runter clicken,
aber keine Property editieren die die Z-Order steuern würde...
> Macht auch wenig Sinn, da PB das selbst ja auch nicht wirklich unterstützt.
unterstützt das denn Windows überhaupt richtig?
auch im VD vom VS konnte man die Fensterelemente nur hoch oder runter clicken,
aber keine Property editieren die die Z-Order steuern würde...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
Hallo,
Ich denke es würde Sinn machen, wenn es einen professionellen VD geben würde. Hier meine Ansprüche:
- Cross-Plattform (Win, Linux, MacOS)
- incl. Event-Generierung
- GUI-Editor und Source-Editor vereint wie in VS oder SharpDevelop
- Unterstützung von TAB-Reihenfolge und Z-Order (Z ist nicht so wichtig)
- Sauber gelöstes Ressourcen-Handling (Images etc.)
Wichtig dabei ist, dass der generierte Code für GUI auf Event-Basis funktioniert. Wenn der Code zu einem Event vorhanden ist, dann soll er ausgeführt werden. Wenn nicht, dann soll nix passieren. So kann man problemlos den Code und die GUI jederzeit verändern und überarbeiten. Das würde bedeuten, dass der GUI-loop dauernd alle möglichen Events verarbeitet. Das kostet zwar Performance, aber ich denke das wäre zu verkraften. Für High-Speed Aufgaben kann man die GUI ja noch immer manuell programmieren.
Wenn es dazu ein spezielles Projekt-File benötigt, wäre das für mich ok.
Volker
Ich denke es würde Sinn machen, wenn es einen professionellen VD geben würde. Hier meine Ansprüche:
- Cross-Plattform (Win, Linux, MacOS)
- incl. Event-Generierung
- GUI-Editor und Source-Editor vereint wie in VS oder SharpDevelop
- Unterstützung von TAB-Reihenfolge und Z-Order (Z ist nicht so wichtig)
- Sauber gelöstes Ressourcen-Handling (Images etc.)
Wichtig dabei ist, dass der generierte Code für GUI auf Event-Basis funktioniert. Wenn der Code zu einem Event vorhanden ist, dann soll er ausgeführt werden. Wenn nicht, dann soll nix passieren. So kann man problemlos den Code und die GUI jederzeit verändern und überarbeiten. Das würde bedeuten, dass der GUI-loop dauernd alle möglichen Events verarbeitet. Das kostet zwar Performance, aber ich denke das wäre zu verkraften. Für High-Speed Aufgaben kann man die GUI ja noch immer manuell programmieren.
Wenn es dazu ein spezielles Projekt-File benötigt, wäre das für mich ok.
Volker
- Fluid Byte
- Beiträge: 3110
- Registriert: 27.09.2006 22:06
- Wohnort: Berlin, Mitte
Da muss ich nochmal nachhacken ...ts-soft hat geschrieben:Wichtig wäre auch das Nachträgliche ändern, wenn schon Code hinzugefügt wurde. Das ist ja eins der Hauptprobleme.
Wie genau soll das vonstatten gehen? In welchem Umfang muss die Editierbarkeit gewährleistet sein? Wenn man alle Fähigkeiten der PB IDE 1:1 auch im VD umsetzen will kann man das Projekt gleich knicken. Der Aufwand wäre viel zu groß (Syntaxanalyse, Color Highlight, Auto-Complete, etc.).
Zuletzt geändert von Fluid Byte am 02.04.2009 14:45, insgesamt 1-mal geändert.
Windows 10 Pro, 64-Bit / Outtakes | Derek
-
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
Hmm vielleicht wär ein Export in XML und eine Include mit entsprechendem LoadXMLGUI bzw. CatchXMLGUI (PB kann ja jetzt XML) dafür besser geeignet?Fluid Byte hat geschrieben:Da muss ich nochmal nachhacken ...ts-soft hat geschrieben:Wichtig wäre auch das Nachträgliche ändern, wenn schon Code hinzugefügt wurde. Das ist ja eins der Hauptprobleme.
Wie genau soll das vonstatten gehen? In welchen Umfang muss die Editierbarkeit gewährleistet sein? Wenn man alle Fähigkeiten der PB IDE 1:1 auch im VD umsetzen will kann man das Projekt gleich knicken. Der Aufwand wäre viel zu groß (Syntaxanalyse, Color Highlight, Auto-Complete, etc.).
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
> Da muss ich nochmal nachhacken ...
Es reicht wenn Du nicht editierbare Bereiche kennzeichnest, vorausgesetzt
es gibt beim Design auch alle Möglichkeiten.
Z.B. Der PureVisionXP bietet keine Möglichkeit für #PB_Ignore, obwohl ich
das bereits mehrmals moniert habe. Ich bin also gezwungen diesen Wert
selbst einzutragen, so das bei Änderungen dies wieder verloren geht.
Wenn also alle Möglichkeiten des Designs vorhanden sind, würden
gekennzeichnete Bereiche, genügen.
Wenn Möglichkeiten fehlen und ich gezwungen bin den gekennzeichneten zu
überschreiben, hat der Designer verkackt
Es reicht wenn Du nicht editierbare Bereiche kennzeichnest, vorausgesetzt
es gibt beim Design auch alle Möglichkeiten.
Z.B. Der PureVisionXP bietet keine Möglichkeit für #PB_Ignore, obwohl ich
das bereits mehrmals moniert habe. Ich bin also gezwungen diesen Wert
selbst einzutragen, so das bei Änderungen dies wieder verloren geht.
Wenn also alle Möglichkeiten des Designs vorhanden sind, würden
gekennzeichnete Bereiche, genügen.
Wenn Möglichkeiten fehlen und ich gezwungen bin den gekennzeichneten zu
überschreiben, hat der Designer verkackt

PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Den Vorschlag von DD finde ich ganz gut, es muß aber nicht unbedingt
XML sein, weil das die Exe ja auch entsprechend vergrössert und für kl.
Tools dann nicht mehr ganz so schön ist.
Ein eigenes Binärformat, das geladen wird, so wie es die erste Version von
Mischas Designer gemacht hat, der war für mich einfach Genial, leider nie
bis zum Ende durchgeführt.
XML sein, weil das die Exe ja auch entsprechend vergrössert und für kl.
Tools dann nicht mehr ganz so schön ist.
Ein eigenes Binärformat, das geladen wird, so wie es die erste Version von
Mischas Designer gemacht hat, der war für mich einfach Genial, leider nie
bis zum Ende durchgeführt.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- Fluid Byte
- Beiträge: 3110
- Registriert: 27.09.2006 22:06
- Wohnort: Berlin, Mitte
Mal sehen ob ich das geschnallt hab' ...ts-soft hat geschrieben:Den Vorschlag von DD finde ich ganz gut, es muß aber nicht unbedingt
XML sein, weil das die Exe ja auch entsprechend vergrössert und für kl.
Tools dann nicht mehr ganz so schön ist.
Ein eigenes Binärformat, das geladen wird, so wie es die erste Version von
Mischas Designer gemacht hat, der war für mich einfach Genial, leider nie
bis zum Ende durchgeführt.
[Theorie = #True]
Wenn ich im VD meine Dialoge zusammenklicke befindet sich am unteren Bildschirmrand ein Ausgabefenster. Darin wird dann aber nicht PB-Code angezeigt sondern meine für den VD "selbstgebraute" Sprache mit reduzierter Syntax.
Beispiel:
Code: Alles auswählen
WINDOW 0,0,320,260,"blah",$1024E2
BUTTON 10,10,120,25,"blub"
LISTBOX 10,50,180,220
ITEM 0,"item1"
ITEM 1,"item2"
STRING 10,230,200,20,"lorem",$47DF45
...
...
Die Dokumente des VD's werden dann auch in dieser (oder ähnlicher) Form abgespeichert. Dann kann man sie mittels eines Parsers in PB laden welcher dann mein "Script" in native Syntax umwandelt.
Shortcuts:
F5 - Vorschau des Dialogs
F6 - Script parsen und in den PB-Editor laden
F7 - momentane Darstellung und Script synchronisieren *
* hat man manuell das Script geändert wird die Darstellung aktualisiert und vice versa. Man könnte das vielleicht auch in Echtzeit bewerkstelligen dann fällt dieser Punkt weg.
[Theorie = #False]
So ungefähr hab' ich mir das vorgestellt. Murks oder eine Schritt in die richtige Richtung?
Zuletzt geändert von Fluid Byte am 03.04.2009 13:45, insgesamt 1-mal geändert.
Windows 10 Pro, 64-Bit / Outtakes | Derek
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Schritt in die richtige Richtung!
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
