FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar Pedro Hier à 15:50

» Un autre pense-bête...
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
-55%
Le deal à ne pas rater :
Friteuse sans huile – PHILIPS – Airfryer HD9200/90 Série 3000
49.99 € 109.99 €
Voir le deal

 

 Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6

Aller en bas 
+4
papydall
Jean Claude
Klaus
Jack
8 participants
Aller à la page : 1, 2  Suivant
AuteurMessage
Jack
Admin
Jack


Nombre de messages : 2394
Date d'inscription : 28/05/2007

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyDim 20 Mar 2016 - 17:48

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6

Je viens de mettre à disposition une nouvelle version instantanée.

Voici les changements par rapport à la version du 15 décembre 2015 :

1 - Pour tout arrêt, du à une cause extérieure à Panoramic, une fenêtre s'affiche.
Cette fenêtre indique :
- le numéro de ligne qui était en cours d'exécution lors de cette erreur,
- le libellé de l'erreur.

Pour me moment, il n'y a pas encore de lien avec l'editeur qui ne visualise pas la ligne en erreur comme c'est le cas lors d'une erreur détectée par Panoramic.
Je pense que l'indication du numéro de ligne va faciliter la recherche d'erreur dans de grands programmes.

2 - Nouvelle commande :
SHOW_MODAL N qui permet de visualiser et de rendre modal un FORM de numéro N. L'exécution d'un programme est suspendue pendant la visualisation d'une fenêtre modale. C'est une vieille demande sur le forum qui se concrétise.

_________________
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Webdav username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
https://panoramic.1fr1.net
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyDim 20 Mar 2016 - 18:47

Merci, Jack. Je mets à jour de suite !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyDim 20 Mar 2016 - 18:54

Je viens de tester SHOW_MODAL N,

En fait c'est super pratique, ça va remplacer les messages classiques dans mon programme de jeu.

