src/js/ui/date/ui.date.js
function showCalendar(anchor) {
            try {
                this.$freezeCalendar = true;
                this.hideCalendar();

                var calendar = this.getCalendar();
                this.$anchor = anchor;

                var c = this.getCanvas(),
                    w = c.getLayer("win"),
                    p = zebkit.layout.toParentOrigin(0, 0, anchor, c);

                calendar.toPreferredSize();

                p.y = p.y + anchor.height;
                if (p.y + calendar.height > w.height - w.getBottom()) {
                    p.y = p.y - calendar.height - anchor.height - 1;
                }

                if (p.x + calendar.width > w.width - w.getRight()) {
                    p.x -= (p.x + calendar.width - w.width + w.getRight());
                }

                calendar.setLocation(p.x, p.y);
                ui.showWindow(this, "mdi", calendar);

                ui.activateWindow(calendar);
                calendar.monthDays.requestFocus();

                if (this.calendarShown !== undefined) {
                    this.calendarShown(this.calendar);
                }
            } finally {
                this.$freezeCalendar = false;
            }

            return this;
        }
function showCalendar(anchor) {
            try {
                this.$freezeCalendar = true;
                this.hideCalendar();

                var calendar = this.getCalendar();
                this.$anchor = anchor;

                var c = this.getCanvas(),
                    w = c.getLayer("win"),
                    p = zebkit.layout.toParentOrigin(0, 0, anchor, c);

                calendar.toPreferredSize();

                p.y = p.y + anchor.height;
                if (p.y + calendar.height > w.height - w.getBottom()) {
                    p.y = p.y - calendar.height - anchor.height - 1;
                }

                if (p.x + calendar.width > w.width - w.getRight()) {
                    p.x -= (p.x + calendar.width - w.width + w.getRight());
                }

                calendar.setLocation(p.x, p.y);
                ui.showWindow(this, "mdi", calendar);

                ui.activateWindow(calendar);
                calendar.monthDays.requestFocus();

                if (this.calendarShown !== undefined) {
                    this.calendarShown(this.calendar);
                }
            } finally {
                this.$freezeCalendar = false;
            }

            return this;
        }
function showCalendar ( anchor ) { try { this . $freezeCalendar = true ; this . hideCalendar ( ) ; var calendar = this . getCalendar ( ) ; this . $anchor = anchor ; var c = this . getCanvas ( ) , w = c . getLayer ( "win" ) , p = zebkit . layout . toParentOrigin ( 0 , 0 , anchor , c ) ; calendar . toPreferredSize ( ) ; p . y = p . y + anchor . height ; if ( p . y + calendar . height > w . height - w . getBottom ( ) ) { p . y = p . y - calendar . height - anchor . height - 1 ; } if ( p . x + calendar . width > w . width - w . getRight ( ) ) { p . x -= ( p . x + calendar . width - w . width + w . getRight ( ) ) ; } calendar . setLocation ( p . x , p . y ) ; ui . showWindow ( this , "mdi" , calendar ) ; ui . activateWindow ( calendar ) ; calendar . monthDays . requestFocus ( ) ; if ( this . calendarShown !== undefined ) { this . calendarShown ( this . calendar ) ; } } finally { this . $freezeCalendar = false ; } return this ; }
Show calendar as popup window for the given anchor component
@param  {zebkit.ui.Panel} anchor an anchor component.
@chainable
@method showCalendar
Show calendar as popup window for the given anchor component