Changeset 6510


Ignore:
Timestamp:
09/11/06 18:44:23 (5 years ago)
Author:
anp
Message:

meilleure gestion du style des WTable : prise en compte du renommage des styles par openOffice

Location:
trunk/Wsp_Modeling/spaces/gen/modelBuilder/bs.doss/sm_dataFormOdTransf
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Wsp_Modeling/spaces/gen/modelBuilder/bs.doss/sm_dataFormOdTransf/getContent.xsl.xsl

    r6349 r6510  
    8484         **--> 
    8585        <xsl0:template match="sm:WTable" mode="mContent"> 
    86                 <xsl0:variable name="vStyle_table" select="resultatAgent('//agentTemplateScData', concat($vCodeTransformer, concat('/', @style, '/table/getOdStyleName')))"/> 
     86                <xsl0:variable name="vTableDom" select="computeNodeAgent(concat(resultatAgent('//agentTemplateScData', concat($vCodeTransformer, '/', @style, '/blocks.contentFile/table')), '/getContent'))"/> 
     87                <xsl0:variable name="vDefaultStyle_table" select="resultatAgent('//agentTemplateScData', concat($vCodeTransformer, concat('/', @style, '/table/getOdStyleName')))"/> 
    8788                <xsl:variable name="vName"><xsl:value-of select="local-name()"/></xsl:variable> 
    88                 <table:table table:name="{{$vName}}" table:style-name="{$vStyle_table}"> 
     89                <table:table table:name="{{$vName}}" table:style-name="{si($vTableDom, $vTableDom/@table:style-name, concat($vDefaultStyle_table, ''))}"> 
    8990                        <!-- déclaration des colonnes. On suppose que la première ligne donne le nb de colonnes  --> 
    9091                        <xsl0:variable name="vPosRow" select="java:com.scenari.s.fw.utils.HDouble.new()"/> 
     
    9495                                        <xsl0:variable name="vPosCol" select="java:com.scenari.s.fw.utils.HDouble.new()"/> 
    9596                                        <xsl0:for-each select=".//sm:WTableCell"> 
    96                                                 <xsl0:variable name="vCurrentPosCol"><xsl0:number value="java:hIncreaseOne($vPosCol)" format="A"/></xsl0:variable> 
    97                                                 <table:table-column table:style-name="{$vStyle_table}.{$vCurrentPosCol}"/> 
     97                                                <xsl0:variable name="vCurrentPosCol_num"><xsl0:value-of select="java:hIncreaseOne($vPosCol)"/></xsl0:variable> 
     98                                                <xsl0:variable name="vCurrentPosCol"><xsl0:number value="$vCurrentPosCol_num" format="A"/></xsl0:variable> 
     99                                                <table:table-column table:style-name="{si($vTableDom, $vTableDom/table:table-column[number($vCurrentPosCol_num)]/@table:style-name, concat($vDefaultStyle_table, '.', $vCurrentPosCol))}"/> 
    98100                                        </xsl0:for-each> 
    99101                                </xsl0:if> 
     
    104106        </xsl0:template> 
    105107        <xsl0:template match="sm:WTableRow" mode="mContent"> 
    106                 <xsl0:variable name="vTableStyle" select="ancestor::sm:WTable[1]/@style"/> 
    107                 <xsl0:variable name="vPosRow" select="count(preceding::sm:WTableRow[ancestor::sm:WTable[1]/@style = $vTableStyle])+1"/> 
     108                <xsl0:variable name="vStyleCode" select="ancestor::sm:WTable[1]/@style"/> 
     109                <xsl0:variable name="vTableDom" select="computeNodeAgent(concat(resultatAgent('//agentTemplateScData', concat($vCodeTransformer, '/', $vStyleCode, '/blocks.contentFile/table')), '/getContent'))"/> 
     110                <xsl0:variable name="vPosRow" select="count(preceding::sm:WTableRow[ancestor::sm:WTable[1]/@style = $vStyleCode])+1"/> 
    108111                <xsl0:variable name="vPosRow_format"><xsl0:number value="$vPosRow" format="1"/></xsl0:variable> 
    109                 <xsl0:variable name="vStyle_table" select="resultatAgent('//agentTemplateScData', concat($vCodeTransformer, concat('/', $vTableStyle, '/table/getOdStyleName')))"/> 
    110                 <table:table-row table:style-name="{$vStyle_table}.{$vPosRow_format}"> 
     112                <xsl0:variable name="vDefaultStyle_table" select="resultatAgent('//agentTemplateScData', concat($vCodeTransformer, concat('/', $vStyleCode, '/table/getOdStyleName')))"/> 
     113                <table:table-row table:style-name="{si($vTableDom, $vTableDom/table:table-row[number($vPosRow)]/@table:style-name, concat($vDefaultStyle_table, '.', $vPosRow_format))}"> 
    111114                        <xsl0:apply-templates mode="mContent"/> 
    112115                </table:table-row> 
    113116        </xsl0:template> 
    114117        <xsl0:template match="sm:WTableCell" mode="mContent"> 
    115                 <xsl0:variable name="vTableStyle" select="ancestor::sm:WTable[1]/@style"/> 
    116                 <xsl0:variable name="vTableRowStyle" select="ancestor::sm:WTableRow[1]/@id"/> 
    117                 <xsl0:variable name="vPosRow" select="count(preceding::sm:WTableRow[ancestor::sm:WTable[1]/@style = $vTableStyle])+1"/> 
     118                <xsl0:variable name="vStyleCode" select="ancestor::sm:WTable[1]/@style"/> 
     119                <xsl0:variable name="vTableDom" select="computeNodeAgent(concat(resultatAgent('//agentTemplateScData', concat($vCodeTransformer, '/', $vStyleCode, '/blocks.contentFile/table')), '/getContent'))"/> 
     120                <xsl0:variable name="vTableRowId" select="ancestor::sm:WTableRow[1]/@id"/> 
     121                <xsl0:variable name="vPosRow" select="count(preceding::sm:WTableRow[ancestor::sm:WTable[1]/@style = $vStyleCode])+1"/> 
    118122                <xsl0:variable name="vPosRow_format"><xsl0:number value="$vPosRow" format="1"/></xsl0:variable> 
    119                 <xsl0:variable name="vPosCol" select="count(preceding::sm:WTableCell[ancestor::sm:WTableRow[1]/@id = $vTableRowStyle])+1"/> 
     123                <xsl0:variable name="vPosCol" select="count(preceding::sm:WTableCell[ancestor::sm:WTableRow[1]/@id = $vTableRowId])+1"/> 
    120124                <xsl0:variable name="vPosCol_format"><xsl0:number value="$vPosCol" format="A"/></xsl0:variable> 
    121                 <xsl0:variable name="vStyle_table" select="resultatAgent('//agentTemplateScData', concat($vCodeTransformer, concat('/', $vTableStyle, '/table/getOdStyleName')))"/> 
    122                 <table:table-cell table:style-name="{$vStyle_table}.{$vPosCol_format}{$vPosRow_format}"><!-- office:value-type="string" --> 
     125                <xsl0:variable name="vDefaultStyle_table" select="resultatAgent('//agentTemplateScData', concat($vCodeTransformer, concat('/', $vStyleCode, '/table/getOdStyleName')))"/> 
     126                <table:table-cell table:style-name="{si($vTableDom, $vTableDom/table:table-row[number($vPosRow)]/table:table-cell[number($vPosCol)]/@table:style-name, concat($vDefaultStyle_table, '.', $vPosCol_format, $vPosRow_format))}"><!-- office:value-type="string" --> 
    123127                        <xsl0:for-each select="*"> 
    124128                                <xsl0:apply-templates select="." mode="mContent"/> 
  • trunk/Wsp_Modeling/spaces/gen/modelBuilder/bs.doss/sm_dataFormOdTransf/styles/widgets/block_WTable.xml

    r6184 r6510  
    8787                </valeur> 
    8888                <valeur code="structIdTScDataBlock"> 
    89                         <source type="xpath-dynamique">resultatAgent('//agentTemplateScData', concat(resultatAgent('//codeTransformer'), '/', resultatAgent('../code'), '/id'))</source> 
     89                        <source type="xpath-dynamique">resultatAgent('//agentTemplateScData', concat(resultatAgent('//codeTransformer'), '/', resultatAgent('../code'), '/getId'))</source> 
    9090                </valeur> 
    9191                <redirect code="agentResolver"> 
     
    129129                                <valeur code="name"><source type="xpath-dynamique">encodeNameOd(resultatAgent('../elementName'))</source></valeur> 
    130130                        </set> 
    131                         <!--set code="para"> 
    132                                 <valeur code="elementName"><source type="xpath-dynamique">concat(resultatAgent('../../../codeBlockOd'), ' > ')</source></valeur> 
    133                                 <valeur code="displayName"><source type="xpath-dynamique">chaineProtegeAttHtml(resultatAgent('../elementName'))</source></valeur> 
    134                                 <valeur code="name"><source type="xpath-dynamique">encodeNameOd(resultatAgent('../elementName'))</source></valeur> 
    135                         </set--> 
    136131                </set> 
    137132                 
  • trunk/Wsp_Modeling/spaces/gen/modelBuilder/bs.doss/sm_dataFormOdTransf/styles/widgets/block_WTable_contentFileGetBody.xsl

    r6184 r6510  
    6262         *  Root 
    6363         **--> 
     64         
    6465        <xsl:template match="sm:WTable"> 
    65                 <table:table table:name="{resultatAgent('../../stResolver/table/displayName')}" table:style-name="{resultatAgent('../../stResolver/table/name')}"> 
     66                <xsl:variable name="vTableDom" select="computeNodeAgent(concat(resultatAgent('../../agentResolver', 'blocks.contentFile/table'), '/getContent'))"/> 
     67                <toto>ICI</toto> 
     68                <table:table table:name="{resultatAgent('../../stResolver/table/name')}" table:style-name="{si(boolean($vTableDom), $vTableDom/@table:style-name, resultatAgent('../../stResolver/table/name'))}"> 
    6669                        <xsl:variable name="vPosRow" select="java:com.scenari.s.fw.utils.HDouble.new()"/> 
    6770                        <xsl:for-each select=".//sm:WTableRow"> 
     
    7174                                        <xsl:variable name="vPosCol" select="java:com.scenari.s.fw.utils.HDouble.new()"/> 
    7275                                        <xsl:for-each select=".//sm:WTableCell"> 
    73                                                 <xsl:variable name="vCurrentPosCol"><xsl:number value="java:hIncreaseOne($vPosCol)" format="A"/></xsl:variable> 
    74                                                 <table:table-column table:style-name="{resultatAgent('../../stResolver/table/name')}.{$vCurrentPosCol}"/> 
     76                                                <xsl:variable name="vCurrentPosCol_num"><xsl:value-of select="java:hIncreaseOne($vPosCol)"/></xsl:variable> 
     77                                                <xsl:variable name="vCurrentPosCol"><xsl:number value="$vCurrentPosCol_num" format="A"/></xsl:variable> 
     78                                                <table:table-column table:style-name="{si(boolean($vTableDom), $vTableDom/table:table-column[number($vCurrentPosCol_num)]/@table:style-name, concat(resultatAgent('../../stResolver/table/name'), '.', $vCurrentPosCol))}"/> 
    7579                                        </xsl:for-each> 
    7680                                </xsl:if> 
    7781                                <!-- style des lignes --> 
    78                                 <table:table-row table:style-name="{resultatAgent('../../stResolver/table/name')}.{$vCurrentPosRow}"> 
     82                                <table:table-row table:style-name="{si(boolean($vTableDom), $vTableDom/table:table-row[number($vCurrentPosRow)]/@table:style-name, concat(resultatAgent('../../stResolver/table/name'), '.', $vCurrentPosRow))}"> 
    7983                                        <xsl:variable name="vPosCell" select="java:com.scenari.s.fw.utils.HDouble.new()"/> 
    8084                                        <xsl:for-each select=".//sm:WTableCell"> 
    8185                                                <!-- style des cellules --> 
    82                                                 <xsl:variable name="vCurrentPosCell"><xsl:number value="java:hIncreaseOne($vPosCell)" format="A"/></xsl:variable> 
    83                                                 <table:table-cell table:style-name="{resultatAgent('../../stResolver/table/name')}.{$vCurrentPosCell}{$vCurrentPosRow}"><!-- office:value-type="string" --> 
     86                                                <xsl:variable name="vCurrentPosCell_num"><xsl:value-of select="java:hIncreaseOne($vPosCell)"/></xsl:variable> 
     87                                                <xsl:variable name="vCurrentPosCell"><xsl:number value="$vCurrentPosCell_num" format="A"/></xsl:variable> 
     88                                                <table:table-cell table:style-name="{si(boolean($vTableDom), $vTableDom/table:table-row[number($vCurrentPosRow)]/table:table-cell[number($vCurrentPosCell_num)]/@table:style-name, concat(resultatAgent('../../stResolver/table/name'), '.', $vCurrentPosCell, $vCurrentPosRow))}"><!-- office:value-type="string" --> 
    8489                                                        <xsl:apply-templates select=".//sm:WParagraph | .//sm:WBlock"/> 
    8590                                                </table:table-cell> 
  • trunk/Wsp_Modeling/spaces/gen/modelBuilder/bs.doss/sm_dataFormOdTransf/styles/widgets/block_WTable_dataFileGetData.xsl

    r6184 r6510  
    5656        <xsl:template match="sm:WTable"> 
    5757                <block version="{resultatAgent('../../version')}" code="{resultatAgent('../../code')}" refOdName="{resultatAgent('../../codeBlockOd')}" widget="{resultatAgent('../../widgetName')}" id="{resultatAgent('../../structId')}"> 
    58                         <style code="table" refOdStyleName="{resultatAgent('../../stResolver/table/name')}"/> 
     58                        <style code="table" refOdStyleName="{resultatAgent('../../stResolver/table/name')}" refOdName="{resultatAgent('../../stResolver/table/name')}"/> 
    5959                        <xsl:variable name="vPosRow" select="java:com.scenari.s.fw.utils.HDouble.new()"/> 
    6060                        <xsl:for-each select=".//sm:WTableRow"> 
     
    7777                                </xsl:for-each> 
    7878                        </xsl:for-each> 
     79                        <stylesContent/> 
    7980                </block> 
    8081        </xsl:template> 
Note: See TracChangeset for help on using the changeset viewer.