Projet Editors Factory

Vous avez développé un logiciel en PureBasic et vous souhaitez le faire connaitre ?
Shadow
Messages : 1373
Inscription : mer. 04/nov./2015 17:39

Projet Editors Factory

Message par Shadow »

Bonjour à tous,

Vous l'avez attendu si longtemps, même si certains d'entre vous n'y croyaient pas et se moquaient même du projet !
Il avait des opinions, des critiques etc., il est apparu que ce projet avait environ 0,2% à voir le jour selon certains.
Mais d'autres critiques plus constructives aussi, comme le souhait de rendre le code public !

Nous avons essayé de créer une DLL du projet, mais aussi une librairie, ce fut simplement un échec retentissant !
Pas moyen de savoir comment protéger le code, je ne voulais pas le donner à la base car j'avais peur des abus et de l'appropriation !

Au fil du temps, le projet a été un peu mis de côté mais nous avons un peu
avancer quand même (enfin, quand je dis "nous", c'est surtout "Stargate") :)

Après un certain temps de réflexion et en tenant compte de certaines opinions, et surtout du fait que certaines personnes que je ne connais pas
venait demander à Stargate où en est le projet et qu'elles commençait à presser le bouchon....

Je conclus comme lui que ce projet est intéressant au final, et vous ne serez pas déçus.
mais je crois que je me suis mal exprimé comme je le fais souvent, hélas !

Ce module ne va pas créer votre éditeur les doigts dans le nez hein, c'est à vous de le faire !
C'est un peu comme un logiciel de création de jeu où il faut coder pour faire son jeu !

Ici c'est la même chose mais pour les éditeurs Object !
Tout a été pensé pour le rendre très facile à utiliser, mais il est possible de le rendre encore bien plus simple !

Vos éditeurs, vos Objets, c'est à vous de faire le reste !
La particularité de ce module est de pouvoir personnaliser et manipuler les objets comme vous le souhaitez.

Il ne suffit pas de créer un Objet, il faut aussi lui donner une apparence et des comportements avec des fonctions simplistes !

Créez un Objet où vous voulez sur l'éditeur
Donnez une image à cet objet (Apparence)
Ensuite, pourquoi ne pas lui donner un curseur standard ou personnalisé lorsque la souris passe dessus ?
Et pendant que nous y sommes, donnons des poignées standard ou personnalisées à nos Objets, pour les déplacer ou les redimensionner avec la souris, dans les directions souhaitées.
Et pourquoi ne pas restreindre nos Objets, position X et Y minimum et maximum sur la toile, taille minimum et maximum sur la toile, les redimensionner ou les déplacer par "pas".
Et pourquoi ne pas créer des Objets de type "Conteneur", sous la forme d'une hiérarchie de parents et d'enfants.

Retrouvez toutes les informations des Objets, leur position, leur taille, etc...
Et bien d'autres choses encore (non exhaustif) !
Et beaucoup d'autres choses encore plus folles, qui viendront plus tard !

Avec cet outil très puissant en cours de développement, vous pourrez créer votre propre éditeur !
Pourquoi pas un éditeur de dessin, un éditeur vectoriel, etc...
Ou même un éditeur de jeux, soyons fous !
Ou encore plus fou, un éditeur visuel !

Cet outil vous permettra de créer vos propres éditeurs, mais il ne fera pas le travail pour vous !
N'attendez pas que les choses vous arrivent, il faut les provoquer ! (Citation du film : La championne d'échecs sur YT)

Nous avons trouvé une licence appropriée pour le module.
Si je ne me trompe pas : https://creativecommons.org/licenses/by-nc/4.0/

Mais nous verrons comment le mettre en œuvre.

Editors Factory vient directement chez vous le week-end prochain si tous se passe bien.
Alors bavé un max et préparer les pop corn car ça va décoiffé !
Dernière modification par Shadow le sam. 09/janv./2021 20:01, modifié 2 fois.
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.

