Sha256: aa425e63f7aa316d4b83a317531d19bef45fa69ed52435d74ac27c4a59143c26

Contents?: true

Size: 1.68 KB

Versions: 22

Compression:

Stored size: 1.68 KB

Contents

// ========================================================================
// SproutCore
// copyright 2006-2008 Sprout Systems, Inc.
// ========================================================================

require('panes/overlay') ;

SC.MENU_PANE = 'menu';
SC.MenuPaneView = SC.OverlayPaneView.extend({

  emptyElement: '<div class="pane menu-pane"><div class="shadow pane-wrapper"><div class="pane-root"></div><div class="top-left-edge"></div><div class="top-edge"></div><div class="top-right-edge"></div><div class="right-edge"></div><div class="bottom-right-edge"></div><div class="bottom-edge"></div><div class="bottom-left-edge"></div><div class="left-edge"></div></div></div>',

  layer: 400,

  isModal: false,
  
  // The ideal position for a picker pane is just below the anchor that 
  // triggered it.  Find that ideal position, then call adjustPosition.
  positionPane: function() {
    var anchor = this.anchorView ;
    var picker = this.containerView ;
    var origin ;
    
    // usually an anchorView will be passed.  The ideal position to appear is
    // just below the anchorView.  If that is not possible, fitToScreen will
    // take care of that.
    if (anchor) {
      origin = picker.convertFrameFromView(anchor.get('frame'), anchor) ;
      origin.y += origin.height ;
      origin = this.fitPositionToScreen(origin, picker, anchor) ;
      
    // if no anchor view has been set for some reason, just center.
    } else {
      var wsize = SC.window.get('size') ;
      var psize = picker.get('size') ;
      origin = {} ;
      origin.x = (wsize.width - psize.width) / 2 ;
      origin.y = (wsize.height - psize.height) / 2 ;
    }
    
    picker.set('origin',origin) ;
  }
  
}) ;

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
sproutcore-0.9.11 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.12 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.10 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.14 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.13 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.15 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.18 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.17 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.16 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.19 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.2 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.20 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.22 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.21 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.23 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.4 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.5 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.3 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.9 frameworks/sproutcore/panes/menu.js
sproutcore-0.9.6 frameworks/sproutcore/panes/menu.js