def analyze(self, identifier, filename, body): if not self._session.has(identifier): return None if filename.endswith(".apk"): file = create_temp(body, ".apk") self._session.set( identifier, Session(filename, android.Apk(file, sh.Shared(False)), Session.ANDROID)) elif filename.endswith(".ipa"): file = create_temp(body, ".ipa") self._session.set( identifier, Session(filename, ios.Ipa(file, sh.Shared(False)), Session.IOS)) return self._session.get(identifier)
def init_sim_envt(): print('Initializing simulation environment.') # Create a shared object for sharing global information global_params = shared.Shared() # Object for printing messages writer_obj = textformat.Colors() global_params.writer_obj = writer_obj # Reading the settings file envt_params = settings.Settings('sim.config') global_params.envt_params = envt_params read_settings_status = envt_params.read_settings() if not read_settings_status: writer_obj.print_msg('WHITE', 'Error in the settings file.') return False, None # Parse the openstreetmap file and make appropriate dictionaries # for node points and ways node_dict, way_dict, bounds = xmlparser.parse_osm(envt_params.envt['Map']) # GUI parameters, i.e., translation and scaling factors global_params.gui_params['trans_factor'] = guicalc.translation_factor( bounds) global_params.gui_params['scale_factor'] = guicalc.scale_factor( bounds, 600, 600) # Create the simulator timer global_params.sim_tick, pix_unit, pix_multiplier = simtimer.create_sim_timer( bounds, global_params) global_params.gui_params['pix_unit'] = pix_unit global_params.gui_params['pix_multiplier'] = pix_multiplier # Compute junction delay points global_params.gui_params['delay_pixels'] = guicalc.compute_delay_pixels( global_params) # Compute pixel coordinates of nodes for node in node_dict: pix_cord = geocalc.geo_to_cart(node_dict[node]['cord'], global_params.gui_params) node_dict[node]['pixcord'] = pix_cord global_params.way_dict = way_dict global_params.node_dict = node_dict # Create the graph global_params.road_graph, available_road_types = graphops.create_graph( node_dict, way_dict) available_types = [u for u, v in available_road_types] for group_id in global_params.envt_params.groups: try: road_types = [ int(x) for x in global_params.envt_params.groups[group_id]['Paths'] ] except KeyError: continue for road_type in road_types: if road_type not in available_types: writer_obj.print_msg( 'RED', 'Invalid paths given for %s in \'sim.config\'.' % (group_id)) writer_obj.print_msg( 'WHITE', 'Available path types: %s.' % (str(available_road_types))) return False, None # Create GUI if 'GUI_Enabled' is set to True in 'sim.config' if envt_params.envt['GUI_Enabled']: gui_ob = gui.Gui('UDTN Simulator', global_params) global_params.gui_ob = gui_ob gui.set_sim_ctrl_variables(global_params) gui_ob.create_map(global_params) # Create a report directory report_status = report.create_report_directory(global_params) if not report_status: return False, None return True, global_params
def __init__(self, handle): # pdb.set_trace() activity.Activity.__init__(self, handle) self.__logger = logging.getLogger('ClassroomPresenter') logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(levelname)s %(message)s') self.__screens = [] # Find our instance path self.__work_path = path(self.get_activity_root()) / 'instance' self.__save_path = path(self.get_activity_root()) / 'data' self.__deck_dir = self.__work_path / 'deck' bpth = path(activity.get_bundle_path()) self.__rsrc_dir = bpth / 'resources' self.__handle = handle # Set up the main canvas self.__slide_view = Gtk.HBox() print 'enter set_canvas', self.__handle.object_id self.set_canvas(self.__slide_view) self.__deck = slideshow.Deck( self, handle, self.__rsrc_dir, self.__deck_dir) # Set up activity sharing self.__shared = shared.Shared(self, self.__deck, self.__work_path) # Create a renderer for slides self.__renderer = sliderenderer.Renderer(self, self.__deck) # Set up Main Viewer box self.__main_view_box = Gtk.VBox() self.__slide = slideviewer.SlideViewer(self.__deck, self.__renderer) self.__text_area = textarea.TextArea(self.__deck, self.__work_path) self.__image_chooser = listview.Listview(self, self.__deck) self.__slideshow_chooser = cpxoview.Cpxoview(self, self.__deck) self.__html_slide = Gtk.EventBox() self.__html_slide.set_size_request(600, 480) self.__main_view_box.pack_start(self.__slide, True, True, 5) self.__screens.append(self.__slide) self.__main_view_box.pack_start(self.__image_chooser, True, True, 5) self.__screens.append(self.__image_chooser) self.__main_view_box.pack_start( self.__slideshow_chooser, True, True, 5) self.__screens.append(self.__slideshow_chooser) self.__main_view_box.pack_start(self.__html_slide, True, True, 5) self.__screens.append(self.__html_slide) self.__main_view_box.pack_start(self.__text_area, False, False, 0) # Create our toolbars makeTB = toolbars.MakeToolBar(self, self.__deck) self.__makeTB = makeTB navTB = toolbars.NavToolBar(self, self.__shared, self.__deck) inkTB = toolbars.InkToolBar(self.__slide, self.__deck) # Create the standard activity toolbox; add our toolbars toolbar_box = ToolbarBox() self.set_toolbar_box(toolbar_box) toolbar = toolbar_box.toolbar activity_button = ActivityToolbarButton(self) toolbar_box.toolbar.insert(activity_button, 0) activity_button.show() presentation_toolbar_button = ToolbarButton( page=makeTB, icon_name='toolbar-edit' # FIXME: change icon ) toolbar_box.toolbar.insert(presentation_toolbar_button, -1) presentation_toolbar_button.show() navigation_toolbar_button = ToolbarButton( page=navTB, icon_name='toolbar-edit' # FIXME: change icon ) toolbar_box.toolbar.insert(navigation_toolbar_button, -1) navigation_toolbar_button.show() ink_toolbar_button = ToolbarButton( page=inkTB, icon_name='toolbar-edit' # FIXME: change icon ) toolbar_box.toolbar.insert(ink_toolbar_button, -1) ink_toolbar_button.show() separator = Gtk.SeparatorToolItem() separator.props.draw = False separator.set_expand(True) toolbar_box.toolbar.insert(separator, -1) separator.show() stop_button = StopButton(self) toolbar_box.toolbar.insert(stop_button, -1) stop_button.show() toolbar_box.show() # Set up the side scrollbar widget self.__side_bar = sidebar.SideBar(self.__deck, self.__renderer) self.__side_bar.set_size_request(225, 100) # Set up a separator for the two widgets separator = Gtk.VSeparator() # Pack widgets into main window self.__slide_view.pack_start(self.__main_view_box, True, True, 0) self.__slide_view.pack_start(separator, False, False, 5) self.__slide_view.pack_start(self.__side_bar, False, False, 0) # Show all widgets self.__slide_view.show_all() self.__main_view_box.show() self.__slide.show() self.__text_area.show() self.__image_chooser.hide() self.__slideshow_chooser.hide() # self.__html_viewer.hide() separator.show() self.__side_bar.show_all() # Set up the progress view self.__progress_max = 1.0 self.__progress_cur = 0.01 self.__progress_view = Gtk.VBox() self.__progress_lbl = Gtk.Label("Loading slide deck...") self.__progress_bar = Gtk.ProgressBar() self.__progress_view.pack_start(self.__progress_lbl, True, False, 5) #self.__progress_view.pack_start(self.__progress_bar, False, False, 5) self.__progress_bar.set_fraction( self.__progress_cur / self.__progress_max) self.__shared.connect('deck-download-complete', self.dl_complete_cb)
def __init__(self, handle): #pdb.set_trace() activity.Activity.__init__(self, handle) self.__logger = logging.getLogger('ClassroomPresenter') logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(levelname)s %(message)s') self.__screens = [] # Find our instance path self.__work_path = path(self.get_activity_root()) / 'instance' self.__save_path = path(self.get_activity_root()) / 'data' self.__deck_dir = self.__work_path / 'deck' bpth = path(activity.get_bundle_path()) self.__rsrc_dir = bpth / 'resources' self.__handle = handle # Set up the main canvas self.__slide_view = gtk.HBox() print 'enter set_canvas', self.__handle.object_id self.set_canvas(self.__slide_view) self.__deck = slideshow.Deck(self, handle, self.__rsrc_dir, self.__deck_dir) # Set up activity sharing self.__shared = shared.Shared(self, self.__deck, self.__work_path) # Create a renderer for slides self.__renderer = sliderenderer.Renderer(self, self.__deck) # Set up Main Viewer box self.__main_view_box = gtk.VBox() self.__slide = slideviewer.SlideViewer(self.__deck, self.__renderer) self.__text_area = textarea.TextArea(self.__deck, self.__work_path) self.__image_chooser = listview.Listview(self, self.__deck) self.__slideshow_chooser = cpxoview.Cpxoview(self, self.__deck) self.__html_slide = gtk.EventBox() self.__html_slide.set_size_request(600, 480) self.__main_view_box.pack_start(self.__slide, True, True, 5) self.__screens.append(self.__slide) self.__main_view_box.pack_start(self.__image_chooser, True, True, 5) self.__screens.append(self.__image_chooser) self.__main_view_box.pack_start(self.__slideshow_chooser, True, True, 5) self.__screens.append(self.__slideshow_chooser) self.__main_view_box.pack_start(self.__html_slide, True, True, 5) self.__screens.append(self.__html_slide) self.__main_view_box.pack_start(self.__text_area, False, False, 0) # Create our toolbars makeTB = toolbars.MakeToolBar(self, self.__deck) self.__makeTB = makeTB navTB = toolbars.NavToolBar(self, self.__shared, self.__deck) inkTB = toolbars.InkToolBar(self.__slide, self.__deck) # Create the standard activity toolbox; add our toolbars toolbox = activity.ActivityToolbox(self) toolbox.add_toolbar("Presentation", makeTB) toolbox.add_toolbar("Navigation", navTB) toolbox.add_toolbar("Ink", inkTB) self.set_toolbox(toolbox) toolbox.show() self.__toolbox = toolbox # Open with slideshow toolbar toolbox.set_current_toolbar(SLIDESHOW_TOOLBAR) # Set up the side scrollbar widget self.__side_bar = sidebar.SideBar(self.__deck, self.__renderer) self.__side_bar.set_size_request(225, 100) # Set up a separator for the two widgets separator = gtk.VSeparator() # Pack widgets into main window self.__slide_view.pack_start(self.__main_view_box, True, True, 0) self.__slide_view.pack_start(separator, False, False, 5) self.__slide_view.pack_start(self.__side_bar, False, False, 0) # Show all widgets self.__slide_view.show_all() self.__main_view_box.show() self.__slide.show() self.__text_area.show() self.__image_chooser.hide() self.__slideshow_chooser.hide() #self.__html_viewer.hide() separator.show() self.__side_bar.show_all() # Set up the progress view self.__progress_max = 1.0 self.__progress_cur = 0.01 self.__progress_view = gtk.VBox() self.__progress_lbl = gtk.Label("Loading slide deck...") self.__progress_bar = gtk.ProgressBar() self.__progress_view.pack_start(self.__progress_lbl, True, False, 5) #self.__progress_view.pack_start(self.__progress_bar, False, False, 5) self.__progress_bar.set_fraction(self.__progress_cur / self.__progress_max) self.__shared.connect('deck-download-complete', self.dl_complete_cb) #if launched by Learn, set up deck pth = path('/tmp/showntell') if pth.exists(): #open slideshow, set Navigation toolbar current fin = open(pth, 'r') fn = fin.read() fin.close() self.read_file(fn) self.set_screen(0) subprocess.call('rm -rf ' + pth, shell=True)
def __init__(self, filename, plugin, plugin_name): super(Session, self).__init__() self._plugin = plugin self._filename = sh.Shared(filename) self._plugin_name = sh.Shared(plugin_name) self._error = sh.Shared(None)
def start_share(): sharedFile=shared.Shared() return sharedFile