Changeset 19613


Ignore:
Timestamp:
02/01/12 15:21:39 (4 months ago)
Author:
anp
Message:

Ajout ribbon "externalItem"

Location:
trunk/Xul_Wsp/content/Wsp/widgets/ribbon
Files:
7 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Xul_Wsp/content/Wsp/widgets/ribbon/details/details.xbl.css

    r19423 r19613  
    3939@charset "UTF-8"; 
    4040 
     41hbox[anonid=headTiBlock]{ 
     42        margin-top : 3px;        
     43} 
    4144 
    4245/* Titre */ 
  • trunk/Xul_Wsp/content/Wsp/widgets/ribbon/details/details.xbl.xml

    r19576 r19613  
    5353                </resources> 
    5454                <content orient="vertical" flex="1" expanded="false"> 
    55                         <xul:hbox anonid="headTiBlock" align="center" flex="1"> 
     55                        <xul:hbox anonid="headTiBlock" align="center"> 
    5656                                <xul:image anonid="icon"/> 
    5757                                <xul:description anonid="title" crop="end" flex="1"/> 
  • trunk/Xul_Wsp/content/Wsp/widgets/ribbon/ribbon.xbl.xml

    r19576 r19613  
    9090                                                                window : window, 
    9191                                                                scWsp : vUriobject.getWsp(), 
     92                                                                uriObject : vUriobject, 
    9293                                                                fullUri :vUriobject.getFullUri(), 
    9394                                                                shortDesc : vUriobject.getShortDesc() 
     
    269270        </binding> 
    270271         
    271          
    272         <!-- 
    273         TODO : gérer dans des ribbonArea dédiées, ou dans le ribbonArea "details" les cas ownerItem et externalItem 
    274         var vFullUri = this.fUriObject.getFullUri(); 
    275         var vIndent = 0; 
    276         while(item.isUriInIISpace(vFullUri)) { 
    277                 vFullUri = item.getParentOwnerUriItemFromIISpace(vFullUri); 
    278                 vIndent++; 
    279                 var vOwnerItemBox = document.createElementNS(dom.XULNS, "ownerItem"); 
    280                 vOwnerItemBox.setAttribute("fullUri", vFullUri); 
    281                 var vContainer = document.getAnonymousElementByAttribute(this, "anonid", "headTiBlock").parentNode; 
    282                 vContainer.insertBefore(vOwnerItemBox, vContainer.firstElementChild); 
    283         } 
    284         if(item.isSrcUriExternal(this.fUriObject.getSrcUri())){ 
    285                 vIndent++; 
    286                 var vExternalItemBox = document.createElementNS(dom.XULNS, "externalItem"); 
    287                 var vContainer = document.getAnonymousElementByAttribute(this, "anonid", "headTiBlock").parentNode; 
    288                 vContainer.insertBefore(vExternalItemBox, vContainer.firstElementChild); 
    289         } 
    290         if(vIndent>0) { 
    291                 var vNode = document.getAnonymousElementByAttribute(this, "anonid", "headTiBlock") 
    292                 while(vIndent>0) { 
    293                         vNode.style.marginLeft = vIndent + "em"; 
    294                         vNode = vNode.previousElementSibling; 
    295                         vIndent = vIndent - 1; 
    296                 } 
    297         } 
    298          
    299         <binding id="ownerItem"> 
    300                 <resources> 
    301                         <stylesheet src="head.css"/> 
    302                 </resources> 
    303                 <content orient="vertical"> 
    304                         <xul:box align="center"> 
    305                                 <xul:image class="headIcon"/> 
    306                                 <xul:description class="headTitle" flex="1" style="cursor: pointer;">...</xul:description> 
    307                         </xul:box> 
    308                 </content> 
    309                 <implementation> 
    310                         <field name="fUriObject">uriObj.searchUriObject(this)</field> 
    311                         <constructor> 
    312                                 var vFullUri = this.getAttribute("fullUri"); 
    313                                 this.fUriObject.loadShortDesc(wsp.extractSrcUriFromFullUri(vFullUri), this.cbLoadShortDesc, this); 
    314                                 this.fUriObject.addUpdateListener(this, vFullUri); 
    315                         </constructor> 
    316                         <destructor> 
    317                                 this.fUriObject.removeUpdateListener(this, this.getAttribute("fullUri")); 
    318                         </destructor> 
    319                         <method name="cbLoadShortDesc"> 
    320                                 <parameter name="pShortDesc"/> 
    321                                 <parameter name="pCdError"/> 
    322                                 <body><![CDATA[ 
    323                                         this.redraw(pShortDesc); 
    324                                 ]]></body> 
    325                         </method> 
    326                         <method name="redraw"> 
    327                                 <parameter name="pShortDesc"/> 
    328                                 <body><![CDATA[ 
    329                                 try { 
    330                                         var vTitle, vIcon; 
    331                                         if(pShortDesc) { 
    332                                                 vTitle = pShortDesc.itTi || item.getUiLeafNameFromSrcUri(pShortDesc.srcUri, extPoints, pShortDesc); 
    333                                                 var vPack = pack.getPack(pShortDesc.itPack); 
    334                                                 vIcon = item.getUrlIcon(vPack.getIcon(pShortDesc.itModel, pShortDesc), pShortDesc.itSt); 
    335                                         } else { 
    336                                                 vTitle = "?"; 
    337                                                 vIcon = pack.getPack("").getIcon(""); 
    338                                         } 
    339                                          
    340                                         var vNode = document.getAnonymousElementByAttribute(this, "class", "headTitle"); 
    341                                         while(vNode.hasChildNodes()) vNode.removeChild(vNode.lastChild); 
    342                                         if(vTitle) vNode.appendChild(document.createTextNode(vTitle)); 
    343                                          
    344                                         document.getAnonymousElementByAttribute(this, "class", "headIcon").src = vIcon; 
    345  
    346                                 } catch(e){log.debug("compute head block :: "+e)} 
    347                                 ]]></body> 
    348                         </method> 
    349                         <method name="handleUriObjectUpdate"> 
    350                                 <parameter name="pUriObject"/> 
    351                                 <parameter name="pUri"/> 
    352                                 <parameter name="pEventType"/> 
    353                                 <body> 
    354                                         this.fUriObject.loadShortDesc(wsp.extractSrcUriFromFullUri(this.getAttribute("fullUri")), this.cbLoadShortDesc, this); 
    355                                 </body> 
    356                         </method> 
    357                         <method name="openItem"> 
    358                                 <body><![CDATA[ 
    359                                         desk.getController("ContentViewController").openSrcUri(wsp.extractSrcUriFromFullUri(this.getAttribute("fullUri")), ";newTab;"); 
    360                                 ]]></body> 
    361                         </method> 
    362                 </implementation> 
    363                 <handlers> 
    364                         <handler event="click" button="0"> 
    365                                 this.openItem(); 
    366                         </handler> 
    367                 </handlers> 
    368         </binding> 
    369          
    370         <binding id="externalItem"> 
    371                 <resources> 
    372                         <stylesheet src="head.css"/> 
    373                 </resources> 
    374                 <content orient="vertical" align="center"> 
    375                         <xul:box align="center"> 
    376                                 <xul:description anonid="externalItemTitle">Item externe à l'atelier</xul:description> 
    377                                 <xul:toolbarbutton class="extItemBtn" anonid="extItemEditBtn" hidden="false" label="Editer..." tooltiptext="Editer dans l'atelier d'origine" oncommand="document.getBindingParent(this).editExternalItem();"/> 
    378                                 <xul:toolbarbutton class="extItemBtn" anonid="extItemRefreshBtn" hidden="false" label="Rafraichir" tooltiptext="Recharger cet item externe" oncommand="document.getBindingParent(this).refreshtExternalItem();"/> 
    379                         </xul:box> 
    380                 </content> 
    381                 <implementation> 
    382                         <constructor> 
    383                                 var externalItem = extPoints.getSvc("externalItem"); 
    384                                 if( ! externalItem || ! externalItem.editExternalItem) { 
    385                                         //Désacticvation si svc non dispo.  
    386                                         document.getAnonymousElementByAttribute(this, "anonid", "extItemEditBtn").hidden = true; 
    387                                 } 
    388                         </constructor> 
    389                         <method name="editExternalItem"> 
    390                                 <body> 
    391                                 try{ 
    392                                         var vUriObject = uriObj.searchUriObject(this); 
    393                                         extPoints.getSvc('externalItem').editExternalItem(window, vUriObject, vUriObject.getRefUri()); 
    394                                 }catch(e){log.debug("editExternalItem::"+e);} 
    395                                 </body> 
    396                         </method> 
    397                         <method name="refreshtExternalItem"> 
    398                                 <body> 
    399                                 try{ 
    400                                         var vUriObject = uriObj.searchUriObject(this); 
    401                                         desk.getController("ContentViewController").openSrcUri(vUriObject.getSrcUri(), ";reload;"); 
    402                                 }catch(e){log.debug("editExternalItem::"+e);} 
    403                                 </body> 
    404                         </method> 
    405                 </implementation> 
    406         </binding> 
    407         --> 
    408272</bindings> 
Note: See TracChangeset for help on using the changeset viewer.