| Previous topic :: Next topic |
| Author |
Message |
Thierry Très actif
 Offline
Posts: 24
Joined: 28 Apr 2008
Localisation: Genève Version(s) FM: OS X 10.5.2 - FMAdv
|
Posted: Fri 2 May - 10:21 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Bonjour à toutes et à tous,
chez moi LP 3.1.1 RC me pose encore quelque soucies.
Si dans le web viewer j'ai saisie directement les dimensions de la fenêtre et j'exécute le script le LP__DisplayLayout_DNR le dimensions ne sont pas prise en compte.
& xmlSet ( "wWidth" ; 1024 ) // nb of pixels. Use *n, +n, /n or -n operate previous layout dimensions
& xmlSet ( "wHeight" ; 724 ) // Nr of pixels. Use *n, +n, /n or -n operate previous layout dimensions
& xmlSet ( "wLeft" ; 0 ) // Nr of pixels, *n, +n, /n, -n, CW, CS, RW, RS
& xmlSet ( "wTop" ; 0 ) // Nr of pixels, *n, +n, /n, -n, CW, CS, BW, BS
Pour que elle soient prise en compte il faut que je ferme la base, la re ouvrir, et là ça marche mais c'est barbant.
Fabrice, je fait une erreur quelque part ou c'est définitivement le comportement de la 3.1.1 ?
Ciao. _________________ Thierry Riva • QuickClik
Skype: thierryriva • iChat: quicclik • www.power-office.ch
------------------
Croire savoir c'est pas savoir.
|
|
| Back to top |
|
 |
Ugo Accroc
 Offline
