コード例 #1
0
    def keyPressed(self, event):
        if event.isControlDown() and event.isShiftDown(
        ):  # like in e.g. a web browser
            sign = {
                KeyEvent.VK_MINUS: -1,
                KeyEvent.VK_PLUS: 1,
                KeyEvent.VK_EQUALS: 1
            }.get(event.getKeyCode(), 0)
            if 0 == sign: return
            # Adjust font size of all UI components
            for component in components:
                font = component.getFont()
                if not font: continue
                size = max(8.0, font.getSize2D() + sign * 0.5)
                if size != font.getSize2D():
                    component.setFont(font.deriveFont(size))

            def repaint():
                # Adjust the height of a JTable's rows (why it doesn't do so automatically is absurd)
                for table in tables:
                    if table.getRowCount() > 0:
                        r = table.prepareRenderer(table.getCellRenderer(0, 0),
                                                  0, 0)
                        table.setRowHeight(
                            max(table.getRowHeight(),
                                r.getPreferredSize().height))
                for frame in frames:
                    if frame.isVisible():
                        frame.pack()
                        frame.repaint()

            SwingUtilities.invokeLater(repaint)
コード例 #2
0
def run_example(network, runner):
    """Used to conveniently create a NengoGraphics instance
    with an existing Network model.

    """
    if isinstance(network, UINetwork):
        model = network
        model_ui = network
    elif isinstance(network, NetworkImpl):
        model = network
        nengo = NengoGraphics()

        task = TrackedStatusMsg("Creating Model UI")
        model_ui = UINetwork(model)
        nengo.world.ground.addChild(model_ui)
        model_ui.openViewer()
        task.finished()

    print "Running example: " + network.name

    # All UI functions and constructors must be invoked from the Swing
    # Event Thread

    if not isinstance(runner, Runnable):
        runner = make_runnable(runner)
    SwingUtilities.invokeLater(runner)
コード例 #3
0
    def addVulnerability(self, issueKey, additionalInfo=None):
        print "TEST FOUND: [%s] - %s" % (issueKey, additionalInfo)

        # Add issue to summary list
        issue = SSLIssue(issueKey, self.url, self.helpers)
        if not (additionalInfo is None):
            issue.setIssueDetail(additionalInfo)

        self.issueList.append(issue)

        # Add to Burp issue
        if self.addToSitemap:
            scanIssues = self.callbacks.getScanIssues(self.url.getProtocol() +
                                                      "://" +
                                                      self.url.getHost())
            # Check if the issue already exists
            for oldIssue in scanIssues:
                try:
                    if oldIssue.getIssueName() == issue.getIssueName():
                        # exists
                        break
                except BaseException as e:
                    pass
            else:
                # Not exists, add new issue
                SwingUtilities.invokeLater(
                    ScannerRunnable(self.callbacks.addScanIssue, (issue, )))
コード例 #4
0
 def clearList(self, event):
     self._extender._lock.acquire()
     oldSize = self._extender._log.size()
     self._extender._log.clear()
     SwingUtilities.invokeLater(
         UpdateTableEDT(self._extender, "delete", 0, oldSize - 1))
     self._extender._lock.release()
コード例 #5
0
ファイル: UPnPHunter_Burp.py プロジェクト: t1v0/upnp-hunter
    def updateComboboxList(self, serv_dict):
        # Update the combobox items after location urls have been found
        def updateComboboxList_run(serv_dict):
            # Reinitialize the two comboboxes
            try:
                self.upnpcombo_targets.removeAllItems()
                self.upnpcombo_services.removeAllItems()
                self.upnpcombo_actions.removeAllItems()
            except BaseException as e:
                print(e)
            # First check if any UPnP service was found
            if not serv_dict:
                self.upnpcombo_targets.addItem("No UPnP services found")
                return
            # Build a dict of found IPs and location urls
            for scdp_url in serv_dict:
                parsed_scdp_url = urlparse(scdp_url)
                scdp_ip = parsed_scdp_url.netloc.split(":")[0]
                if scdp_ip in self.ip_service_dict:
                    # Append the new number to the existing array at this slot
                    self.ip_service_dict[scdp_ip].append(scdp_url)
                else:
                    # Create a new array in this slot
                    self.ip_service_dict[scdp_ip] = [scdp_url]

            # Add all the found IPs to the targets combo box
            for ip in self.ip_service_dict:
                self.upnpcombo_targets.addItem(ip)

            # Select the first element in the combobox by default - this will trigger the other comoboboxes to update
            self.upnpcombo_targets.setSelectedIndex(0)

        # Call the runnable method to update the plugin UI with results
        SwingUtilities.invokeLater(
            PyRunnable(updateComboboxList_run, serv_dict))
コード例 #6
0
        def matchRegex(baseURL, res):
            toRet = []
            for (name, regStr, ret) in self.regexTableModel.data:
                matchObj = re.findall(regStr, res, re.M | re.I)
                for i in matchObj:
                    try:
                        if i.find('http://') == 0 or i.find('https://') == 0:
                            url = i
                        elif i[0] == '/':
                            url = host + i
                        else:
                            url = host + '/' + i

                        if url not in pageType:
                            pageType[url] = name
                            SwingUtilities.invokeLater(
                                CrawlerRunnable(self.resultTableModel.addRow,
                                                ([name, url], )))

                            if ret:
                                toRet.append(url)
                    except:
                        print("Error when trying to save result ", i,
                              sys.exc_info()[0],
                              sys.exc_info()[1])
            return toRet
