Canvas Variation

Partagez votre expérience de PureBasic avec les autres utilisateurs.
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Canvas Variation

Message par falsam »

Mesa a écrit :Je pensais qu'en appuyant sur la touche B, ça ajouterait une box au niveau du pointeur de la souris. T pour Texte, E pour ellipse, etc.
C'est plus rapide qu'un clic-droit surtout pour ajouter des box en "rafale".

Mais si tu veux le faire, c'est ok.

Mesa.
je vais le faire car c'est le meme principe que ma procédure de copier/coller.
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 : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Canvas Variation

Message par falsam »

La version 1.40 de Canvas Variation est disponible au téléchargement.
Ajout:
-Saisie d'un texte long depuis l'inspecteur d'entité.
-Cadrer un texte à gauche, droite et au centre. Le passage à la ligne est automatique.

Le passage à ligne n'est pas encore parfait. J'accepte bien sur toutes propositions pour améliorer la procédure qui se trouve dans un include DrawFormatText.pbi joint dans le fichier compressé.
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: Canvas Variation

Message par Mesa »

Pour info, un p'tit bug sur le ctrl+return qui ne fonctionne pas sur un objet tout juste créé, il faut le déplacer pour que le raccourci fonctionne.

Dans le DrawFormatText.pbi, en ligne 50, la variable buffer est toujours vide.
Elle sert à quelque chose (dans cette ligne) ?

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

Re: Canvas Variation

Message par falsam »

Mesa a écrit :Pour info, un p'tit bug sur le ctrl+return qui ne fonctionne pas sur un objet tout juste créé, il faut le déplacer pour que le raccourci fonctionne.

Dans le DrawFormatText.pbi, en ligne 50, la variable buffer est toujours vide.
Elle sert à quelque chose (dans cette ligne) ?

Mesa.
Effectivement !!! bug dans les pointeurs au moment de la création d'une entité.
BugWare : En attendant la mise à jour corrective, il faut sélectionner l'entité avant de travailler dessus.

La variable buffer ne sert à rien lors du calcul des espaces à insérer (Calcul simplifié) entres chaque mot. Merci de me l'avoir signaler.

Tu peux aussi faire les modifications suivantes :
CanvasVariation140.pb
-Retirer les variables TPx et TPx qui servaientt au calcul du padding par défaut et qui maintenant est géré par l'include DrawFormatText.pbi

-Remplacer les variables InspectorBackColor par FieldFocusBackColor
la variable FieldFocusBackColor sert à définir la couleur d’arrière plan d'un champs de saisie quand celui-çi prend le focus.
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%
Good07
Messages : 308
Inscription : ven. 23/avr./2004 18:08
Localisation : Hérault 34190 Laroque

Re: Canvas Variation

Message par Good07 »

Bonjour Falsam,

Tout d'abord, félicitation pour cet excellent programme qui en plus fonctionne sur Mac.
Je travaille sur iMac avec OS X Lion 10.7.4 et je n'ai aucun problème de fonctionnement. Enfin si, mais cela va répondre au problème de Mindphazer. Effectivement, le déplacement d'une entité laisse des trainées sur la fenêtre, sauf si l'on met la fenêtre du programme en plein écran. Au démarrage du programme, c'est une petite fenêtre avec un fond blanc qui s'affiche. Si l'on passe en plein écran le fond de la fenêtre est gris avec une grille de point. A partir de là, tout rentre dans l'ordre et on peut déplacer toutes les boîtes sans problème.
Pour la version 1.40, dans le zip il manque: "DrawFormatText.pbi" donc je n'ai pas pu effectuer de test sur cette version.

Au risque de me répéter, excellent programme et surtout bonne continuation.

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

Re: Canvas Variation

Message par falsam »

Bonjour Good07 et merci de cette précision à propos du grid que tu vois uniquement quand tu es en plein écran.

J'ai beau chercher je ne vois pas pourquoi le CanvasGadget ne s'affiche pas correctement au démarrage.
Pourrais tu modifier l'ouverture de la fenetre principale de l'application de maniére à bloquer le changement de dimension.

Code : Tout sélectionner

