Bonjour,
J'ai créé mon premier site web utilisant Squeak et Seaside, c'est un jeu de cartes pour 2 joueurs au tour par tour.
Le prototype est accessible sur http://jambo.seasidehosting.st Pour pouvoir le tester, il faut ouvrir deux pages avec des users différents.
Avant d'approfondir le design et l'ergonomie, j'ai quelques questions à soumettre à la communauté :
- J'ai une perte de qualité sur les images (Form fromFileNamed:...) , j'ai l'impression qu'il y a une conversion en 256 couleurs !!
- Comment gérer la persistance des parties sur seasideHosting ? (ce serait bien de pouvoir mettre à jour l'image sans détruire les parties en cours)
- Peux-t-on sauvegarder des instances vers des fichiers (comme le Boss sous VisualWorks) ?
- Comment actualiser automatiquement la page ? J'ai bien essayé le code suivant : WAJambo>>renderContentOn: html ..... html paragraph script: (html updater every: 10 second; on: #renderTimeOn: of: self)
La méthode renderTimeOn: appellant à nouveau renderContentOn: si le jeu a changé. ..mais cela ne fonctionne pas !
- Comment actualiser seulement une partie de la page ?
- Comment redéfinir le style de l'info bulle (title:)
- Il y a une doc ou des exemples sur les "décorations", je n'ai pas bien compris...
- Sur mon Firefox (Vista), chaque échange avec le serveur est très long (même en localhost), contrairement à Chrome ou IE...
Voila, c'est tout pour le moment ! Et bonne Smalltalk Party à tous ceux qui y participent.
Frédéric THOMAS.
Salut,
très sympa comme première appli :)
- J'ai une perte de qualité sur les images (Form fromFileNamed:...) ,
j'ai l'impression qu'il y a une conversion en 256 couleurs !!
ca je ne sais pas vraiment...
- Comment gérer la persistance des parties sur seasideHosting ?
(ce serait bien de pouvoir mettre à jour l'image sans détruire les parties en cours)
Je pense tu dois pouvoir sérialiser (mais ptet dans le repertoire /resources). Essayes d'abord en local.
SmartRefStream newFileNamed: '/resources/saveGame.obj' do: [ :file | file nextPutObjOnly: laCollection de parties ; flush ].
"lecture" parties := [ SmartRefStream readOnlyFileNamed: (FileDirectory default fullNameFor: '/resources/saveGame.obj") do: [ :file | file sandstoneNextAndClose ] ] on: Error do: [ :err | Error signal: err messageText ].
J'utilise sandstoneNextAndClose qui provient de SandstoneDB mais tu devrais trouver l'équivalent. Dejà, vérifie que la sérialisation fonction (et surtout que l'image peut ecrire dans le repertoire de seasidehosting)
- Peux-t-on sauvegarder des instances vers des fichiers (comme le Boss
sous VisualWorks) ?
oui avec SmartRefStream
- Comment actualiser automatiquement la page ?
J'ai bien essayé le code suivant : WAJambo>>renderContentOn: html ..... html paragraph script: (html updater every: 10 second; on: #renderTimeOn: of: self)
l'updater agit sur un div. Si tu met un div global pour la page entiere...
html paragraph script: (html updater id: #global every: 10 second; on: #renderContentOn: of: self)
La méthode renderTimeOn: appellant à nouveau renderContentOn: si le jeu a changé. ..mais cela ne fonctionne pas !
Sinon, il y a des exemples dans la mailing seaside...
- Comment actualiser seulement une partie de la page ?
updater sur le div que tu veux remplacer...
Comment redéfinir le style de l'info bulle (title:)
Il y a une doc ou des exemples sur les "décorations", je n'ai pas
bien compris...
- Sur mon Firefox (Vista), chaque échange avec le serveur est très
long (même en localhost), contrairement à Chrome ou IE...
Firefox est plutot lent en effet... :s
a plus,
Cédrick
Voila, c'est tout pour le moment ! Et bonne *_Smalltalk Party_* à tous ceux qui y participent.
Frédéric THOMAS.
Squeak-fr mailing list Squeak-fr@lists.squeakfoundation.org http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/squeak-fr
Bonjour Frédéric
2008/11/26 Frédéric THOMAS frederic.thomas.debrette@gmail.com
Bonjour,
J'ai créé mon premier site web utilisant Squeak et Seaside, c'est un jeu de cartes pour 2 joueurs au tour par tour.
Le prototype est accessible sur *http://jambo.seasidehosting.st*http://jambo.seasidehosting.st/ Pour pouvoir le tester, il faut ouvrir deux pages avec des users différents.
Avant d'approfondir le design et l'ergonomie, j'ai quelques questions à soumettre à la communauté :
- J'ai une perte de qualité sur les images (Form fromFileNamed:...) ,
j'ai l'impression qu'il y a une conversion en 256 couleurs !!
Pour ajouter les images dans Squeak tu peux utiliser l'Instance Encoder: http://www.squeaksource.com/InstanceEncoder.html
- Comment gérer la persistance des parties sur seasideHosting ?
(ce serait bien de pouvoir mettre à jour l'image sans détruire les parties en cours)
- Peux-t-on sauvegarder des instances vers des fichiers (comme le Boss sous
VisualWorks) ?
- Comment actualiser automatiquement la page ?
J'ai bien essayé le code suivant : WAJambo>>renderContentOn: html ..... html paragraph script: (html updater every: 10 second; on: #renderTimeOn: of: self)
La méthode renderTimeOn: appellant à nouveau renderContentOn: si le jeu a changé. ..mais cela ne fonctionne pas !
N'oubliez pas tant Seaside comme Scriptaculous sont orientées au tag, car tu dois identifier chaque tag bloc avec un Symbol (au moins dans le cas qui tu veux utiliser AJAX). Si tu veux une solution qui ne dépendent pas des tags tu peux utiliser SmallFaces : http://wiki.squeak.org/squeak/6088
- Comment actualiser seulement une partie de la page ?
- Comment redéfinir le style de l'info bulle (title:)
Pour ceci regardez les implementors du message #style. Tu vais voir que chaque identificateur CSS - qui commencent avec # ou . (point) ou ils représentent un élément XHTML - il se correspond avec un identificateur dans les méthodes de dessiné (#renderContentOn: .. et autres). Au fait avec Phantasia, le CSS framework que j'écris, tu dois écrire encore les identificateurs dans le #renderContentOn: et amis, mais dans le #style méthode tu as des objets CSS comme CSSClass, CSSId, CSSFont, etc.
Par exemple, pour produire la règle:
#large { color: red; text-align: justify; }
tu peux écrire:
| aRule | aRule := StyleSheetRule cssId: 'large'. aRule add: ( CSSColor colorProperty color: Color red asHTMLColor ); add: CSSText new justified. aRule syntax
Cordialement,
Hernán
squeak-fr@lists.squeakfoundation.org