コード例 #7
0
ファイル: decorators.py プロジェクト: TimO-CIMSS/mcidasv
def _swingRunner(func, *args, **kwargs):
    if SwingUtilities.isEventDispatchThread():
        return func(*args, **kwargs)
    else:
        wrappedCode = _JythonCallable(func, args, kwargs)
        task = FutureTask(wrappedCode)
        SwingUtilities.invokeLater(task)
        return task.get()
コード例 #8
0
def _swingRunner(func, *args, **kwargs):
    if SwingUtilities.isEventDispatchThread():
        return func(*args, **kwargs)
    else:
        wrappedCode = _JythonCallable(func, args, kwargs)
        task = FutureTask(wrappedCode)
        SwingUtilities.invokeLater(task)
        return task.get()
コード例 #9
0
	def addToLog(self, messageInfo, XSSimp, SQLiimp, SSTIimp, parameters, resultxss, resultsqli, resultssti, xssreqresp, sqlireqresp, sstireqresp, xss_description, sqli_description, ssti_description, req_time):
		requestInfo = self._helpers.analyzeRequest(messageInfo)
		method = requestInfo.getMethod()
		self._lock.acquire()
		row = self._log.size()
		self._log.add(LogEntry(self._callbacks.saveBuffersToTempFiles(messageInfo), requestInfo.getUrl(),method,XSSimp,SQLiimp,SSTIimp,req_time, parameters,resultxss, resultsqli, resultssti, xssreqresp, sqlireqresp, sstireqresp, xss_description, sqli_description, ssti_description)) # same requests not include again.
		SwingUtilities.invokeLater(UpdateTableEDT(self,"insert",row,row))
		self._lock.release()
コード例 #10
0
def runSwingLater(func, *args, **kwargs):
    """
    Queues the given task to be run in the Event Dispatch Thread, regardless
    of whether the calling thread is the EDT itself.

    """
    runnable = RunnableWrapper(func, args, kwargs)
    SwingUtilities.invokeLater(runnable)
コード例 #11
0
ファイル: WiimoteThrottle2.py プロジェクト: AlanUS/ALM_JMRI
 def buttonInputReceived(self, evt):
     #        print("Wiimote Button event: ", evt)
     self.sync.acquire()
     self.evt = evt
     self.sync.release()
     SwingUtilities.invokeLater(
         self
     )  # Delegate processing to Swing thread (when we are here, we're in the WiiRemoteJ driver thread)
コード例 #12
0
def runSwingLater(func, *args, **kwargs):
    """
    Queues the given task to be run in the Event Dispatch Thread, regardless
    of whether the calling thread is the EDT itself.

    """
    runnable = RunnableWrapper(func, args, kwargs)
    SwingUtilities.invokeLater(runnable)
コード例 #13
0
 def __timer_noswing(self, *args):
     #print "#### >>>>>>>>>>> timer noswing enter."
     if self.timer != None:
         self.timer.cancel()
     self.__previous_cursor = self.tree.getCursor()
     SwingUtilities.invokeLater(self.__set_wait_cursor)
     self.exp = getExpansionState(self.tree)
     self.model = createTreeModel(self.mapContext)
     SwingUtilities.invokeLater(self.__timer_swing)
コード例 #14
0
 def valueChanged(self, event):
   if event.getValueIsAdjusting():
     return
   # Must run later, when the event dispatch thread
   # has updated the selection
   def after():
     rowIndex = table.getSelectionModel().getLeadSelectionIndex()
     textarea.setText(applicants[rowIndex][2])
   SwingUtilities.invokeLater(after)
コード例 #15
0
 def __timer_swing(self, *args):
     #print "#### >>>>>>>>>>> timer swing1 enter."
     if self.model != None:
         #print "#### >>>>>>>>>>> timer swing2."
         self.tree.setModel(self.model)
         self.tree.getModel().reload()
         setExpansionState(self.tree, self.exp)
         self.tree.revalidate()
         self.tree.repaint()
     SwingUtilities.invokeLater(self.__restore_cursor)
コード例 #16
0
        def selectWhenRightClickEvent(event):
            def select(e):
                rowAtPoint = self.resultTable.rowAtPoint(
                    SwingUtilities.convertPoint(self.resultTablePopupMenu,
                                                Point(0, 0), self.resultTable))
                if rowAtPoint > -1:
                    self.resultTable.setRowSelectionInterval(
                        rowAtPoint, rowAtPoint)

            SwingUtilities.invokeLater(CrawlerRunnable(select, (event, )))
コード例 #17
0
def saveTable():
    def after():
        # UI elements to alter under the event dispatch thread
        note_status.setText("Saved.")
        edit_note.setEnabled(True)
        save_note.setEnabled(False)

    # Repeatedly attempt to write the CSV until there are no more updates,
    # in which case the scheduled thread (see below) will pause for a bit before retrying.
    while requested_save_csv.getAndSet(False):
        writeCSV(csv_image_notes, header, entries)
        SwingUtilities.invokeLater(after)