Procedure Mainform_Open()  
  If OpenWindow(#Mainform, 0, 0, 600, 500, "Canvas variation 1.40", WindowStyle)
à remplacer par

Code : Tout sélectionner

Procedure Mainform_Open()  
  If OpenWindow(#Mainform, 0, 0, 600, 500, "Canvas variation 1.40")

Si le probleme ne se reproduit plus, cela voudrait peut être signifier que la solution est à trouver dans la procédure MainForm_Resize().

Concernant la version de CanvasVariation 1.40, le zip est modifié.
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%
Good07
Messages : 308
Inscription : ven. 23/avr./2004 18:08
Localisation : Hérault 34190 Laroque

Re: Canvas Variation

Message par Good07 »

Merci falsam.
Bon, j'ai changé la ligne dans la procédure Mainform_Open, mais ça ne résout pas le problème. :(
Autre détail de fonctionnement sur Mac. Au démarrage du programme il apparait une fenêtre avec un fond gris. Après appel du menu pop up, par exemple ellipse, la fenêtre passe avec un fond blanc avec le problème signalé qui disparait si on la met en plein écran. :( Etrange. J'avoue ne pas avoir assez de connaissances en programmation pour pouvoir t'aider à résoudre le problème. Je constate souvent des différences au niveau du fonctionnement des gadgets entre la version windows et la version Mac.
J'ai essayé plusieurs dimensions pour l'ouverture de la fenêtre mais le problème ne semble pas venir de là.
Tien, je viens de résoudre le problème en appelant la procédure MainForm_Resize() à la fin de la procédure Mainform_Open() et ce avec n'importe qu'elle dimension de fenêtre au départ. Ce n'est peut-être pas très cavalier, mais maintenant le programme fonctionne normalement. :D

Code : Tout sélectionner

Procedure Mainform_Open()  
  If OpenWindow(#Mainform, 0, 0, 600, 500, "Canvas Variation 1.40", WindowStyle)
    CanvasGadget(#Design, 0, 0, 600, 500)
    
    If CreatePopupMenu(#PopUpMenu)
      MenuItem(1, "Insert Round Box")
      MenuItem(2, "Insert Box")
      MenuItem(3, "Insert Ellipse")
      MenuItem(4, "Insert Texte")
      MenuItem(5, "Diamond")
      MenuBar()
      MenuItem(#PMCopy, "Copy" + Chr(9) + "Ctrl+C")
      MenuItem(#PMPaste, "Paste" + Chr(9) + "Ctrl+V")
      MenuItem(#PMDelete, "Delete" + Chr(9) + "Ctrl+X or Delete")
      MenuBar()
      MenuItem(#PMForward, "Bring Forward")
      MenuItem(#PMBackward, "Send Backward")
      MenuBar()
      MenuItem(#PMEntityEdit, "Edit Entity" + Chr(9) + "Ctrl+Return")
      MenuItem(#PMInspector, "Inspector" + Chr(9) + "F2 or Space Bar")
      MenuItem(#PMPreference, "Preference Project" + Chr(9) + "Ctrl+P")
      MenuBar()
      MenuItem(#FileNew, "New File" + Chr(9) + "Ctrl+N")
      MenuItem(#FileOpen, "Open File" + Chr(9) + "Ctrl+O")
      MenuItem(#FileSave, "Save File" + Chr(9) + "Ctrl+S")
      MenuItem(#FileSaveAs, "Save File As ...")
      MenuBar()
      MenuItem(#ImageSaveAs, "Save Image ...")
    EndIf
    
    ;Combinaison de touche qui permet d'initialiser un nouveau projet
    AddKeyboardShortcut(#Mainform, #PB_Shortcut_Control|#PB_Shortcut_N, #Kbd_CtrlN) 
    
    ;Combinaison de touche qui permet d'ouvrir un projet
    AddKeyboardShortcut(#Mainform, #PB_Shortcut_Control|#PB_Shortcut_O, #Kbd_CtrlO) 
    
    ;Combinaison de touche qui permet de sauvegarder un projet
    AddKeyboardShortcut(#Mainform, #PB_Shortcut_Control|#PB_Shortcut_S, #Kbd_CtrlS) 
    
    ;Combinaison de touche qui permet de mémoriser une entité (Ctrl+C)
    AddKeyboardShortcut(#Mainform, #PB_Shortcut_Control|#PB_Shortcut_C, #Kbd_CtrlC)
    
    ;Combinaison de touche qui permet de coller une entité précédement copier (Ctrl+V)
    AddKeyboardShortcut(#Mainform, #PB_Shortcut_Control|#PB_Shortcut_V, #Kbd_CtrlV) 

    ;Combinaison de touches qui permet de supprimer une entité (Ctrl+X ou Delete)
    AddKeyboardShortcut(#Mainform, #PB_Shortcut_Control|#PB_Shortcut_X, #Kbd_CtrlX) 
    AddKeyboardShortcut(#Mainform, #PB_Shortcut_Delete, #Kbd_Del) 
    
    ;Déplacement d'une entité vers la droite, gauche, bas et haut
    ;ne fonctionne pas correctement dans le cas d'entité imbriquées
    ;AddKeyboardShortcut(#Mainform, #PB_Shortcut_Right, #Kbd_Right) 
    ;AddKeyboardShortcut(#Mainform, #PB_Shortcut_Left, #Kbd_Left) 
    ;AddKeyboardShortcut(#Mainform, #PB_Shortcut_Down, #Kbd_Down) 
    ;AddKeyboardShortcut(#Mainform, #PB_Shortcut_Up, #Kbd_Up) 
    
    ;Appel de l'inspector d'entité
    AddKeyboardShortcut(#Mainform, #PB_Shortcut_F2, #Kbd_F2) 
    AddKeyboardShortcut(#Mainform, #PB_Shortcut_Space, #Kbd_Space) 
    
    AddKeyboardShortcut(#MainForm, #PB_Shortcut_Escape, #Kbd_Escape)
    
    ;Ouverture de la fenetre Preference
    AddKeyboardShortcut(#Mainform, #PB_Shortcut_Control|#PB_Shortcut_P, #Kbd_CtrlP) 

    ;Ouverture de la fenetre saisie multiligne
    AddKeyboardShortcut(#Mainform, #PB_Shortcut_Control|#PB_Shortcut_Return, #Kbd_CtrlReturn) 
  EndIf
    MainForm_Resize()
EndProcedure
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Canvas Variation

Message par falsam »

Plutôt étrange comme fonctionnement. je met à jour la prochaine version. Encore merci Good07. :)
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%
Good07
Messages : 308
Inscription : ven. 23/avr./2004 18:08
Localisation : Hérault 34190 Laroque

Re: Canvas Variation

Message par Good07 »

De rien, si ça peut aider. :D
J'utilise la version 4.61 de PureBasic, mais il est possible que ce soit un bug de cette version, je n'ai pas testé avec une ancienne version.
J'espère simplement que la version windows marchera normalement avec cette mise à jour.

Surtout, bonne continuation, car c'est un sacré boulot et on apprend plein de choses.

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

Re: Canvas Variation

Message par falsam »

Les versions de CanvasVariation et MindMap ne sont pas compatibles avec la version 4.60 de Pure Basic.
Merci pour tes encouragements.
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: Canvas Variation

Message par Mesa »

Pour le bug dans Mac Os, à tout hasard, on peut essayer de mettre (de force) le focus sur le canvas juste après sa création, pour voir. (setgadgetfocus()?, je n'ai pas PB sous les yeux)

Sinon, essayer un système a 2 canvas ou une image "intermédiaire" comme dans l'exemple de la doc :
http://www.purebasic.com/documentation/ ... et.pb.html
La copie de l'image intermédiaire vers l'image du canvas forcerait sa mise à jour.

On peut essayer aussi de mettre un delai de quelques millisecondes pendant le déplacement d'un objet.
Ça marche bien sous Windows pour éviter le flickering surtout avec les splittergadgets, à tout hasard aussi.

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

Re: Canvas Variation

Message par falsam »

J'aurais préféré que le code se comporte de la même manière quelques soit l'OS :) je veux bien me monter un PC sous une distribution Linux pour faire des tests, mais sous Mac OS je n'ai pas les moyens d’exécuter ces mêmes test. Si tu pouvais essayer de ton cotes. Merci. L'idée d'installer Linux ne m'angoisse pas (Ou plutôt plus) par contre installer PureBasic et faire toutes les manipulations que j'ai pu lire pour que mon PB adoré fonctionne m'angoisse un peu plus :p
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 : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Canvas Variation

Message par falsam »

Le code de la version 1.60 de Canvas Variation est disponible au téléchargement.

Ajout:
-Insertion d'une image (JPG et PNG couche alpha ou pas.)
Eviter de charger des images trop grosses.
L'image insérée sera insérée dans le fichier XML lors de la sauvegarde de votre projet
J'ai joint un dossier Mark contenant quelques images PNG.

Comme d'habitude, correction de quelques bugs et surement ajout d'autres bugs :p

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
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Canvas Variation

Message par falsam »

Canvas variation sort avec le numéro de version 1.80.

Quoi de neuf ? rien :) Ce sont les mêmes fonctionnalités que MindMap 1.80 sans la gestion des nodes.
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: Canvas Variation

Message par Kwai chang caine »

Ma question va te trouver bizarre, mais as tu gardé tous les ZIP que tu as mis en téléchargement ??
C'est à dire peut on avoir toute l'évolution de ton MindMap et CanvasVariation ??

Autrement dans le rayon idées, ce qui serait cool c'est d'avoir un panneau qui retrace toutes les entitées, comme dans le VD de PB.
Style on le sélectionne et il est sélectionné dans le canvas.
Je te dis ça car en l'utilisant, j'ai créé un texte (sans texte) et donc je l'avais perdu :lol:
Heureusement t'as prévu le CTRL-A et je l'ai retrouvé comme ça.

Autre chose, génial ton Scroll vertical/horizontal, mais je sais pas si c'est possible en crossplatform, mais le scrollvert avec le bouton de souris, ce serait cool.
On a tellement l'habitude :oops:
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Répondre