You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xap-commits@incubator.apache.org by mt...@apache.org on 2006/11/09 05:32:15 UTC
svn commit: r472778 -
/incubator/xap/trunk/src/xap/bridges/dojo/WindowBridge.js
Author: mturyn
Date: Wed Nov 8 21:32:11 2006
New Revision: 472778
URL: http://svn.apache.org/viewvc?view=rev&rev=472778
Log:
Minimisation and maximisation seem to be in decent shape now.
Modified:
incubator/xap/trunk/src/xap/bridges/dojo/WindowBridge.js
Modified: incubator/xap/trunk/src/xap/bridges/dojo/WindowBridge.js
URL: http://svn.apache.org/viewvc/incubator/xap/trunk/src/xap/bridges/dojo/WindowBridge.js?view=diff&rev=472778&r1=472777&r2=472778
==============================================================================
--- incubator/xap/trunk/src/xap/bridges/dojo/WindowBridge.js (original)
+++ incubator/xap/trunk/src/xap/bridges/dojo/WindowBridge.js Wed Nov 8 21:32:11 2006
@@ -27,6 +27,7 @@
Xap.require("xap.session.ClientEvent");
Xap.require("xap.util.Event");
Xap.require('xap.bridges.dojo.DojoWidgetBridge');
+Xap.require("xap.xml.XmlTokens") ;
/**
* @fileoverview
@@ -48,16 +49,29 @@
xap.bridges.dojo.WindowBridge.prototype.init = function() {
this.superclass.init.call(this);
- this.getPeer().resizeTo(200,200);
- dojo.event.connect(this.getPeer(),"maximizeWindow",this,"onMaximize");
- dojo.event.connect(this.getPeer(),"minimizeWindow",this,"onMinimize");
- dojo.event.connect(this.getPeer(),"closeWindow",this,"onClose");
- dojo.event.connect(this.getPeer(),"restoreWindow",this,"onRestore");
-
- dojo.event.connectBefore(this.getPeer(),"maximizeWindow",this,"onMaximizing");
- dojo.event.connectBefore(this.getPeer(),"minimizeWindow",this,"onMinimizing");
- dojo.event.connectBefore(this.getPeer(),"closeWindow",this,"onClosing");
- dojo.event.connectBefore(this.getPeer(),"restoreWindow",this,"onRestoring");
+ var peer = this.getPeer() ;
+
+ peer.resizeTo(200,200) ;
+
+ dojo.event.connect(peer,"maximizeWindow",this,"onMaximize");
+ dojo.event.connect(peer,"minimizeWindow",this,"onMinimize");
+ dojo.event.connect(peer,"closeWindow",this,"onClose");
+ dojo.event.connect(peer,"restoreWindow",this,"onRestore");
+
+ dojo.event.connectBefore(peer,"maximizeWindow",this,"onMaximizing");
+ dojo.event.connectBefore(peer,"minimizeWindow",this,"onMinimizing");
+ dojo.event.connectBefore(peer,"closeWindow",this,"onClosing");
+ dojo.event.connectBefore(peer,"restoreWindow",this,"onRestoring");
+
+ // Set max xor min, if desired, as early as possible:
+ if( this.getElement().getAttribute(xap.xml.XmlTokens.MINIMIZED) == "true"){
+ this.setMinimizedAttribute(xap.xml.XmlTokens.TRUE) ;
+ } else if( this.getElement().getAttribute(xap.xml.XmlTokens.MAXIMIZED) == "true"){
+ this.setMaximizedAttribute(xap.xml.XmlTokens.TRUE) ;
+ }
+ // (on start-up, set[Min|Max]imizedAttribute() gets
+ // called if either of those attributes are set to
+ // "true", but neither works.)
}
xap.bridges.dojo.WindowBridge.prototype.getPeerString = function(){
@@ -74,7 +88,7 @@
xap.bridges.dojo.WindowBridge.prototype.getNewAllowedAttributes = function(){
- return [];
+ return ["maximized","minimized"];
}
@@ -105,6 +119,8 @@
//propertyMap.hasShadow= true;
propertyMap.constrainToContainer= true;
+
+
this.superclass.mapAllowedInitialPropertiesFromXalToDojo.call(this, propertyMap, attrHolder);
}
@@ -195,5 +211,32 @@
this.getRootDomNode().style.height = value ;
this.getPeer().resizeWindow();
}
+
+/** XML attribute set method for "maximized" */
+xap.bridges.dojo.WindowBridge.prototype.setMaximizedAttribute = function(value){
+ if( value == xap.xml.XmlTokens.TRUE){
+ if (this.getElement().getAttribute(xap.xml.XmlTokens.MAXIMIZABLE)
+ != xap.xml.XmlTokens.FALSE
+ ){
+ this.getPeer().maximizeWindow({});
+ }
+ } else {
+ this.getPeer().restoreWindow({}) ;
+ }
+}
+
+/** XML attribute set method for "minimized" */
+xap.bridges.dojo.WindowBridge.prototype.setMinimizedAttribute = function(value){
+ if( value == xap.xml.XmlTokens.TRUE){
+ if (this.getElement().getAttribute(xap.xml.XmlTokens.MINIMIZABLE)
+ != xap.xml.XmlTokens.FALSE
+ ){
+ this.getPeer().minimizeWindow({});
+ }
+ } else {
+ this.getPeer().restoreWindow({}) ;
+ }
+}
+