コード例 #18
0
    def buildNetwork(self, network):
        network.name = "Integrator"

        # Util.debugMsg("Network building started")

        f = ConstantFunction(1, 1.0)
        input = FunctionInput("input", [f], Units.UNK)

        # uiViewer.addNeoNode(uiInput);

        ef = NEFEnsembleFactoryImpl()
        integrator = ef.make("integrator", 500, 1, "integrator1", False)
        interm = integrator.addDecodedTermination("input", [[tau]], tau, False)
        fbterm = integrator.addDecodedTermination("feedback", [[1.0]], tau, False)

        network.addNode(integrator)
        time.sleep(1)
        network.addNode(input)
        time.sleep(1)
        # UINEFEnsemble uiIntegrator = new UINEFEnsemble(integrator);
        # uiViewer.addNeoNode(uiIntegrator);
        # uiIntegrator.collectSpikes(true);

        # UITermination uiInterm =
        # uiIntegrator.showTermination(interm.getName());
        # UITermination uiFbterm =
        # uiIntegrator.showTermination(fbterm.getName());

        network.addProjection(input.getOrigin(FunctionInput.ORIGIN_NAME), interm)
        time.sleep(0.5)
        network.addProjection(integrator.getOrigin(NEFEnsemble.X), fbterm)
        time.sleep(0.5)

        # Test removing projections
        network.removeProjection(interm)
        time.sleep(0.5)
        # add the projection back
        network.addProjection(input.getOrigin(FunctionInput.ORIGIN_NAME), interm)
        time.sleep(0.5)
        # Add probes
        integratorXProbe = network.simulator.addProbe("integrator", NEFEnsemble.X, True)
        time.sleep(0.5)
        # Test adding removing probes
        network.simulator.removeProbe(integratorXProbe)
        time.sleep(0.5)
        # add the probe back
        network.simulator.addProbe("integrator", NEFEnsemble.X, True)
        time.sleep(0.5)

        SwingUtilities.invokeLater(make_runnable(self.doPostUIStuff))
コード例 #19
0
ファイル: ui.py プロジェクト: acardona/scripts
def showTable(rows,
              title="Table",
              column_names=None,
              dataType=Number,
              width=400,
              height=500,
              showTable=True,
              windowClosing=None,
              onCellClickFn=None,
              onRowClickFn=None):
    """
     rows: list of lists of numbers.
     title: for the JFrame
     column_names: list of strings, or None
     width: defaults to 400 px
     height: defaults to 500 px
     showTable: whether to show the JFrame.
     windowClosing: an optional function to execute when the table's JFrame is closed.
     onClickCellFn: an optional function to execute when a table's cell is clicked, and receiving 3 args: row index, col index, cell value.
     onRowCellFn: an optinal function to execute when a table's row is clicked, and receiving as args the whole row.
     
     return: a tuple with the JTable and the JFrame
  """
    table_data = DataTable(rows,
                           column_names=column_names,
                           onCellClickFn=onCellClickFn,
                           onRowClickFn=onRowClickFn)
    table = JTable(table_data)
    table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION)
    #table.setAutoCreateRowSorter(True) # to sort the view only, not the data in the underlying TableModel
    sorter = TableRowSorter(table_data)
    sorter.setComparator(0, Comparator.naturalOrder())
    sorter.setComparator(1, Comparator.naturalOrder())
    sorter.setComparator(2, Comparator.naturalOrder())
    table.setRowSorter(sorter)

    frame = JFrame(title) if windowClosing is None else JFrame(
        title, windowClosing=windowClosing)
    jsp = JScrollPane(table)
    jsp.setMinimumSize(Dimension(width, height))
    frame.getContentPane().add(jsp)

    def show():
        frame.pack()
        frame.setVisible(True)

    if showTable:
        SwingUtilities.invokeLater(show)

    return table, frame
コード例 #20
0
    def undoAction(self):
        """Undo the action."""
        if not self.finished:
            messages.showError("Action was never done, so it can't be undone")
            return

        """Does the action layer, starts an appropriate thread"""
        if self.spawn_thread and SwingUtilities.isEventDispatchThread():
            threading.Thread(target=self.undoInternal).start()
        elif self.spawn_thread or SwingUtilities.isEventDispatchThread():
            # In the thread we want to be
            self.undoInternal()
        else:
            SwingUtilities.invokeLater(RunWrapper(self.undoInternal))
コード例 #21
0
def runSwing(func, *args, **kwargs):
    """
    Runs the given function in the Event Dispatch Thread.
    If this is invoked inside the EDT, the given function will be run normally.
    Otherwise, it'll be queued to be run later.
    
    :return: None

    """
    if SwingUtilities.isEventDispatchThread():
        func(*args, **kwargs)
    else:
        runnable = RunnableWrapper(func, args, kwargs)
        SwingUtilities.invokeLater(runnable)
コード例 #22
0
def runSwing(func, *args, **kwargs):
    """
    Runs the given function in the Event Dispatch Thread.
    If this is invoked inside the EDT, the given function will be run normally.
    Otherwise, it'll be queued to be run later.
    The return value from the target function will not be available.

    :return: None

    """
    if SwingUtilities.isEventDispatchThread():
        func(*args, **kwargs)
    else:
        runnable = RunnableWrapper(func, args, kwargs)
        SwingUtilities.invokeLater(runnable)
