| /******************************************************************************* |
| * Copyright: 2004, 2012 1&1 Internet AG, Germany, http://www.1und1.de, |
| * and EclipseSource |
| * |
| * This program and the accompanying materials are made available under the |
| * terms of the Eclipse Public License v1.0 which accompanies this |
| * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * 1&1 Internet AG and others - original API and implementation |
| * EclipseSource - adaptation for the Eclipse Remote Application Platform |
| ******************************************************************************/ |
| |
| /** This class allows basic managment of assigned objects. */ |
| rwt.qx.Class.define("rwt.util.ObjectManager", |
| { |
| extend : rwt.qx.Target, |
| |
| |
| |
| |
| /* |
| ***************************************************************************** |
| CONSTRUCTOR |
| ***************************************************************************** |
| */ |
| |
| construct : function() |
| { |
| this.base(arguments); |
| |
| this._objects = {}; |
| }, |
| |
| |
| |
| |
| /* |
| ***************************************************************************** |
| MEMBERS |
| ***************************************************************************** |
| */ |
| |
| members : |
| { |
| /* |
| --------------------------------------------------------------------------- |
| USER API |
| --------------------------------------------------------------------------- |
| */ |
| |
| /** |
| * TODOC |
| * |
| * @type member |
| * @param vObject {var} TODOC |
| * @return {void | Boolean} TODOC |
| */ |
| add : function(vObject) |
| { |
| if (this.getDisposed()) { |
| return; |
| } |
| |
| this._objects[vObject.toHashCode()] = vObject; |
| }, |
| |
| |
| /** |
| * TODOC |
| * |
| * @type member |
| * @param vObject {var} TODOC |
| * @return {void | Boolean} TODOC |
| */ |
| remove : function(vObject) |
| { |
| if (this.getDisposed()) { |
| return false; |
| } |
| |
| delete this._objects[vObject.toHashCode()]; |
| }, |
| |
| |
| /** |
| * TODOC |
| * |
| * @type member |
| * @param vObject {var} TODOC |
| * @return {var} TODOC |
| */ |
| has : function(vObject) { |
| return this._objects[vObject.toHashCode()] != null; |
| }, |
| |
| |
| /** |
| * TODOC |
| * |
| * @type member |
| * @param vObject {var} TODOC |
| * @return {var} TODOC |
| */ |
| get : function(vObject) { |
| return this._objects[vObject.toHashCode()]; |
| }, |
| |
| |
| /** |
| * TODOC |
| * |
| * @type member |
| * @return {var} TODOC |
| */ |
| getAll : function() { |
| return this._objects; |
| }, |
| |
| |
| /** |
| * TODOC |
| * |
| * @type member |
| * @return {void} |
| */ |
| enableAll : function() |
| { |
| for (var vHashCode in this._objects) { |
| this._objects[vHashCode].setEnabled(true); |
| } |
| }, |
| |
| |
| /** |
| * TODOC |
| * |
| * @type member |
| * @return {void} |
| */ |
| disableAll : function() |
| { |
| for (var vHashCode in this._objects) { |
| this._objects[vHashCode].setEnabled(false); |
| } |
| } |
| }, |
| |
| |
| |
| |
| /* |
| ***************************************************************************** |
| DESTRUCTOR |
| ***************************************************************************** |
| */ |
| |
| destruct : function() { |
| this._disposeObjectDeep("_objects"); |
| } |
| }); |