Changeset 13657


Ignore:
Timestamp:
08/04/09 19:09:44 (3 years ago)
Author:
sys
Message:

textPrim : ajout meta sur toutes les structures de la textPrim. En cours...

Location:
trunk
Files:
1 added
8 edited
2 moved

Legend:

Unmodified
Added
Removed
  • trunk/Wsp_Modeling/es/content/resources/textPrim/xml.xed.xml

    r13529 r13657  
    5151                        <wordsInput trim="true" notnull="true" frenchPonct="false"/> 
    5252                </attribute> 
     53                <element se:id="sm:meta" se:bind="element" se:name="sm:meta" se:card="?"> 
     54                        <atts> 
     55                                <ptritem se:bind="plugin" se:attributes="sc:refUri" notnull="true" class="xmlview" regexpSgn=".*#Class\b[\w:]*:Meta\b.*"/> 
     56                                <attribute se:bind="attribute" se:name="usage" se:mandat="false" se:defaultvalue="required"> 
     57                                        <choiceInput> 
     58                                                <ciItem label="required"/> 
     59                                                <ciItem label="optional"/> 
     60                                        </choiceInput> 
     61                                </attribute> 
     62                        </atts> 
     63                </element> 
    5364                <element se:id="defaultElement" se:bind="element" se:card="?"> 
    5465                        <atts> 
     
    5970                        <childs/> 
    6071                </element> 
     72                <element se:id="defaultElementMeta" se:bind="element" se:card="?"> 
     73                        <atts> 
     74                                <attribute se:id="att_name" se:bind="attribute" se:name="name" se:mandat="true"> 
     75                                        <wordsInput notnull="true" trim="true" spellcheck="true" locDefault="true"/> 
     76                                </attribute> 
     77                        </atts> 
     78                        <childs> 
     79                                <se:ref se:refid="sm:meta"/> 
     80                        </childs> 
     81                </element> 
    6182                <element se:id="elementWithRole" se:bind="element" se:card="*"> 
    6283                        <atts> 
     
    6586                        </atts> 
    6687                        <childs/> 
     88                </element> 
     89                <element se:id="elementWithRoleMeta" se:bind="element" se:card="*"> 
     90                        <atts> 
     91                                <se:ref se:refid="att_role"/> 
     92                                <se:ref se:refid="att_name"/> 
     93                        </atts> 
     94                        <childs> 
     95                                <se:ref se:refid="sm:meta"/> 
     96                        </childs> 
    6797                </element> 
    6898                 
     
    106136                        </atts> 
    107137                </element> 
    108                 <element se:id="sm:meta" se:bind="element" se:name="sm:meta" se:card="?"> 
    109                         <atts> 
    110                                 <ptritem se:bind="plugin" se:attributes="sc:refUri" notnull="true" class="xmlview" regexpSgn=".*#Class\b[\w:]*:Meta\b.*"/> 
    111                                 <attribute se:id="att_usage" se:bind="attribute" se:name="usage" se:mandat="false" se:defaultvalue="required"> 
    112                                         <choiceInput> 
    113                                                 <ciItem label="required"/> 
    114                                                 <ciItem label="optional"/> 
    115                                         </choiceInput> 
    116                                 </attribute> 
    117                         </atts> 
    118                 </element> 
    119138                 
    120139                <element se:id="sm:icon" se:bind="element" se:name="sm:icon" se:card="?" se:show="ifExist" forcefilled="true"> 
     
    192211                                                <element se:name="sm:blockTags" se:bind="element" se:card="?"> 
    193212                                                        <childs> 
    194                                                                 <se:ref se:name="sm:paraTag" se:refid="defaultElement" se:card="1"/> 
     213                                                                <se:ref se:name="sm:paraTag" se:refid="defaultElementMeta" se:card="1"/> 
    195214                                                                <element se:name="sm:simpleListTag" se:bind="element" se:card="*"> 
    196215                                                                        <atts> 
     
    199218                                                                        </atts> 
    200219                                                                        <childs> 
     220                                                                                <se:ref se:refid="sm:meta"/> 
    201221                                                                                <se:ref se:name="sm:titleTag" se:refid="defaultElement"/> 
    202                                                                                 <se:ref se:name="sm:memberTag" se:refid="defaultElement" se:card="1"/>  
     222                                                                                <se:ref se:name="sm:memberTag" se:refid="defaultElementMeta" se:card="1"/>  
    203223                                                                        </childs> 
    204224                                                                </element> 
     
    209229                                                                        </atts> 
    210230                                                                        <childs> 
     231                                                                                <se:ref se:refid="sm:meta"/> 
    211232                                                                                <se:ref se:name="sm:titleTag" se:refid="defaultElement"/> 
    212                                                                                 <se:ref se:name="sm:listItemTag" se:refid="defaultElement" se:card="1"/>  
     233                                                                                <se:ref se:name="sm:listItemTag" se:refid="defaultElementMeta" se:card="1"/>  
    213234                                                                        </childs> 
    214235                                                                </element> 
     
    219240                                                                        </atts> 
    220241                                                                        <childs> 
     242                                                                                <se:ref se:refid="sm:meta"/> 
    221243                                                                                <se:ref se:name="sm:titleTag" se:refid="defaultElement"/> 
    222                                                                                 <se:ref se:name="sm:listItemTag" se:refid="defaultElement" se:card="1"/>  
     244                                                                                <se:ref se:name="sm:listItemTag" se:refid="defaultElementMeta" se:card="1"/>  
    223245                                                                        </childs> 
    224246                                                                </element> 
     
    265287                                                                        </atts> 
    266288                                                                        <childs> 
     289                                                                                <se:ref se:refid="sm:meta"/> 
    267290                                                                                <se:ref se:name="sm:captionTag" se:refid="defaultElement"/> 
    268291                                                                                <se:ref se:refid="elementWithRole" se:name="sm:columnTag" se:card="+"/> 
    269                                                                                 <se:ref se:refid="elementWithRole" se:name="sm:rowTag" se:card="+"/> 
    270                                                                                 <se:ref se:refid="elementWithRole" se:name="sm:cellTag" se:card="+"/> 
     292                                                                                <se:ref se:refid="elementWithRoleMeta" se:name="sm:rowTag" se:card="+"/> 
     293                                                                                <se:ref se:refid="elementWithRoleMeta" se:name="sm:cellTag" se:card="+"/> 
    271294                                                                                <insert se:bind="current"/> 
    272295                                                                        </childs> 
     
    278301                                                                        </atts> 
    279302                                                                        <childs> 
     303                                                                                <se:ref se:refid="sm:meta"/> 
    280304                                                                                <se:ref se:name="sm:captionBlockTag" se:refid="defaultElement"/> 
    281305                                                                                <se:ref se:refid="sm:allowedModel"/> 
     
    288312                                                                                <se:ref se:refid="att_name"/> 
    289313                                                                        </atts> 
     314                                                                        <childs> 
     315                                                                                <se:ref se:refid="sm:meta"/> 
     316                                                                        </childs> 
    290317                                                                </element> 
    291318                                                                <insert se:bind="current"/> 
     
    294321                                                <element se:name="sm:inlineTags" se:bind="element"> 
    295322                                                        <childs> 
    296                                                                 <se:ref se:refid="defaultElement" se:name="sm:noteTag"/> 
     323                                                                <se:ref se:name="sm:noteTag" se:refid="defaultElement"/> 
    297324                                                                <element se:name="sm:uLinkTag" se:bind="element" se:card="*"> 
    298325                                                                        <atts> 
     
    301328                                                                        </atts> 
    302329                                                                        <childs> 
     330                                                                                <se:ref se:refid="sm:meta"/> 
    303331                                                                                <alternativeAlone se:bind="choice"> 
    304332                                                                                        <element se:bind="element" se:name="sm:externalUrl" forcefilled="true" se:show="ifExist"> 
     
    314342                                                                        </childs> 
    315343                                                                </element> 
    316                                                                 <se:ref se:refid="elementWithRole" se:name="sm:phraseTag" se:title="sm:phraseTag (deprecated)"/> 
    317                                                                 <se:ref se:refid="elementWithRole" se:name="sm:inlineStyleTag"/> 
    318                                                                 <se:ref se:refid="elementWithRole" se:name="sm:textLeafTag"/> 
     344                                                                <se:ref se:name="sm:phraseTag" se:refid="elementWithRoleMeta"/> 
     345                                                                <se:ref se:name="sm:inlineStyleTag" se:refid="elementWithRoleMeta"/> 
     346                                                                <se:ref se:name="sm:textLeafTag" se:refid="elementWithRoleMeta"/> 
    319347                                                                <element se:name="sm:objectLeafTag" se:bind="element" se:card="*"> 
    320348                                                                        <atts> 
     
    323351                                                                        </atts> 
    324352                                                                        <childs> 
     353                                                                                <se:ref se:refid="sm:meta"/> 
    325354                                                                                <element se:bind="element" se:name="sm:refItem"> 
    326355                                                                                        <childs> 
     
    336365                                                                                <se:ref se:refid="att_name"/> 
    337366                                                                        </atts> 
    338                                                                         <!-- 
    339                                                                         <childs> 
    340                                                                                 <se:ref se:refid="sm:meta"/> 
    341                                                                         </childs> 
    342                                                                         --> 
     367                                                                        <childs> 
     368                                                                                <se:ref se:refid="sm:meta"/> 
     369                                                                        </childs> 
    343370                                                                </element> 
    344371                                                                <element se:bind="element" se:name="sm:inlineImgTag" se:card="*"> 
     
    348375                                                                        </atts> 
    349376                                                                        <childs> 
     377                                                                                <se:ref se:refid="sm:meta"/> 
    350378                                                                                <element se:bind="element" se:name="sm:alternativeText" se:card="?"> 
    351379                                                                                        <atts> 
     
    484512                                                                                                                <se:ref se:name="sm:insertChars" se:refid="actionSimple"/> 
    485513                                                                                                                <se:ref se:name="sm:toggleStructuredMarks" se:refid="actionSimple"/> 
    486                                                                                                                 <se:ref se:name="sm:showProperties" se:refid="actionDisabled"/> 
     514                                                                                                                <se:ref se:name="sm:showLink" se:refid="actionDisabled"/> 
     515                                                                                                                <se:ref se:name="sm:showMeta" se:refid="actionDisabled"/> 
    487516                                                                                                                 
    488517                                                                                                                <se:ref se:name="sm:insert_simpleList" se:refid="actionTag"/> 
  • trunk/Wsp_Modeling/spaces/gen/modelBuilder/bs.doss/sm_textPrim.xml

    r13462 r13657  
    410410        </valeur> 
    411411         
    412         <!-- Test si cet inlineImg doit être actif ou non (dépend de ses modèles liés). --> 
     412        <!-- Test si ce ObjectLeaf doit être actif ou non (dépend de ses modèles liés). --> 
    413413        <valeur code="isObjectLeaf_" racine="sm:structure/sm:inlineTags/sm:objectLeafTag" codecomposant="concat('isObjectLeaf_', @role)"> 
    414414                <source type="xpathOnSrc-dynamique">testExpr(sm:refItem/sm:allowedModel, resultatAgent(concat('@', getIdFromPath(@sc:refUri), '/isStandAloneItem')) = 'true', 'or')</source> 
     
    416416        </valeur> 
    417417         
     418        <!-- Test si le tag passé en $vArguments possède des metas actifs. --> 
     419        <valeur code="isMetaEnabled"> 
     420                <source type="xpath-dynamique">bool2Str($vArguments/sm:meta/@sc:refUri and resultatAgent('/@@/isInternalizableClass', getIdFromPath($vArguments/sm:meta/@sc:refUri))='true') </source> 
     421        </valeur> 
     422         
     423        <!-- Retourne l'url du xed des meta du tag passé en $vArguments.  
     424        TODO à enrichir pour pointer le code de l'éditor à définir dans le sm:authoring 
     425        --> 
     426        <valeur code="getUrlXedMeta"> 
     427                <source type="xpath-dynamique">si(resultatAgent('//isMetaEnabled', $vArguments), resultatAgent(concat('@', getIdFromPath($vArguments/sm:meta/@sc:refUri), '/xedRefUrlForm')), '')</source> 
     428        </valeur> 
    418429         
    419430        <!-- ### --> 
  • trunk/Wsp_Modeling/spaces/gen/modelBuilder/bs.doss/sm_textPrim/relaxNg.rng.xsl

    r13527 r13657  
    6060                <sng:define name="{resultatAgent('//codeModel')}_blocs"> 
    6161                        <xsl:choose> 
    62                                 <xsl:when test="count(sm:structure/sm:blockTags) &gt; 0"> 
     62                                <xsl:when test="boolean(sm:structure/sm:blockTags/*)"> 
    6363                                        <sng:oneOrMore> 
    6464                                                <sng:choice> 
     
    9090                        </sng:optional> 
    9191                </sng:define> 
    92         </xsl:template> 
    93          
     92                <xsl:apply-templates select="sm:structure/*" mode="define"/> 
     93        </xsl:template> 
    9494         
    9595         
    9696        <xsl:template match="sm:blockTags"> 
     97                <xsl:apply-templates/> 
     98        </xsl:template> 
     99         
     100        <xsl:template match="sm:paraTag"> 
    97101                <sng:element name="sc:para"> 
    98                         <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     102                        <!-- <xsl:call-template name="attRole"/> --> 
     103                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     104                        <xsl:apply-templates select="sm:meta"/> 
    99105                        <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
    100106                </sng:element> 
    101                  
    102                 <xsl:if test="sm:simpleListTag"> 
    103                         <sng:element name="sc:simpleList"> 
    104                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    105                                 <sng:optional> 
    106                                         <sng:attribute name="role"> 
     107        </xsl:template> 
     108         
     109        <xsl:template match="sm:simpleListTag"> 
     110                <sng:element name="sc:simpleList"> 
     111                        <xsl:call-template name="attRole"/> 
     112                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     113                        <xsl:apply-templates select="sm:meta"/> 
     114                        <xsl:if test="sm:titleTag"> 
     115                                <sng:optional> 
     116                                        <sng:element name="sc:title"> 
     117                                                <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     118                                                <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
     119                                        </sng:element> 
     120                                </sng:optional> 
     121                        </xsl:if> 
     122                        <sng:zeroOrMore> 
     123                                <sng:element name="sc:member"> 
     124                                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     125                                        <xsl:apply-templates select="sm:meta"/> 
     126                                        <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
     127                                </sng:element> 
     128                        </sng:zeroOrMore> 
     129                </sng:element> 
     130        </xsl:template> 
     131         
     132        <xsl:template match="sm:itemizedListTag"> 
     133                <sng:element name="sc:itemizedList"> 
     134                        <xsl:call-template name="attRole"/> 
     135                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     136                        <xsl:apply-templates select="sm:meta"/> 
     137                        <xsl:if test="sm:titleTag"> 
     138                                <sng:optional> 
     139                                        <sng:element name="sc:title"> 
     140                                                <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     141                                                <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
     142                                        </sng:element> 
     143                                </sng:optional> 
     144                        </xsl:if> 
     145                        <sng:zeroOrMore> 
     146                                <sng:element name="sc:listItem"> 
     147                                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     148                                        <xsl:apply-templates select="sm:meta"/> 
     149                                        <sng:ref name="{resultatAgent('//codeModel')}_blocs"/> 
     150                                </sng:element> 
     151                        </sng:zeroOrMore> 
     152                </sng:element> 
     153        </xsl:template> 
     154         
     155        <xsl:template match="sm:orderedListTag"> 
     156                <sng:element name="sc:orderedList"> 
     157                        <xsl:call-template name="attRole"/> 
     158                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     159                        <xsl:apply-templates select="sm:meta"/> 
     160                        <xsl:if test="sm:titleTag"> 
     161                                <sng:optional> 
     162                                        <sng:element name="sc:title"> 
     163                                                <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     164                                                <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
     165                                        </sng:element> 
     166                                </sng:optional> 
     167                        </xsl:if> 
     168                        <sng:zeroOrMore> 
     169                                <sng:element name="sc:listItem"> 
     170                                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     171                                        <xsl:apply-templates select="sm:meta"/> 
     172                                        <sng:ref name="{resultatAgent('//codeModel')}_blocs"/> 
     173                                </sng:element> 
     174                        </sng:zeroOrMore> 
     175                </sng:element> 
     176        </xsl:template> 
     177         
     178        <xsl:template match="sm:tableTag"> 
     179                <sng:element name="sc:table"> 
     180                        <xsl:call-template name="attRole"/> 
     181                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     182                        <xsl:apply-templates select="sm:meta"/> 
     183                        <xsl:if test="sm:captionTag"> 
     184                                <sng:optional> 
     185                                        <sng:element name="sc:caption"> 
     186                                                <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     187                                                <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
     188                                        </sng:element> 
     189                                </sng:optional> 
     190                        </xsl:if> 
     191                        <sng:zeroOrMore> 
     192                                <xsl:choose> 
     193                                        <xsl:when test="count(sm:columnTag)&gt;1"> 
    107194                                                <sng:choice> 
    108                                                         <xsl:for-each select="sm:simpleListTag"> 
    109                                                                 <sng:value> 
    110                                                                         <xsl:value-of select="@role"/> 
    111                                                                 </sng:value> 
    112                                                         </xsl:for-each> 
     195                                                        <xsl:apply-templates select="sm:columnTag"/> 
    113196                                                </sng:choice> 
    114                                         </sng:attribute> 
    115                                 </sng:optional> 
    116                                 <xsl:if test="sm:simpleListTag/sm:titleTag"> 
    117                                         <sng:optional> 
    118                                                 <sng:element name="sc:title"> 
    119                                                         <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    120                                                         <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
    121                                                 </sng:element> 
    122                                         </sng:optional> 
    123                                 </xsl:if> 
    124                                 <sng:zeroOrMore> 
    125                                         <sng:element name="sc:member"> 
    126                                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    127                                                 <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
    128                                         </sng:element> 
    129                                 </sng:zeroOrMore> 
    130                         </sng:element> 
    131                 </xsl:if> 
    132                  
    133                 <xsl:if test="sm:itemizedListTag"> 
    134                         <sng:element name="sc:itemizedList"> 
    135                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    136                                 <sng:optional> 
    137                                         <sng:attribute name="role"> 
     197                                        </xsl:when> 
     198                                        <xsl:otherwise> 
     199                                                <xsl:apply-templates select="sm:columnTag"/> 
     200                                        </xsl:otherwise> 
     201                                </xsl:choose> 
     202                        </sng:zeroOrMore> 
     203                        <sng:zeroOrMore> 
     204                                <xsl:choose> 
     205                                        <xsl:when test="count(sm:rowTag)&gt;1"> 
    138206                                                <sng:choice> 
    139                                                         <xsl:for-each select="sm:itemizedListTag"> 
    140                                                                 <sng:value> 
    141                                                                         <xsl:value-of select="@role"/> 
    142                                                                 </sng:value> 
    143                                                         </xsl:for-each> 
     207                                                        <xsl:apply-templates select="sm:rowTag"/> 
    144208                                                </sng:choice> 
    145                                         </sng:attribute> 
    146                                 </sng:optional> 
    147                                 <xsl:if test="sm:itemizedListTag/sm:titleTag"> 
    148                                         <sng:optional> 
    149                                                 <sng:element name="sc:title"> 
    150                                                         <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    151                                                         <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
    152                                                 </sng:element> 
    153                                         </sng:optional> 
    154                                 </xsl:if> 
    155                                 <sng:zeroOrMore> 
    156                                         <sng:element name="sc:listItem"> 
    157                                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    158                                                 <sng:ref name="{resultatAgent('//codeModel')}_blocs"/> 
    159                                         </sng:element> 
    160                                 </sng:zeroOrMore> 
    161                         </sng:element> 
    162                 </xsl:if> 
    163                  
    164                 <xsl:if test="sm:orderedListTag"> 
    165                         <sng:element name="sc:orderedList"> 
    166                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    167                                 <sng:optional> 
    168                                         <sng:attribute name="role"> 
    169                                                 <sng:choice> 
    170                                                         <xsl:for-each select="sm:orderedListTag"> 
    171                                                                 <sng:value> 
    172                                                                         <xsl:value-of select="@role"/> 
    173                                                                 </sng:value> 
    174                                                         </xsl:for-each> 
    175                                                 </sng:choice> 
    176                                         </sng:attribute> 
    177                                 </sng:optional> 
    178                                 <xsl:if test="sm:orderedListTag/sm:titleTag"> 
    179                                         <sng:optional> 
    180                                                 <sng:element name="sc:title"> 
    181                                                         <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    182                                                         <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
    183                                                 </sng:element> 
    184                                         </sng:optional> 
    185                                 </xsl:if> 
    186                                 <sng:zeroOrMore> 
    187                                         <sng:element name="sc:listItem"> 
    188                                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    189                                                 <sng:ref name="{resultatAgent('//codeModel')}_blocs"/> 
    190                                         </sng:element> 
    191                                 </sng:zeroOrMore> 
    192                         </sng:element> 
    193                 </xsl:if> 
    194                 <!-- 
    195                 <xsl:if test="sm:variableListTag"> 
    196                         <sng:element name="sc:variableList"> 
    197                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    198                                 <sng:optional> 
    199                                         <sng:attribute name="role"> 
    200                                                 <sng:choice> 
    201                                                         <xsl:for-each select="sm:variableListTag"> 
    202                                                                 <sng:value> 
    203                                                                         <xsl:value-of select="@role"/> 
    204                                                                 </sng:value> 
    205                                                         </xsl:for-each> 
    206                                                 </sng:choice> 
    207                                         </sng:attribute> 
    208                                 </sng:optional> 
    209                                 <sng:zeroOrMore> 
    210                                         <sng:element name="sc:varListEntry"> 
    211                                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    212                                                 <sng:oneOrMore> 
    213                                                         <sng:element name="sc:term"> 
    214                                                                 <sng:data type="string"/> 
    215                                                         </sng:element> 
    216                                                 </sng:oneOrMore> 
    217                                                 <sng:element name="sc:listItem"> 
    218                                                         <sng:ref name="{resultatAgent('//codeModel')}_blocs"/> 
    219                                                 </sng:element> 
    220                                         </sng:element> 
    221                                 </sng:zeroOrMore> 
    222                         </sng:element> 
    223                 </xsl:if> 
    224                 --> 
    225                  
    226                 <xsl:if test="sm:tableTag"> 
    227                         <sng:element name="sc:table"> 
    228                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    229                                 <sng:optional> 
    230                                         <sng:attribute name="role"> 
    231                                                 <sng:choice> 
    232                                                         <xsl:for-each select="sm:tableTag"> 
    233                                                                 <sng:value> 
    234                                                                         <xsl:value-of select="@role"/> 
    235                                                                 </sng:value> 
    236                                                         </xsl:for-each> 
    237                                                 </sng:choice> 
    238                                         </sng:attribute> 
    239                                 </sng:optional> 
    240                                 <xsl:if test="sm:tableTag/sm:captionTag"> 
    241                                         <sng:optional> 
    242                                                 <sng:element name="sc:caption"> 
    243                                                         <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    244                                                         <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
    245                                                 </sng:element> 
    246                                         </sng:optional> 
    247                                 </xsl:if> 
    248                                 <sng:zeroOrMore> 
    249                                         <sng:element name="sc:column"> 
    250                                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    251                                                 <sng:optional> 
    252                                                         <sng:attribute name="role"> 
    253                                                                 <sng:choice> 
    254                                                                         <xsl:if test="xalan:distinct(sm:tableTag/sm:columnTag[not(@role)])"> 
    255                                                                                 <sng:value/> 
    256                                                                         </xsl:if> 
    257                                                                         <xsl:for-each select="xalan:distinct(sm:tableTag/sm:columnTag/@role)"> 
    258                                                                                 <sng:value> 
    259                                                                                         <xsl:value-of select="."/> 
    260                                                                                 </sng:value> 
    261                                                                         </xsl:for-each> 
    262                                                                 </sng:choice> 
    263                                                         </sng:attribute> 
    264                                                 </sng:optional> 
    265                                                 <sng:attribute name="width"> 
    266                                                         <sng:data type="string"/> 
    267                                                 </sng:attribute> 
    268                                         </sng:element> 
    269                                 </sng:zeroOrMore> 
    270                                 <sng:zeroOrMore> 
    271                                         <sng:element name="sc:row"> 
    272                                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    273                                                 <sng:optional> 
    274                                                         <sng:attribute name="role"> 
    275                                                                 <sng:choice> 
    276                                                                         <xsl:if test="xalan:distinct(sm:tableTag/sm:rowTag[not(@role)])"> 
    277                                                                                 <sng:value/> 
    278                                                                         </xsl:if> 
    279                                                                         <xsl:for-each select="xalan:distinct(sm:tableTag/sm:rowTag/@role)"> 
    280                                                                                 <sng:value> 
    281                                                                                         <xsl:value-of select="."/> 
    282                                                                                 </sng:value> 
    283                                                                         </xsl:for-each> 
    284                                                                 </sng:choice> 
    285                                                         </sng:attribute> 
    286                                                 </sng:optional> 
    287                                                 <sng:zeroOrMore> 
    288                                                         <sng:element name="sc:cell"> 
    289                                                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    290                                                                 <sng:optional> 
    291                                                                         <sng:attribute name="role"> 
    292                                                                                 <sng:choice> 
    293                                                                                         <xsl:if test="xalan:distinct(sm:tableTag/sm:cellTag[not(@role)])"> 
    294                                                                                                 <sng:value/> 
    295                                                                                         </xsl:if> 
    296                                                                                         <xsl:for-each select="xalan:distinct(sm:tableTag/sm:cellTag/@role)"> 
    297                                                                                                 <sng:value> 
    298                                                                                                         <xsl:value-of select="."/> 
    299                                                                                                 </sng:value> 
    300                                                                                         </xsl:for-each> 
    301                                                                                 </sng:choice> 
    302                                                                         </sng:attribute> 
    303                                                                 </sng:optional> 
    304                                                                 <sng:optional> 
    305                                                                         <sng:attribute name="rowSpan"> 
    306                                                                                 <sng:data type="string"/> 
    307                                                                         </sng:attribute> 
    308                                                                 </sng:optional> 
    309                                                                 <sng:optional> 
    310                                                                         <sng:attribute name="colSpan"> 
    311                                                                                 <sng:data type="string"/> 
    312                                                                         </sng:attribute> 
    313                                                                 </sng:optional> 
    314                                                                 <sng:optional> 
    315                                                                         <sng:ref name="{resultatAgent('//codeModel')}_blocs"/> 
    316                                                                 </sng:optional> 
    317                                                         </sng:element> 
    318                                                 </sng:zeroOrMore> 
    319                                         </sng:element> 
    320                                 </sng:zeroOrMore> 
    321                         </sng:element> 
    322                 </xsl:if> 
    323                  
    324                 <xsl:if test="sm:extBlockTag"> 
    325                         <sng:element name="sc:extBlock"> 
    326                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    327                                 <sng:optional> 
    328                                         <sng:attribute name="role"> 
    329                                                 <sng:choice> 
    330                                                         <xsl:for-each select="sm:extBlockTag"> 
    331                                                                 <sng:value> 
    332                                                                         <xsl:value-of select="@role"/> 
    333                                                                 </sng:value> 
    334                                                         </xsl:for-each> 
    335                                                 </sng:choice> 
    336                                         </sng:attribute> 
    337                                 </sng:optional> 
     209                                        </xsl:when> 
     210                                        <xsl:otherwise> 
     211                                                <xsl:apply-templates select="sm:rowTag"/> 
     212                                        </xsl:otherwise> 
     213                                </xsl:choose> 
     214                        </sng:zeroOrMore> 
     215                        <sng:ref name="{resultatAgent('//codeModel')}_cells_{@role}"/> 
     216                </sng:element> 
     217        </xsl:template> 
     218         
     219        <xsl:template match="sm:columnTag"> 
     220                <sng:element name="sc:column"> 
     221                        <xsl:call-template name="attRole"/> 
     222                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     223                        <sng:attribute name="width"> 
     224                                <sng:data type="string"/> 
     225                        </sng:attribute> 
     226                        <!-- <xsl:apply-templates select="sm:meta"/> --> 
     227                </sng:element> 
     228        </xsl:template> 
     229         
     230        <xsl:template match="sm:rowTag"> 
     231                <sng:element name="sc:row"> 
     232                        <xsl:call-template name="attRole"/> 
     233                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     234                        <xsl:apply-templates select="sm:meta"/> 
     235                        <sng:ref name="{resultatAgent('//codeModel')}_cells_{../@role}"/> 
     236                </sng:element> 
     237        </xsl:template> 
     238         
     239        <xsl:template match="sm:extBlockTag"> 
     240                <sng:element name="sc:extBlock"> 
     241                        <xsl:call-template name="attRole"/> 
     242                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     243                        <sng:attribute name="sc:refUri"> 
     244                                <sng:data type="string"> 
     245                                        <sng:param name="minLength">1</sng:param> 
     246                                </sng:data> 
     247                        </sng:attribute> 
     248                        <xsl:apply-templates select="sm:meta"/> 
     249                        <xsl:if test="sm:captionBlockTag"> 
     250                                <sng:optional> 
     251                                        <sng:element name="sc:captionBlock"> 
     252                                                <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     253                                                <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
     254                                        </sng:element> 
     255                                </sng:optional> 
     256                        </xsl:if> 
     257                </sng:element> 
     258        </xsl:template> 
     259         
     260        <xsl:template match="sm:emptyBlockTag"> 
     261                <sng:element name="sc:emptyBlock"> 
     262                        <xsl:call-template name="attRole"/> 
     263                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     264                        <xsl:apply-templates select="sm:meta"/> 
     265                </sng:element> 
     266        </xsl:template> 
     267         
     268         
     269         
     270         
     271         
     272        <xsl:template match="sm:inlineTags"> 
     273                <xsl:apply-templates/> 
     274        </xsl:template> 
     275         
     276        <xsl:template match="sm:uLinkTag"> 
     277                <sng:element name="sc:uLink"> 
     278                        <xsl:call-template name="attRole"/> 
     279                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     280                        <sng:optional> 
     281                                <sng:attribute name="url"> 
     282                                        <sng:data type="string"> 
     283                                                <sng:param name="minLength">1</sng:param> 
     284                                        </sng:data> 
     285                                </sng:attribute> 
     286                        </sng:optional> 
     287                        <sng:optional> 
    338288                                <sng:attribute name="sc:refUri"> 
    339289                                        <sng:data type="string"> 
     
    341291                                        </sng:data> 
    342292                                </sng:attribute> 
    343                                 <xsl:if test="sm:extBlockTag/sm:captionBlockTag"> 
    344                                         <sng:optional> 
    345                                                 <sng:element name="sc:captionBlock"> 
    346                                                         <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    347                                                         <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
    348                                                 </sng:element> 
    349                                         </sng:optional> 
    350                                 </xsl:if> 
    351                         </sng:element> 
    352                 </xsl:if> 
    353                  
    354                 <xsl:if test="sm:emptyBlockTag"> 
    355                         <sng:element name="sc:emptyBlock"> 
    356                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     293                        </sng:optional> 
     294                        <xsl:apply-templates select="sm:meta"/> 
     295                        <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
     296                </sng:element> 
     297        </xsl:template> 
     298         
     299        <xsl:template match="sm:phraseTag"> 
     300                <sng:element name="sc:phrase"> 
     301                        <xsl:call-template name="attRole"/> 
     302                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     303                        <sng:optional> 
     304                                <!-- pour compatibilité avec SC < 3.7 --> 
     305                                <sng:attribute name="xml:lang"> 
     306                                        <sng:data type="string"/> 
     307                                </sng:attribute> 
     308                        </sng:optional> 
     309                        <xsl:apply-templates select="sm:meta"/> 
     310                        <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
     311                </sng:element> 
     312        </xsl:template> 
     313         
     314        <xsl:template match="sm:inlineStyleTag"> 
     315                <sng:element name="sc:inlineStyle"> 
     316                        <xsl:call-template name="attRole"/> 
     317                        <xsl:apply-templates select="sm:meta"/> 
     318                        <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
     319                </sng:element> 
     320        </xsl:template> 
     321         
     322        <xsl:template match="sm:textLeafTag"> 
     323                <sng:element name="sc:textLeaf"> 
     324                        <xsl:call-template name="attRole"/> 
     325                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     326                        <xsl:apply-templates select="sm:meta"/> 
     327                        <sng:text/> 
     328                </sng:element> 
     329        </xsl:template> 
     330         
     331        <xsl:template match="sm:objectLeafTag"> 
     332                <sng:element name="sc:objectLeaf"> 
     333                        <xsl:call-template name="attRole"/> 
     334                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     335                        <sng:attribute name="sc:refUri"> 
     336                                <sng:data type="string"> 
     337                                        <sng:param name="minLength">1</sng:param> 
     338                                </sng:data> 
     339                        </sng:attribute> 
     340                        <xsl:apply-templates select="sm:meta"/> 
     341                </sng:element> 
     342        </xsl:template> 
     343         
     344        <xsl:template match="sm:emptyLeafTag"> 
     345                <sng:element name="sc:emptyLeaf"> 
     346                        <xsl:call-template name="attRole"/> 
     347                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     348                        <xsl:apply-templates select="sm:meta"/> 
     349                </sng:element> 
     350        </xsl:template> 
     351         
     352        <xsl:template match="sm:inlineImgTag"> 
     353                <sng:element name="sc:inlineImg"> 
     354                        <xsl:call-template name="attRole"/> 
     355                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     356                        <sng:attribute name="sc:refUri"> 
     357                                <sng:data type="string"> 
     358                                        <sng:param name="minLength">1</sng:param> 
     359                                </sng:data> 
     360                        </sng:attribute> 
     361                        <xsl:apply-templates select="sm:meta"/> 
     362                        <sng:text/> 
     363                </sng:element> 
     364        </xsl:template> 
     365         
     366        <xsl:template match="sm:noteTag"> 
     367                <sng:element name="sc:note"> 
     368                        <xsl:call-template name="attRole"/> 
     369                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     370                        <sng:ref name="{resultatAgent('//codeModel')}"/> 
     371                </sng:element> 
     372        </xsl:template> 
     373         
     374         
     375         
     376        <xsl:template match="sm:blockTags" mode="define"> 
     377                <xsl:apply-templates mode="define"/> 
     378        </xsl:template> 
     379        <xsl:template match="sm:tableTag" mode="define"> 
     380                <sng:define name="{resultatAgent('//codeModel')}_cells_{@role}"> 
     381                        <sng:zeroOrMore> 
     382                                <xsl:choose> 
     383                                        <xsl:when test="count(sm:cellTag)&gt;1"> 
     384                                                <sng:choice> 
     385                                                        <xsl:apply-templates select="sm:cellTag" mode="define"/> 
     386                                                </sng:choice> 
     387                                        </xsl:when> 
     388                                        <xsl:otherwise> 
     389                                                <xsl:apply-templates select="sm:cellTag" mode="define"/> 
     390                                        </xsl:otherwise> 
     391                                </xsl:choose> 
     392                        </sng:zeroOrMore> 
     393                </sng:define> 
     394        </xsl:template> 
     395        <xsl:template match="sm:cellTag" mode="define"> 
     396                <sng:element name="sc:cell"> 
     397                        <xsl:call-template name="attRole"/> 
     398                        <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
     399                        <sng:optional> 
     400                                <sng:attribute name="rowSpan"> 
     401                                        <sng:data type="string"/> 
     402                                </sng:attribute> 
     403                        </sng:optional> 
     404                        <sng:optional> 
     405                                <sng:attribute name="colSpan"> 
     406                                        <sng:data type="string"/> 
     407                                </sng:attribute> 
     408                        </sng:optional> 
     409                        <xsl:apply-templates select="sm:meta"/> 
     410                        <sng:optional> 
     411                                <sng:ref name="{resultatAgent('//codeModel')}_blocs"/> 
     412                        </sng:optional> 
     413                </sng:element> 
     414        </xsl:template> 
     415         
     416        <xsl:template match="sm:inlineTags" mode="define"> 
     417                <xsl:apply-templates mode="define"/> 
     418        </xsl:template> 
     419         
     420        <xsl:template match="node()" mode="define"/> 
     421         
     422         
     423        <xsl:template name="attRole"> 
     424                <xsl:choose> 
     425                        <xsl:when test="string(@role)"> 
     426                                <!-- Role spécifié. --> 
     427                                <sng:attribute name="role"> 
     428                                        <sng:value> 
     429                                                <xsl:value-of select="@role"/> 
     430                                        </sng:value> 
     431                                </sng:attribute> 
     432                        </xsl:when> 
     433                        <xsl:otherwise> 
     434                                <!-- pas de role spécifié. --> 
    357435                                <sng:optional> 
    358436                                        <sng:attribute name="role"> 
    359                                                 <sng:choice> 
    360                                                         <xsl:for-each select="sm:emptyBlockTag"> 
    361                                                                 <sng:value> 
    362                                                                         <xsl:value-of select="@role"/> 
    363                                                                 </sng:value> 
    364                                                         </xsl:for-each> 
    365                                                 </sng:choice> 
     437                                                <sng:value/> 
    366438                                        </sng:attribute> 
    367439                                </sng:optional> 
    368                         </sng:element> 
    369                 </xsl:if> 
    370         </xsl:template> 
    371          
    372          
    373         <xsl:template match="sm:inlineTags"> 
    374                 <xsl:if test="sm:uLinkTag"> 
    375                         <sng:element name="sc:uLink"> 
    376                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    377                                 <sng:optional> 
    378                                         <sng:attribute name="role"> 
    379                                                 <sng:choice> 
    380                                                         <xsl:for-each select="sm:uLinkTag"> 
    381                                                                 <sng:value> 
    382                                                                         <xsl:value-of select="@role"/> 
    383                                                                 </sng:value> 
    384                                                         </xsl:for-each> 
    385                                                 </sng:choice> 
    386                                         </sng:attribute> 
    387                                 </sng:optional> 
    388                                 <sng:optional> 
    389                                         <sng:attribute name="url"> 
    390                                                 <sng:data type="string"> 
    391                                                         <sng:param name="minLength">1</sng:param> 
    392                                                 </sng:data> 
    393                                         </sng:attribute> 
    394                                 </sng:optional> 
    395                                 <sng:optional> 
    396                                         <sng:attribute name="sc:refUri"> 
    397                                                 <sng:data type="string"> 
    398                                                         <sng:param name="minLength">1</sng:param> 
    399                                                 </sng:data> 
    400                                         </sng:attribute> 
    401                                 </sng:optional> 
    402                                 <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
    403                         </sng:element> 
    404                 </xsl:if> 
    405                 <xsl:if test="sm:phraseTag"> 
    406                         <sng:element name="sc:phrase"> 
    407                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    408                                 <sng:optional> 
    409                                         <sng:attribute name="role"> 
    410                                                 <sng:choice> 
    411                                                         <xsl:for-each select="sm:phraseTag"> 
    412                                                                 <sng:value> 
    413                                                                         <xsl:value-of select="@role"/> 
    414                                                                 </sng:value> 
    415                                                         </xsl:for-each> 
    416                                                 </sng:choice> 
    417                                         </sng:attribute> 
    418                                 </sng:optional> 
    419                                 <sng:optional> 
    420                                         <sng:attribute name="xml:lang"> 
    421                                                 <sng:data type="string"/> 
    422                                         </sng:attribute> 
    423                                 </sng:optional> 
    424                                 <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
    425                         </sng:element> 
    426                 </xsl:if> 
    427                 <xsl:if test="sm:inlineStyleTag"> 
    428                         <sng:element name="sc:inlineStyle"> 
    429                                 <sng:optional> 
    430                                         <sng:attribute name="role"> 
    431                                                 <sng:choice> 
    432                                                         <xsl:for-each select="sm:inlineStyleTag"> 
    433                                                                 <sng:value> 
    434                                                                         <xsl:value-of select="@role"/> 
    435                                                                 </sng:value> 
    436                                                         </xsl:for-each> 
    437                                                 </sng:choice> 
    438                                         </sng:attribute> 
    439                                 </sng:optional> 
    440                                 <sng:ref name="{resultatAgent('//codeModel')}_inline"/> 
    441                         </sng:element> 
    442                 </xsl:if> 
    443                 <xsl:if test="sm:textLeafTag"> 
    444                         <sng:element name="sc:textLeaf"> 
    445                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    446                                 <sng:optional> 
    447                                         <sng:attribute name="role"> 
    448                                                 <sng:choice> 
    449                                                         <xsl:for-each select="sm:textLeafTag"> 
    450                                                                 <sng:value> 
    451                                                                         <xsl:value-of select="@role"/> 
    452                                                                 </sng:value> 
    453                                                         </xsl:for-each> 
    454                                                 </sng:choice> 
    455                                         </sng:attribute> 
    456                                 </sng:optional> 
    457                                 <sng:text/> 
    458                         </sng:element> 
    459                 </xsl:if> 
    460                 <xsl:if test="sm:objectLeafTag"> 
    461                         <sng:element name="sc:objectLeaf"> 
    462                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    463                                 <sng:optional> 
    464                                         <sng:attribute name="role"> 
    465                                                 <sng:choice> 
    466                                                         <xsl:for-each select="sm:objectLeafTag"> 
    467                                                                 <sng:value> 
    468                                                                         <xsl:value-of select="@role"/> 
    469                                                                 </sng:value> 
    470                                                         </xsl:for-each> 
    471                                                 </sng:choice> 
    472                                         </sng:attribute> 
    473                                 </sng:optional> 
    474                                 <sng:attribute name="sc:refUri"> 
    475                                         <sng:data type="string"> 
    476                                                 <sng:param name="minLength">1</sng:param> 
    477                                         </sng:data> 
    478                                 </sng:attribute> 
    479                         </sng:element> 
    480                 </xsl:if> 
    481                 <xsl:if test="sm:emptyLeafTag"> 
    482                         <sng:element name="sc:emptyLeaf"> 
    483                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    484                                 <sng:optional> 
    485                                         <sng:attribute name="role"> 
    486                                                 <sng:choice> 
    487                                                         <xsl:for-each select="sm:emptyLeafTag"> 
    488                                                                 <sng:value> 
    489                                                                         <xsl:value-of select="@role"/> 
    490                                                                 </sng:value> 
    491                                                         </xsl:for-each> 
    492                                                 </sng:choice> 
    493                                         </sng:attribute> 
    494                                 </sng:optional> 
    495                                 <xsl:apply-templates select="sm:meta" mode="title"/> 
    496                         </sng:element> 
    497                 </xsl:if> 
    498                 <xsl:if test="sm:inlineImgTag"> 
    499                         <sng:element name="sc:inlineImg"> 
    500                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    501                                 <sng:optional> 
    502                                         <sng:attribute name="role"> 
    503                                                 <sng:choice> 
    504                                                         <xsl:for-each select="sm:inlineImgTag"> 
    505                                                                 <sng:value> 
    506                                                                         <xsl:value-of select="@role"/> 
    507                                                                 </sng:value> 
    508                                                         </xsl:for-each> 
    509                                                 </sng:choice> 
    510                                         </sng:attribute> 
    511                                 </sng:optional> 
    512                                 <sng:attribute name="sc:refUri"> 
    513                                         <sng:data type="string"> 
    514                                                 <sng:param name="minLength">1</sng:param> 
    515                                         </sng:data> 
    516                                 </sng:attribute> 
    517                                 <sng:text/> 
    518                         </sng:element> 
    519                 </xsl:if> 
    520                 <xsl:if test="sm:noteTag"> 
    521                         <sng:element name="sc:note"> 
    522                                 <sng:ref name="{resultatAgent('//codeModel')}_id"/> 
    523                                 <sng:optional> 
    524                                         <sng:attribute name="role"> 
    525                                                 <sng:choice> 
    526                                                         <xsl:for-each select="sm:noteTag"> 
    527                                                                 <sng:value> 
    528                                                                         <xsl:value-of select="@role"/> 
    529                                                                 </sng:value> 
    530                                                         </xsl:for-each> 
    531                                                 </sng:choice> 
    532                                         </sng:attribute> 
    533                                 </sng:optional> 
    534                                 <sng:ref name="{resultatAgent('//codeModel')}"/> 
    535                         </sng:element> 
    536                 </xsl:if> 
    537         </xsl:template> 
    538          
    539         <xsl:template match="sm:meta[@usage='optional']" mode="title"> 
     440                        </xsl:otherwise> 
     441                </xsl:choose> 
     442        </xsl:template> 
     443         
     444        <xsl:template match="sm:meta[@usage='optional']"> 
    540445                <sng:optional> 
    541446                        <sng:ref name="{resultatAgent(concat('@', getIdFromPath(@sc:refUri), '/codeModel'))}"/> 
    542447                </sng:optional> 
    543448        </xsl:template> 
    544         <xsl:template match="sm:meta" mode="title"> 
     449        <xsl:template match="sm:meta"> 
    545450                <sng:ref name="{resultatAgent(concat('@', getIdFromPath(@sc:refUri), '/codeModel'))}"/> 
    546451        </xsl:template> 
  • trunk/Wsp_Modeling/spaces/gen/modelBuilder/bs.doss/sm_textPrim/xedUi/text.xbl.xml.xsl

    r13648 r13657  
    185185                                <image src="chrome://scenarixedlib/content/libUiExtra/scRichText/img/insertChar.png"/> 
    186186                        </xsl:if> 
     187                        <xsl:if test="$isBlockTags or $isInlineTags"> 
     188                                <image src="chrome://scenarixedlib/content/libUiExtra/scRichText/img/link.png"/> 
     189                                <image src="chrome://scenarixedlib/content/libUiExtra/scRichText/img/link_off.png"/> 
     190                                <image src="chrome://scenarixedlib/content/libUiExtra/scRichText/img/meta.png"/> 
     191                                <image src="chrome://scenarixedlib/content/libUiExtra/scRichText/img/meta_off.png"/> 
     192                        </xsl:if> 
    187193                </resources> 
    188194                <implementation> 
     
    250256}; 
    251257<!-- #### PARAGRAPHES #### --> 
     258<xsl:variable name="vParaTagList" select="sm:blockTags/sm:paraTag"/> 
    252259vClasses.PARA = { 
    253260        type : 5, 
     
    261268        isDescForbidden : function(pAncHtmlNode, pDescClass, pDescRole) { 
    262269                return vClasses[pAncHtmlNode.parentNode.nodeName].isDescForbidden(pAncHtmlNode.parentNode, pDescClass, pDescRole); 
    263         } 
    264 }; 
    265 <xsl:if test="sm:blockTags"> 
    266 vClasses.PARA.isClonable = true; 
    267 vClasses.PARA.getStructuralNodes = function(pNode){ 
    268                 switch(pNode.getAttribute("role")||"") { 
    269 <xsl:for-each select="sm:blockTags/sm:paraTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", _node:pNode};  
    270 </xsl:for-each> 
    271                 } 
    272                 return null; 
    273         }; 
    274 </xsl:if> 
     270        }<xsl:if test="$vParaTagList">, 
     271        isClonable : true, 
     272        getStructuralNodes : function(pNode){ 
     273                switch(pNode.getAttribute("role")||"") { 
     274<xsl:for-each select="$vParaTagList">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
     275</xsl:for-each> 
     276                } 
     277                return null; 
     278        } 
     279</xsl:if> 
     280}; 
    275281vClasses._xml.para = vClasses.PARA; 
    276282 
     
    281287        isParaSibling : true, 
    282288        isSplitable : true, 
    283         getStructuralNodes : function(pNode){ 
    284 <xsl:if test="$vSimpleLists"> 
    285                 switch(pNode.getAttribute("role")||"") { 
    286 <xsl:for-each select="$vSimpleLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", _node:pNode};  
    287 </xsl:for-each> 
    288                 } 
    289 </xsl:if> 
     289        getStructuralNodes : function(pNode){<xsl:if test="$vSimpleLists"> 
     290                switch(pNode.getAttribute("role")||"") { 
     291<xsl:for-each select="$vSimpleLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
     292</xsl:for-each> 
     293                }</xsl:if> 
    290294                return null; 
    291295        }, 
     
    301305                return 0; 
    302306        }, 
    303         isDefined : function(pNode){ 
    304 <xsl:if test="$vSimpleLists"> 
     307        isDefined : function(pNode){<xsl:if test="$vSimpleLists"> 
    305308                switch(pNode.getAttribute("role")||"") { 
    306309<xsl:for-each select="$vSimpleLists">case "<xsl:value-of select="@role"/>" :   
    307310</xsl:for-each> 
    308311                        return true; 
    309                 } 
    310 </xsl:if> 
     312                }</xsl:if> 
    311313                return false; 
    312314        }, 
     
    332334<xsl:if test="$vSimpleLists"> 
    333335                switch(pNode.parentNode.getAttribute("role")||"") { 
    334 <xsl:for-each select="$vSimpleLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(sm:memberTag/@name)"/>", _node:pNode};  
     336<xsl:for-each select="$vSimpleLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(sm:memberTag/@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', sm:memberTag)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', sm:memberTag)"/>", </xsl:if>_node:pNode};  
    335337</xsl:for-each> 
    336338                } 
     
    366368<xsl:if test="$vItemizedLists"> 
    367369                switch(pNode.getAttribute("role")||"") { 
    368 <xsl:for-each select="$vItemizedLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", _node:pNode};  
     370<xsl:for-each select="$vItemizedLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
    369371</xsl:for-each> 
    370372                } 
     
    415417<xsl:if test="$vOrderedLists"> 
    416418                switch(pNode.getAttribute("role")||"") { 
    417 <xsl:for-each select="$vOrderedLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", _node:pNode};  
     419<xsl:for-each select="$vOrderedLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
    418420</xsl:for-each> 
    419421                } 
     
    462464        getStructuralNodes : function(pNode){ 
    463465<xsl:if test="$vItemizedLists or $vOrderedLists"> 
    464         if(pNode.parentNode.localName=="UL"){ 
     466        if(pNode.parentNode.localName=="UL"){<xsl:if test="$vItemizedLists"> 
    465467                switch(pNode.parentNode.getAttribute("role")||"") { 
    466 <xsl:for-each select="$vItemizedLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(sm:listItemTag/@name)"/>", _node:pNode};  
    467 </xsl:for-each> 
    468                 } 
    469         } else { 
     468<xsl:for-each select="$vItemizedLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(sm:listItemTag/@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', sm:listItemTag)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', sm:listItemTag)"/>", </xsl:if>_node:pNode};  
     469</xsl:for-each> 
     470                }</xsl:if> 
     471        } else {<xsl:if test="$vOrderedLists"> 
    470472                switch(pNode.parentNode.getAttribute("role")||"") { 
    471 <xsl:for-each select="$vOrderedLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(sm:listItemTag/@name)"/>", _node:pNode};  
    472 </xsl:for-each> 
    473                 }        
    474         } 
    475 </xsl:if> 
    476                 return null; 
     473<xsl:for-each select="$vOrderedLists">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(sm:listItemTag/@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', sm:listItemTag)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', sm:listItemTag)"/>", </xsl:if>_node:pNode};  
     474</xsl:for-each> 
     475                }</xsl:if> 
     476        } 
     477</xsl:if> 
     478        return null; 
    477479        }, 
    478480        isDefined : function(pNode){ 
     
    573575<xsl:if test="$vTables"> 
    574576                switch(pNode.getAttribute("role")||"") { 
    575 <xsl:for-each select="$vTables">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", _node:pNode};  
     577<xsl:for-each select="$vTables">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
    576578</xsl:for-each> 
    577579                } 
     
    755757<xsl:for-each select="$vTables">case "<xsl:value-of select="@role"/>" :  
    756758                        switch(pNode.getAttribute("role")||"") { 
    757                                 <xsl:for-each select="sm:rowTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", _node:pNode} 
     759                                <xsl:for-each select="sm:rowTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode} 
    758760</xsl:for-each> 
    759761                        } 
     
    805807<xsl:for-each select="$vTables">case "<xsl:value-of select="@role"/>" :  
    806808                        switch(pNode.getAttribute("role")||"") { 
    807                                 <xsl:for-each select="sm:cellTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", _node:pNode} 
     809                                <xsl:for-each select="sm:cellTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode} 
    808810</xsl:for-each> 
    809811                        } 
     
    847849}; 
    848850vClasses._xml.cell = vClasses.TD; 
    849  
    850  
     851<xsl:variable name="vExtBlockTagList" select="sm:blockTags/sm:extBlockTag"/> 
    851852vClasses.EXTBLOCK = { 
    852853        type : 6, 
     
    855856        isHighlightable : true, 
    856857        getStructuralNodes : function(pNode){ 
    857 <xsl:if test="boolean(sm:blockTags/sm:extBlockTag)"> 
     858<xsl:if test="$vExtBlockTagList"> 
    858859                switch(pNode.nodeType==1 ? pNode.getAttribute("role")||"" : pNode) { 
    859 <xsl:for-each select="sm:blockTags/sm:extBlockTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", hasLinkEditor:true, _node:pNode};  
    860 </xsl:for-each> 
    861                 } 
    862 </xsl:if> 
    863                 return null; 
    864         }, 
    865         getUrlLinkEditor : function(pNode){ 
    866 <xsl:if test="sm:blockTags/sm:extBlockTag"> 
    867                 switch(pNode.getAttribute("role")||"") { 
    868 <xsl:for-each select="sm:blockTags/sm:extBlockTag">case "<xsl:value-of select="@role"/>" : return "<xsl:value-of select="resultatAgent(concat('//extBlockProps_', @role, '.xul'), 'act:')"/>";  
    869 </xsl:for-each> 
    870                 } 
    871 </xsl:if> 
    872                 return null; 
    873         }, 
    874 <xsl:if test="sm:blockTags/sm:extBlockTag"> 
     860<xsl:for-each select="$vExtBlockTagList">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", hasLinkEditor:true, urlLinkEditor:"<xsl:value-of select="resultatAgent(concat('//extBlockProps_', @role, '.xul'), 'act:')"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
     861</xsl:for-each> 
     862                } 
     863</xsl:if> 
     864                return null; 
     865        }, 
     866<xsl:if test="$vExtBlockTagList"> 
    875867        regexpSgn : { 
    876 <xsl:for-each select="sm:blockTags/sm:extBlockTag">"<xsl:value-of select="@role"/>" : /<xsl:value-of select="concatExpr(sm:allowedModel, concat('.*', resultatAgent(concat('@', getIdFromPath(@sc:refUri), '/sgn')), '\b.*'), '|')"/>/, 
     868<xsl:for-each select="$vExtBlockTagList">"<xsl:value-of select="@role"/>" : /<xsl:value-of select="concatExpr(sm:allowedModel, concat('.*', resultatAgent(concat('@', getIdFromPath(@sc:refUri), '/sgn')), '\b.*'), '|')"/>/, 
    877869</xsl:for-each> 
    878870        }, 
    879871</xsl:if> 
    880872        hasCaption : function(pNode){ <!-- 0 : non, 1 : optionnel, 2 : required. --> 
    881 <xsl:if test="boolean(sm:blockTags/sm:extBlockTag)"> 
    882                 <xsl:variable name="vCaptions" select="sm:blockTags/sm:extBlockTag[sm:captionBlockTag]"/> 
     873<xsl:if test="$vExtBlockTagList"> 
     874                <xsl:variable name="vCaptions" select="$vExtBlockTagList[sm:captionBlockTag]"/> 
    883875                <xsl:if test="$vCaptions"> 
    884876                switch(pNode.getAttribute("role")||"") { 
     
    890882        }, 
    891883        isDefined : function(pNode){ 
    892 <xsl:if test="boolean(sm:blockTags/sm:extBlockTag)"> 
    893                 switch(pNode.getAttribute("role")||"") { 
    894 <xsl:for-each select="sm:blockTags/sm:extBlockTag">case "<xsl:value-of select="@role"/>" :   
     884<xsl:if test="$vExtBlockTagList"> 
     885                switch(pNode.getAttribute("role")||"") { 
     886<xsl:for-each select="$vExtBlockTagList">case "<xsl:value-of select="@role"/>" :   
    895887</xsl:for-each> 
    896888                        return true; 
     
    901893        getDefaultRole : function(pNode, pParentHtmlNode){ 
    902894                var vParentNode = pParentHtmlNode||pNode.parentNode; 
    903 <xsl:for-each select="sm:blockTags/sm:extBlockTag">if( ! vClasses[vParentNode.nodeName].isDescForbidden(vParentNode, this, "<xsl:value-of select="@role"/>")) return "<xsl:value-of select="@role"/>"; 
     895<xsl:for-each select="$vExtBlockTagList">if( ! vClasses[vParentNode.nodeName].isDescForbidden(vParentNode, this, "<xsl:value-of select="@role"/>")) return "<xsl:value-of select="@role"/>"; 
    904896</xsl:for-each> 
    905897                return null; 
     
    943935}; 
    944936vClasses._xml.captionBlock = vClasses.CAPTIONBLOCK; 
     937<xsl:variable name="vEmptyBlockTagList" select="sm:blockTags/sm:emptyBlockTag"/> 
    945938vClasses.EMPTYBLOCK = { 
    946939        type : 6, 
     
    949942        isHighlightable : true, 
    950943        getStructuralNodes : function(pNode){ 
    951 <xsl:if test="sm:blockTags/sm:emptyBlockTag"> 
    952                 switch(pNode.getAttribute("role")||"") { 
    953 <xsl:for-each select="sm:blockTags/sm:emptyBlockTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", _node:pNode}; 
     944<xsl:if test="$vEmptyBlockTagList"> 
     945                switch(pNode.getAttribute("role")||"") { 
     946<xsl:for-each select="$vEmptyBlockTagList">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode}; 
    954947</xsl:for-each> 
    955948                } 
     
    958951        }, 
    959952        isDefined : function(pNode){ 
    960 <xsl:if test="boolean(sm:blockTags/sm:emptyBlockTag)"> 
    961                 switch(pNode.getAttribute("role")||"") { 
    962 <xsl:for-each select="sm:blockTags/sm:emptyBlockTag">case "<xsl:value-of select="@role"/>" :   
     953<xsl:if test="$vEmptyBlockTagList"> 
     954                switch(pNode.getAttribute("role")||"") { 
     955<xsl:for-each select="$vEmptyBlockTagList">case "<xsl:value-of select="@role"/>" :   
    963956</xsl:for-each> 
    964957                        return true; 
     
    975968        getDefaultRole : function(pNode, pParentHtmlNode){ 
    976969                var vParentNode = pParentHtmlNode||pNode.parentNode; 
    977 <xsl:for-each select="sm:blockTags/sm:emptyBlockTag">if(! vClasses[vParentNode.nodeName].isDescForbidden(vParentNode, this, "<xsl:value-of select="@role"/>")) return "<xsl:value-of select="@role"/>"; 
     970<xsl:for-each select="$vEmptyBlockTagList">if(! vClasses[vParentNode.nodeName].isDescForbidden(vParentNode, this, "<xsl:value-of select="@role"/>")) return "<xsl:value-of select="@role"/>"; 
    978971</xsl:for-each> 
    979972                return null; 
     
    10361029--> 
    10371030<!-- #### INLINE #### --> 
     1031<xsl:variable name="vPhraseTagList" select="sm:inlineTags/sm:phraseTag"/> 
    10381032vClasses.PHRASE = { 
    10391033        type : 4, 
    10401034        isInlineSibling : true, 
    10411035        getStructuralNodes : function(pNode){ 
    1042 <xsl:if test="boolean(sm:inlineTags/sm:phraseTag)"> 
    1043                 switch(pNode.getAttribute("role")||"") { 
    1044 <xsl:for-each select="sm:inlineTags/sm:phraseTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", hasLinkEditor:true, _node:pNode};  
    1045 </xsl:for-each> 
    1046                 } 
    1047 </xsl:if> 
    1048                 return null; 
    1049         }, 
    1050         getUrlLinkEditor : function(pNode){ 
    1051 <xsl:if test="boolean(sm:inlineTags/sm:phraseTag)"> 
    1052                 switch(pNode.getAttribute("role")||"") { 
    1053 <xsl:for-each select="sm:inlineTags/sm:phraseTag">case "<xsl:value-of select="@role"/>" : return "<xsl:value-of select="resultatAgent(concat('//phraseProps_', @role, '.xul'), 'act:')"/>";  
     1036<xsl:if test="$vPhraseTagList"> 
     1037                switch(pNode.getAttribute("role")||"") { 
     1038<xsl:for-each select="$vPhraseTagList">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>",</xsl:if>_node:pNode};  
    10541039</xsl:for-each> 
    10551040                } 
     
    10581043        }, 
    10591044        isDefined : function(pNode){ 
    1060 <xsl:if test="boolean(sm:inlineTags/sm:phraseTag)"> 
    1061                 switch(pNode.getAttribute("role")||"") { 
    1062 <xsl:for-each select="sm:inlineTags/sm:phraseTag">case "<xsl:value-of select="@role"/>" :   
     1045<xsl:if test="$vPhraseTagList"> 
     1046                switch(pNode.getAttribute("role")||"") { 
     1047<xsl:for-each select="$vPhraseTagList">case "<xsl:value-of select="@role"/>" :   
    10631048</xsl:for-each> 
    10641049                        return true; 
     
    10751060}; 
    10761061vClasses._xml.phrase = vClasses.PHRASE; 
     1062<xsl:variable name="vULinkTagList" select="sm:inlineTags/sm:uLinkTag"/> 
    10771063vClasses.ULINK = { 
    10781064        type : 4, 
    10791065        isInlineSibling : true, 
    10801066        getStructuralNodes : function(pNode){ 
    1081 <xsl:if test="boolean(sm:inlineTags/sm:uLinkTag)"> 
     1067<xsl:if test="$vULinkTagList"> 
    10821068                switch(pNode.nodeType==1 ? pNode.getAttribute("role")||"" : pNode) { 
    1083 <xsl:for-each select="sm:inlineTags/sm:uLinkTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", hasLinkEditor:true, _node:pNode};  
    1084 </xsl:for-each> 
    1085                 } 
    1086 </xsl:if> 
    1087                 return null; 
    1088         }, 
    1089         getUrlLinkEditor : function(pNode){ 
    1090 <xsl:if test="boolean(sm:inlineTags/sm:uLinkTag)"> 
    1091                 switch(pNode.getAttribute("role")||"") { 
    1092 <xsl:for-each select="sm:inlineTags/sm:uLinkTag">case "<xsl:value-of select="@role"/>" : return "<xsl:value-of select="resultatAgent(concat('//uLinkProps_', @role, '.xul'), 'act:')"/>";  
     1069<xsl:for-each select="$vULinkTagList">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", hasLinkEditor:true, urlLinkEditor:"<xsl:value-of select="resultatAgent(concat('//uLinkProps_', @role, '.xul'), 'act:')"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
    10931070</xsl:for-each> 
    10941071                } 
     
    10971074        }, 
    10981075        isRefItem : function(pNode){ 
    1099 <xsl:if test="sm:inlineTags/sm:uLinkTag"> 
    1100                 switch(pNode.getAttribute("role")||"") { 
    1101 <xsl:for-each select="sm:inlineTags/sm:uLinkTag">case "<xsl:value-of select="@role"/>" : return <xsl:value-of select="si(sm:refItem, 'true', 'false')"/>;  
    1102 </xsl:for-each> 
    1103                 } 
    1104 </xsl:if> 
    1105                 return false; 
    1106         }, 
    1107 <xsl:if test="sm:inlineTags/sm:uLinkTag[sm:refItem]"> 
     1076<xsl:if test="$vULinkTagList"> 
     1077                switch(pNode.getAttribute("role")||"") { 
     1078<xsl:for-each select="$vULinkTagList">case "<xsl:value-of select="@role"/>" : return <xsl:value-of select="si(sm:refItem, 'true', 'false')"/>;  
     1079</xsl:for-each> 
     1080                } 
     1081</xsl:if> 
     1082                return false; 
     1083        }, 
     1084<xsl:if test="$vULinkTagList[sm:refItem]"> 
    11081085        regexpSgn : { 
    1109 <xsl:for-each select="sm:inlineTags/sm:uLinkTag[sm:refItem]">"<xsl:value-of select="@role"/>" : /<xsl:value-of select="concatExpr(sm:refItem/sm:allowedModel, concat('.*', resultatAgent(concat('@', getIdFromPath(@sc:refUri), '/sgn')), '\b.*'), '|')"/>/, 
     1086<xsl:for-each select="$vULinkTagList[sm:refItem]">"<xsl:value-of select="@role"/>" : /<xsl:value-of select="concatExpr(sm:refItem/sm:allowedModel, concat('.*', resultatAgent(concat('@', getIdFromPath(@sc:refUri), '/sgn')), '\b.*'), '|')"/>/, 
    11101087</xsl:for-each> 
    11111088        }, 
    11121089</xsl:if> 
    11131090        isDefined : function(pNode){ 
    1114 <xsl:if test="boolean(sm:inlineTags/sm:uLinkTag)"> 
    1115                 switch(pNode.getAttribute("role")||"") { 
    1116 <xsl:for-each select="sm:inlineTags/sm:uLinkTag">case "<xsl:value-of select="@role"/>" :   
     1091<xsl:if test="$vULinkTagList"> 
     1092                switch(pNode.getAttribute("role")||"") { 
     1093<xsl:for-each select="$vULinkTagList">case "<xsl:value-of select="@role"/>" :   
    11171094</xsl:for-each> 
    11181095                        return true; 
     
    11291106}; 
    11301107vClasses._xml.uLink = vClasses.ULINK; 
    1131 <xsl:if test="boolean(sm:inlineTags/sm:inlineStyleTag)"> 
     1108<xsl:variable name="vInlineStyleTagList" select="sm:inlineTags/sm:inlineStyleTag"/> 
    11321109vClasses.INLINESTYLE = { 
    11331110        type : 3, 
    11341111        isInlineSibling : true, 
    11351112        getStructuralNodes : function(pNode){ 
    1136 <xsl:if test="boolean(sm:inlineTags/sm:inlineStyleTag)"> 
    1137                 switch(pNode.getAttribute("role")||"") { 
    1138 <xsl:for-each select="sm:inlineTags/sm:inlineStyleTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", _node:pNode};  
     1113<xsl:if test="$vInlineStyleTagList"> 
     1114                switch(pNode.getAttribute("role")||"") { 
     1115<xsl:for-each select="$vInlineStyleTagList">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
    11391116</xsl:for-each> 
    11401117                } 
     
    11431120        }, 
    11441121        isDefined : function(pNode){ 
    1145 <xsl:if test="boolean(sm:inlineTags/sm:inlineStyleTag)"> 
    1146                 switch(pNode.getAttribute("role")||"") { 
    1147 <xsl:for-each select="sm:inlineTags/sm:inlineStyleTag">case "<xsl:value-of select="@role"/>" :   
     1122<xsl:if test="$vInlineStyleTagList"> 
     1123                switch(pNode.getAttribute("role")||"") { 
     1124<xsl:for-each select="$vInlineStyleTagList">case "<xsl:value-of select="@role"/>" :   
    11481125</xsl:for-each> 
    11491126                        return true; 
     
    11601137}; 
    11611138vClasses._xml.inlineStyle = vClasses.INLINESTYLE; 
    1162 </xsl:if> 
     1139<xsl:variable name="vTextLeafTagList" select="sm:inlineTags/sm:textLeafTag"/> 
    11631140vClasses.TEXTLEAF = { 
    11641141        type : 2, 
    11651142        isInlineSibling : true, 
    11661143        getStructuralNodes : function(pNode){ 
    1167 <xsl:if test="boolean(sm:inlineTags/sm:textLeafTag)"> 
    1168                 switch(pNode.getAttribute("role")||"") { 
    1169 <xsl:for-each select="sm:inlineTags/sm:textLeafTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", _node:pNode};  
     1144<xsl:if test="$vTextLeafTagList"> 
     1145                switch(pNode.getAttribute("role")||"") { 
     1146<xsl:for-each select="$vTextLeafTagList">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
    11701147</xsl:for-each> 
    11711148                } 
     
    11741151        }, 
    11751152        isDefined : function(pNode){ 
    1176 <xsl:if test="boolean(sm:inlineTags/sm:textLeafTag)"> 
    1177                 switch(pNode.getAttribute("role")||"") { 
    1178 <xsl:for-each select="sm:inlineTags/sm:textLeafTag">case "<xsl:value-of select="@role"/>" :   
     1153<xsl:if test="$vTextLeafTagList"> 
     1154                switch(pNode.getAttribute("role")||"") { 
     1155<xsl:for-each select="$vTextLeafTagList">case "<xsl:value-of select="@role"/>" :   
    11791156</xsl:for-each> 
    11801157                        return true; 
     
    11911168}; 
    11921169vClasses._xml.textLeaf = vClasses.TEXTLEAF; 
    1193  
     1170<xsl:variable name="vInlineImgTagList" select="sm:inlineTags/sm:inlineImgTag"/> 
    11941171vClasses.IMG = { 
    11951172        type : 1, 
     
    11981175        isHighlightable : true, 
    11991176        getStructuralNodes : function(pNode){ 
    1200 <xsl:if test="sm:inlineTags/sm:inlineImgTag"> 
     1177<xsl:if test="$vInlineImgTagList"> 
    12011178                switch(pNode.nodeType==1 ? pNode.getAttribute("role")||"" : pNode) { 
    1202 <xsl:for-each select="sm:inlineTags/sm:inlineImgTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", hasLinkEditor:true, _node:pNode};  
     1179<xsl:for-each select="$vInlineImgTagList">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", hasLinkEditor:true, urlLinkEditor:"<xsl:value-of select="resultatAgent(concat('//inlineImgProps_', @role, '.xul'), 'act:')"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
    12031180</xsl:for-each>} 
    12041181</xsl:if> 
    12051182                return null; 
    12061183        }, 
    1207         getUrlLinkEditor : function(pNode){ 
    1208 <xsl:if test="sm:inlineTags/sm:inlineImgTag"> 
    1209                 switch(pNode.getAttribute("role")||"") { 
    1210 <xsl:for-each select="sm:inlineTags/sm:inlineImgTag">case "<xsl:value-of select="@role"/>" : return "<xsl:value-of select="resultatAgent(concat('//inlineImgProps_', @role, '.xul'), 'act:')"/>";  
    1211 </xsl:for-each> 
    1212                 } 
    1213 </xsl:if> 
    1214                 return null; 
    1215         }, 
    1216 <xsl:if test="sm:inlineTags/sm:inlineImgTag"> 
     1184<xsl:if test="$vInlineImgTagList"> 
    12171185        regexpSgn : { 
    1218 <xsl:for-each select="sm:inlineTags/sm:inlineImgTag">"<xsl:value-of select="@role"/>" : /<xsl:value-of select="concatExpr(sm:allowedModel, concat('.*', resultatAgent(concat('@', getIdFromPath(@sc:refUri), '/sgn')), '\b.*'), '|')"/>/, 
     1186<xsl:for-each select="$vInlineImgTagList">"<xsl:value-of select="@role"/>" : /<xsl:value-of select="concatExpr(sm:allowedModel, concat('.*', resultatAgent(concat('@', getIdFromPath(@sc:refUri), '/sgn')), '\b.*'), '|')"/>/, 
    12191187</xsl:for-each> 
    12201188        }, 
    12211189</xsl:if> 
    12221190        isDefined : function(pNode){ 
    1223 <xsl:if test="sm:inlineTags/sm:inlineImgTag"> 
    1224                 switch(pNode.getAttribute("role")||"") { 
    1225 <xsl:for-each select="sm:inlineTags/sm:inlineImgTag">case "<xsl:value-of select="@role"/>" :   
     1191<xsl:if test="$vInlineImgTagList"> 
     1192                switch(pNode.getAttribute("role")||"") { 
     1193<xsl:for-each select="$vInlineImgTagList">case "<xsl:value-of select="@role"/>" :   
    12261194</xsl:for-each> 
    12271195                        return true; 
     
    12381206}; 
    12391207vClasses._xml.inlineImg = vClasses.IMG; 
    1240  
     1208<xsl:variable name="vNoteTagList" select="sm:inlineTags/sm:noteTag"/> 
    12411209vClasses.NOTE = { 
    12421210        type : 1, 
     
    12451213        isHighlightable : true, 
    12461214        getStructuralNodes : function(pNode){ 
    1247 <xsl:if test="sm:inlineTags/sm:noteTag"> 
     1215<xsl:if test="$vNoteTagList"> 
    12481216                switch(pNode.nodeType==1 ? pNode.getAttribute("role")||"" : pNode) { 
    1249 <xsl:for-each select="sm:inlineTags/sm:noteTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", hasLinkEditor:true, _node:pNode};  
    1250 </xsl:for-each> 
    1251                 } 
    1252 </xsl:if> 
    1253                 return null; 
    1254         }, 
    1255         getUrlLinkEditor : function(pNode){ 
    1256 <xsl:if test="sm:inlineTags/sm:noteTag"> 
    1257                 switch(pNode.getAttribute("role")||"") { 
    1258 <xsl:for-each select="sm:inlineTags/sm:noteTag">case "<xsl:value-of select="@role"/>" : return "<xsl:value-of select="resultatAgent(concat('../noteProps_', @role, '.xul'), 'act:')"/>";  
     1217<xsl:for-each select="$vNoteTagList">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", hasSubEditor:true, urlSubEditor:"<xsl:value-of select="resultatAgent(concat('../noteProps_', @role, '.xul'), 'act:')"/>", _node:pNode};  
    12591218</xsl:for-each> 
    12601219                } 
     
    12631222        }, 
    12641223        isDefined : function(pNode){ 
    1265 <xsl:if test="sm:inlineTags/sm:noteTag"> 
    1266                 switch(pNode.getAttribute("role")||"") { 
    1267 <xsl:for-each select="sm:inlineTags/sm:noteTag">case "<xsl:value-of select="@role"/>" :   
     1224<xsl:if test="$vNoteTagList"> 
     1225                switch(pNode.getAttribute("role")||"") { 
     1226<xsl:for-each select="$vNoteTagList">case "<xsl:value-of select="@role"/>" :   
    12681227</xsl:for-each> 
    12691228                        return true; 
     
    12801239}; 
    12811240vClasses._xml.note = vClasses.NOTE; 
    1282  
     1241<xsl:variable name="vObjectLeafTagList" select="sm:inlineTags/sm:noteTag"/> 
    12831242vClasses.OBJECTLEAF = { 
    12841243        type : 1, 
     
    12871246        isHighlightable : true, 
    12881247        getStructuralNodes : function(pNode){ 
    1289 <xsl:if test="sm:inlineTags/sm:objectLeafTag"> 
     1248<xsl:if test="$vObjectLeafTagList"> 
    12901249                switch(pNode.nodeType==1 ? pNode.getAttribute("role")||"" : pNode) { 
    1291 <xsl:for-each select="sm:inlineTags/sm:objectLeafTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", hasLinkEditor:true, _node:pNode};  
     1250<xsl:for-each select="$vObjectLeafTagList">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", hasLinkEditor:true, urlLinkEditor:"<xsl:value-of select="resultatAgent(concat('//objectLeafProps_', @role, '.xul'), 'act:')"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
    12921251</xsl:for-each>} 
    12931252</xsl:if> 
    12941253                return null; 
    12951254        }, 
    1296         getUrlLinkEditor : function(pNode){ 
    1297 <xsl:if test="sm:inlineTags/sm:objectLeafTag"> 
    1298                 switch(pNode.getAttribute("role")||"") { 
    1299 <xsl:for-each select="sm:inlineTags/sm:objectLeafTag">case "<xsl:value-of select="@role"/>" : return "<xsl:value-of select="resultatAgent(concat('//objectLeafProps_', @role, '.xul'), 'act:')"/>"; 
    1300 </xsl:for-each> 
    1301                 } 
    1302 </xsl:if> 
    1303                 return null; 
    1304         }, 
    1305 <xsl:if test="sm:inlineTags/sm:objectLeafTag"> 
     1255<xsl:if test="$vObjectLeafTagList"> 
    13061256        regexpSgn : { 
    1307 <xsl:for-each select="sm:inlineTags/sm:objectLeafTag[sm:refItem]">"<xsl:value-of select="si(@role, @role, '#default')"/>" : /<xsl:value-of select="concatExpr(sm:refItem/sm:allowedModel, concat('.*', resultatAgent(concat('@', getIdFromPath(@sc:refUri), '/sgn')), '\b.*'), '|')"/>/, 
     1257<xsl:for-each select="$vObjectLeafTagList[sm:refItem]">"<xsl:value-of select="si(@role, @role, '#default')"/>" : /<xsl:value-of select="concatExpr(sm:refItem/sm:allowedModel, concat('.*', resultatAgent(concat('@', getIdFromPath(@sc:refUri), '/sgn')), '\b.*'), '|')"/>/, 
    13081258</xsl:for-each> 
    13091259        }, 
    13101260</xsl:if> 
    13111261        isDefined : function(pNode){ 
    1312 <xsl:if test="sm:inlineTags/sm:objectLeafTag"> 
    1313                 switch(pNode.getAttribute("role")||"") { 
    1314 <xsl:for-each select="sm:inlineTags/sm:objectLeafTag">case "<xsl:value-of select="@role"/>" :   
     1262<xsl:if test="$vObjectLeafTagList"> 
     1263                switch(pNode.getAttribute("role")||"") { 
     1264<xsl:for-each select="$vObjectLeafTagList">case "<xsl:value-of select="@role"/>" :   
    13151265</xsl:for-each> 
    13161266                        return true; 
     
    13271277}; 
    13281278vClasses._xml.objectLeaf = vClasses.OBJECTLEAF; 
    1329  
     1279<xsl:variable name="vEmptyLeafTagList" select="sm:inlineTags/sm:emptyLeafTag"/> 
    13301280vClasses.EMPTYLEAF = { 
    13311281        type : 1, 
     
    13341284        isHighlightable : true, 
    13351285        getStructuralNodes : function(pNode){ 
    1336 <xsl:if test="sm:inlineTags/sm:emptyLeafTag"> 
     1286<xsl:if test="$vEmptyLeafTagList"> 
    13371287                switch(pNode.nodeType==1 ? pNode.getAttribute("role")||"" : pNode) { 
    1338 <xsl:for-each select="sm:inlineTags/sm:emptyLeafTag">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", _node:pNode};  
     1288<xsl:for-each select="$vEmptyLeafTagList">case "<xsl:value-of select="@role"/>" : return {title:"<xsl:value-of select="chaineProtegeJs(@name)"/>", <xsl:if test="resultatAgent('//isMetaEnabled', .)">hasSubEditor:true, urlSubEditor:"chrome://scenaricms/content/xed/richText/metaEditor.xul", urlXedMeta:"<xsl:value-of select="resultatAgent('//getUrlXedMeta', .)"/>", </xsl:if>_node:pNode};  
    13391289</xsl:for-each>} 
    13401290</xsl:if> 
     
    13421292        }, 
    13431293        isDefined : function(pNode){ 
    1344 <xsl:if test="sm:inlineTags/sm:emptyLeafTag"> 
    1345                 switch(pNode.getAttribute("role")||"") { 
    1346 <xsl:for-each select="sm:inlineTags/sm:emptyLeafTag">case "<xsl:value-of select="@role"/>" :   
     1294<xsl:if test="$vEmptyLeafTagList"> 
     1295                switch(pNode.getAttribute("role")||"") { 
     1296<xsl:for-each select="$vEmptyLeafTagList">case "<xsl:value-of select="@role"/>" :   
    13471297</xsl:for-each> 
    13481298                        return true; 
     
    20732023        </xsl:template> 
    20742024         
    2075         <xsl:template name="showProperties_toolbar" match="sm:showProperties" mode="toolbar">sXbl.action_showProperties(sParentNode, <xsl:call-template name="titleAction"><xsl:with-param name="pDefault">Propriétés...</xsl:with-param></xsl:call-template>, <xsl:call-template name="iconAction"><xsl:with-param name="pDefault">chrome://scenarixedlib/content/libUiExtra/scRichText/img/properties.png</xsl:with-param></xsl:call-template>, <xsl:call-template name="disabledIconAction"><xsl:with-param name="pDefault">chrome://scenarixedlib/content/libUiExtra/scRichText/img/properties_off.png</xsl:with-param></xsl:call-template>); 
    2076         </xsl:template> 
    2077         <xsl:template name="showProperties_menu" match="sm:showProperties" mode="menu">sXbl.action_showProperties(sParentNode, <xsl:call-template name="titleAction"><xsl:with-param name="pDefault">Propriétés...</xsl:with-param></xsl:call-template>, <xsl:call-template name="iconAction"><xsl:with-param name="pDefault">chrome://scenarixedlib/content/libUiExtra/scRichText/img/properties.png</xsl:with-param></xsl:call-template>, <xsl:call-template name="disabledIconAction"><xsl:with-param name="pDefault">chrome://scenarixedlib/content/libUiExtra/scRichText/img/properties_off.png</xsl:with-param></xsl:call-template>); 
     2025        <xsl:template name="showMeta_toolbar" match="sm:showMeta" mode="toolbar">sXbl.action_showMeta(sParentNode, <xsl:call-template name="titleAction"><xsl:with-param name="pDefault">Propriétés...</xsl:with-param></xsl:call-template>, <xsl:call-template name="iconAction"><xsl:with-param name="pDefault">chrome://scenarixedlib/content/libUiExtra/scRichText/img/meta.png</xsl:with-param></xsl:call-template>, <xsl:call-template name="disabledIconAction"><xsl:with-param name="pDefault">chrome://scenarixedlib/content/libUiExtra/scRichText/img/meta_off.png</xsl:with-param></xsl:call-template>); 
     2026        </xsl:template> 
     2027        <xsl:template name="showMeta_menu" match="sm:showMeta" mode="menu">sXbl.action_showMeta(sParentNode, <xsl:call-template name="titleAction"><xsl:with-param name="pDefault">Propriétés...</xsl:with-param></xsl:call-template>, <xsl:call-template name="iconAction"><xsl:with-param name="pDefault">chrome://scenarixedlib/content/libUiExtra/scRichText/img/meta.png</xsl:with-param></xsl:call-template>, <xsl:call-template name="disabledIconAction"><xsl:with-param name="pDefault">chrome://scenarixedlib/content/libUiExtra/scRichText/img/meta_off.png</xsl:with-param></xsl:call-template>); 
    20782028        </xsl:template> 
    20792029         
  • trunk/Wsp_Modeling/spaces/gen/modelBuilder/bs.doss/sm_wspDef.xml

    r13622 r13657  
    6666        --> 
    6767        <valeur code="isPublicClass"> 
    68                 <source type="xpathOnSrc-dynamique">count(sm:publicClasses//sm:class[getIdFromPath(@sc:refUri) = $vArguments]) != 0</source> 
     68                <source type="xpathOnSrc-dynamique">boolean(sm:publicClasses//sm:class[getIdFromPath(@sc:refUri) = $vArguments])</source> 
    6969        </valeur> 
    7070        <!--  
     
    7373        --> 
    7474        <valeur code="isInternalizableClass"> 
    75                 <source type="xpathOnSrc-dynamique">count(sm:overlays/sm:removeInternClass[getIdFromPath(@sc:refUri) = $vArguments]) = 0</source> 
     75                <source type="xpathOnSrc-dynamique">not(sm:overlays/sm:removeInternClass[getIdFromPath(@sc:refUri) = $vArguments])</source> 
    7676        </valeur> 
    7777        <!--  
  • trunk/Xul_Cms/chrome/content/scenaricms/widgets/block/gen/genblock.xbl.xml

    r12904 r13657  
    7474                                        function callbackGener(pEvent) { 
    7575                                                var vXml = pEvent.target.responseXML; 
    76                                                 //ut.debug("support:::::"+ut.getXml(vXml)); 
     76                                                ut.debug("support:::::"+ut.getXml(vXml)); 
    7777                                                if(vXml && vXml.documentElement && vXml.documentElement.localName=="support")   { 
    7878                                                        ut.execXsl(ut.getSharedDom(vXbl.getAttribute("xsl") || vXbl.fXsl), vXml, sGenBlock); 
  • trunk/Xul_XedLib/chrome/content/scenarixedlib/libUiBase/skin/xedUiBase.skin.css

    r12791 r13657  
    6565} 
    6666toolbarbutton{ 
    67         margin:0px;  
    68         padding:0px; 
     67        /*margin:0px;  
     68        padding:0px;*/ 
    6969} 
    7070ciItem, 
  • trunk/Xul_XedLib/chrome/content/scenarixedlib/libUiExtra/scRichText/textBase.xbl.xml

    r13648 r13657  
    449449                                                        var vHtmlChild = null; 
    450450                                                        var vStopChildren = false; 
    451                                                         switch(vXmlNode.localName){ 
    452                                                                 // #### Balises paragraphes #### 
    453                                                                 case "para" :  
    454                                                                 case "member" : 
    455                                                                 //case "variableList" :  
    456                                                                 //case "varListEntry" :  
    457                                                                 //case "term" :  
    458                                                                         if(validOptTag(vXmlNode, this.fClasses._xml[vXmlNode.localName])) { 
    459                                                                                 vHtmlChild = fctCreateElt.call(vHtmlDoc, vXmlNode.localName); 
    460                                                                                 copyAtts(vXmlNode, vHtmlChild); 
    461                                                                         } 
    462                                                                         break; 
    463                                                                 case "simpleList" :  
    464                                                                         vHtmlChild = fctCreateElt.call(vHtmlDoc, "dir"); 
    465                                                                         copyAtts(vXmlNode, vHtmlChild); 
    466                                                                         vHtmlChild = validRoleTag(vHtmlChild, this.fClasses.DIR); 
    467                                                                         break; 
    468                                                                 case "itemizedList" :  
    469                                                                         vHtmlChild = fctCreateElt.call(vHtmlDoc, "ul"); 
    470                                                                         copyAtts(vXmlNode, vHtmlChild); 
    471                                                                         vHtmlChild = validRoleTag(vHtmlChild, this.fClasses.UL); 
    472                                                                         break; 
    473                                                                 case "orderedList" :  
    474                                                                         vHtmlChild = fctCreateElt.call(vHtmlDoc, "ol"); 
    475                                                                         copyAtts(vXmlNode, vHtmlChild); 
    476                                                                         vHtmlChild = validRoleTag(vHtmlChild, this.fClasses.OL); 
    477                                                                         break; 
    478                                                                                                                                                                                                                                                                                                                                                                          
    479                                                                 case "listItem" :  
    480                                                                         if(validOptTag(vXmlNode, this.fClasses.LITEM)) { 
    481                                                                                 var vNodeName = "litem"; 
    482                                                                                 /* if(vXmlNode.parentNode != null && vXmlNode.parentNode.nodeType==1) { 
    483                                                                                         if(vXmlNode.parentNode.localName=="varListEntry") { 
    484                                                                                                 vNodeName = "varListItem"; 
    485                                                                                         } 
    486                                                                                 } else if(vHtmlNode.parentNode != null) { 
    487                                                                                         //Cas d'un copie avec un listitem en racine. 
    488                                                                                         if(vHtmlNode.parentNode.localName=="VARLISTENTRY") { 
    489                                                                                                 vNodeName = "varListItem"; 
    490                                                                                         } 
    491                                                                                 } */ 
    492                                                                                 vHtmlChild = fctCreateElt.call(vHtmlDoc, vNodeName); 
    493                                                                                 copyAtts(vXmlNode, vHtmlChild); 
    494                                                                         } 
    495                                                                         break; 
    496                                                                 case "title" :   
    497                                                                         if(validOptTag(vXmlNode, this.fClasses.TITLE)) { 
    498                                                                                 vHtmlChild = fctCreateElt.call(vHtmlDoc, vXmlNode.localName); 
    499                                                                                 copyAtts(vXmlNode, vHtmlChild); 
    500                                                                         } 
    501                                                                         break; 
    502                                                                          
    503                                                                 case "table" :   
    504                                                                         vHtmlChild = fctCreateElt.call(vHtmlDoc, vXmlNode.localName); 
    505                                                                         copyAtts(vXmlNode, vHtmlChild); 
    506                                                                         vHtmlChild = validRoleTag(vHtmlChild, this.fClasses.TABLE); 
    507                                                                         break; 
    508                                                                 case "caption" :  
    509                                                                         if(validOptTag(vXmlNode, this.fClasses.CAPTION)) { 
    510                                                                                 vHtmlChild = fctCreateElt.call(vHtmlDoc, vXmlNode.localName); 
    511                                                                                 copyAtts(vXmlNode, vHtmlChild); 
    512                                                                         } 
    513                                                                         break; 
    514                                                                 case "column" : 
    515                                                                         vHtmlChild = fctCreateElt.call(vHtmlDoc, "col"); 
    516                                                                         copyAtts(vXmlNode, vHtmlChild); 
    517                                                                         var vW = vXmlNode.getAttribute("width") || 50; 
    518                                                                         vHtmlChild.setAttribute("width", this.computeTDWidthFromScWidth(vW)); 
    519                                                                         vHtmlChild = validRoleTag(vHtmlChild, this.fClasses.COL); 
    520                                                                         vStopChildren = true; 
    521                                                                         break;  
    522                                                                 case "row" :  
    523                                                                         vHtmlChild = fctCreateElt.call(vHtmlDoc, "tr"); 
    524                                                                         copyAtts(vXmlNode, vHtmlChild); 
    525                                                                         vHtmlChild = validRoleTag(vHtmlChild, this.fClasses.TR); 
    526                                                                         break;  
    527                                                                 case "cell" :  
    528                                                                         vHtmlChild = fctCreateElt.call(vHtmlDoc, "td"); 
    529                                                                         copyAtts(vXmlNode, vHtmlChild); 
    530                                                                         var vVal = vXmlNode.getAttribute("rowSpan"); 
    531                                                                         if(vVal) vHtmlChild.setAttribute("rowSpan", vVal); 
    532                                                                         vVal = vXmlNode.getAttribute("colSpan"); 
    533                                                                         if(vVal) vHtmlChild.setAttribute("colSpan", vVal); 
    534                                                                         vHtmlChild = validRoleTag(vHtmlChild, this.fClasses.TD); 
    535                                                                         break;  
    536                                                                 case "extBlock" :        
    537                                                                         vHtmlChild = fctCreateElt.call(vHtmlDoc, vXmlNode.localName); 
    538                                                                         copyAtts(vXmlNode, vHtmlChild); 
    539                                                                         vHtmlChild = validRoleTag(vHtmlChild, this.fClasses.EXTBLOCK); 
    540                                                                         if(vHtmlChild) { 
    541                                                                                 var vRefUri = vXmlNode.getAttributeNS(SCNS, "refUri"); 
    542                                                                                 vHtmlChild.setAttribute("refUri", vRefUri); 
    543                                                                                 //this.loadExtBlock(vHtmlChild, vRefUri); 
    544                                                                         } 
    545                                                                         break; 
    546                                                                 case "captionBlock" :    
    547                                                                         if(validOptTag(vXmlNode, this.fClasses.CAPTIONBLOCK)) { 
    548                                                                                 vHtmlChild = fctCreateElt.call(vHtmlDoc, vXmlNode.localName); 
    549                                                                                 copyAtts(vXmlNode, vHtmlChild); 
    550                                                                         } 
    551                                                                         break; 
    552                                                                 case "emptyBlock" : 
    553                                                                         vHtmlChild = fctCreateElt.call(vHtmlDoc, vXmlNode.localName); 
    554                                                                         copyAtts(vXmlNode, vHtmlChild); 
    555                                                                         vHtmlChild = validRoleTag(vHtmlChild, this.fClasses.EMPTYBLOCK); 
    556                                                                         break; 
    557                                                                          
    558                                                                          
    559                                                                 // #### Balises inlines #### 
    560                                                                 case "phrase" : 
    561                                                                         if(validOptTag(vXmlNode, this.fClasses.PHRASE)) { 
    562                                                                                 vHtmlChild = fctCreateElt.call(vHtmlDoc, "phrase"); 
    563                                                                                 copyAtts(vXmlNode, vHtmlChild); 
    564                                                                                 if( ! vXmlNode.hasChildNodes()) vHtmlChild.appendChild(vHtmlDoc.createTextNode("")); 
    565                                                                         } 
    566                                                                         break; 
    567                                                                          
    568                                                                 case "inlineStyle" : 
    569                                                                         if(validOptTag(vXmlNode, this.fClasses.INLINESTYLE)) { 
    570                                                                                 vHtmlChild = fctCreateElt.call(vHtmlDoc, "inlineStyle"); 
    571                                                                                 if(vXmlNode.hasAttribute("role")) vHtmlChild.setAttribute("role", vXmlNode.getAttribute("role")); 
    572                                                                                 if( ! vXmlNode.hasChildNodes()) vHtmlChild.appendChild(vHtmlDoc.createTextNode("")); 
    573                                                                         } 
    574                                                                         break; 
    575                                                                          
    576                                                                 case "textLeaf" : 
    577                                                                         if(validOptTag(vXmlNode, this.fClasses.TEXTLEAF)) { 
    578                                                                                 vHtmlChild = fctCreateElt.call(vHtmlDoc, "textLeaf"); 
    579                                                                                 copyAtts(vXmlNode, vHtmlChild); 
    580                                                                                 if( ! vXmlNode.hasChildNodes()) vHtmlChild.appendChild(vHtmlDoc.createTextNode("")); 
    581                                                                         } 
    582                                                                         break; 
    583                                                                          
    584                                                                 case "uLink" : 
    585                                                                         if(validOptTag(vXmlNode, this.fClasses.ULINK)) { 
    586                                                                                 vHtmlChild = fctCreateElt.call(vHtmlDoc, "uLink"); 
    587                                                                                 copyAtts(vXmlNode, vHtmlChild); 
    588                                                                                 if(vXmlNode.hasAttribute("url")) { 
    589                                                                                         vHtmlChild.setAttribute("url", vXmlNode.getAttribute("url")); 
    590                                                                                 } else { 
    591                                                                                         var vRefUri = vXmlNode.getAttributeNS(SCNS, "refUri"); 
    592                                                                                         vHtmlChild.setAttribute("refUri", vRefUri); 
    593                                                                                         this.loadULink(vHtmlChild, vRefUri); 
    594                                                                                 } 
    595                                                                                 if( ! vXmlNode.hasChildNodes()) vHtmlChild.appendChild(vHtmlDoc.createTextNode("")); 
    596                                                                         } 
    597                                                                         break; 
    598                                                                  
    599                                                                 case "inlineImg" : 
    600                                                                         if(validOptTag(vXmlNode, this.fClasses.IMG)) { 
    601                                                                                 var vIcon = fctCreateElt.call(vHtmlDoc, "img"); 
    602                                                                                 copyAtts(vXmlNode, vIcon);