PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` ///////////////////////////////////////////////////////////////////////////////// // // Authors: // Jean Le Feuvre, Telecom ParisTech // ///////////////////////////////////////////////////////////////////////////////// all_extensions = []; function gw_insert_media_node(node) { media_root.children[media_root.children.length] = node; } function gw_hide_dock() { dock.hide(); } function gw_show_dock() { dock.show(); } //insert an offscreen image + text function insert_dock_icon(label, icon) { var wnd = gw_new_window(dock, true, false); var icon = gw_new_icon_button(wnd, icon, (label=='') ? null : label, 'root_icon'); wnd.set_size(icon.width, icon.height); wnd.show(); return icon; } function extension_option_setter(_ext) { if ((typeof _ext.config_id == 'undefined') || !_ext.config_id || (_ext.config_id == '')) { return function (key_name, value) { } } else { return function (key_name, value) { this.__gpac_storage.set_option('Config', key_name, value); this.__gpac_storage.save(); } } } function extension_option_getter(_ext) { if ((typeof _ext.config_id == 'undefined') || !_ext.config_id || (_ext.config_id == '')) { return function (key_name, default_val) { } } else { return function (key_name, default_val) { if (key_name=='path') return _ext.path; var value = this.__gpac_storage.get_option('Config', key_name); if (value == null) { this.set_option(key_name, default_val); value = default_val; } return value; } } } function setup_extension_storage(extension) { var storage_name = 'config:' + extension.path + '' + extension.name; gwlog(l_inf, 'loading storage for extension ' + storage_name); extension.jsobj.__gpac_storage = gpac.new_storage(storage_name); extension.jsobj.get_option = extension_option_getter(extension); extension.jsobj.set_option = extension_option_setter(extension); } //Initialize our GUI function initialize() { //var icon; var i, count, wid; gpac.caption = 'Osmo4'; min_width = 160; min_height = 80; gw_display_width = parseInt(gpac.get_option('General', 'LastWidth')); gw_display_height = parseInt(gpac.get_option('General', 'LastHeight')); if (!gpac.fullscreen && (!gw_display_width || !gw_display_height)) { gw_display_width = 320; gw_display_height = 240; } if (!gpac.fullscreen && gw_display_width && gw_display_height) { gpac.set_size(gw_display_width, gw_display_height); } else { gw_display_width = gpac.screen_width; gw_display_height = gpac.screen_height; } //request event listeners on the window - GPAC specific BIFS extensions !!! We don't allow using the event proc for size events root.addEventListener('resize', on_resize, 0); /*load the UI lib*/ Browser.loadScript('gwlib.js', false); gwlib_init(ui_root); gwskin.enable_background(true); //what do we do with tooltips ? // gwskin.tooltip_callback = function(over, label) { alert('' + over ? label : ''); }; //create the dock containing all launchers dock = gw_new_grid_container(null); dock.on_display_size = function (w, h) { this.on_size(w, h); this.set_size(w, h); } dock.on_size = function (w, h) { var children = dock.get_children(); for (var i = 0; i < children.length; i++) { children[i].set_size(2 * gwskin.default_control_height, gwskin.default_control_height); } } /*init all extensions*/ var list = gpac.enum_directory('extensions', '*', 0); for (i=0; i