Changeset 7527


Ignore:
Timestamp:
11/27/06 23:24:18 (5 years ago)
Author:
sys
Message:

Sélection du bon dossier pour la création d'item + controle de l'état dirty

Location:
trunk/Xul_Cms/content/scenaricms/widgets/item
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Xul_Cms/content/scenaricms/widgets/item/editrefitem.js

    r5674 r7527  
    5454 */ 
    5555desk.canUnloadCurrentView = function(pSilentMode) { 
    56         return true; 
     56        var vCanUnload = true; 
     57        try{vCanUnload = this.fMainView.contentWindow.canUnload(pSilentMode);}catch(e){ut.debug(e+"\n"+ut.listProperties(this.fMainView))} 
     58        return vCanUnload; 
    5759} 
    5860 
     
    167169        if(window.arguments) { 
    168170                this.fItemSel.setItem(pSp, pCd, pUriRes); 
     171                document.getElementById("btnSel").disabled =  ! pCd; 
    169172        } else { 
     173                //On est en iframe. 
    170174                this.fRefItem.setItem(pSp, pCd, pUriRes); 
    171175                this.fRefItem.xFireChangeItem(); 
     
    189193 
    190194desk.selectAndClose = function(){ 
     195        if( ! desk.canUnloadCurrentView(false)) return; 
    191196        this.fRefItem.setItem(this.fItemSel.fSp, this.fItemSel.fCd, this.fItemSel.fUriRes, this.fItemSel.fSpSs, this.fItemSel.fCdSs, this.fItemSel.fPack, this.fItemSel.fModel, this.fItemSel.fTitle, this.fItemSel.fStatus, this.fItemSel.fItemDef); 
    192197        this.fRefItem.xFireChangeItem(); 
     
    202207} 
    203208 
     209desk.canCloseDesk = function(){ 
     210        return this.canUnloadCurrentView(false); 
     211} 
    204212 
    205213 
     
    335343                pUriObject.activate(this.setUriObjectActivated, this); 
    336344                var vCd = ut.getCodeFromUri(pUriObject.getUri()); 
    337                 if(vCd) this.setRefItem(ut.getSpaceFromUri(pUriObject.getUri()), vCd, ut.getUriResFromUri(pUriObject.getUri())); 
     345                this.setRefItem(ut.getSpaceFromUri(pUriObject.getUri()), vCd, ut.getUriResFromUri(pUriObject.getUri())); 
    338346        } 
    339347} 
     
    376384        var vNewUriObject = vWspView.getUriObject(); 
    377385        if(vNewUriObject && (!vCurrentUriObject || vNewUriObject.getUri()!=vCurrentUriObject.getUri())){ 
    378                 desk.activateUriObject(vNewUriObject); 
    379         } 
    380 } 
     386                if(desk.canUnloadCurrentView(false)) desk.activateUriObject(vNewUriObject); 
     387        } 
     388} 
  • trunk/Xul_Cms/content/scenaricms/widgets/item/editrefitem.xul

    r6385 r7527  
    4040 
    4141<?xml-stylesheet href="chrome://scenaricms/content/widgets/item/editrefitem.css" type="text/css"?> 
    42 <window id="editrefitem" title="Référence à un item" width="800" height="600" orient="vertical" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:xbl="http://www.mozilla.org/xbl" onload="desk.initDesk();" onunload="desk.destroyDesk();" ondragdrop="event.preventBubble();" persist="screenX screenY width height sizemode"> 
     42<window id="editrefitem" title="Référence à un item" width="800" height="600" orient="vertical" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:xbl="http://www.mozilla.org/xbl" onload="desk.initDesk();" onunload="desk.destroyDesk();" onclose="return desk.canCloseDesk();" ondragdrop="event.preventBubble();" persist="screenX screenY width height sizemode"> 
    4343        <script src="chrome://scenaricms/content/ut.js"/> 
    4444        <script src="chrome://scenaricms/content/transf.js"/> 
Note: See TracChangeset for help on using the changeset viewer.