PureBasic: 5.60 x64 Bits.
Shadow
Messages : 1373
Inscription : mer. 04/nov./2015 17:39

Re: Projet Editors Factory

Message par Shadow »

Salut à tous,

Editors Factory est disponible en open source.

Le plus ressent est le 29/11/2021 sur ce lien ici, c'est un peu le Bazard car en chantier:
https://drive.google.com/file/d/1y_6TAE ... sp=sharing

J'ai commencer le fichier d'aide mais reste beaucoup à faire !
https://drive.google.com/file/d/13OkWo7 ... sp=sharing

Information et mise à jour sur le forum anglophone !

https://www.purebasic.fr/english/viewto ... 12&t=76588
Quelques autres Exemples ici: https://drive.google.com/file/d/1x9olBI ... sp=sharing

Si vous avez des question posez les ici svp
mais regarder avant si votre réponses n'est pas là bas :)
Dernière modification par Shadow le mer. 01/déc./2021 6:44, modifié 2 fois.
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.

PureBasic: 5.60 x64 Bits.
Avatar de l’utilisateur
Mindphazer
Messages : 639
Inscription : mer. 24/août/2005 10:42

Re: Projet Editors Factory

Message par Mindphazer »

Shadow a écrit : Si vous avez des question posez les ici svp
mais regarder avant si votre réponses n'est pas là bas :)
Donc autant poser les questions là-bas :mrgreen:
Bureau : Win10 64bits
Maison : Macbook Pro M1 14" SSD 512 Go / Ram 16 Go - iPad Pro 32 Go (pour madame) - iPhone 15 Pro Max 256 Go
Shadow
Messages : 1373
Inscription : mer. 04/nov./2015 17:39

Re: Projet Editors Factory

Message par Shadow »

Mindphazer a écrit :
Shadow a écrit : Si vous avez des question posez les ici svp
mais regarder avant si votre réponses n'est pas là bas :)
Donc autant poser les questions là-bas :mrgreen:
Ouais, t'as raison :lol:
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.

PureBasic: 5.60 x64 Bits.
Avatar de l’utilisateur
microdevweb
Messages : 1800
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Projet Editors Factory

Message par microdevweb »

Bravo tu a tenu ton pari, bonne continuation pour la suite. Pour ma part le n'ai pas d'utilité d'un tel module.
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Avatar de l’utilisateur
Ar-S
Messages : 9476
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Projet Editors Factory

Message par Ar-S »

J'ai testé les exemples. Ils fonctionnent. Bravo.
LE truc qui me questionne. Vous n'étiez pas censé faire un IDE pour créer l'interface ? Parce qu'en l'état, on a des exemples fonctionnels mais si faut décortiquer les exemples pour pouvoir l'utiliser l'intérêt est moindre.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Shadow
Messages : 1373
Inscription : mer. 04/nov./2015 17:39

Re: Projet Editors Factory

Message par Shadow »

Ar-S a écrit :J'ai testé les exemples. Ils fonctionnent. Bravo.
LE truc qui me questionne. Vous n'étiez pas censé faire un IDE pour créer l'interface ? Parce qu'en l'état, on a des exemples fonctionnels mais si faut décortiquer les exemples pour pouvoir l'utiliser l'intérêt est moindre.
Salut Ar-S,

Je t'invite à relire mon message, le premier tout y est me semble !
" Vous n'étiez pas censé faire un IDE pour créer l'interface ?"
Non, c'est mieux que ça, c'est c'est à toi de le créer ton Ide !
L'intérêt du module c'est de créer toi même ton éditeur !
Et ce, en manipulant les objets comme tu le souhaite !
on a des exemples fonctionnels mais si faut décortiquer les exemples pour pouvoir l'utiliser l'intérêt est moindre.
Je suis d'accord avec toi, mais nous y ajouterons du contenu plus tard, au moins le code est disponible c'est le plus important !

