IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tapestry Java Discussion :

Zone et Block


Sujet :

Tapestry Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 25
    Par défaut Zone et Block
    Bonjour,

    Je commence avec tapestry 5.1 et je n'arrive pas à comprendre la difference entre block et zone.

    A quoi servent-ils?

    Merci par avance

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 25
    Par défaut
    Ayant eu un peu d'info sur le net, je souhaite afficher ou masquer un div qui sert de cache par dessus la page principale si l'utilisateur est identifié ou non.

    Je me sers du layout qui, si je ne trompe pas sert de "template" commun à toutes les pages du site.

    Le truc c'est qu'il ne s'affiche pas et que je ne comprends pas pourquoi.

    J'utilise tapestry 5.1.0.5

    Layout.tml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd"
          xmlns:p="tapestry:parameter">
        [...]
            <!-- start cache -->
            <t:zone t:id="cacheZone">
            	<t:delegate to="cacheBlock"/>
            </t:zone>
            <t:block id="cacheBlock">
            	<div id="cache" style="width:100%;height:100%;z-index:150;background:#333333;opacity:0.5;filter:alpha(opacity=50);position:absolute;top:0;left:0; "/>
            </t:block>
            <!-- end cache -->
        [...]
    </html>
    Layout.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
     
     
    /**
     * Layout component for pages of application test.
     */
    @IncludeStylesheet("context:layout/style.css")
    @IncludeJavaScriptLibrary("context:javascript/resolution.js")
    public class Layout
    {
        /** The page title, for the <title> element and the <h1> element. */
        @Property
        @Parameter(required = true, defaultPrefix = BindingConstants.LITERAL)
        private String title;
     
        @Property
        private String menuItem;
     
        @Property
        @Parameter(defaultPrefix = BindingConstants.LITERAL)
        private Zone cacheZone;
     
        @Parameter(defaultPrefix = BindingConstants.LITERAL)
        private Block cacheBlock;
     
     
     
        @Inject
        private ComponentResources resources;
     
     
        public List<String> getMenu()
        {
        	List<String> liste = new ArrayList<String>();
     
        	//ajout du menu ok
     
        	return liste;
        }
     
        public String getMenuIcone()
        {
        	//pour afficher les icones du menu ok
     
        	return "";
        }
     
        public Block getCacheBlock(){
     
        	return cacheBlock;
        }
     
        public void setCacheBlock(Block cacheBlock){
        	this.cacheBlock = cacheBlock;
     
        }
     
    }
    La page d'index au cas ou mais j'ai pas de soucis avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    <html t:type="layout" title="Agenda"
          xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd"
          xmlns:p="tapestry:parameter">
            <!-- Most of the page content, including <head>, <body>, etc. tags, comes from Layout.tml -->
     
     
    <!-- start sidebar -->
    <div id="sidebar">
    	<div>Changement de date</div>
    	<div>Calendrier</div>
    	<t:zone t:id="sharedRes" id="sharedRes">
    		Shared res
    	</t:zone>
    </div>
    <!-- end sidebar -->
    <!-- start content -->
    <t:zone t:id="content" id="content" >
    	Content
    </t:zone>
    <!-- end content -->
     
    </html>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    public class Index
    {
    	@Property
        @Parameter(defaultPrefix = BindingConstants.LITERAL)
        private Zone sharedRes;
     
    	@Property
        @Parameter(defaultPrefix = BindingConstants.LITERAL)
        private Zone content;
     
     
    }

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 25
    Par défaut
    Pour ceux que ça intéresse, j'ai trouvé comment faire:

    Layout.tml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <t:delegate to="showCache"/>
     
    <t:block id="cacheBlock">
        <div id="cache" style="width:100%;height:100%;z-index:150;background:#333333;opacity:0.5;filter:alpha(opacity=50);position:absolute;top:0;left:0; "/>
    </t:block>
    layout.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
    public class Layout
    {
        /** The page title, for the <title> element and the <h1> element. */
        @Property
        @Parameter(required = true, defaultPrefix = BindingConstants.LITERAL)
        private String title;
     
        @Property
        private String menuItem;
     
        @Inject
        private Block cacheBlock;
     
     
     
        @Inject
        private ComponentResources resources;
     
     
        public List<String> getMenu()
        {
        	List<String> liste = new ArrayList<String>();
     
        	//ajout du menu ok
     
        	return liste;
     
        }
     
        public String getMenuIcone()
        {
        	//pour afficher les icones du menu ok
     
        	return "";
     
        }
     
        public Object getShowCache(){
                if (...)
                     return cacheBlock;
                else
                     return null;
        }
     
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 12
    Dernier message: 29/01/2024, 15h32
  2. Afficher la zone de données du BIOS
    Par foussa dans le forum x86 16-bits
    Réponses: 5
    Dernier message: 20/01/2003, 16h47
  3. Passer de la zone d'édition vers une instruction sql
    Par tripper.dim dans le forum C++Builder
    Réponses: 2
    Dernier message: 27/11/2002, 14h44
  4. [VB6] Zone de liste modifiable basée sur un champ
    Par pepper dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 27/11/2002, 13h41
  5. Réponses: 17
    Dernier message: 17/10/2002, 20h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo