From: Charles du Jeu Date: Mon, 8 Dec 2008 19:09:30 +0000 (+0000) Subject: Reference the real IView as a property X-Git-Tag: argeo-slc-2.1.7~2300 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=9e0cbbcdfac3231ad77450c0d66b02db1b36f44e;p=gpl%2Fargeo-slc.git Reference the real IView as a property git-svn-id: https://svn.argeo.org/slc/trunk@1962 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/org.argeo.slc.webapp/src/main/webapp/source/class/org/argeo/ria/components/ViewPane.js b/org.argeo.slc.webapp/src/main/webapp/source/class/org/argeo/ria/components/ViewPane.js index b56b5b1f6..e04970c43 100644 --- a/org.argeo.slc.webapp/src/main/webapp/source/class/org/argeo/ria/components/ViewPane.js +++ b/org.argeo.slc.webapp/src/main/webapp/source/class/org/argeo/ria/components/ViewPane.js @@ -53,7 +53,16 @@ qx.Class.define("org.argeo.ria.components.ViewPane", * Map of commands definition * @see org.argeo.ria.event.Command */ - commands : {init : null, nullable:true, check:"Map"} + commands : {init : null, nullable:true, check:"Map"}, + /** + * The real business content. + */ + content : { + init: null, + nullable : true, + check : "org.argeo.ria.components.IView", + apply : "_applyContent" + } }, /* @@ -122,18 +131,19 @@ qx.Class.define("org.argeo.ria.components.ViewPane", * Sets the content of this pane. * @param content {org.argeo.ria.components.IView} An IView implementation */ - setContent : function(content){ + _applyContent : function(content){ + if(content == null) return; var addScrollable = (content.addScroll?content.addScroll():false); if(addScrollable){ this.setOwnScrollable(true); this.scrollable = new qx.ui.container.Scroll(content); this.add(this.scrollable, {flex: 1}); }else{ - this.content = content; - this.add(this.content, {flex:1}); + this.guiContent = content; + this.add(this.guiContent, {flex:1}); } }, - + addHeaderComponent : function(component){ this.header.setPadding(4); this.header.add(component, {edge:"center"}); @@ -159,14 +169,15 @@ qx.Class.define("org.argeo.ria.components.ViewPane", empty: function(){ if(this.getOwnScrollable() && this.scrollable){ this.remove(this.scrollable); - }else if(this.content){ - this.remove(this.content); + }else if(this.guiContent){ + this.remove(this.guiContent); } if(this.getCommands()){ org.argeo.ria.event.CommandsManager.getInstance().removeCommands(this.getCommands()); this.setCommands(null); } this.setViewTitle(this._defaultViewTitle); + this.setContent(null); } }