예제 #1
0
 def on_signin_btn__clicked(self, object):
     self.parent.statusLabel.set_text('Signing in...')
     data = {
         'username': self.username.get_text(),
         'password': hashlib.md5(self.password.get_text()).hexdigest()
     }
     self._disable_forms()
     AsyncTask(net.sign_in, self.sign_in_response).start(data)
예제 #2
0
파일: project.py 프로젝트: xmonader/pida
    def refresh_project(self):
        """
        Updates the project cache database
        """
        if not self._current:
            return
        if self._current in self._update_tasks:
            self.notify_user(_("Update already running"), title=_("Project"))
            return

        self.notify_user(_("Update started"), title=_("Project"))

        self._update_tasks[self._current] = AsyncTask(
            work_callback=self._update_job)
        self._update_tasks[self._current].start(self._current)
예제 #3
0
    def paste_clipboard(self):
        newname = os.path.join(self.path,
                               os.path.basename(self._clipboard_file))
        if newname == self._clipboard_file:
            self.svc.error_dlg(_('Cannot copy files to themselves.'))
            return
        if not os.path.exists(self._clipboard_file):
            self.svc.error_dlg(_('Source file has vanished.'))
            return
        if os.path.exists(newname):
            self.svc.error_dlg(_('Destination already exists.'))
            return

        task = AsyncTask(self._paste_clipboard, lambda: None)
        task.start()
예제 #4
0
    def __init__(self, parent):
        super(Content, self).__init__()
        self.parent = parent

        self.favorites_btn.set_name('favorites')
        self.settings_btn.set_name('settings')
        self.toggles = [self.favorites_btn, self.settings_btn]

        self.greeting_lbl.set_text('Hi, {0}'.format(
            self.parent.account_data.get('realname', '')))
        self.server_message_lbl.set_text(
            self.parent.account_data.get('message', 'No new messages.'))

        # requesting categories
        AsyncTask(net.categories, self.categories_response).start()
예제 #5
0
    def on_create_btn__clicked(self, object):
        self.error_lbl.set_label('')
        username = self.username.get_text()
        password1 = self.password.get_text()
        password2 = self.password2.get_text()
        realname = self.real_name.get_text()
        email = self.email.get_text()

        errors = self._validate_form()
        if len(errors):
            for x in errors:
                self.error_lbl.set_label(errors[x])
                self._flash_error(x)
        else:
            # do the registration
            self.parent.statusLabel.set_text('Sending data...')
            data = {
                'username': username,
                'password': hashlib.md5(password1).hexdigest(),
                'realname': realname,
                'email': email
            }
            self._disable_forms()
            AsyncTask(net.new_user, self.register_response).start(data)
예제 #6
0
파일: web.py 프로젝트: xmonader/pida
    if data:
        urlargs = (req, urlencode(data))
    else:
        urlargs = (req,)

    def _fetcher():
        try:
            f = urlopen(*urlargs)
            content = f.read()
            url = f.url
        except Exception, e:
            content = str(e)
            url = None
        return url, content

    task = AsyncTask(_fetcher, content_callback)
    task.start()

if __name__ == '__main__':
    def cc(url, data):
        print url, data
        gtk.main_quit()

    fetch_url('http://google.com/sdfsdfsdf', cc)
    import gtk
    gtk.threads_init()
    gtk.threads_enter()
    gtk.main()
    gtk.threads_leave()

예제 #7
0
 def remove_path(self, path):
     task = AsyncTask(self._remove_path, lambda: None)
     task.start(path)
예제 #8
0
 def create_ancest_tree(self):
     task = AsyncTask(self._get_ancestors, self._show_ancestors)
     task.start(self.path)
예제 #9
0
파일: roio.py 프로젝트: ov1d1u/roio
 def show_first_content(self):
     self._clear_content()
     self.statusLabel.set_text('Connecting...')
     AsyncTask(self.net.send_hello, self.ping_status).start()
     self.body_content = self.add_slave(FirstContent(self), 'mainContent')
예제 #10
0
 def on_recovery_btn__clicked(self, object):
     self.parent.statusLabel.set_text('Please wait...')
     self._disable_forms()
     data = {'email': self.recovery_email.get_text()}
     self._disable_forms()
     AsyncTask(net.recover, self.recovery_response).start(data)