this.setViewId(viewId);
this._defaultViewTitle = viewTitle;
this.setViewTitle(viewTitle);
- var viewSelection = new org.argeo.ria.components.ViewSelection(viewId);
- this.setViewSelection(viewSelection);
if(splitPaneData){
this.setSplitPaneData(splitPaneData);
}
+ this.setFocusable(true);
+ this.addListener("click", function(e){
+ this.fireDataEvent("changeFocus", this);
+ }, this);
this.createGui();
},
+ events : {
+ "changeFocus" : "qx.event.type.Data",
+ "changeSelection" : "qx.event.type.Event"
+ },
+
properties :
{
/**
* Human-readable title for this view
*/
viewTitle : {init:"", event:"changeViewTitle"},
- /**
- * Selection model for this view
- */
- viewSelection : { nullable:false, check:"org.argeo.ria.components.ViewSelection" },
/**
* Has its own scrollable content
*/
*/
},
+ getViewSelection : function(){
+ if(this.getContent()){
+ return this.getContent().getViewSelection();
+ }
+ return null;
+ },
+
+ contentExists : function(iViewId){
+ if(this.getContent()){
+ this.empty();
+ }
+ return false;
+ },
+
/**
* Sets the content of this pane.
* @param content {org.argeo.ria.components.IView} An IView implementation
*/
- _applyContent : function(content){
+ _applyContent : function(content){
if(content == null) return;
var addScrollable = (content.addScroll?content.addScroll():false);
if(addScrollable){
this.guiContent = content;
this.add(this.guiContent, {flex:1});
}
+ content.getViewSelection().addListener("changeSelection", function(e){
+ this.fireEvent("changeSelection");
+ }, this);
},
/**
* Adds a graphical component too the header of the view pane.
*/
addHeaderComponent : function(component){
this.header.setPadding(4);
- this.header.add(component, {edge:"center"});
+ this.header.add(component, {edge:"center"});
+ component.setTextColor("#1a1a1a");
this.loadImage.setMargin(4);
},
}
this.setViewTitle(this._defaultViewTitle);
this.setContent(null);
+ },
+
+ focus : function(){
+ if(this.hasFocus) return;
+ this.setDecorator(new qx.ui.decoration.Single(1,"solid","#065fb2"));
+ this.fireEvent("changeSelection");
+ this.hasFocus = true;
+ },
+ blur : function(){
+ this.hasFocus = false;
+ this.setDecorator(new qx.ui.decoration.Single(1,"solid","#000"));
}
}