Brand New Form Designer: na, ja...

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
Josh
Beiträge: 1028
Registriert: 04.08.2009 17:24

Re: Brand New Form Designer: na, ja...

Beitrag von Josh »

In diesem Fall ist die GUI ja der Hauptteil des Motors.

Ich sehe das Problem bei dem VD noch immer, dass er keine echten Fenster und Gadgets verwendet sondern alles auf ein Canvasgadget malt. Ein VD sollte ja nach dem System WYSIWYG arbeiten und da ist er meilenweit entfernt. Wenn ich nur an die unzähligen Möglichkeiten der verschiedenen Betriebssysteme, Betriebssystemeinstellungen, Fenstereinstellungen und Gadgeteinstellungen denke, dann wünsche ich Polo viel Spaß.

Irgendwie hab ich da von Anfang an ein Bauchkribbeln gehabt. Alleine schon bei dem Titel 'Form Designer coming soon' und außer ein paar Fragmenten war da einfach nichts da.
Klaus_1963
Beiträge: 96
Registriert: 25.06.2009 09:09

Re: Brand New Form Designer: na, ja...

Beitrag von Klaus_1963 »

Fataler Installationsbug...
führte zu meiner ersten schlechten Beurteilung des "Formdesigners": bei der Installation von PB 5.0 32/64 wurde der Formdesigner nicht unter "Werkzeuge" mitinstalliert sondern der alte VD! Deshalb dachte ich, da will mich jemand ver...

Den neuen FormDesinger muss ich manuell in die Werkzeugliste mit aufnehmen. Allen, denen es so geht wie mir: den neuen FormDesigner findet Ihr auch im Hauptverzeichnis von PB...

Nu werde ich den mal testen...

Bis dann
Klaus
PureBasic 5.72 LTS / Windows / MacOS / Linux Mint / starker Kaffee / noch stärkerer Kaffee / reines Koffein intravenös...
Motto: Hauptsache es funktioniert - aber schnell und richtig!
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7028
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Brand New Form Designer: na, ja...

Beitrag von STARGÅTE »

Josh hat geschrieben:Ich sehe das Problem bei dem VD noch immer, dass er keine echten Fenster und Gadgets verwendet sondern alles auf ein Canvasgadget malt. Ein VD sollte ja nach dem System WYSIWYG arbeiten und da ist er meilenweit entfernt.
Das ist richtig.
Allerdings kann man "echte" Gadgets schlecht editieren (vergrößern usw.).
Um dann nicht auf API zurück greifen zu müssen, um Mausklicks usw. zu registrieren, hatte ich damals (wollte früher auch einen machen) die Idee, einmal das echte Fenster mit den echten Gadgets zu erstellen, und darüber ein Fenster mit dem Editor-Canvas, welches den Inhalt des echten Fensters kopiert.
Hier ein Beispiel (mit rechts Mausklick, wird die Buttongröße geändert, mit links die Position):

Code: Alles auswählen

Enumeration
	#Window
	#WindowView
	#Gadget
	#CanvasGadget
	#OutputImage
EndEnumeration


