Changeset 14994


Ignore:
Timestamp:
03/02/10 10:57:16 (2 years ago)
Author:
sys
Message:

wspNavView : noContent box.

Location:
trunk/Xul_Wsp
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Xul_Wsp/content/scenariWsp/views/wspNavView/wspNavView.xbl.css

    r14986 r14994  
    6868        font-size: 0.9em; 
    6969} 
     70 
     71 
     72vbox[anonid="noContent"] { 
     73        margin: 0.5em 0; 
     74} 
  • trunk/Xul_Wsp/content/scenariWsp/views/wspNavView/wspNavView.xbl.xml

    r14843 r14994  
    5656                <content flex="1" orient="vertical" label="Explorateur" iconUrl="" longDesc="Explorateur de l'atelier" contextmenu="_child"> 
    5757                        <xul:menupopup actionsLists="menu:wspNavView menu:common:uri" groupsOrder="uriCopyPaste uriEdit uriCreate uriActions * uriActionsOut" xbl:inherits="groupsOrder" onpopupshowing="return this.parentNode.fViewMgr.onPopupShowing(event);" onpopuphiding="this.parentNode.fViewMgr.onPopupHiding(event);" onclick="event.stopPropagation();"/> 
     58                        <xul:vbox anonid="noContent" hidden="true"> 
     59                                <xul:description>Cet atelier est vide.</xul:description> 
     60                                <xul:description>Commencez par créer un espace de travail, vous pourrez ensuite créer des items.</xul:description> 
     61                                <xul:button label="Créer un espace" oncommand="document.getBindingParent(this).fViewMgr.createSpace(event);"/> 
     62                        </xul:vbox> 
    5863                        <xul:tree flex="1" hidecolumnpicker="true" seltype="single" _selectDelay="500" flags="dont-build-content"> 
    5964                                <xul:treecols> 
     
    6873                                <xul:iframe class="itemViewPreview" style="overflow:hidden;" hidden="true" width="350" height="150" xbl:inherits="width=widthpreview, height=heightpreview"/> 
    6974                        </xul:tooltip> 
    70                         <xul:iframe anonid="iframe" flex="0" style="visibility: collapse;"/><!-- For zip download... XXX Better way ?--> 
    7175                </content> 
    7276 
     
    8084                                        var vWsp = desk.getWsp(); 
    8185                                        Components.utils.import("resource://scenariWsp/views/wspNavView/WspNavView.jsm", this); 
    82                                         this.fViewMgr = new this.WspNavView(window, vWsp, this.fTree, document.getAnonymousElementByAttribute(this, "anonid", "tooltip")); 
     86                                        this.fViewMgr = new this.WspNavView(window, vWsp, this.fTree, document.getAnonymousElementByAttribute(this, "anonid", "tooltip"), document.getAnonymousElementByAttribute(this, "anonid", "noContent")); 
    8387                                        this.fViewMgr.setAccelKeyMgr(new actions.AccelKeyMgr().initFromMapActions(extPoints.mergeListsAsMap(["accelKey:wspNavView", "accelKey:common:uri"]))); 
    8488                                }catch(e){log.debug("wspNavView.onViewShown:: " + e);} 
  • trunk/Xul_Wsp/modules/scenariWsp/views/wspNavView/WspNavView.jsm

    r14978 r14994  
    4545Components.utils.import("resource://scenariWsp/commons.jsm"); 
    4646 
    47 function WspNavView(pWindow, pScWsp, pNodeTree, pNodeTooltip){ 
     47function WspNavView(pWindow, pScWsp, pNodeTree, pNodeTooltip, pNodeNoContent){ 
    4848        this.fExtPoints = pWindow.extPoints; 
    4949        this.fContentViewCtrl = pWindow.desk.getController('ContentViewController'); 
     
    5959         
    6060        this.fTooltip = pNodeTooltip; 
     61        this.fNoContentNode = pNodeNoContent; 
     62        this.fNoContentHidden = true; 
    6163         
    6264        Components.utils.import("resource://scenariWsp/utils/upload/upload.jsm", this); 
     
    126128                return this.xGetFullUri(vItem); 
    127129        } else { 
    128                 return null; 
     130                return wsp.buildWspUri(this.fCdWsp, src.URI_ROOT); 
    129131        } 
    130132} 
     
    525527        this.fLastItem = null; 
    526528        this.fRowMouseOver = null; 
     529        if( ! this.fNoContentHidden) this.fNoContentNode.hidden = this.fNoContentHidden = true; 
    527530        //log.debug("xResetState"); 
    528531} 
     
    746749                this.fTree.rowCountChanged(0, -vOldRowCount); 
    747750        } 
     751        this.fNoContentNode.hidden = this.fNoContentHidden = false; 
    748752} 
    749753 
     
    768772                                                var vItem = JSON.parse(pEvent.target.responseText); 
    769773                                                sWspNavView.xFilterNewData(vItem); 
    770                                                 sWspNavView.xResetState(); 
    771                                                 sWspNavView.fData = vItem; 
    772                                                 sWspNavView.xInitItem(null, sWspNavView.fData, -1); 
    773                                                 sWspNavView.xUpdtNbr(null, sWspNavView.fData.nbr); 
    774                                                 sWspNavView.rowCount = sWspNavView.fData.nbr - 1; 
    775                                                 if(vOldRowC > sWspNavView.rowCount) { 
    776                                                         sWspNavView.fTree.rowCountChanged(sWspNavView.rowCount, sWspNavView.rowCount - vOldRowC); 
    777                                                 } else if(vOldRowC < sWspNavView.rowCount) { 
    778                                                         sWspNavView.fTree.rowCountChanged(vOldRowC, sWspNavView.rowCount - vOldRowC); 
     774                                                if(vItem.nbr == 1) { 
     775                                                        //Aucune contenu dans l'atelier 
     776                                                        sWspNavView.xResetTreeEmpty(); 
     777                                                } else { 
     778                                                        sWspNavView.xResetState(); 
     779                                                        sWspNavView.fData = vItem; 
     780                                                        sWspNavView.xInitItem(null, sWspNavView.fData, -1); 
     781                                                        sWspNavView.xUpdtNbr(null, sWspNavView.fData.nbr); 
     782                                                        sWspNavView.rowCount = sWspNavView.fData.nbr - 1; 
     783                                                        if(vOldRowC > sWspNavView.rowCount) { 
     784                                                                sWspNavView.fTree.rowCountChanged(sWspNavView.rowCount, sWspNavView.rowCount - vOldRowC); 
     785                                                        } else if(vOldRowC < sWspNavView.rowCount) { 
     786                                                                sWspNavView.fTree.rowCountChanged(vOldRowC, sWspNavView.rowCount - vOldRowC); 
     787                                                        } 
     788                                                        sWspNavView.fTree.invalidate(); 
     789                                                        if(sUri) sWspNavView.selectFullUri(sUri); 
     790                                                        // on vérifie que tous les composants locaux sont bien disponibles 
     791                                                        packMgr.checkSync(sWspNavView.fDataProvider, sWspNavView.fCdWsp); 
    779792                                                } 
    780                                                 sWspNavView.fTree.invalidate(); 
    781                                                 if(sUri) sWspNavView.selectFullUri(sUri); 
    782                                                 // on vérifie que tous les composants locaux sont bien disponibles 
    783                                                 packMgr.checkSync(sWspNavView.fDataProvider, sWspNavView.fCdWsp); 
    784793                                        }else if(pEvent.target.status == 404){ 
    785794                                                //La racine de l'atelier n'existe pas, cas d'erreur qui devrait être  
     
    15401549} 
    15411550 
     1551WspNavView.prototype.createSpace = function(pEvent){ 
     1552        var vContext = { 
     1553                                        window: this.fWindow,  
     1554                                        scWsp : this.fScWsp, 
     1555                                        fullUri : this.getFullUri(), 
     1556                                        viewMgr : this}; 
     1557        var vAction = this.fExtPoints.getSvc("wspNavView.actionCreateSpace"); 
     1558        if(vAction.isVisible(vContext)) vAction.execute(pEvent, vContext); 
     1559} 
     1560 
    15421561function pasteUriToUri(pUriSrc, pUriDst, pIsCut, pViewMgr) { 
    15431562        var vMethod = pIsCut ? "MOVE" : "COPY"; 
Note: See TracChangeset for help on using the changeset viewer.