J'ai eu droit au message d'erreur avec N° de ligne (c'est super !) car pour que SHOW_MODAL ne plante pas, il faut le précéder de la commande HIDE, sinon ça plante.

EX: HIDE 5 : SHOW_MODAL 5

A+
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyDim 20 Mar 2016 - 19:24

Le code suivant s’exécute sans problème en PANORAMIC_EDITOR V_0.9.27i5, mais génère l’erreur suivante sous PANORAMIC_EDITOR_V0.927i6 :
PANORAMIC.exe a cessé de fonctionner



Code:

rem ============================================================================
print "Bye"
pause 2000

closewindow()
terminate
end
SUB closewindow()
    dim_local k,w,h
    For k = 100 To 50 Step -1
        w = width(0) : h = height(0)
        width 0,w*k/100 : height 0,h*k/100
        top 0,(screen_y - height(0))/2 : left 0,(screen_x - width(0))/2
        pause 100
    next k
End_Sub
rem ============================================================================


EDIT : C'est TERMINATE qui pose problème.


Dernière édition par papydall le Lun 21 Mar 2016 - 0:49, édité 1 fois
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyDim 20 Mar 2016 - 21:10

Je confirme ce que dit Papydall,

j'ai le souci avec Stratégo, mais j'ai droit au N° de la ligne, comme c'est en sortie du programme ce n'est pas trop gênant.

A+
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: re   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyDim 20 Mar 2016 - 22:38

@ Jean Claude,
Tu peux détailler un peu plus la facon d' utiliser Show_modal N
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyDim 20 Mar 2016 - 23:08

C'est comme dans Synedit_Editor, lorsque tu ouvres une fenêtre "Options". Tant que la fenêtre est ouverte, tu ne peux cliquer nulle part ailleurs dans l'application. Il faut fermer cette fenêtre avant de pouvoir continuer.

Jusqu'à maintenant, pour obtenir cet effet, je devais faire:
Pour ouvrir les options:
- show form option
- inactive form 0
...
A la fermeture des options (ON_CLOSE sur cette form):
- active form 0

Tout ceci devient obsolète. Pour ouvrir les options:
- showmodal form option
...
A la fermeture des options:
- rien à faire !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: re   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 0:07

J' ai bien réussi à créer un form modal
mais pour le fermer, on fait comment ?...
scratch

J' ai placé un bouton sur le dit form avec un label
hide form mais le form ne "hide" pas... pale
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 0:39

Si HIDE ne marche pas, c'est un bug. Fais un mini-code et poste-le - Jack réagira certainement. Mais as-tu essayé la croix rouge ?
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: re   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 6:40

le code est simple :

Code:
label clic

form 1
hide 1

button 2
parent 2,1
on_click 2,clic

show_modal 1

end

clic:
   hide 1
return

si je place un banal message avant le hide:

Code:
clic:  
  message "click"
  hide 1
return

j' ai beau cliquer sur le bouton, pas de message non plus mais
si je clique sur la croix pour fermer la fenêtre, le message apparait et là...
...impossible de fermer le message.
Je dois tuer le processus pour sortir du prog.

Dans le cas suivant :
Code:
label clic

form 1
hide 1

alpha 3
parent 3,1 : top 3,10 : left 3,10 : caption 3,"Voilà la fenêtre modal 1"

button 2
parent 2,1
top 2,height(1)-60 : left 2,(width(1)-width(3))/2 : caption 2,"Fermer"
on_click 2,clic

show_modal 1

end

clic:
   caption 3," J' essaye de la fermer !"
   pause 1000
   hide 1
return

rien ne se passe non plus mais si je clique sur la les croix des form 1 et 0 successivement, je dois attendre le temps de "pause"
avant que le form 0 se ferme.

En l' état, la seule chose possible est un message et, à condition qu' il soit défini avant la commande Show_modal N.

Personellement, j' aurai appelé la commande : Form_modal N 
pour désigner un "form" dans ce mode. et la commande pour le fermer devrait être : Delete_modal N
ce qui éviterait à Jack d' adapter toutes les commandes : show, hide, on_show, etc..., sur cet objet lui même.
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 7:41

@Ygeronimi,

Désolé de répondre tard, j'ai lâché l'ordi hier soir.

Pour moi, la fenêtre modal n'a qu'un intérêt c'est de remplacer la commande MESSAGE.
Le plus c'est que tu utilises des alphas pour gérer les couleurs et les polices du texte.
Je ne sais pas si elle est prévu pour recevoir des boutons, il faudra que Jack précise.

Code:
label clic,fin
on_close 0,fin

form 1
color 1,200,200,0 : border_small 1 : on_close 1,clic

alpha 2 : parent 2,1 : font_color 2,0,150,0 : left 2,10 : caption 2,"l'alpha 2 sert pour rédiger les message"

alpha 3
parent 3,1 : top 3,30 : left 3,10 : caption 3,"Voilà la fenêtre modal 1"

hide 1 : show_modal 1

end

clic:
 message " autre message éventuel "
'  terminate <<<<<<<<<<<<<<<<<<<<<<<<<<<<<< avec cette ligne plantage
return

fin:
 ' terminate <<<<<<<<<<<<<< ça plante également
return


A+
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 11:12

Citation :
Pour moi, la fenêtre modal n'a qu'un intérêt c'est de remplacer la commande MESSAGE.
Non, pas pour moi. Je me sers beaucoup de cette fonctionnalité, même si pour le moment, je dois la simuler via des commandes active et inactive sur la form 0. La commande show_modal sert pour afficher toute form dont il faut compléter les champs avant de continuer le traitement normal, et surtout pendant ce temps-là, interdire de lancer une autre fonction à partir de form 0.

Citation :
Je ne sais pas si elle est prévu pour recevoir des boutons
Oui, bien sûr, ainsi que n'importe quel autre objet Panoramic. C'est une form Panoramic normale, qui est juste affichée dans un contexte différent.

Citation :
la commande pour le fermer devrait être : Delete_modal N
Ben non: cela supprimerait physiquement la form. Et pour la prochaine utilisation, il faudrait la recréer. Regarde Synedit_Editor: je n'ai pas compté le nombre de forms auxiliaires (options, options générales, outils, ...), mais chacune de ces fenêtres est lancée dans ce mode. Et pendant que la fenêtre est active, il est impossible de lancer une fonction de la form 0, que ce soit un bouton, une ligne de ménu, une combo etc. C'est ce type d'opération que la nouvelle commande est supposée réaliser. Maintenant, il y a sûrement un bug, et Jack regardera ça.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 12:32

@Jack

On a, à plusieurs reprises, soupçonné la commande TERMINATE de nous jouer de mauvais tours.
Les exemples suivants montrent le problème.

code 1

Code:

rem ============================================================================
rem     TERMINATE n'aime pas d'autres commandes après elle !
rem ============================================================================
dim a
a = 10
print a
pause 2000
terminate
 end  :' <--------- PANORAMIC a cessé de fonctionner


Code 2


Code:

label fin
button 10 : caption 10,"Quitter" : on_click 10,fin

end
Fin:
   terminate : ' PANORAMIC a cessé ...
return




Code 3


Code:

rem ============================================================================
rem     TERMINATE n'aime pas d'autres commandes après elle !
rem ============================================================================
print "Salut"
pause 2000
terminate
message "cette ligne est inaccessible!" : ' PANORAMIC a cessé ...
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 13:17

Le code suivant qui est tiré par les cheveux, simule la commande END qui est indispensable dans la programmation événementielle et qui n’est pas tolérée par la commande TERMINATE.
Ça fonctionne car TERMINATE  se voit comme l’ultime commande du programme.


Code:

rem ============================================================================
rem       Pour similer END sans provoquer l erreur due à TERMINATE  qui
rem         n aime pas d autres commandes après elle
rem ============================================================================
label fin
button 10 : caption 10,"Quitter" : on_click 10,fin
 while scancode <> 27
' Cette boucle joue le rôle de END pour que le programme n'aille pas mettre son nez ailleurs
' Le programme boucle ici, mais les événements en attente peuvent s'exécuter et
' la commande TERMINATE sera contente puisqu'il n'y a plus rien après elle.
 end_while

Fin:
   terminate
' return : ' <---- Une autre instruction après TERMINATE ---> PANORAMIC a cessé ...
rem ============================================================================
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: re   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 13:40

Perso, je repasse à 27i5 le temps que Jack puisse corriger 
ces petit désagréments.
Laughing
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 13:59

@Jack:
Effectivement, il y a un problème avec Show_Modal. Essaie de faire marcher ce programme:
Code:

label abandon, ok, nom

form 1 : hide 1
alpha 11 : parent 11,1 : top 11,10 : left 11,10 : caption 11,"Nom:"
edit 12 : parent 12,1 : top 12,10 : left 12,50
button 13 : parent 13,1 : top 13,40 : left 13,50 : caption 13,"Abandon"
  on_click 13,abandon
button 14 : parent 14,1 : top 14,40 : left 14,150 : caption 14,"Validation"
  on_click 14,ok

button 2 : top 2,10 : left 2,10 : caption 2,"Quel nom ?"
  on_click 2,nom
end

abandon:
  hide 1
  message "Le nom n'est pas saisi"
  return
  
ok:
  hide 1
  message "Le nom est: "+text$(12)
  return
  
nom:
  show_modal 1
  return
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jack
Admin
Jack


Nombre de messages : 2394
Date d'inscription : 28/05/2007

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 16:17

@ygeronimi:
Lorsque SHOW_MODAL 1 rend "modale" la fenêtre FORM n°1, il y a suspension de l'exécution jusqu'à la fermeture de FORM 1 (par un clic sur sa croix rouge).

J'ai repris ton exemple:

Code:
label clic

form 1:top 1,50:caption 1,"fenêtre modale"
hide 1

button 2
parent 2,1
on_click 2,clic

show_modal 1
caption 0,"après show_modal":rem cette ligne est exécutée après fermeture de l'objet 1

end

clic:
   message "clic"
return

1 - si tu fermes la fenêtre modale sans cliquer sur le bouton, tu vois que la ligne qui suit SHOW_MODAL est alors exécutée
2 - si tu cliques par exemple 3 fois sur le bouton de la fenêtre modale, rien ne se passe.
   Mais si tu fermes la fenêtre modale par un clic sur sa croix rouge, tu vois que la ligne qui suit SHOW_MODAL est exécutée et qu'il y a 3 messages à acquitter, car pendant la suspension de l'exécution durant tout le temps d'affichage, 3 événements se sont empilés mais n'ont pas été traités.

Si je reprends le hide 1 dans le traitement du clic de ton exemple :

Code:
label clic

form 1:top 1,50:caption 1,"fenêtre modale"
hide 1

button 2
parent 2,1
on_click 2,clic

show_modal 1
caption 0,"après show_modal":rem cette ligne est exécutée après fermeture de l'objet 1

end

clic:
   message "clic"
   hide 1
return

Il y a bien un bug, mais pas celui que tu crois ...
Le problème, c'est qu'il devrait y avoir un déclenchement d'erreur sur HIDE 1 puisque la fenêtre FORM n°1 n'existe plus !

Le bug, qui existe depuis le début de l'existence de Panoramic, est que la fermeture d'un FORM par l'utilisateur (clic sur la croix rouge) n'est pas prise en compte !
Pour Panoramic, le FORM 1 existe toujours et le HIDE 1 ne déclenche aucune erreur...

Je corrige cela dès que possible.

_________________
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Webdav username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
https://panoramic.1fr1.net
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: re   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 16:39

Le bug que tu présentes, est celui qui fait que pour un form >0
nos déclarations sont ainsi :

if object_exists(form N)=1
   show Form N
else
   form N
   etc.....
end_if

car la fermeture par la croix agit comme "Hide Form N" et non pas comme " Delete Form N "

mais pour fermer par le bouton, niet, nada.
si je veux faire un form modal avec un combo de choix, la logique
voudrait que j' ai un bouton pour fermer et prendre en compte le choix de l' utilisateur.

la fermeture par la croix n' est pas "naturelle" à moins de vouloir sauter l' étape de ce choix.

de même que on_close Form N devrait être possible pour N>0
dans le cas que tu présentes. ce qui ne l' est pas en ce moment.

Dans le cas présent, rien de ce qui se fait sur le Form modal n' est pris en compte avant la fermeture.
Le risque est que le programme soit interrompu mais que les variables modifiées par l' action sur ce form ne le soient qu' après la reprise du programme d' origine.

ex : si mon combo propose un choix de prénom pour initialiser une variable Prenom$

le programme est interrompu par show_modal
je donne le prénom "Yannick" à la variable Prenom$
c' est mis dans la pile
le programme reprend
il finit ce qu' il a commencé avec une variable Prenom$ =""
et ensuite l' initialise avec "Yannick"


Dernière édition par ygeronimi le Lun 21 Mar 2016 - 16:56, édité 1 fois
Revenir en haut Aller en bas
Jack
Admin
Jack


Nombre de messages : 2394
Date d'inscription : 28/05/2007

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 16:50

Le bug, c'est que si on ferme (équivalent à DELETE) un FORM par un clic sur sa croix rouge, le FORM existe toujours pour Panoramic.
Dans l'exemple suivant, après la fermeture (clic sur la croix rouge) de la fenêtre modale, il s'affiche :
1
1
1
1
alors qu'il devrait s'afficher
1
1
0
0

Code:
form 1:top 1,100:caption 1,"fenêtre modale"
hide 1

print number_objects
print object_exists(1)
show_modal 1
print number_objects
print object_exists(1)

end

_________________
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Webdav username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
https://panoramic.1fr1.net
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: re   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 16:57

On s' est croisé, j' étais en train d' éditer mon message du dessus... Laughing
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 19:40

@Jack:
Citation :
Il y a bien un bug, mais pas celui que tu crois ...
Le problème, c'est qu'il devrait y avoir un déclenchement d'erreur sur HIDE 1 puisque la fenêtre FORM n°1 n'existe plus !

Le bug, qui existe depuis le début de l'existence de Panoramic, est que la fermeture d'un FORM par l'utilisateur (clic sur la croix rouge) n'est pas prise en compte !
Pour Panoramic, le FORM 1 existe toujours et le HIDE 1 ne déclenche aucune erreur...

Je corrige cela dès que possible.

Alors là, Jack, si tu "corriges" cela, il va y avoir beaucoup de programmes à revoir ! Pour ne parler que de Synedit_Editor, tout est basé sur ce comportement !

Jusqu'à maintenant, je peux quitter une form en simulation modale par un bouton, et cacher la form par HIDE. La croix rouge fonctionne de la même manière: la form est cachée, mais existe. Par contre, l'évènement ON_CLOSE est déclenché, ce qui me permet de prendre les actions nécessaires.

J'ai pris l'habitude de créer toutes les forms du programme au début, et de les montrer ou cacher selon les besoins. Avantage: beaucoup plus rapide en cours de fonctionnement, pas de problème de numéros d'objets.

Maintenant, si tu permets à la croix rouge de supprimer l'objet form concerné, il faut recréer la form chaque fois ! Et il faut, en plus, se souvenir dans des variables, du contenu des champs de chacune de ces forms, afin de pourvoir les restituer lors d'une nouvelle ouverture. Cela deviendra une véritable usine à gaz, Jack. Non seulement, dans ce cas, je ne pourrai pas me servir de SHOW_MODAL, mais en plus, les programmes existants ne marcheront plus !

S'il te plaît: ne supprime pas la form lors d'une fermeture par la croix rouge !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: re   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 19:55

Pour les numéros d' objet, il suffit de les attribuer dans l' init() avant le gui()
tongue
Maintenant que j' ai pris le vice de la numérotation par variable ( la faute à qui, hein ?... Laughing )
Je fais de la sorte :

dim obj% : no%=no%+1 : obj%=no%

ainsi, comme je le fais pour un open_dialog, je peux appeler 50 fois et plus la fenêtre et la détruire en sortant.
la fenêtre a toujours le même numéro ( il est réservé  Wink )
le truc est de récupérer les valeurs avant la destruction.
Mais tu pourras toujours la hider par un bouton....
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 20:22

J'avoue que cette histoire de Form est un peu déroutante !

Jusqu’à présent lorsque l'on cliquait sur la croix, on considérait le FORM comme toujours présent mais caché.

Maintenant comme le dit Klaus si Jack décide de modifier les règles, cela risque d'être désastreux pour nos programmes. silent

Il y a peut être une alternative, en déclarant une option style FORM_CLOSE 0 ou FORM_CLOSE 1 qui permettrai de faire en sorte que le clic sur la croix permette sa fermeture simple actuelle ou sa suppression et si non défini il reste a la façon actuelle.

c'est peut être une idée, mais ça c'est a Jack de trancher ! drunken
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Invité
Invité




Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 20:33

Je n'ai pas téléchargé la dernière version, je ne suis pas prêt. D'ailleurs pour l'instant c'est encore Linux.

Moi je pensais qu'en mettant une insctruction Show_Modal, on aurait une serait qui serait Hide_Modal, ou plutôt, cela me parait plus logique: Stop_modal. Cela permet, lorsqu'on le décide de reprendre les choses normales. ON met on_close, et on on_close traiterait la fin du modal, avec stop_modal.

C'est mon avis, mais il y a peut-être mieux.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 EmptyLun 21 Mar 2016 - 21:39

@Jack:
J'ai modifié mon petit code pour montrer comment SHOW_MODAL devrait (à mon sens) fonctionner. La variable nouveau% est positionné à 0 pour passer en version "ancienne", celle qui fonctionne, et elle montre ma simulation d'une form modale. Si tu passes nouveau% à 1, alors tu as la version avec SHOW_MODAL qui pose problème:
Code:
dim nouveau% : nouveau% = 0

if nouveau%=1
  label abandon, ok, nom

  form 1 : hide 1
  alpha 11 : parent 11,1 : top 11,10 : left 11,10 : caption 11,"Nom:"
  edit 12 : parent 12,1 : top 12,10 : left 12,50
  button 13 : parent 13,1 : top 13,40 : left 13,50 : caption 13,"Abandon"
    on_click 13,abandon
  button 14 : parent 14,1 : top 14,40 : left 14,150 : caption 14,"Validation"
    on_click 14,ok

  button 2 : top 2,10 : left 2,10 : caption 2,"Quel nom ?"
    on_click 2,nom
  end

  abandon:
    hide 1
    message "Le nom n'est pas saisi"
    return

  ok:
    hide 1
    message "Le nom est: "+text$(12)
    return

  nom:
    show_modal 1
    return
   
else
  label abandon1, ok1, nom1, close1

  form 1 : hide 1 : on_close 1,close1
  alpha 11 : parent 11,1 : top 11,10 : left 11,10 : caption 11,"Nom:"
  edit 12 : parent 12,1 : top 12,10 : left 12,50
  button 13 : parent 13,1 : top 13,40 : left 13,50 : caption 13,"Abandon"
    on_click 13,abandon1
  button 14 : parent 14,1 : top 14,40 : left 14,150 : caption 14,"Validation"
    on_click 14,ok1

  button 2 : top 2,10 : left 2,10 : caption 2,"Quel nom ?"
    on_click 2,nom1
  end

  close1:
    active 0
    message "Fermé par la croix rouge. Le nom n'est pas saisie"
    return
   
  abandon1:
    hide 1
    active 0
    message "Le nom n'est pas saisi"
    return

  ok1:
    hide 1
    active 0
    message "Le nom est: "+text$(12)
    return

  nom1:
    inactive 0
    show 1
    return


end_if

Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty
MessageSujet: Re: Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6   Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6 Empty

Revenir en haut Aller en bas
 
Version instantanée du 20 mars 2016 : PANORAMIC V 0.9.27i6
Revenir en haut 
Page 1 sur 2Aller à la page : 1, 2  Suivant
 Sujets similaires
-
» Version instantanée du 30/12/2016 : PANORAMIC V 0.9.27i9
» Version instantanée du 22 avril 2016 : PANORAMIC V 0.9.27i7
» Version instantanée du 2 juin 2016 : PANORAMIC V 0.9.27i8
» version instantanée du 13 mars 2010
» Version instantanée du 4 mars 2011

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Ce qui est en cours ...-
Sauter vers: