MindMap (Organiser des idées)

Partagez votre expérience de PureBasic avec les autres utilisateurs.
dayvid
Messages : 1242
Inscription : mer. 11/nov./2009 18:17
Localisation : Poitiers (Vienne)

Re: MindMap (Organiser des idées)

Message par dayvid »

La vache, je suis carrément bluffer par ton travail Falsam :o
Tu s'est que tu es douer toi hein 8)
La vie, C'est comme, Une boitte, De startis, On en voie, De toutes, Les couleurs !

Mon forum http://purebasic.forumphp3.com/index.php
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: MindMap (Organiser des idées)

Message par Backup »

"cette leçon, vaut bien un fromage , sans doute "
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: MindMap (Organiser des idées)

Message par falsam »

dayvid a écrit :La vache, je suis carrément bluffer par ton travail Falsam :o
Tu s'est que tu es douer toi hein 8)
Dobro a écrit :"cette leçon, vaut bien un fromage , sans doute "
Jean de La Fontaine a écrit :Mon bon Monsieur,
Apprenez que tout flatteur
Vit aux dépens de celui qui l'écoute.
Cette leçon vaut bien un fromage sans doute.
J'ai pris soin de terminer mon fromage avant d'ouvrir ma gueule :)
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: MindMap (Organiser des idées)

Message par falsam »

Lorsque la barre d'icone est cachée, les icônes restent actives quand on passe la souris dessus. Je corrige ce bug pour la version 1.60.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: MindMap (Organiser des idées)

Message par falsam »

la version 1.60 est maintenant disponible.

Ajout:
-Insertion d'une image au format JPG et PNG (Choix par défaut).
-Quelques raccourcis:
B : Insertion d'un box au point d'insertion de la souris.
T : Insertion d'un texte au point d'insertion de la souris.
I : Insertion d'une image au point d'insertion de la souris.

Remarques.
Attention au poids des images.
Lors de la sauvegarde de votre projet, les images sont insérées dans le fichier XML.
Vous trouverez un dossier Mark contenant des images au format PNG afin d'agrémenter votre design.

Enjoy :)
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: MindMap (Organiser des idées)

Message par Kwai chang caine »

j'ai répondu à la demande de Kwai chang caine. Depuis l'inspecteur d'entité (Touche F2 ou barre d'espace ou menu contextuel) il est possible de changer le type de relation d'une entité parent.
Merci FALSAM, trop de la balle 8)
Petit a petit, ça prend forme :wink:
Encore merci 8)
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: MindMap (Organiser des idées)

Message par falsam »

Une version 1.70 est disponible.
J'ai ajouté un calcul automatique du point d'ancrage de l'entité fils en fonction de sa position par rapport à l'entité parent.

Je pense que je laisserais la possibilité de désactiver cette fonctionnalité dans les préférences de projet.
J'ai tenté de mettre en place l'alignement automatique des entités sur le grid mais pour le moment j'ai quelques soucis d'affichage. Dans une prochaine version peut être :)
Dernière modification par falsam le mar. 19/juin/2012 21:48, modifié 1 fois.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
dayvid
Messages : 1242
Inscription : mer. 11/nov./2009 18:17
Localisation : Poitiers (Vienne)

Re: MindMap (Organiser des idées)

Message par dayvid »

Arrête Falsam, t'es trop balaise :P
T'es calé toi hein quand même :D
Merci !
La vie, C'est comme, Une boitte, De startis, On en voie, De toutes, Les couleurs !

Mon forum http://purebasic.forumphp3.com/index.php
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: MindMap (Organiser des idées)

Message par falsam »

@Dayvid : Merci de tes encouragements mais pas la peine d'en rajouter :).

Suite à une demande de MicroByte sur le forum anglais, j'ai mis en place une procédure très simple qui permet à une entité, ainsi que celles imbriquées, de s'aligner sur la grille.

Activer par defaut, l'option s'aligner sur la grille s'active ou se désactive depuis la boite de dialogue préférence (Ctrl+P). Par contre je n'ai pas encore codifier la sauvegarde de cette option lors de la sauvegarde d'un design.

Merci à Blendman pour le code ayant servi au calcul d'alignement sur la grille.

la procédure se nomme GetNearPoint(x, SnapGrid) en ligne 377.

:arrow: download Nightly Version : MindMap V1.75 (Source)

Malheureusement j'ai un problème d'affichage quand je cherche à modifier la taille d'une entité en le tirant par le bord haut ou gauche.

Merci pour l'aide que vous pouvez m'apporter pour résoudre ce bug.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Mesa
Messages : 1126
Inscription : mer. 14/sept./2011 16:59

Re: MindMap (Organiser des idées)

Message par Mesa »

Pour le bug, on observe avec "l'inspector" que les variable \top et \left ne s'actualise que par pas (step) de 10 et non par pas (step) de 1.

Quand on change le pas de la grille

Code : Tout sélectionner

SnapX=12
SnapY=12
les variables s'actualisent par pas de 12

C'est donc snapx...

Si on commente les lignes 2384 à 2387
;

Code : Tout sélectionner

If SnapToGrid = #True
; 		      *ActiveEntity\Left = GetNearPoint(*ActiveEntity\Left, SnapX)
; 		      *ActiveEntity\Top = GetNearPoint(*ActiveEntity\Top, SnapY)
; 		    EndIf
(commenter aussi ligne 2289 à 2292 )

Ça refonctionne.

Mesa.
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: MindMap (Organiser des idées)

Message par falsam »

Merci Mesa pour ces observations, mais si tu commentes comme tu le fais, l'alignement des entités sur la grille ne se fait plus. l'inspecteur d'entité se met bien à jour à chaque déplacement d'entités.
Dernière modification par falsam le mer. 20/juin/2012 14:40, modifié 1 fois.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Mesa
Messages : 1126
Inscription : mer. 14/sept./2011 16:59

Re: MindMap (Organiser des idées)

Message par Mesa »

Dans

Code : Tout sélectionner

Procedure ExamineEvent(EventType.i)
Si on change Case #PB_EventType_LeftButtonUp
par le code ci-dessous, ça a l'air de fonctionner.
Le but est de rectifier les coordonnées left et top au moment où on relâche le bouton de la souris. La gestion du If SnapToGrid = #True|#False sera d'autant plus facile (je pense).

Ligne 2239

Code : Tout sélectionner

 Case #PB_EventType_LeftButtonUp
	    ;Déplacement de l'entité parent
		    If SnapToGrid = #True
		      *ActiveEntity\Left = GetNearPoint(*ActiveEntity\Left, SnapX)
		      *ActiveEntity\Top = GetNearPoint(*ActiveEntity\Top, SnapY)
		    EndIf
		    ;Redessine les entités
        DesignUpdateContent()
        
        ;Mise à jour de l'inspecteur d'entité (Coordonnées seules)
        Inspector_Update(1)

	    *ActiveEntity = #False

	    mode=-1
(Il ne reste plus que la gestion des entité-filles.)

[Edit]
Il faut bien tout commenter comme je l'ai dit plus haut et les entités-filles se comportent comme leur parent.

Mesa.
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: MindMap (Organiser des idées)

Message par falsam »

Oops je n'avais pas vu ce dernier message. Je teste Mesa.