コード例 #23
0
ファイル: decorators.py プロジェクト: mhiley/mcidasv
def _swingRunner(func, *args, **kwargs):
    # the naming of this function, along with _swingWaitForResult, is kinda
    # misleading; both functions will "wait" for the result (due to the get()).
    # the difference between the two is that this function "wraps" invokeLater,
    # while _swingWaitForResult "wraps" invokeAndWait.
    #
    # the real world difference is that this function appends to the end of the
    # event dispatch thread, while _swingWaitForResult puts its Task at the
    # beginning of the queue.
    if SwingUtilities.isEventDispatchThread():
        return func(*args, **kwargs)
    else:
        wrappedCode = _JythonCallable(func, args, kwargs)
        task = FutureTask(wrappedCode)
        SwingUtilities.invokeLater(task)
        return task.get()
コード例 #24
0
def _swingRunner(func, *args, **kwargs):
    # the naming of this function, along with _swingWaitForResult, is kinda
    # misleading; both functions will "wait" for the result (due to the get()).
    # the difference between the two is that this function "wraps" invokeLater,
    # while _swingWaitForResult "wraps" invokeAndWait.
    #
    # the real world difference is that this function appends to the end of the
    # event dispatch thread, while _swingWaitForResult puts its Task at the
    # beginning of the queue.
    if SwingUtilities.isEventDispatchThread():
        return func(*args, **kwargs)
    else:
        wrappedCode = _JythonCallable(func, args, kwargs)
        task = FutureTask(wrappedCode)
        SwingUtilities.invokeLater(task)
        return task.get()
コード例 #25
0
def filterTable():
    global table_entries  # flag global variable as one to modify here
    try:
        text = search_field.getText()
        if 0 == len(text):
            table_entries = entries  # reset: show all rows
        else:
            pattern = re.compile(text)
            # Search in filepath and notes
            table_entries = [
                row for row in entries
                if pattern.search(row[-2]) or pattern.search(row[-1])
            ]
        SwingUtilities.invokeLater(
            lambda: table.updateUI())  # executed by the event dispatch thread
    except:
        print "Malformed regex pattern"
コード例 #26
0
    def valueChanged(self, event):
        if event.getValueIsAdjusting():
            return
        askToSaveUnsavedChanges()

        # Must run later in the context of the event dispatch thread
        # when the latter has updated the table selection
        def after():
            rowIndex = getSelectedRowIndex()
            path.setText(table_entries[rowIndex][-2])
            path.setToolTipText(
                path.getText())  # for mouse over to show full path
            textarea.setText(table_entries[rowIndex][-1])
            textarea.setEditable(False)
            edit_note.setEnabled(True)
            save_note.setEnabled(False)
            note_status.setText("Saved.")  # as in entries and the CSV file

        SwingUtilities.invokeLater(after)
コード例 #27
0
 def processHttpMessage(self, tool_flag, message_is_request, message_info):
     if tool_flag not in [
             IBurpExtenderCallbacks.TOOL_PROXY,
             IBurpExtenderCallbacks.TOOL_REPEATER,
             IBurpExtenderCallbacks.TOOL_TARGET,
     ]:
         return
     if message_is_request:
         return
     if not self._is_pre_analyze_validation_pass(tool_flag):
         return
     request_info, response_info = self._analyze_message(message_info)
     if not self._is_pre_process_validation_pass(request_info,
                                                 response_info):
         return
     SwingUtilities.invokeLater(
         ExecuteApplicationCommandInGuiThread(
             self._create_process_http_dialog_command(
                 tool_flag, request_info, message_info)))
