/**
  * Constructs a new subset dialog.
  *
  * @param window the parent window
  * @param product the product for which the subset is to be specified, must not be <code>null
  *     </code>
  * @param productSubsetDef the initial product subset definition, can be <code>null</code>
  * @param memWarnLimit the warning limit in megabytes
  */
 public ProductSubsetDialog(
     Window window, Product product, ProductSubsetDef productSubsetDef, double memWarnLimit) {
   super(
       window,
       "Specify Product Subset", /*I18N*/
       ModalDialog.ID_OK | ModalDialog.ID_CANCEL | ModalDialog.ID_HELP,
       "subsetDialog");
   Guardian.assertNotNull("product", product);
   this.product = product;
   givenProductSubsetDef = productSubsetDef;
   this.productSubsetDef = new ProductSubsetDef("undefined");
   this.memWarnLimit = memWarnLimit;
   updatingUI = new AtomicBoolean(false);
   createUI();
 }