Changeset 15037
- Timestamp:
- 03/05/10 12:43:33 (2 years ago)
- Location:
- trunk
- Files:
-
- 6 edited
-
Xul_Commons/modules/scenariCommons/ExtPoints.jsm (modified) (8 diffs)
-
Xul_Wsp/modules/scenariWsp/views/historyView/HistoryViewController.jsm (modified) (2 diffs)
-
Xul_Wsp/modules/scenariWsp/views/itemnet/TreeItemnetController.jsm (modified) (2 diffs)
-
Xul_Wsp/modules/scenariWsp/views/outlineView/OutlineViewController.jsm (modified) (2 diffs)
-
Xul_Wsp/modules/scenariWsp/views/searchView/SearchViewController.jsm (modified) (2 diffs)
-
Xul_Wsp/modules/scenariWsp/views/wspNavView/WspNavView.jsm (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Xul_Commons/modules/scenariCommons/ExtPoints.jsm
r14873 r15037 118 118 * @param pLevelAuthority Niveau d'autorité associée à cette affectation. 119 119 * @param pValue Valeur à associer à la pref (string, number, boolean ou null) 120 * @param pOverwriteParent [Optionnel] utilisé uniquement par les SubExtPoints pour écraser la valeur 121 * de l'extPoints parent quelquesoit le niveau d'autorité. 120 122 * @return true si la valeur a été prise en compte, false si une valeur de niveau supérieur ou égal existe déjà. 121 123 */ 122 setPref : function(pCd, pLevelAuthority, pValue ){124 setPref : function(pCd, pLevelAuthority, pValue, pOverwriteParent){ 123 125 var vCurrentLevel = this.fPrefLevels[pCd]; 124 126 if(vCurrentLevel==null || vCurrentLevel < pLevelAuthority) { … … 137 139 * @param pLevelAuthority Niveau d'autorité associée à cette affectation. 138 140 * @param pDefaultValue Valeur à utiliser si aucune prefXpcom n'est définie. 141 * @param pOverwriteParent [Optionnel] utilisé uniquement par les SubExtPoints pour écraser la valeur 142 * de l'extPoints parent quelquesoit le niveau d'autorité. 139 143 * @return true si la pref a été modifiée, false si une valeur de niveau supérieur ou égal existe déjà. 140 144 */ 141 setPrefFromXpcom : function(pCd, pLevelAuthority, pDefaultValue ){145 setPrefFromXpcom : function(pCd, pLevelAuthority, pDefaultValue, pOverwriteParent){ 142 146 var vCurrentLevel = this.fPrefLevels[pCd]; 143 147 if(vCurrentLevel==null || vCurrentLevel < pLevelAuthority) { … … 169 173 * @param pValueEntry Valeur de l'entrée, null est autorisé et élimine l'entrée de la liste. 170 174 * @param pSortKey Clé pour trier la liste, 0 par défaut. 175 * @param pOverwriteParent [Optionnel] utilisé uniquement par les SubExtPoints pour écraser la valeur 176 * de l'extPoints parent quelquesoit le niveau d'autorité. 171 177 * @return true si la valeur a été prise en compte, false si une valeur de niveau supérieur ou égal existe déjà. 172 178 */ 173 addToList : function(pCdList, pCdEntry, pLevelAuthority, pValueEntry, pSortKey ){179 addToList : function(pCdList, pCdEntry, pLevelAuthority, pValueEntry, pSortKey, pOverwriteParent){ 174 180 var vList = this.fLists[pCdList]; 175 181 if( ! vList) { … … 198 204 * @param pCdSvc Code du service pointé, null est autorisé et élimine l'entrée de la liste. 199 205 * @param pSortKey Clé pour trier la liste, 0 par défaut. 206 * @param pOverwriteParent [Optionnel] utilisé uniquement par les SubExtPoints pour écraser la valeur 207 * de l'extPoints parent quelquesoit le niveau d'autorité. 200 208 * @return true si la valeur a été prise en compte, false si une valeur de niveau supérieur ou égal existe déjà. 201 209 */ 202 addSvcToList : function(pCdList, pCdEntry, pLevelAuthority, pCdSvc, pSortKey ){210 addSvcToList : function(pCdList, pCdEntry, pLevelAuthority, pCdSvc, pSortKey, pOverwriteParent){ 203 211 var vList = this.fLists[pCdList]; 204 212 if( ! vList) { … … 225 233 * @param pLevelAuthority Niveau d'autorité associée à cette affectation. 226 234 * @param pSvc Objet JS correspondant à ce service. 235 * @param pOverwriteParent [Optionnel] utilisé uniquement par les SubExtPoints pour écraser la valeur 236 * de l'extPoints parent quelquesoit le niveau d'autorité. 227 237 * @return true si ce svc a été prise en compte, false si un svc de niveau supérieur ou égal existe déjà. 228 238 */ 229 registerSvcByInst : function(pCd, pLevelAuthority, pSvc ) {239 registerSvcByInst : function(pCd, pLevelAuthority, pSvc, pOverwriteParent) { 230 240 var vSvcDef = this.fSvcs[pCd]; 231 241 if(!vSvcDef || vSvcDef.fLevel < pLevelAuthority) { … … 291 301 * @param pIsClassToInstanciate si true, l'objet issue de la lib est considéré comme une class 292 302 * qu'il faut instancier pour créer le singleton (utile pour les .jsm en particulier). 303 * @param pOverwriteParent [Optionnel] utilisé uniquement par les SubExtPoints pour écraser la valeur 304 * de l'extPoints parent quelquesoit le niveau d'autorité. 293 305 * @return true si ce svc a été pris en compte, false si un svc de niveau supérieur ou égal est déjà déclaré. 294 306 */ 295 registerSvcByLib : function(pCd, pLevelAuthority, pUrlLib, pIsClassToInstanciate ) {307 registerSvcByLib : function(pCd, pLevelAuthority, pUrlLib, pIsClassToInstanciate, pOverwriteParent) { 296 308 var vSvcDef = this.fSvcs[pCd]; 297 309 if(!vSvcDef || vSvcDef.fLevel < pLevelAuthority) { … … 731 743 732 744 /** 733 * Construteur du SubExtPoints 745 * SubExtPoints : extPoints qui surcharge un extPoints parent. 746 * 747 * Un paramètre supplémentaire aux méthodes d'affectation permet de forcer l'écrasement 748 * de la valeur de l'extPoints parent quelquesoit le niveau d'autorité. 734 749 * 735 750 * XXX Attention, avec cette impl, une modification ultérieure de l'extPoints parent … … 748 763 __proto__ : ExtPoints.prototype, 749 764 750 setPref : function(pCd, pLevelAuthority, pValue ){751 if( this.fParentExtPoints.getPrefLevel(pCd) >= pLevelAuthority) return false;765 setPref : function(pCd, pLevelAuthority, pValue, pOverwriteParent){ 766 if(! pOverwriteParent && this.fParentExtPoints.getPrefLevel(pCd) >= pLevelAuthority) return false; 752 767 return ExtPoints.prototype.setPref.apply(this, arguments); //call super 753 768 }, 754 769 755 770 756 setPrefFromXpcom : function(pCd, pLevelAuthority, pDefaultValue ){757 if( this.fParentExtPoints.getPrefLevel(pCd) >= pLevelAuthority) return false;771 setPrefFromXpcom : function(pCd, pLevelAuthority, pDefaultValue, pOverwriteParent){ 772 if(! pOverwriteParent && this.fParentExtPoints.getPrefLevel(pCd) >= pLevelAuthority) return false; 758 773 return ExtPoints.prototype.setPrefFromXpcom.apply(this, arguments); //call super 759 774 }, 760 775 761 addToList : function(pCdList, pCdEntry, pLevelAuthority, pValueEntry, pSortKey ){762 if( this.fParentExtPoints.getEntryListLevel(pCdList, pCdEntry) >= pLevelAuthority) return false;776 addToList : function(pCdList, pCdEntry, pLevelAuthority, pValueEntry, pSortKey, pOverwriteParent){ 777 if(! pOverwriteParent && this.fParentExtPoints.getEntryListLevel(pCdList, pCdEntry) >= pLevelAuthority) return false; 763 778 return ExtPoints.prototype.addToList.apply(this, arguments); //call super 764 779 }, 765 780 766 addSvcToList : function(pCdList, pCdEntry, pLevelAuthority, pCdSvc, pSortKey ){767 if( this.fParentExtPoints.getEntryListLevel(pCdList, pCdEntry) >= pLevelAuthority) return false;781 addSvcToList : function(pCdList, pCdEntry, pLevelAuthority, pCdSvc, pSortKey, pOverwriteParent){ 782 if(! pOverwriteParent && this.fParentExtPoints.getEntryListLevel(pCdList, pCdEntry) >= pLevelAuthority) return false; 768 783 return ExtPoints.prototype.addSvcToList.apply(this, arguments); //call super 769 784 }, 770 785 771 registerSvcByInst : function(pCd, pLevelAuthority, pSvc ) {772 if( this.fParentExtPoints.getSvcLevel(pCd) >= pLevelAuthority) return false;786 registerSvcByInst : function(pCd, pLevelAuthority, pSvc, pOverwriteParent) { 787 if(! pOverwriteParent && this.fParentExtPoints.getSvcLevel(pCd) >= pLevelAuthority) return false; 773 788 return ExtPoints.prototype.registerSvcByInst.apply(this, arguments); //call super 774 789 }, 775 790 776 registerSvcByLib : function(pCd, pLevelAuthority, pUrlLib, pIsClassToInstanciate ) {777 if( this.fParentExtPoints.getSvcLevel(pCd) >= pLevelAuthority) return false;791 registerSvcByLib : function(pCd, pLevelAuthority, pUrlLib, pIsClassToInstanciate, pOverwriteParent) { 792 if(! pOverwriteParent && this.fParentExtPoints.getSvcLevel(pCd) >= pLevelAuthority) return false; 778 793 return ExtPoints.prototype.registerSvcByLib.apply(this, arguments); //call super 779 794 }, -
trunk/Xul_Wsp/modules/scenariWsp/views/historyView/HistoryViewController.jsm
r14956 r15037 52 52 53 53 //Déclaration de l'action pour ouvrir la view. 54 pWindow.extPoints.registerSvcByInst("actionOpenHistoryView", 1, new ActionOpenHistoryView(this) );54 pWindow.extPoints.registerSvcByInst("actionOpenHistoryView", 1, new ActionOpenHistoryView(this), true); 55 55 56 56 //Ajout dans les menus contextuels relatifs aux uris. … … 86 86 ActionOpenHistoryView.prototype = new actions.Action("actionOpenHistoryView").setGroup("uriActions").setLabel("Afficher l'historique"); 87 87 ActionOpenHistoryView.prototype.isVisible = function(pContext){ 88 return pContext.scWsp && 88 return pContext.window.top === this.fController.fWindow.top && 89 pContext.scWsp && 89 90 pContext.shortDesc && 90 91 this.fController.fHistoryView && -
trunk/Xul_Wsp/modules/scenariWsp/views/itemnet/TreeItemnetController.jsm
r14861 r15037 60 60 this.fWindow.desk.addDeskInfoListener(this); 61 61 //Déclaration de l'action pour ouvrir la view. 62 pWindow.extPoints.registerSvcByInst("actionOpenTreeItemnetView", 1, new ActionOpenTreeItemnetView(this) );62 pWindow.extPoints.registerSvcByInst("actionOpenTreeItemnetView", 1, new ActionOpenTreeItemnetView(this), true); 63 63 //Ajout dans les menus contextuels relatifs aux uris. 64 64 pWindow.extPoints.addSvcToList("menu:common:uri", "actionOpenTreeItemnetView", 1, "actionOpenTreeItemnetView"); … … 114 114 ActionOpenTreeItemnetView.prototype = new actions.Action("actionOpenTreeItemnetView").setGroup("uriActions").setLabel("Afficher le réseau d'items"); 115 115 ActionOpenTreeItemnetView.prototype.isVisible = function(pContext){ 116 return pContext.scWsp && 116 return pContext.window.top === this.fController.fWindow.top && 117 pContext.scWsp && 117 118 pContext.fullUri && 118 119 this.fController.fTreeItemnetView && -
trunk/Xul_Wsp/modules/scenariWsp/views/outlineView/OutlineViewController.jsm
r14878 r15037 61 61 this.fWindow.desk.addDeskInfoListener(this); 62 62 //Déclaration de l'action pour ouvrir la view. 63 pWindow.extPoints.registerSvcByInst("actionOpenOutlineView", 1, new ActionOpenOutlineView(this) );63 pWindow.extPoints.registerSvcByInst("actionOpenOutlineView", 1, new ActionOpenOutlineView(this), true); 64 64 //Ajout dans les menus contextuels relatifs aux uris. 65 65 pWindow.extPoints.addSvcToList("menu:common:uri", "actionOpenOutlineView", 1, "actionOpenOutlineView"); … … 111 111 ActionOpenOutlineView.prototype = new actions.Action("actionOpenOutlineView").setGroup("uriActions").setLabel("Afficher le plan"); 112 112 ActionOpenOutlineView.prototype.isVisible = function(pContext){ 113 return pContext.scWsp && 113 return pContext.window.top === this.fController.fWindow.top && 114 pContext.scWsp && 114 115 pContext.shortDesc && 115 116 this.fController.fOutlineView && -
trunk/Xul_Wsp/modules/scenariWsp/views/searchView/SearchViewController.jsm
r14892 r15037 54 54 55 55 //Déclaration de l'action pour ouvrir la view. 56 pWindow.extPoints.registerSvcByInst("actionOpenSearchView", 1, new ActionOpenSearchView(this) );56 pWindow.extPoints.registerSvcByInst("actionOpenSearchView", 1, new ActionOpenSearchView(this), true); 57 57 //Ajout dans les menus contextuels relatifs aux uris. 58 58 pWindow.extPoints.addSvcToList("menu:common:uri", "actionOpenSearchView", 1, "actionOpenSearchView"); … … 118 118 ActionOpenSearchView.prototype = new actions.Action("actionOpenSearchView").setGroup("uriActions").setLabel("Rechercher"); 119 119 ActionOpenSearchView.prototype.isVisible = function(pContext){ 120 return pContext.scWsp && 120 return pContext.window.top === this.fController.fWindow.top && 121 pContext.scWsp && 121 122 this.fController.fSearchView; 122 123 -
trunk/Xul_Wsp/modules/scenariWsp/views/wspNavView/WspNavView.jsm
r15016 r15037 1688 1688 } 1689 1689 1690 /** 1691 * Déclarations des actions des cette view en svc. 1692 * Note : pOverwriteParent n'est forcé à true considérant que des surcharges de ces 1693 * actions devraient généralement être applicables dans toutes les sous-fenêtres (wspDesk, selItem...) 1694 * Dans le cas contraire, il faudra les redéclarer (ces actions sont accessibles une 1695 * fois ce module importé: WspNavView.actionCut...) 1696 */ 1690 1697 function initDefaultActions(pWindow) { 1691 pWindow.extPoints.registerSvcByInst("wspNavView.actionCut", 1, actionCut);1692 pWindow.extPoints.registerSvcByInst("wspNavView.actionPaste", 1, actionPaste);1693 pWindow.extPoints.registerSvcByInst("wspNavView.actionDelete", 1, actionDelete);1694 pWindow.extPoints.registerSvcByInst("wspNavView.actionRename", 1, actionRename);1695 pWindow.extPoints.registerSvcByInst("wspNavView.actionCreateItem", 1, actionCreateItem);1696 pWindow.extPoints.registerSvcByInst("wspNavView.actionCreateSpace", 1, actionCreateSpace);1698 pWindow.extPoints.registerSvcByInst("wspNavView.actionCut", 1, WspNavView.actionCut, false); 1699 pWindow.extPoints.registerSvcByInst("wspNavView.actionPaste", 1, WspNavView.actionPaste, false); 1700 pWindow.extPoints.registerSvcByInst("wspNavView.actionDelete", 1, WspNavView.actionDelete, false); 1701 pWindow.extPoints.registerSvcByInst("wspNavView.actionRename", 1, WspNavView.actionRename, false); 1702 pWindow.extPoints.registerSvcByInst("wspNavView.actionCreateItem", 1, WspNavView.actionCreateItem, false); 1703 pWindow.extPoints.registerSvcByInst("wspNavView.actionCreateSpace", 1, WspNavView.actionCreateSpace, false); 1697 1704 } 1698 1705 … … 1719 1726 * ActionContext : scWsp, fullUri, viewMgr 1720 1727 */ 1721 varactionCreateItem = new actions.Action("actionCreateItem").setGroup("uriCreate").setLabel("Créer un item...");1722 actionCreateItem.isVisible = function(pContext){1728 WspNavView.actionCreateItem = new actions.Action("actionCreateItem").setGroup("uriCreate").setLabel("Créer un item..."); 1729 WspNavView.actionCreateItem.isVisible = function(pContext){ 1723 1730 //Le fullUri doit être dans un espace (SrcUri != "") car pas de création d'item à la racine. 1724 1731 return pContext.scWsp && pContext.fullUri && wsp.extractSrcUriFromFullUri(pContext.fullUri) && ! pContext.viewMgr.isReadOnly(); 1725 1732 } 1726 actionCreateItem.execute = function(pEvent, pContext){1733 WspNavView.actionCreateItem.execute = function(pEvent, pContext){ 1727 1734 var vViewMgr = pContext.viewMgr; 1728 1735 function cb(pDataProvider, pFullUri) { … … 1737 1744 * ActionContext : scWsp, fullUri, viewMgr 1738 1745 */ 1739 varactionCreateSpace = new actions.Action("actionCreateSpace").setGroup("uriCreate").setLabel("Créer un espace...");1740 actionCreateSpace.isVisible = function(pContext){1746 WspNavView.actionCreateSpace = new actions.Action("actionCreateSpace").setGroup("uriCreate").setLabel("Créer un espace..."); 1747 WspNavView.actionCreateSpace.isVisible = function(pContext){ 1741 1748 //Cette action n'est visible que si on est sur un espace ou à la racine de l'atelier. 1742 1749 return pContext.scWsp && pContext.fullUri && ! pContext.viewMgr.isReadOnly(); // && ! item.extractCodeFromFullUri(pContext.fullUri); 1743 1750 } 1744 actionCreateSpace.execute = function(pEvent, pContext){1751 WspNavView.actionCreateSpace.execute = function(pEvent, pContext){ 1745 1752 var vViewMgr = pContext.viewMgr; 1746 1753 function cb(pDataProvider, pFullUri) { … … 1754 1761 * ActionContext : shortDesc, viewMgr 1755 1762 */ 1756 varactionCut = new actions.Action("actionCut").setGroup("uriCopyPaste").setLabel("Couper");1757 actionCut.isVisible = function(pContext){1763 WspNavView.actionCut = new actions.Action("actionCut").setGroup("uriCopyPaste").setLabel("Couper"); 1764 WspNavView.actionCut.isVisible = function(pContext){ 1758 1765 return pContext.shortDesc != null && ! pContext.viewMgr.isReadOnly(); 1759 1766 } 1760 actionCut.execute = function(pEvent, pContext){1767 WspNavView.actionCut.execute = function(pEvent, pContext){ 1761 1768 try{ 1762 1769 var vViewMgr = pContext.viewMgr; … … 1799 1806 * ActionContext : shortDesc, viewMgr 1800 1807 */ 1801 varactionPaste = new actions.Action("actionPaste").setGroup("uriCopyPaste").setLabel("Coller");1802 actionPaste.isVisible = function(pContext){1808 WspNavView.actionPaste = new actions.Action("actionPaste").setGroup("uriCopyPaste").setLabel("Coller"); 1809 WspNavView.actionPaste.isVisible = function(pContext){ 1803 1810 return ! pContext.viewMgr.isReadOnly(); 1804 1811 } 1805 actionPaste.isEnabled = function(pContext){1812 WspNavView.actionPaste.isEnabled = function(pContext){ 1806 1813 return transf.isClipboardContainFileOrScenariUri() || 1807 1814 (pContext.viewMgr.fExtItemsMimeTypeAllowed && transf.isClipboardContainMimeType(pContext.viewMgr.fExtItemsMimeTypeAllowed)); 1808 1815 } 1809 actionPaste.execute = function(pEvent, pContext){1816 WspNavView.actionPaste.execute = function(pEvent, pContext){ 1810 1817 try{ 1811 1818 var vViewMgr = pContext.viewMgr; … … 1932 1939 * ActionContext : fullUri, viewMgr 1933 1940 */ 1934 varactionDelete = new actions.Action("actionDelete").setGroup("uriEdit").setLabel("Supprimer");1935 actionDelete.isVisible = function(pContext){1941 WspNavView.actionDelete = new actions.Action("actionDelete").setGroup("uriEdit").setLabel("Supprimer"); 1942 WspNavView.actionDelete.isVisible = function(pContext){ 1936 1943 return ! pContext.viewMgr.isReadOnly(); 1937 1944 } 1938 actionDelete.execute = function(pEvent, pContext){1945 WspNavView.actionDelete.execute = function(pEvent, pContext){ 1939 1946 var vViewMgr = pContext.viewMgr; 1940 1947 if(! vViewMgr.fWindow.desk.saveAll(vViewMgr.fCdWsp)) return; … … 1968 1975 * ActionContext : fullUri, viewMgr 1969 1976 */ 1970 varactionRename = new actions.Action("actionRename").setGroup("uriEdit").setLabel("Renommer...");1971 actionRename.isVisible = function(pContext){1977 WspNavView.actionRename = new actions.Action("actionRename").setGroup("uriEdit").setLabel("Renommer..."); 1978 WspNavView.actionRename.isVisible = function(pContext){ 1972 1979 return ! pContext.viewMgr.isReadOnly(); 1973 1980 } 1974 actionRename.execute = function(pEvent, pContext){1981 WspNavView.actionRename.execute = function(pEvent, pContext){ 1975 1982 var vViewMgr = pContext.viewMgr; 1976 1983 if(! vViewMgr.fWindow.desk.saveAll(vViewMgr.fCdWsp)) return;
Note: See TracChangeset
for help on using the changeset viewer.