コード例 #28
0
ファイル: authorization.py プロジェクト: zorroroot/Autorize
def checkAuthorization(self, messageInfo, originalHeaders, checkUnauthorized):
    oldResponse = messageInfo.getResponse()
    message = makeMessage(self, messageInfo, True, True)
    requestResponse = makeRequest(self, messageInfo, message)
    newResponse = requestResponse.getResponse()
    analyzedResponse = self._helpers.analyzeResponse(newResponse)
    
    oldStatusCode = originalHeaders[0]
    newStatusCode = analyzedResponse.getHeaders()[0]
    oldContentLen = getResponseContentLength(self, oldResponse)
    newContentLen = getResponseContentLength(self, newResponse)

    # Check unauthorized request
    if checkUnauthorized:
        messageUnauthorized = makeMessage(self, messageInfo, True, False)
        requestResponseUnauthorized = makeRequest(self, messageInfo, messageUnauthorized)
        unauthorizedResponse = requestResponseUnauthorized.getResponse()
        analyzedResponseUnauthorized = self._helpers.analyzeResponse(unauthorizedResponse)  
        statusCodeUnauthorized = analyzedResponseUnauthorized.getHeaders()[0]
        contentLenUnauthorized = getResponseContentLength(self, unauthorizedResponse)

    EDFilters = self.EDModel.toArray()

    impression = checkBypass(self, oldStatusCode,newStatusCode,oldContentLen,newContentLen,EDFilters,requestResponse,self.AndOrType.getSelectedItem())

    if checkUnauthorized:
        EDFiltersUnauth = self.EDModelUnauth.toArray()
        impressionUnauthorized = checkBypass(self, oldStatusCode,statusCodeUnauthorized,oldContentLen,contentLenUnauthorized,EDFiltersUnauth,requestResponseUnauthorized,self.AndOrTypeUnauth.getSelectedItem())

    self._lock.acquire()
    
    row = self._log.size()
    method = self._helpers.analyzeRequest(messageInfo.getRequest()).getMethod()
    
    if checkUnauthorized:
        self._log.add(LogEntry(self.currentRequestNumber,self._callbacks.saveBuffersToTempFiles(requestResponse), method, self._helpers.analyzeRequest(requestResponse).getUrl(),messageInfo,impression,self._callbacks.saveBuffersToTempFiles(requestResponseUnauthorized),impressionUnauthorized)) # same requests not include again.
    else:
        self._log.add(LogEntry(self.currentRequestNumber,self._callbacks.saveBuffersToTempFiles(requestResponse), method, self._helpers.analyzeRequest(requestResponse).getUrl(),messageInfo,impression,None,"Disabled")) # same requests not include again.
    
    SwingUtilities.invokeLater(UpdateTableEDT(self,"insert",row,row))
    self.currentRequestNumber = self.currentRequestNumber + 1
    self._lock.release()
コード例 #29
0
    def updateComboboxList(self, cb_list):
        # Update the combobox items after location urls have been found
        def updateComboboxList_run(cb_list):
            scope_list = []
            cb_dict = {}
            # Reinitialize the two comboboxes
            self.upnpcombo_targets.removeAllItems()
            self.upnpcombo_services.removeAllItems()
            # First check if any UPnP service was found
            if not cb_list:
                self.upnpcombo_targets.addItem("None UPnP service found")
                return
            # Build a dict of found IPs and location urls
            for cb_url in cb_list:
                parsed_cb_url = urlparse(cb_url)
                cb_ip = parsed_cb_url.netloc.split(":")[0]
                if cb_ip in cb_dict:
                    # Append the new number to the existing array at this slot
                    cb_dict[cb_ip].append(cb_url)
                else:
                    # Create a new array in this slot
                    cb_dict[cb_ip] = [cb_url]
            # All the found UPnP services are considered in scope
            self.scope_dict.clear()
            for ip in cb_dict:
                self.scope_dict[ip] = cb_dict[ip]
            # Set the found IPs on the ip list combobox
            for scope_ip in self.scope_dict:
                self.upnpcombo_targets.addItem(scope_ip)
            # Set the found location urls in the upnp list combobox
            selected_ip = self.upnpcombo_targets.getSelectedItem()
            self.upnpcombo_services.removeAllItems()
            for scope_url in self.scope_dict[selected_ip]:
                self.upnpcombo_services.addItem(scope_url)

            # Select the first element in the combobox by default
            self.upnpcombo_services.setSelectedIndex(0)
            self.confirmbutton.setEnabled(True)

        # Call the runnable method to update the plugin UI with results
        SwingUtilities.invokeLater(PyRunnable(updateComboboxList_run, cb_list))
コード例 #30
0
ファイル: payloadview.py プロジェクト: affilares/graph-ql
 def on_change(evt):
     if not self._textareas[name].hasFocus():
         return
     try:
         if name == "raw":
             SwingUtilities.invokeLater(lambda: self._refresh_queries(
                 self._textareas['raw'].getText()))
         elif name.startswith('gql_query#'):
             id = int(name.split("#")[1])
             content = json.loads(self._textareas['raw'].getText())
             if id == 0 and not isinstance(content, list):
                 content['query'] = self._textareas[name].getText()
             else:
                 content[id]['query'] = self._textareas[name].getText()
             SwingUtilities.invokeLater(lambda: self._textareas['raw'].
                                        setText(json.dumps(content)))
         elif name.startswith('gql_variables#'):
             id = int(name.split("#")[1])
             content = json.loads(self._textareas['raw'].getText())
             if id == 0 and not isinstance(content, list):
                 content['variables'] = json.loads(
                     self._textareas[name].getText())
             else:
                 content[id]['variables'] = json.loads(
                     self._textareas[name].getText())
             SwingUtilities.invokeLater(lambda: self._textareas['raw'].
                                        setText(json.dumps(content)))
     except ValueError:
         pass  # Avoid crashing for JSON not valid incompatibilities
コード例 #31
0
def addOrUpdateEntry(imp):
    """
  This function runs in response to an image being opened,
  and finds out whether a new entry should be added to the table (and CSV file)
  or whether an existing entry ought to be added,
  or whether there's nothing to do because it's a new image not opened from a file.
  
  imp: an ImagePlus
  """
    # Was the image opened from a file?
    fi = imp.getOriginalFileInfo()
    if not fi:
        # Image was created new, not from a file: ignore
        return
    filepath = os.path.join(fi.directory,
                            fi.fileName) if not fi.url else fi.url
    # Had we opened this file before?
    index = image_paths.get(filepath, None)
    now = datetime.now().strftime("%Y-%m-%d %H:%M")
    if index is None:
        # File isn't yet in the table: add it
        entries.append([fi.fileName, now, now, filepath, ""])
        image_paths[filepath] = len(entries) - 1
    else:
        # File exists: edit its last seen date
        entries[index][2] = now
    # Rerun filtering if needed
    filterTable()

    # Update table to reflect changes to the underlying data model
    def repaint():
        table.updateUI()
        table.repaint()

    SwingUtilities.invokeLater(
        repaint)  # must run in the event dispatch thread
    # Request writing changes to the CSV file
    requested_save_csv.set(True)
コード例 #32
0
ファイル: adjointTest.py プロジェクト: ediaz/lss
def dot(u, v):
    return sum(mul(u, v))


def zfloat(n1, n2, n3=None):
    return zerofloat(n1, n2) if n3 is None else zerofloat(n1, n2, n3)


def rfloat(n1, n2, n3=None):
    r = randfloat(random, n1, n2) if n3 is None else randfloat(
        random, n1, n2, n3)
    sub(r, 0.5, r)
    mul(2.0, r, r)
    return r


##############################################################################
# Do everything on Swing thread.

import sys
from java.lang import Runnable
from javax.swing import SwingUtilities


class RunMain(Runnable):
    def run(self):
        main(sys.argv)


SwingUtilities.invokeLater(RunMain())
コード例 #33
0
from   java.lang      import Runnable;
from   javax.swing    import JFrame;
from   javax.swing    import SwingUtilities;
class ToBeDetermined( Runnable ) :
    def __init__( self ) :
        self.frame = JFrame( 'ToBeDetermined' , defaultCloseOperation = JFrame.EXIT_ON_CLOSE );        
    def run( self ) :
        self.frame.setVisible( 1 );   # Have the application make itself visible

SwingUtilities.invokeLater( ToBeDetermined() );
raw_input();

コード例 #34
0
ファイル: javautils.py プロジェクト: bgr/unnamed_gui_tool
 def wrapped(*args, **kwargs):
     SwingUtilities.invokeLater(Runnable(func, *args, **kwargs))
コード例 #35
0
ファイル: adjointExamples.py プロジェクト: amunozNFX/lss
  equal = False
  while not equal and digits>0:
    almost = Almost(digits)
    equal = almost.equal(xa,xb)
    if not equal:
      digits -= 1
  return digits

def dot(u,v):
  return sum(mul(u,v))

def zfloat(n1,n2):
  return zerofloat(n1,n2)

def rfloat(n1,n2):
  r = randfloat(random,n1,n2)
  sub(r,0.5,r)
  mul(2.0,r,r)
  return r

##############################################################################
# Do everything on Swing thread.

import sys
from java.lang import Runnable
from javax.swing import SwingUtilities
class RunMain(Runnable):
  def run(self):
    main(sys.argv)
SwingUtilities.invokeLater(RunMain())
コード例 #36
0
ファイル: gui.py プロジェクト: aeriksson/geogebra
def later(f, *args, **kwargs):
    SwingUtilities.invokeLater(Later(f, args, kwargs))
    return f
