/*******************************************************************************
* This file was generated by Tizen Web UI Builder.
* This file will be auto-generated each and everytime you save your project.
* Do not hand edit this file.
********************************************************************************/

app.init = function() {
    this.setStartPageId("page1");
    this.setMasterPagePath(location.href);

    var rootDir = $.mobile.path.get(app.getMasterPagePath());
    var newPage;

    newPage = new _page1_page();
    newPage.init_page(true, $.mobile.path.makeUrlAbsolute("page/page1.html", rootDir), $.mobile.path.makeUrlAbsolute("page/page1.css", rootDir), $.mobile.path.makeUrlAbsolute("page/page1.managed.css", rootDir));
    pageManager.addPage(newPage);
    newPage = new _page2_page();
    newPage.init_page(false, $.mobile.path.makeUrlAbsolute("page/page2.html", rootDir), $.mobile.path.makeUrlAbsolute("page/page2.css", rootDir), $.mobile.path.makeUrlAbsolute("page/page2.managed.css", rootDir));
    pageManager.addPage(newPage);

};
