Ограничить положение Dojo FloatingPane

У меня есть dojox.layout.FloatingPane (как настраиваемый dijit), который можно расположить где угодно в пределах его охватывающего div. Моя проблема в том, что пользователь потенциально может полностью перетащить FloatingPane за пределы своего контейнера и не сможет получить его. Есть ли простой способ заставить FloatingPane всегда оставаться полностью видимым?

Вот мой код:

dojo.provide("ne.trim.dijits.SearchDialog");

dojo.require("dijit._Widget");
dojo.require("dijit._Templated");
dojo.require("dojox.layout.FloatingPane");

dojo.declare("ne.trim.dijits.SearchDialog", [dijit._Widget, dijit._Templated], {

templateString: dojo.cache("ne.trim.dijits", "templates/SearchDialog.html"),
initialised:false,
floatingPane: null,

postCreate: function() {
    this.init();
},

init: function() {
    console.debug("SearchDialog.init()", "start");
    if ( this.initialised === false ) {
        this.createSearchDialog();
    }
    //ne.trim.AppGlobals.searchDialog = this;
    console.debug("SearchDialog.init()", "end");        
},

createSearchDialog: function() {
    var node = dojo.byId('searchbox');  
    floatingPane = new dojox.layout.FloatingPane({
         title: "A floating pane",
         resizable: true, dockable: true, constrainToContainer: true,
         style:   "position:absolute;top:100;right:100;width:400px;height:300px;z-index:100",
    }, node );

    this.initialised=true;

    floatingPane.startup();
}

});
8
задан AppsWithMaps 25 February 2012 в 18:13
поделиться