コード例 #37
0
    def restoreState(self):
        parentFrame = JFrame()
        fileChooser = JFileChooser()
        fileChooser.setDialogTitle("State import file")
        userSelection = fileChooser.showDialog(parentFrame, "Restore")

        if userSelection == JFileChooser.APPROVE_OPTION:
            importFile = fileChooser.getSelectedFile()

            with open(importFile.getAbsolutePath(), 'r') as csvfile:

                csvreader = csv.reader(csvfile, delimiter='\t', quotechar='|')

                for row in csvreader:

                    tempRequestResponseHost = row[0]
                    tempRequestResponsePort = row[1]
                    tempRequestResponseProtocol = row[2]
                    tempRequestResponseRequest = base64.b64decode(row[3])
                    tempRequestResponseResponse = base64.b64decode(row[4])

                    tempRequestResponseHttpService = self._extender._helpers.buildHttpService(
                        tempRequestResponseHost, int(tempRequestResponsePort),
                        tempRequestResponseProtocol)
                    tempRequestResponse = IHttpRequestResponseImplementation(
                        tempRequestResponseHttpService,
                        tempRequestResponseRequest,
                        tempRequestResponseResponse)

                    tempOriginalRequestResponseHost = row[5]
                    tempOriginalRequestResponsePort = row[6]
                    tempOriginalRequestResponseProtocol = row[7]
                    tempOriginalRequestResponseRequest = base64.b64decode(
                        row[8])
                    tempOriginalRequestResponseResponse = base64.b64decode(
                        row[9])

                    tempOriginalRequestResponseHttpService = self._extender._helpers.buildHttpService(
                        tempOriginalRequestResponseHost,
                        int(tempOriginalRequestResponsePort),
                        tempOriginalRequestResponseProtocol)
                    tempOriginalRequestResponse = IHttpRequestResponseImplementation(
                        tempOriginalRequestResponseHttpService,
                        tempOriginalRequestResponseRequest,
                        tempOriginalRequestResponseResponse)

                    checkAuthentication = True
                    if row[10] != '':
                        tempUnauthorizedRequestResponseHost = row[10]
                        tempUnauthorizedRequestResponsePort = row[11]
                        tempUnauthorizedRequestResponseProtocol = row[12]
                        tempUnauthorizedRequestResponseRequest = base64.b64decode(
                            row[13])
                        tempUnauthorizedRequestResponseResponse = base64.b64decode(
                            row[14])
                        tempUnauthorizedRequestResponseHttpService = self._extender._helpers.buildHttpService(
                            tempUnauthorizedRequestResponseHost,
                            int(tempUnauthorizedRequestResponsePort),
                            tempUnauthorizedRequestResponseProtocol)
                        tempUnauthorizedRequestResponse = IHttpRequestResponseImplementation(
                            tempUnauthorizedRequestResponseHttpService,
                            tempUnauthorizedRequestResponseRequest,
                            tempUnauthorizedRequestResponseResponse)
                    else:
                        checkAuthentication = False
                        tempUnauthorizedRequestResponse = None

                    tempEnforcementStatus = row[15]
                    tempEnforcementStatusUnauthorized = row[16]

                    self._extender._lock.acquire()

                    row = self._extender._log.size()

                    if checkAuthentication:
                        self._extender._log.add(
                            LogEntry(
                                self._extender.currentRequestNumber,
                                self._extender._callbacks.
                                saveBuffersToTempFiles(tempRequestResponse),
                                self._extender._helpers.analyzeRequest(
                                    tempRequestResponse).getMethod(),
                                self._extender._helpers.analyzeRequest(
                                    tempRequestResponse).getUrl(),
                                self._extender._callbacks.
                                saveBuffersToTempFiles(
                                    tempOriginalRequestResponse),
                                tempEnforcementStatus,
                                self._extender._callbacks.
                                saveBuffersToTempFiles(
                                    tempUnauthorizedRequestResponse),
                                tempEnforcementStatusUnauthorized))
                    else:
                        self._extender._log.add(
                            LogEntry(
                                self._extender.currentRequestNumber,
                                self._extender._callbacks.
                                saveBuffersToTempFiles(tempRequestResponse),
                                self._extender._helpers.analyzeRequest(
                                    tempRequestResponse).getMethod(),
                                self._extender._helpers.analyzeRequest(
                                    tempRequestResponse).getUrl(),
                                self._extender._callbacks.
                                saveBuffersToTempFiles(
                                    tempOriginalRequestResponse),
                                tempEnforcementStatus, None,
                                tempEnforcementStatusUnauthorized))

                    SwingUtilities.invokeLater(
                        UpdateTableEDT(self._extender, "insert", row, row))
                    self._extender.currentRequestNumber = self._extender.currentRequestNumber + 1
                    self._extender._lock.release()

                lastRow = self._extender._log.size()
                if lastRow > 0:
                    cookies = self._extender.getCookieFromMessage(
                        self._extender._log.get(lastRow - 1)._requestResponse)
                    if cookies:
                        self._extender.lastCookies = cookies
                        self._extender.fetchButton.setEnabled(True)
コード例 #38
0
     self.started = Calendar.getInstance().getTimeInMillis();
     #print self.textfield1.getText()  
     #time.sleep(5)
     iters = toInt(self.textfield1.getText())
     jocl_smoother(iters)
     elapsed = Calendar.getInstance().getTimeInMillis() - self.started;
     self.clockLabel.setText( 'JOCL Elapsed: %.2f seconds' % ( float( elapsed ) / 1000.0 ) )
    
    def onJava(self, e): 
     self.clockLabel.setText('running')
     self.started = Calendar.getInstance().getTimeInMillis();
     #print self.textfield1.getText()  
     #time.sleep(5)
     iters = toInt(self.textfield1.getText())
     java_smoother(iters)
     elapsed = Calendar.getInstance().getTimeInMillis() - self.started;
     self.clockLabel.setText( 'Java Elapsed: %.2f seconds' % ( float( elapsed ) / 1000.0 ) )
     

     
     
    
if ( __name__ == '__main__' ) or ( __name__ == 'main' ) :
    SwingUtilities.invokeLater( Demo() )
    raw_input();
    sys.exit();
else :
  print 'Error - script must be executed, not imported.\n';
  print 'Usage: jython %s.py\n' % __name__;
  print '   or: wsadmin -conntype none -f %s.py' % __name__;
コード例 #39
0
def invokeLater(func, *args, **kwargs):
    """Convenience method for SwingUtilities.invokeLater()."""
    SwingUtilities.invokeLater(ProcRunnable(func, *args, **kwargs))
    return
コード例 #40
0
    def onClickRun(self,event=""):
        self.DirName= FolderChooser(self.f)
        self.textAreaInputForFolder.setText(str(self.DirName))

    def onClickOut(self,event=""):
        self.OutDirName= FolderChooser(self.f)
        self.textAreaOutPutFolder.setText(str(self.OutDirName))
    
    def onClickSample(self,event):
        self.sampleSheet=FileChooser(self.f)
        self.textAreaForSheet.setText(str(self.sampleSheet))
        
    def performDemultiplex(self,event):
        NumberOfIterations=[self.Iter1.selected,self.Iter2.selected,self.Iter3.selected,self.Iter4.selected]
        LaneNumber=[self.lane1.selected,self.lane2.selected,self.lane3.selected,self.lane4.selected,self.lane5.selected,self.lane6.selected,self.lane7.selected,self.lane8.selected]
        selectedLanes = [str(i+1) for i, x in enumerate(LaneNumber) if x==True]
        lanes=','.join(selectedLanes)
        print LaneNumber,selectedLanes,lanes, lanes
        self.task = ET.Task(self,NumberOfIterations,str(self.sampleSheet),str(self.DirName),str(self.OutDirName), lanes)
        self.task.execute()

    def CancelJob(self,event):
        self.task.cancel(True)
        
