1. #1
    Ext Premium Member
    Join Date
    Mar 2007
    Posts
    175
    Vote Rating
    0
    SteveEisner is on a distinguished road

      0  

    Default BasicDialog incompatible with ylayout-inactive-content?

    BasicDialog incompatible with ylayout-inactive-content?


    Noticed that when I have class="ylayout-inactive-content" on the div that will become a dialog, and that dialog is modal, then dragging it causes it to disappear. The shadow stays behind.


    Code:
    <div id="edit-dlg" >  
        <div class="ydlg-hd">Title</div>
        <div class="ydlg-bd">
          ...
        </div>
        <div class="ydlg-ft">
        </div>
    </div>
    
    
    	  showDialog: function() {
                if(!dialog){ // lazy initialize the dialog and only create it once
                    dialog = new YAHOO.ext.BasicDialog("edit-dlg", { 
                            modal:true,
                            width:600,
                            height:150,
                            shadow:true,
                            minWidth:500,
                            minHeight:150
                    });
                    dialog.addKeyListener(27, dialog.hide, dialog);
                    dialog.addButton('Save', dialog.hide, dialog);
                    dialog.addButton('Cancel', dialog.hide, dialog);
                }
                dialog.show(getEl('addContactButton').dom);
            }
    Is there a better way to start the dialog initially hidden?

  2. #2
    Sencha User jack.slocum's Avatar
    Join Date
    Mar 2007
    Location
    Tampa, FL
    Posts
    6,955
    Vote Rating
    16
    jack.slocum will become famous soon enough

      0  

    Default


    Did you try visibility:hidden? A combo of visibility:hidden;position:absolute; will also work to make sure it doesn't take space as well.

  3. #3
    Ext User
    Join Date
    Mar 2007
    Posts
    6
    Vote Rating
    0
    arctu is on a distinguished road

      0  

    Default


    im experiencing this too.. FF2

    my code..
    Code:
    function loginbox(){
    				dialog = new YAHOO.ext.BasicDialog("hello-dlg", { 
    								   modal:true,
    								   autoTabs:true,
    								   width:500,
    								   height:300,
    								   minWidth:300,
    								   minHeight:300
    				});
    				
    				dialog.addButton('Close', dialog.hide, dialog);
    				dialog.addButton('Submit', dialog.hide, dialog).disable();
    	}
    	
    	YAHOO.ext.EventManager.onDocumentReady(loginbox, '', false);
    Code:
    <div>
        <div>Hello Dialog</div>
        <div>
            <div>
    
                <div>
                     Hello...
    
    
    
                </div>
            </div>
            <div>
                <div>
                ... World!
                </div>
    
            </div>
            </div>
        </div>
        <div>
        </div>
      </div>
    the parent has the class ylayout-inactive-content. though, i've tried without that class and the shadow bug still appears..

    might it be because i didnt create the dialog in an object?[/code]

  4. #4
    Sencha User jack.slocum's Avatar
    Join Date
    Mar 2007
    Location
    Tampa, FL
    Posts
    6,955
    Vote Rating
    16
    jack.slocum will become famous soon enough

      0  

    Default


    What exactly is the problem? The shadow stays behind?

  5. #5
    Ext User
    Join Date
    Mar 2007
    Posts
    6
    Vote Rating
    0
    arctu is on a distinguished road

      0  

    Default


    yes.. there'll be a box in (blue?) that stays behind when the window is closed. But if shadow is turned off, there will be no box left behind..

  6. #6
    Sencha User jack.slocum's Avatar
    Join Date
    Mar 2007
    Location
    Tampa, FL
    Posts
    6,955
    Vote Rating
    16
    jack.slocum will become famous soon enough

      0  

    Default


    Try this patch:

    Code:
    YAHOO.ext.BasicDialog.prototype.hide = function(callback){
            if (this.fireEvent('beforehide', this) === false)
                return;
            
            this.beforeHide();
            if(this.shadow){
                this.shadow.hide();
            }
            if(this.animateTarget){
                this.proxy.setBounds(this.xy[0], this.xy[1], this.size.width, this.size.height);
                var b = getEl(this.animateTarget, true).getBox();
                this.proxy.show();
                this.el.hide();
                this.proxy.setBounds(b.x, b.y, b.width, b.height, true, .35, this.hideEl.createDelegate(this, [callback]));
            }else{
                this.proxy.hide();
                this.el.hide();
                this.fireEvent('hide', this);
            }
        }

Similar Threads

  1. Ext.ContentPanel - create inactive
    By andrey.korolyov in forum Ext 1.x: Help & Discussion
    Replies: 1
    Last Post: 16 Mar 2007, 5:49 PM
  2. What's x-layout-inactive-content? (newbie question)
    By benkooijman in forum Ext 1.x: Help & Discussion
    Replies: 5
    Last Post: 14 Mar 2007, 10:37 AM
  3. .ylayout-tools-button
    By seldon in forum Ext 1.x: Bugs
    Replies: 0
    Last Post: 13 Feb 2007, 5:07 AM
  4. Re-render BasicDialog with different content
    By kalebwalton in forum Ext 1.x: Help & Discussion
    Replies: 6
    Last Post: 6 Feb 2007, 12:37 PM
  5. BasicDialog autoTabs with dynamic content
    By sjivan in forum Ext 1.x: Help & Discussion
    Replies: 8
    Last Post: 20 Dec 2006, 10:31 AM

Thread Participants: 2