Procedure CopyWindowOutput(Window.i, Gadget.i)
	If StartDrawing(WindowOutput(Window))
		GrabDrawingImage(#OutputImage, 0, 0, WindowWidth(Window), WindowHeight(Window))
		StopDrawing()
	EndIf
	If StartDrawing(CanvasOutput(Gadget))
		DrawImage(ImageID(#OutputImage), 0, 0)
		StopDrawing()
	EndIf
EndProcedure


OpenWindow(#Window, 0, 0, 400, 300, "WindowTitle", #PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)
	ButtonGadget(#Gadget, 10, 10, 200, 20, "Hallo")
	
OpenWindow(#WindowView, 0, 0, 400, 300, "WindowTitle", #PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)
	CanvasGadget(#CanvasGadget, 0, 0, 400, 300)

Repeat
	
	Select WaitWindowEvent(10)
			
		Case #PB_Event_CloseWindow
			End
			
		Case #PB_Event_Gadget
			Select EventGadget()
				Case #CanvasGadget
					Select EventType()
						Case #PB_EventType_LeftButtonDown
							ResizeGadget(#Gadget, GetGadgetAttribute(#CanvasGadget, #PB_Canvas_MouseX), GetGadgetAttribute(#CanvasGadget, #PB_Canvas_MouseY), #PB_Ignore, #PB_Ignore)
						Case #PB_EventType_RightButtonDown
							ResizeGadget(#Gadget, #PB_Ignore, #PB_Ignore, GetGadgetAttribute(#CanvasGadget, #PB_Canvas_MouseX)-GadgetX(#Gadget), GetGadgetAttribute(#CanvasGadget, #PB_Canvas_MouseY)-GadgetY(#Gadget))
					EndSelect
			EndSelect
			
		Case #Null
			CopyWindowOutput(#Window, #CanvasGadget)
	EndSelect
	
ForEver
So hat man im Canvas die einfache möglichkeit Ziehrahmen usw. einzubauen und erspart sich zudem das selberzeichnen der Gadgets.
PS: Ob ich doch noch mal anfange einen FormEditor zu bauen :lol:
Zuletzt geändert von STARGÅTE am 01.09.2012 14:03, insgesamt 1-mal geändert.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
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

Re: Brand New Form Designer: na, ja...

Beitrag von ts-soft »

Klaus_1963 hat geschrieben:Fataler Installationsbug...
Das ist kein Installationsbug. Einstellungen, die Du getroffen hast, werden beibehalten, ganz normal. Aber der Hinweis, das der Pfad evtl. anzupassen ist wäre angebracht, aber nicht in der Beta :wink:
Bei mir war dort PureFORM eingetragen, wenn das vom Installer überschrieben worden wäre, wäre ich Sauer geworden.

Gruß
Thomas
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.
Bild
Benutzeravatar
Josh
Beiträge: 1028
Registriert: 04.08.2009 17:24

Re: Brand New Form Designer: na, ja...

Beitrag von Josh »

STARGÅTE hat geschrieben:Allerdings kann man "echte" Gadgets schlecht editieren (vergrößern usw.).
Um dann nicht auf API zurück greifen zu müssen, um Mausklicks usw. zu registrieren, hatte ich damals (wollte früher auch einen machen) die Idee, einmal das echte Fenster mit den echten Gadgets zu erstellen, und darüber ein Fenster mit dem Editor-Canvas, welches den Inhalt des echten Fensters kopiert.
Sieht gut aus. Wenn ich an die fast unendlichen Kombinationen denke, die sich beim Zeichnen ergeben können, dann kann man etliches an Arbeit in so ein System stecken.

Ich hatte als erster den Gedanken gehabt, ein transparentes Fenster darüber zu legen und darauf dann den Ziehrahmen zeichnen. Das war nur mal so eine Idee, ohne mir näher Gedanken darüber zu machen, ob das realisierbar ist. Noch dazu muss ich zugeben, dass ich überhaupt keine Ahnung habe, ob das bei Linux und beim Apfel so machbar ist.
Klaus_1963
Beiträge: 96
Registriert: 25.06.2009 09:09

Re: Brand New Form Designer: na, ja...

Beitrag von Klaus_1963 »

Ja, doch: geht eindeutig in die richtige Richtung :-)

Ribon Band finde ich persönlich ok.

Im ersten Test fand ich den Bedienkomfort noch nicht so gut:

- Undo-Button fehlt (oder habe ich da wieder was übersehen?)
- Übertragen des Quelltextes in PB sollte vom FormDesigner mit einem Knopfdruck möglich sein und sofort ein "lauffähiges" Programm ergeben
- Design und CodeView sind nicht direkt nebeneinander darstellbar
- Doppelclick auf Gadget führt nicht zur entsprechenden Codestelle in CodeView
- Beim Starten des Formdesigners öffnet er sich nicht in der zuletzt gewählten Anordnung
- Eigenschaften der Gadgets sind noch nicht vollständig: z.B. fehlt Color in Button-Gadget (ok, ist ja noch eine Beta-Version)

Fehler: einige nicht reproduzierbare Eigenheiten: einmal froren z.B. die Properties ein: egal welches Gadget ich dann angewählt hatte, es wurden immer die eines früher angewählten Gadgets angezeigt. Behebung war nur durch Neustart des FormDesigneres möglich

Schön wäre, wenn die komplette Programmentwicklung im "FormDesigner" möglich wäre (Name wäre dann z.B. GraphikEditor oder so ähnlich), so wie das bei Lazarus, Visual Studio etc. schon lange der Fall ist. Denke, dass ist einfach notwendig, auch wenn es noch viele "Basic-Coder" gibt, die das anders sehen ;-).

Auf jeden Fall finde ich es toll, dass sich jetzt endlich mal was tut in Sachen "VisualDesigner" äähh: "FormDesigner"

Grüssle
Klaus
PureBasic 5.72 LTS / Windows / MacOS / Linux Mint / starker Kaffee / noch stärkerer Kaffee / reines Koffein intravenös...
Motto: Hauptsache es funktioniert - aber schnell und richtig!
Benutzeravatar
7x7
Beiträge: 591
Registriert: 14.08.2007 15:41
Computerausstattung: ganz toll
Wohnort: Lelbach

Re: Brand New Form Designer: na, ja...

Beitrag von 7x7 »

Vorschlag:
Ihr könnt ja hier im Forum ein OpenSource-Projekt ins Leben rufen mit dem Ziel, einen "Designer" zu programmieren. Jemand entwirft das Grundgerüst und dann geht's los. Jeder kann mitmachen und Ideen und Code beisteuern. Natürlich muss es einen "Leiter" des Projekts geben, damit kein Chaos ausbricht.

Mir persönlich reicht in den meisten Fällen die Console. 9 von 10 Projekten sind reine Konsolen-Programme.
- alles was ich hier im Forum sage/schreibe ist lediglich meine Meinung und keine Tatsachenbehauptung
- unkommentierter Quellcode = unqualifizierter Müll
Benutzeravatar
Josh
Beiträge: 1028
Registriert: 04.08.2009 17:24

Re: Brand New Form Designer: na, ja...

Beitrag von Josh »

7x7 hat geschrieben:Vorschlag:
Ihr könnt ja hier im Forum ein OpenSource-Projekt ins Leben rufen mit dem Ziel, einen "Designer" zu programmieren. Jemand entwirft das Grundgerüst und dann geht's los. Jeder kann mitmachen und Ideen und Code beisteuern. Natürlich muss es einen "Leiter" des Projekts geben, damit kein Chaos ausbricht.

Mir persönlich reicht in den meisten Fällen die Console. 9 von 10 Projekten sind reine Konsolen-Programme.
Konsole und VD, wie soll das zusammen passen?
Benutzeravatar
WPö
Moderator
Beiträge: 669
Registriert: 27.05.2008 12:44
Wohnort: Oberland
Kontaktdaten:

Re: Brand New Form Designer: na, ja...

Beitrag von WPö »

Moin!

Von Josh' Einwand angesehen, sollte das dann entstehende Projekt nicht nur Open Source sein, sondern Freie Software. Bevor man ein solches Projekt beginnt, muß man sich also leider erstmal mit der angestrebten Lizenz beschäftigen. Ist leider eine lästige Sache, aber notwendig. Damit empfehle ich grundsätzlich etwas GPL-artiges, also z.B. die GPL 3.0. Vorschläge?

Gruß - WPö
Ich glaube nur der Statistik, die ich selbst gefälscht habe!
Meine Netzpräsenz: WPö.de
PB5.31 auf LMDE und Pentium T7200 2,00GHz, 4GB DDR2, ATI X1400.
Benutzeravatar
7x7
Beiträge: 591
Registriert: 14.08.2007 15:41
Computerausstattung: ganz toll
Wohnort: Lelbach

Re: Brand New Form Designer: na, ja...

Beitrag von 7x7 »

Josh hat geschrieben:Konsole und VD, wie soll das zusammen passen?
Du hast mich missverstanden. Ich wollte damit sagen, dass ich in 9 von 10 Fällen KEINE GUI benötige.
- alles was ich hier im Forum sage/schreibe ist lediglich meine Meinung und keine Tatsachenbehauptung
- unkommentierter Quellcode = unqualifizierter Müll
Antworten