if __name__ == "__main__":
    SwingUtilities.invokeLater(DemultiplexGUI())

        
        
コード例 #41
0
ファイル: ConsolePanel.py プロジェクト: hobson/ggpy
 def updateTextArea(self, text):
     """ generated source for method updateTextArea """
     SwingUtilities.invokeLater(Runnable())
コード例 #42
0
ファイル: gui.py プロジェクト: Serabe/geogebra
def later(f):
    SwingUtilities.invokeLater(Later(f))
    return f
コード例 #43
0
ファイル: demo2.py プロジェクト: ke0m/Senior_Design
    def onJocl(self, e):
        self.clockLabel.setText('running')
        self.started = Calendar.getInstance().getTimeInMillis()
        #print self.textfield1.getText()
        #time.sleep(5)
        iters = toInt(self.textfield1.getText())
        jocl_smoother(iters)
        elapsed = Calendar.getInstance().getTimeInMillis() - self.started
        self.clockLabel.setText('JOCL Elapsed: %.2f seconds' %
                                (float(elapsed) / 1000.0))

    def onJava(self, e):
        self.clockLabel.setText('running')
        self.started = Calendar.getInstance().getTimeInMillis()
        #print self.textfield1.getText()
        #time.sleep(5)
        iters = toInt(self.textfield1.getText())
        java_smoother(iters)
        elapsed = Calendar.getInstance().getTimeInMillis() - self.started
        self.clockLabel.setText('Java Elapsed: %.2f seconds' %
                                (float(elapsed) / 1000.0))


if (__name__ == '__main__') or (__name__ == 'main'):
    SwingUtilities.invokeLater(Demo())
    raw_input()
    sys.exit()
else:
    print 'Error - script must be executed, not imported.\n'
    print 'Usage: jython %s.py\n' % __name__
    print '   or: wsadmin -conntype none -f %s.py' % __name__
コード例 #44
0
 def postAction(self):
     """Only add the action once to the Action manager."""
     if not self.finished and isinstance(self, ReversibleAction):
         SwingUtilities.invokeLater(RunWrapper(
             lambda: nengoinstance.actionManager.addReversibleAction(self)))
コード例 #45
0

def launch(model):
    def run():
        makeUI(model)

    return run


if txt_file is None:
    od = OpenDialog("Choose a text file listing file paths")
    txt_file = od.getPath()

if txt_file:
    model = TableModel(txt_file)
    SwingUtilities.invokeLater(launch(model))

# FOR THE I2K WORKSHOP:
# Enable changing text font size in all components by control+shift+(plus|equals)/minus
components = []
tables = []
frames = []


def addFontResizing():
    global frames
    containers = [
        frame for frame in JFrame.getFrames()
        if frame.getTitle() == "File paths" and frame.isVisible()
    ]
    frames = containers[:]
コード例 #46
0
ファイル: meegui_jy.py プロジェクト: fran-jo/SimuGUI
    frame.setSize(500, 600)
    frame.setLayout(BorderLayout())
    splitPane = JSplitPane(JSplitPane.VERTICAL_SPLIT)
    
    #Create and set up the content pane.
    psimures= ResourcePanel()
    psimures.setOpaque(True)
    pconfig = ConfigurationPanel()
    pconfig.setOpaque(True)      #content panes must be opaque

    # show the GUI
    splitPane.add(psimures)
    splitPane.add(pconfig)
    frame.add(splitPane)
    frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE)
    frame.setVisible(True)
 
###########################################################################
class Runnable(Runnable):
    def __init__(self, runFunction):
        self._runFunction = runFunction


    def run(self):
        self._runFunction()

###########################################################################         
if __name__ == '__main__':
    SwingUtilities.invokeLater(Runnable(createAndShowGUI))
    ''' load the current configuration from resources.properties and 
    configuration.properties '''
コード例 #47
0
 def filterRows():
     self.table.getModel().filter(regex_field.getText())
     SwingUtilities.invokeLater(repaint)
コード例 #48
0
ファイル: threading.py プロジェクト: HenryStevens/jes
def invokeLater(fn, *args, **kwargs):
    task = FunctionCall(fn, args, kwargs)
    SwingUtilities.invokeLater(task)
コード例 #49
0
ファイル: WiimoteThrottle.py プロジェクト: Klb4ever/JMRI
    def buttonInputReceived(self, evt):
#        print("Wiimote Button event: ", evt)
        self.sync.acquire()
        self.evt = evt
        self.sync.release()
        SwingUtilities.invokeLater(self) # Delegate processing to Swing thread (when we are here, we're in the WiiRemoteJ driver thread)