Et puis si tu as des question je suis là pour y répondre aussi et sur le forum anglais aussi ya Stargate mais il est assez pris.
Note: le lien sur le forum anglais est moins complet en exemple !

Les démo par exemple n'y sont pas et ne sont pas traduite en anglais !

@microdevweb merci à toi :)
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.

PureBasic: 5.60 x64 Bits.
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Re: Projet Editors Factory

Message par blendman »

salut

j'ai retesté aujourd'hui, et il manque des exemples qui pourraient permettre de mieux comprendre ce qu'on peut faire, donc, en voici 2 :

ellipse et curve, basé sur l'exemple 1 (bases) :

Ellipse :

Code : Tout sélectionner

; Example01_Basics_ellipse.pb

; Includes the program file
XIncludeFile "EditorFactory.pbi"

; Initializes the Module
UseModule EditorFactory


; --------- Example ---------


; Program constants
Enumeration 1
	#Window
	#Canvas
EndEnumeration

; Object constants starting from 1
Enumeration 1
	#Object1
EndEnumeration

; ----------------------------------------------

; Callback procedure to draw on the object
;   Object.i is the number of the object, you can use it to get properties of the currently drawn object
;   Width.i is the current width of the object
;   Height.i is the current height of the object
;   iData.i is a custom data value set in SetObjectDrawingCallback, here it is used as the color
; This procedure will automatically called during the draw of the Object
Procedure MyDrawing(Object.i, Width.i, Height.i, iData.i)
  AddPathEllipse(Width*0.5,Height*0.5,Width*0.5,Height*0.5)
	VectorSourceColor(iData|$80000000)
	FillPath(#PB_Path_Preserve)
	VectorSourceColor(iData|$FF000000)
	StrokePath(1)
EndProcedure

; ----------------------------------------------

; Create a window
OpenWindow(#Window, 0, 0, 800, 450, "Example 1: Creation of a basic objects.", #PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)

; Create a canvas gadget
CanvasGadget(#Canvas, 0, 0, WindowWidth(#Window), WindowHeight(#Window), #PB_Canvas_Keyboard)

; Initializes the object management for the canvas gadget
If Not InitializeCanvasObjects(#Canvas, #Window)
	Debug "Unable to initialize the object manager !"    
EndIf

; Creates and adds an object to the specified canvas object. By default it is grey and hase no handles
CreateObject(#Canvas, #Object1, 20, 20, 200, 100)
Define Object.i = CreateObject(#Canvas, #PB_Any, 320, 20, 200, 100)

; Sets a custom drawing procedure (as defined above) to the specified object. The last parameter is used as a color
SetObjectDrawingCallback(#Object1, @MyDrawing(), RGB(128, 192, 64))
SetObjectDrawingCallback(Object, @MyDrawing(), RGB(192, 64, 128))

; Add handles for resize and movement
AddObjectHandle(#Object1, #Handle_Size | #Handle_Position)
AddObjectHandle(Object, #Handle_Size | #Handle_Position)


; The window's event loop
Repeat
	
	Select WaitWindowEvent()
			
		Case #PB_Event_CloseWindow ; Exit the program.
			Break
			
	EndSelect
	
ForEver

End
Curve :

Code : Tout sélectionner

; Example01_Basics_curve.pb

; Includes the program file
XIncludeFile "EditorFactory.pbi"

; Initializes the Module
UseModule EditorFactory


; --------- Example ---------


; Program constants
Enumeration 1
	#Window
	#Canvas
EndEnumeration

; Object constants starting from 1
Enumeration 1
	#Object1
EndEnumeration

; ----------------------------------------------

; Callback procedure to draw on the object
;   Object.i is the number of the object, you can use it to get properties of the currently drawn object
;   Width.i is the current width of the object
;   Height.i is the current height of the object
;   iData.i is a custom data value set in SetObjectDrawingCallback, here it is used as the color
; This procedure will automatically called during the draw of the Object
Procedure MyDrawing(Object.i, Width.i, Height.i, iData.i)
  MovePathCursor(0,0)
  AddPathCurve(0.5*Width,0.5,Width*0.5,height*0.5,Width,Height)
	VectorSourceColor(iData|$80000000)
	FillPath(#PB_Path_Preserve)
	VectorSourceColor(iData|$FF000000)
	StrokePath(1)
EndProcedure

; ----------------------------------------------

; Create a window
OpenWindow(#Window, 0, 0, 800, 450, "Example 1: Creation of a basic objects.", #PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)

; Create a canvas gadget
CanvasGadget(#Canvas, 0, 0, WindowWidth(#Window), WindowHeight(#Window), #PB_Canvas_Keyboard)

; Initializes the object management for the canvas gadget
If Not InitializeCanvasObjects(#Canvas, #Window)
	Debug "Unable to initialize the object manager !"    
EndIf

; Creates and adds an object to the specified canvas object. By default it is grey and hase no handles
CreateObject(#Canvas, #Object1, 20, 20, 200, 100)
Define Object.i = CreateObject(#Canvas, #PB_Any, 320, 20, 200, 100)

; Sets a custom drawing procedure (as defined above) to the specified object. The last parameter is used as a color
SetObjectDrawingCallback(#Object1, @MyDrawing(), RGB(128, 192, 64))
SetObjectDrawingCallback(Object, @MyDrawing(), RGB(192, 64, 128))

; Add handles for resize and movement
AddObjectHandle(#Object1, #Handle_Size | #Handle_Position)
AddObjectHandle(Object, #Handle_Size | #Handle_Position)


; The window's event loop
Repeat
	
	Select WaitWindowEvent()
			
		Case #PB_Event_CloseWindow ; Exit the program.
			Break
			
	EndSelect
	
ForEver

End
Ce sont des exemples tout bêtes, mais essentiels à mon avis pour qu'on puisse avoir une idée globale ;).
Shadow
Messages : 1373
Inscription : mer. 04/nov./2015 17:39

Re: Projet Editors Factory

Message par Shadow »

Shadow a écrit : dim. 17/janv./2021 17:01 Salut à tous,

Editors Factory est disponible en open source.

Le plus ressent est le 29/11/2021 sur ce lien ici, c'est un peu le Bazard car en chantier:
https://drive.google.com/file/d/1y_6TAE ... sp=sharing

Information et mise à jour sur le forum anglophone !

https://www.purebasic.fr/english/viewto ... 12&t=76588
Quelques autres Exemples ici: https://drive.google.com/file/d/1x9olBI ... sp=sharing

Si vous avez des question posez les ici svp
mais regarder avant si votre réponses n'est pas là bas :)
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.

PureBasic: 5.60 x64 Bits.
Shadow
Messages : 1373
Inscription : mer. 04/nov./2015 17:39

Re: Projet Editors Factory

Message par Shadow »

Le deuxième message à été mis à jour avec le lien vers l'archive dernière en date.
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.

PureBasic: 5.60 x64 Bits.
Shadow
Messages : 1373
Inscription : mer. 04/nov./2015 17:39

Re: Projet Editors Factory

Message par Shadow »

@blendman, et les autres.

Dans les exemples en français ou ils sont les plus nombreux, tu peu déjà voir quelques exemples pas trop mal.
Et tu as aussi 2 ou3 démo aussi je crois.

Dis moi ce que tu en pense, faut pas hésiter, si tu as des questions etc...
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.

PureBasic: 5.60 x64 Bits.
Shadow
Messages : 1373
Inscription : mer. 04/nov./2015 17:39

Re: Projet Editors Factory

Message par Shadow »

J'ai mis dans le deuxième message le fichier d'aide en court de construction.
Peut être que cela vous aidera à un peu mieux comprendre ?
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.

PureBasic: 5.60 x64 Bits.
Répondre