La version 1.76 est disponible.
Ajout :
-Outils préférence de projet.
Modification de la taille du clip par defaut (l'attache horizontal ou vertical).
Modification de la largeur et de la hauteur des flêches.
Modification du diamètre des point d'ancrage par defaut.

Si vous ouvrez un projet antérieur à cette version de MindMap vous ne verrez plus les flèches et les clips.
Ouvrer la boite de dialogue Préférence (Ctrl + P) puis modifier les paramètres, puis sauvegarder votre travail.


-Inspecteur d'entité.
Vous pouvez changer la couleur de la bordure d'une entité.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: MindMap (Organiser des idées)

Message par falsam »

@Mesa : J'ai testé ta solution qui est pas mal mais qui a comme conséquence d'ajouter une séquence de rafraîchissement du design.
Quand on bouge une entité, on redessinait le design. Avec ta méthode on redessine à nouveau le design quand on relâche la souris.

J'ai modifié la procédure d'alignement d'une entité.
la largeur et la hauteur de l'entité sont recalculées que si les redimensionnement s’effectuent par le haut (Mode=1), le cotes gauche (Mode=3), le coin haut-gauche (Mode=13) et le coin bas-gauche (Mode=23).

Code : Tout sélectionner

; Déplacement de l'entité parent - Move parent entity
If SnapToGrid = #True
     If Mode = 1 Or mode = 3 Or Mode = 13 Or mode = 23
        *ActiveEntity\Height = *ActiveEntity\Height + *ActiveEntity\Top-GetNearPoint(*ActiveEntity\Top, SnapY)
	*ActiveEntity\Width = *ActiveEntity\Width + *ActiveEntity\Left-GetNearPoint(*ActiveEntity\Left, SnapX)		      
     EndIf
		    
    *ActiveEntity\Left = GetNearPoint(*ActiveEntity\Left, SnapX)
    *ActiveEntity\Top = GetNearPoint(*ActiveEntity\Top, SnapY)		      
EndIf
Ce qui donne une nouvelle version de MindMap qui passe en version 1.77
Dans cette version, l'alignement sur le grid n'est plus automatique. Il faut l'activer dans les préférences du projet (Ctrl + P)

Merci encore à tout ceux qui me donnent des idées à mettre en place dans ce projet et à ceux qui me donnent des pistes ou la solution dans la résolutions des problèmes.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: MindMap (Organiser des idées)

Message par Kwai chang caine »

Tu va pas y croire, ce matin en me levant je pensais à toi et ton super boulot, et hop....j'ai une réponse de toi 8O

Justement, je savais qu'on avait pas fait le tour de toutes l'utilité de ton travail.
C'est un peu le principe du RAD, comme je te l'avais déjà dit, mais ça pourrait être utile pour un éditeur de page HTML style Dreamweaver 8) (T'as vu le respect....j'te compare pas avec de la merde... :wink: )

Alors ce matin, je me suis dit, avant même ta réponse : "Kcc pourquoi que t'utiliserais pas le bijou de FALSAM ????" Je parle de ton code hein !!! :mrgreen:
Bon j'ai encore rien compris au CanvasGadget et ça me fait peur rien que d'essayer de comprendre :oops:
C'est pourquoi je suis encore en 4.51..pour être sur de ne pas l'utiliser par "mégarde" :lol: :lol:

Mais bon, faut vivre avec son temps, et comme je viens de faire un gros effort de modernisme en passant de W95 a W98... :mrgreen: je vais peut être essayer d'insérer une de ces "bêtes" dans mon code.
Et c'est la que la tuile te concerne...j'ai pensé à toi et ta merveille :oops: (T'es pas dans la oumpha !!!) :lol:

En fait, comme tu l'a peut être compris, j'essaie de faire un petit éditeur automatique de pages HTML.
Mais un truc tout simple, style, je fourre les photos dans des dossiers, je paramètre selon un masque (c'est la que super FALSAM interviensImage) et roule ma poule, un clic et hop les pages se créé selon ton masque MindMap 8)
J'en ai ras le tromblon de me taper mes dizaines de pages statiques a la mano pour mettre des annonces sur Leboncoin :?
Je n'ai pas encore vu ce genre de code en PB, il existe plein de freewares, mais c'est plus cool "kanCnouKiFé" :mrgreen:

Seulement, je vais essayer de le simplifier au maximum, (Alors que tu te fais "hieche" à le perfectionner, Kcc y fait jamais rien comme les autres :oops: ) car je n'ai pas besoin des liaisons, des flèches (Oui oui....je sais :oops:), des différentes formes, juste les rectangles pour représenter les DIV comme les Layers dans DreamWeaver
Voila..je sais pas si ce que je te dis t'intéresses.....mais je voulais te remercier et t'encourager pour te prouver à nouveau que ton travail est super utile.
En fait les nouvelles idées viennent des fois plusieurs mois après la création d'un code généraliste comme le tiens.

Toutes proportions gardées, c'est le cas de COMATE qui au début n’intéressait personne, sauf les burnes comme moi qui sont attaché a VB et son OLE.
Puis petit à petit on voit apparaitre des codes l'utilisant, dans tous les domaines 8O 8)

Et en plus, ce n'est pas tout le monde qui s'y connait en graphisme, et sait faire un code fluide comme le tiens...donc ça ouvre des perspectives à ceux comme moi qui ne savent qu’utiliser les gadgets pour faire des carrés ou faire un dessin :oops:

Encore merci pour tout 8) 8)
Dernière modification par Kwai chang caine le ven. 22/juin/2012 8:53, modifié 1 fois.
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Répondre