[TemporaryStorage] add files required for SDK build
[samples/web/TemporaryStorage.git] / tizen-web-ui-fw / latest / js / src / widgets / page.js
1 (function( $, undefined ) {
2
3 $.widget( "mobile.page", $.mobile.widget, {
4         options: {
5                 theme: "c",
6                 domCache: false,
7                 keepNativeDefault: ":jqmData(role='none'), :jqmData(role='nojs')"
8         },
9
10         _create: function() {
11                 
12                 var self = this;
13                 
14                 // if false is returned by the callbacks do not create the page
15                 if ( self._trigger( "beforecreate" ) === false ) {
16                         return false;
17                 }
18
19                 self.element
20                         .addClass( "ui-page ui-body-" + self.options.theme )
21                         .bind( "pagebeforehide", function() {
22                                 self.removeContainerBackground();
23                         } )
24                         .bind( "pagebeforeshow", function() {
25                                 self.setContainerBackground();
26                         } );
27
28         },
29         
30         refresh: function() {
31                 $( this.element ).children( ".ui-content" ).trigger("updatelayout", ["external"]);
32         },
33
34         /* GUI Builder only : redesign page when user drag&drop header, footer */
35         setToolbar: function () {
36                 $( this.element ).trigger( "pagebeforeshow" );
37         },
38
39         removeContainerBackground: function() {
40                 $.mobile.pageContainer.removeClass( "ui-overlay-" + $.mobile.getInheritedTheme( this.element.parent() ) );
41         },
42         
43         // set the page container background to the page theme
44         setContainerBackground: function( theme ) {
45                 if ( this.options.theme ) {
46                         $.mobile.pageContainer.addClass( "ui-overlay-" + ( theme || this.options.theme ) );
47                 }
48         },
49
50         addBackBtn : function ( target ) {
51                 var $dest = $( ".ui-page-active .ui-footer" );
52
53                 if ( target == "header" ) {
54                         $dest = $( ".ui-page-active .ui-header" );
55                 }
56                 backBtn = $( "<a href='#' class='ui-btn-back' data-" + $.mobile.ns + "rel='back'></a>" )
57                         .buttonMarkup( {icon: "header-back-btn", theme : "s"} );
58                 if ( !$dest.find( ".ui-btn-back").length ) {
59                         backBtn.prependTo( $dest );
60                 }
61         },
62
63         keepNativeSelector: function() {
64                 var options = this.options,
65                         keepNativeDefined = options.keepNative && $.trim( options.keepNative );
66
67                 if ( keepNativeDefined && options.keepNative !== options.keepNativeDefault ) {
68                         return [options.keepNative, options.keepNativeDefault].join( ", " );
69                 }
70
71                 return options.keepNativeDefault;
72         }
73 });
74 })( jQuery );