Posts: 34
Joined: 01 May 2008
Localisation: Paris + BXL Version(s) FM: FM9 Adv
|
Posted: Fri 2 May - 11:01 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Salut Thierry,
Le Boss travaille le 1er mai, ses sbires s'occupent donc le 2
LayoutProperties embarque pas mal de variables globales, certaines justement pour conserver des historiques. A moins de localiser spécifiquement celles qui perturbent et de les mettre à jour à la mano depuis le Visualisateur de données, la meilleure façon est donc de refermer et de rouvrir de sorte de toutes les réinitialiser.
Mais Fabrice m'épate systématiquement lorsqu'il me localise cette satanée variable, donc il va bien revenir pour nous indiquer celles qu'il faudrait auditer spécifiquement. Cependant, vu le nombre de propriétés, comment savoir réellement ?
Pour le moment, essayes donc de toucher à :
$$target_wWidth
$$target_wHeight
avec le visualiseur de données. Cela devrait te permettre d'éviter de tout refermer.
[j'ai bon patron ? ]
Ciao
Ugo _________________ Ugo Di Luca
http://www.dlsystems.fr
|
|
| Back to top |
|
 |
Thierry Très actif
 Offline
Posts: 24
Joined: 28 Apr 2008
Localisation: Genève Version(s) FM: OS X 10.5.2 - FMAdv
|
Posted: Fri 2 May - 11:19 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Bonjour Ugo,
merci pour ton aide précieux, là j'envisageait me recycler dans la culture du ris, il parait que ça rapporte ces temps.
Je teste et je te fait savoir.
Ciao. _________________ Thierry Riva • QuickClik
Skype: thierryriva • iChat: quicclik • www.power-office.ch
------------------
Croire savoir c'est pas savoir.
|
|
| Back to top |
|
 |
Thierry Très actif
 Offline
Posts: 24
Joined: 28 Apr 2008
Localisation: Genève Version(s) FM: OS X 10.5.2 - FMAdv
|
Posted: Fri 2 May - 11:31 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Rien à faire, même en intervenant à la main dans le visualiser.
Le web viewer dans son intégralité dit:
Definir ( $$layoutProperties[Obtenir ( NuméroModèle )] = ""
// DISPLAY PROPERTIES
& xmlSet ( "popup" ; 0 ) // 0: same w, 1: new w, 2: modal
& xmlSet ( "unique" ; 1 ) // 0: not unique, 1: unique (current file), 2: unique (absolute)
& xmlSet ( "wMode" ; 0 ) // 0: Browse, 1: Find, 2: Preview
& xmlSet ( "wWidth" ; 1024 ) // nb of pixels. Use *n, +n, /n or -n operate previous layout dimensions
& xmlSet ( "wHeight" ; 724 ) // Nr of pixels. Use *n, +n, /n or -n operate previous layout dimensions
& xmlSet ( "wLeft" ; 0 ) // Nr of pixels, *n, +n, /n, -n, CW, CS, RW, RS
& xmlSet ( "wTop" ; 0 ) // Nr of pixels, *n, +n, /n, -n, CW, CS, BW, BS
& xmlSet ( "wTitle" ; "Employé - Détail" )
& xmlSet ( "statusArea" ; 1 ) // boolean
& xmlSet ( "statusLock" ; 0 ) // boolean
& xmlSet ( "viewAs" ; 0 ) // 0: Form, 1: List, 2: Table
& xmlSet ( "elasticity" ; 0 ) // boolean
& xmlSet ( "textRuler" ; 0 ) // boolean
& xmlSet ( "restoreTabs" ; 1 ) // boolean
& xmlSet ( "restoreUserModif" ; 1 ) // boolean
& xmlSet ( "history" ; 1 ) // boolean
& "" ; LayoutPropertiesEvents )
Je voit vraiment pas d'où me vient l'erreur, mais ça presse pas, on va attendre que Fabrice nous apporte ces lumières.
À propos, merci pour ton wizard, vraiment du bon boulot.
Ciao. _________________ Thierry Riva • QuickClik
Skype: thierryriva • iChat: quicclik • www.power-office.ch
------------------
Croire savoir c'est pas savoir.
|
|
| Back to top |
|
 |
Ugo Accroc
 Offline
Posts: 34
Joined: 01 May 2008
Localisation: Paris + BXL Version(s) FM: FM9 Adv
|
Posted: Fri 2 May - 11:58 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Il te faut peut-être aussi intervenir sur une variable $$layoutProperties_resized[n] , et y changer les valeurs
pour qu'elles correspondent aussi aux valeurs que tu as saisi dans $$target_wWidth et $$target_wHeight
Son contenu ressemble à :
<wWidth>1024</wWidth><wHeight>424</wHeight>
Puis Relance le script LP_DisplayLayout_DNR
Cela dit, j'ai fait quelques tests et le script LP_ResetLayoutCache s'en charge très bien chez moi. _________________ Ugo Di Luca
http://www.dlsystems.fr
|
|
| Back to top |
|
 |
Thierry Très actif
 Offline
Posts: 24
Joined: 28 Apr 2008
Localisation: Genève Version(s) FM: OS X 10.5.2 - FMAdv
|
Posted: Fri 2 May - 12:24 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Merci Ugo,
avec LP_ResetLayoutCache ça va beaucoup mieux mais l'idéal serait que ça va tout seul comme avec LP2.
J'ai vérifié la variable $$layoutProperties_resized (sans [n]) et elle affiche rien, j'ai saisie alors la valeur $$target_wWidth au lieu de n, pas sûr que se soit juste, tu peut m'expliquer ce que tu entend ?
Ciao. _________________ Thierry Riva • QuickClik
Skype: thierryriva • iChat: quicclik • www.power-office.ch
------------------
Croire savoir c'est pas savoir.
|
|
| Back to top |
|
 |
Ugo Accroc
 Offline
Posts: 34
Joined: 01 May 2008
Localisation: Paris + BXL Version(s) FM: FM9 Adv
|
Posted: Fri 2 May - 12:41 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
En fait, le script LP_ResetLayoutCache est justement conçu pour réinitialiser les variables qui auraient été chargées précédemment à l'arrivée sur le modèle que tu es en train modifier.
Ce que j'ignore par contre, c'est si le résultat de ce script varie selon que le modèle sur lequel tu te trouves a été activé ( précédemment à sa modification ) par le script LP_DisplayLayout ou manuellement depuis le menu. J'imagine que oui, mais je laisserai Fabrice nous éclairer sur ce point.
Pour ce qui est de la variable multivaluée $$layoutProperties_resized, elle fait partie de ces nombreuses variables multivaluées chargées, le n représentant le numéro du modèle. C'est son contenu que j'ai altéré plus tôt pour tenter de reproduire ton scénario. Mais c'est sans doute aussi ce que LP_ResetLayoutCache fait mieux, parce-que notre hôte l'a conçu très exactement pour qu'on ait pas à trafiquoter avec ça.
Mais bon, moi j'adore la bricole, et quand je le vois Fabrice trifouiller son data viewer, ça m'épate. Alors, pour l'épater aussi la prochaine fois, je m'y suis mis aussi  _________________ Ugo Di Luca
http://www.dlsystems.fr
|
|
| Back to top |
|
 |
FabriceN Administrateur
 Offline
Posts: 135
Joined: 26 Apr 2008
Localisation: Bruxelles Version(s) FM: FM9Adv
|
Posted: Fri 2 May - 13:53 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Désolé, j'ai pas beaucoup de temps, mais Ugo a tout à fait raison, ce script est fait pour ne plus avoir à "chipoter" (au sens belge).
D'ailleurs, il ne m'a plus vu farfouiller dans le dataviewer depuis que ce script existe
Pour info, la variable $$layoutProperties_resized[numéro du modèle] permet à l'élasticité de savoir ce qui doit être restitué. _________________ Fabrice Nordmann,
BH&A
Vanderkindere 467
1180 Bruxelles
Belgique
www.bh-a.com
|
|
| Back to top |
|
 |
Christophe Très actif
 Offline
Posts: 13
Joined: 27 Apr 2008
Localisation: Valence Version(s) FM: FMA 9.0v3
|
Posted: Fri 2 May - 23:37 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Bon alors je reviens à la charge, hein Fabrice , suite aux posts d'Ugo et du tiens.
Pas de problème pour la prise en compte des dimensions wWidth et wheight de mon côté associé à un Resize. Voir code ci-dessous. Le soucis est le suivant : le code est sur un modèle 'Liste' et lorsque que l'on tente de redimensionner, elasticity fait bien sont boulot en redimensionnant sur la largeur (wWidth automatique) mais pour la hauteur, il prend toute la hauteur disponible et non la hauteur définie dans wHeight. En regardant la variable $$layoutProperties_resized celle-ci garde bien la valeur wWidth récupérée au lancement du script mais pas celle de wHeight et réattribue la nouvelle (hauteur max disponible).
| Code: | /*##########################################################
#
# LAYOUT PROPERTIES
#
##########################################################*/
Definir ( $$layoutProperties[Obtenir ( NuméroModèle )] = ""
// DISPLAY PROPERTIES
& xmlSet ( "wAdjust" ; "R" ) // R: Resize to fit, F: Full screen, Max, Min, Res: Restore, H: Hide
& xmlSet ( "wMode" ; 0 ) // 0: Browse, 1: Find, 2: Preview
& xmlSet ( "wHeight" ; 600 ) // Nr of pixels. Use *n, +n, /n or -n operate previous layout dimensions
& xmlSet ( "wLeft" ; "CS" ) // Nr of pixels, *n, +n, /n, -n, CW, CS, RW, RS
& xmlSet ( "wTop" ; "CS" ) // Nr of pixels, *n, +n, /n, -n, CW, CS, BW, BS
& xmlSet ( "statusArea" ; 0 ) // boolean
& xmlSet ( "zoomLevel" ; 100 ) // 25, 50, 75, 100, 150, 200, 300, 400, +, -
& xmlSet ( "zoomLock" ; 0 ) // boolean
& xmlSet ( "elasticity" ; 1 ) // boolean
& "" ; LayoutPropertiesEvents )
/*################### END LAYOUT PROPERTIES ###################*/ |
|
|
| Back to top |
|
 |
FabriceN Administrateur
 Offline
Posts: 135
Joined: 26 Apr 2008
Localisation: Bruxelles Version(s) FM: FM9Adv
|
Posted: Sat 3 May - 07:59 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Christophe,
tu m'as un peu empêché de dormir... j'ai réfléchi à une solution, mais j'hésite entre plusieurs options.
Pour ceux qui ne suivraient pas, l'idée de Christophe est de définir la largeur d'un modèle par l'ajustement de la fenêtre au contenu, mais la hauteur par une dimension en pixels, le tout combiné à un mode liste et à l'élasticité.
Effectivement, l'élasticité ne s'appliquant qu'à un modèle dont la fenêtre est ajusté au contenu, le comportement natif de FileMaker est de redimensionner une fenêtre en liste à la hauteur de l'écran.
Je pense que la solution qui fait le moins de dégâts est celle-ci :
dans le script LP__Elasticity_restore_DNR, modifie l'action Déplacer/redimensionner fenêtre.
Dans la définition de la hauteur, colle le calcul suivant :
| Code: | | Case ( Get ( LayoutViewState ) ; xmlGet ( $$layoutProperties_resized[ Get ( LayoutNumber )] ; "wHeight" )) |
Les modèles en liste et tableaux ne seront plus redimensionnés dans la hauteur.
Par contre, si tu veux effectivement retrouver la hauteur de l'écran, alors il faut définir la hauteur ainsi :
| Code: | | xmlSet ( "wHeight" ; "=Get ( windowDesktopHeight )" |
Cette solution ne fera pas partie de la 3.1.1, car il faudrait re-tester à fond tout ce qui concerne l'élasticité. Si tu l'utilises et qu'elle te donne satisfaction, je l'intégrerai dans une version ultérieure.
HTH, _________________ Fabrice Nordmann,
BH&A
Vanderkindere 467
1180 Bruxelles
Belgique
www.bh-a.com
|
|
| Back to top |
|
 |
Ugo Accroc
 Offline
Posts: 34
Joined: 01 May 2008
Localisation: Paris + BXL Version(s) FM: FM9 Adv
|
Posted: Sat 3 May - 10:26 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Salut,
Non que je suis un protecteur de tout ce que FileMaker nous impose, mais comme tu le signifies, LayoutProperties respecte en tout point le Resize to Fit natif, donc cela me parait dangereux de déroger au comportement natif.
J'hésiterai d'autant plus que Get ( WindowDesktopHeight ) me pose toujours quelques soucis avec un dock fixe en Mac OSX, positionné en bas.
On pourrait par contre capturer la taille de l'écran au démarrage en maximisant une fenêtre et en mesurant alors l'espace disponible exact, et répertorier alors cette dimension dans une variable. _________________ Ugo Di Luca
http://www.dlsystems.fr
|
|
| Back to top |
|
 |
FabriceN Administrateur
 Offline
Posts: 135
Joined: 26 Apr 2008
Localisation: Bruxelles Version(s) FM: FM9Adv
|
Posted: Sat 3 May - 10:33 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
| Ugo wrote: |
J'hésiterai d'autant plus que Get ( WindowDesktopHeight ) me pose toujours quelques soucis avec un dock fixe en Mac OSX, positionné en bas.
|
Le même problème se pose pour le comportement natif
| Quote: |
On pourrait par contre capturer la taille de l'écran au démarrage en maximisant une fenêtre et en mesurant alors l'espace disponible exact, et répertorier alors cette dimension dans une variable. |
Parfaitement. Si ce n'est qu'au lieu de maximiser, il faut utiliser "F" pour avoir vraiment la taille sous Windows. _________________ Fabrice Nordmann,
BH&A
Vanderkindere 467
1180 Bruxelles
Belgique
www.bh-a.com
|
|
| Back to top |
|
 |
Ugo Accroc
 Offline
Posts: 34
Joined: 01 May 2008
Localisation: Paris + BXL Version(s) FM: FM9 Adv
|
Posted: Sat 3 May - 10:53 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Nativement, FileMaker ajuste le contenu à la taille de l'écran en prenant en considération le dock cependant. Pour ce qui est de la maximisation, c'est une mauvaise expression ici. Il faudrait justement activer un modèle liste, et effectuer un ajustement au contenu puis capturer la hauteur maxi. C'est comme ça que tu le comprends aussi ? _________________ Ugo Di Luca
http://www.dlsystems.fr
|
|
| Back to top |
|
 |
FabriceN Administrateur
 Offline
Posts: 135
Joined: 26 Apr 2008
Localisation: Bruxelles Version(s) FM: FM9Adv
|
Posted: Sat 3 May - 18:25 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Oui, je cherche toujours à coller au comportement natif, les bugs en moins . Mais la demande de Christophe est intéressante. La solution la plus souple que je vois serait un attribut particulier (2) de la propriété elasticity, qui ne surveillerait que la largeur. _________________ Fabrice Nordmann,
BH&A
Vanderkindere 467
1180 Bruxelles
Belgique
www.bh-a.com
|
|
| Back to top |
|
 |
Christophe Très actif
 Offline
Posts: 13
Joined: 27 Apr 2008
Localisation: Valence Version(s) FM: FMA 9.0v3
|
Posted: Sun 4 May - 19:43 Post subject: [résolu] Dimensions de la fenêtre pas pris en compte |
|
|
Bonsoir,
J'arrive tard, mais week-end au soleil oblige
Je viens de coller le calcul et c'est nickel pour moi. Je vais tester en profondeur cette semaine, je ferais bien entendu un retour.
Pourquoi ne pas mettre une condition avant ce calcul ? Il testerait le type de modèle (Formulaire ou Liste) ainsi que si une hauteur est définie. Ce serais peut être la solution la plus simple, non ?
|
|
| Back to top |
|
 |
|
|