python类Entry()的实例源码

fpeditor.py 文件源码 项目:Solfege 作者: RannyeriDev 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def on_edit_linktext(self, menuitem, linked):
        idx = self.m_model.index(linked)
        # row is the hbox containing the linkbutton
        row = self.g_link_box.get_children()[idx]
        linkbutton = row.get_children()[0]
        entry = Gtk.Entry()
        entry.set_text(linkbutton.get_label())
        row.pack_start(entry, True, True, 0)
        linkbutton.hide()
        entry.show()
        entry.grab_focus()

        def finish_edit(entry):
            linkbutton.set_label(entry.get_text().decode("utf-8"))
            linkbutton.get_children()[0].set_alignment(0.0, 0.5)
            linkbutton.show()
            self.m_model[idx].m_name = entry.get_text().decode("utf-8")
            entry.destroy()
        sid = entry.connect('activate', finish_edit)

        def keydown(entry, event):
            if event.keyval == Gdk.KEY_Tab:
                finish_edit(entry)
        entry.connect('key-press-event', keydown)

        def keyup(entry, event):
            if event.keyval == Gdk.KEY_Escape:
                linkbutton.show()
                entry.disconnect(sid)
                entry.destroy()
                return True
        entry.connect('key-release-event', keyup)
fpeditor.py 文件源码 项目:Solfege 作者: RannyeriDev 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def __init__(self, filename=None):
        Gtk.Window.__init__(self)
        logging.debug("fpeditor.Editor.__init__(%s)", filename)
        gu.EditorDialogBase.__init__(self, filename)
        self.set_default_size(800, 600)
        self.g_main_box = Gtk.VBox()
        self.add(self.g_main_box)
        self.g_actiongroup.add_actions([
            ('GoBack', Gtk.STOCK_GO_BACK, None, None, None, self.go_back),
        ])
        self.setup_toolbar()
        self.g_title_hbox = Gtk.HBox()
        self.g_title_hbox.set_spacing(gu.hig.SPACE_SMALL)
        self.g_title_hbox.set_border_width(gu.hig.SPACE_SMALL)
        label = Gtk.Label()
        label.set_markup(u"<b>%s</b>" % _("Front page title:"))
        self.g_title_hbox.pack_start(label, False, False, 0)
        self.g_fptitle = Gtk.Entry()
        self.g_title_hbox.pack_start(self.g_fptitle, True, True, 0)
        self.g_main_box.pack_start(self.g_title_hbox, False, False, 0)
        # This dict maps the windows created for all pages belonging to
        # the file.
        self.m_page_mapping = {}
        self.m_model = None
        if filename:
            self.load_file(filename)

        else:
            self.m_model = pd.Page(_("Untitled%s") % self.m_instance_number,
                    pd.Column())
            self.set_not_modified()
        self.add_page(Page(self.m_model, self))
        self.clipboard.update_buttons()
        self.show_all()
        self.add_to_instance_dict()
        self.g_fptitle.set_text(self.m_model.m_name)
        self.g_fptitle.connect('changed', self.on_frontpage_title_changed)
mainwin.py 文件源码 项目:Solfege 作者: RannyeriDev 项目源码 文件源码 阅读 29 收藏 0 点赞 0 评论 0
def show_bug_reports(self, *v):
        m = Gtk.Dialog(_("Question"), self, 0)
        m.add_button(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL)
        m.add_button(Gtk.STOCK_OK, Gtk.ResponseType.OK)
        vbox = Gtk.VBox()
        m.vbox.pack_start(vbox, False, False, 0)
        vbox.set_spacing(18)
        vbox.set_border_width(12)
        l = Gtk.Label(label=_("Please enter the email used when you submitted the bugs:"))
        vbox.pack_start(l, False, False, 0)
        self.g_email = Gtk.Entry()
        m.action_area.get_children()[0].grab_default()
        self.g_email.set_activates_default(True)
        vbox.pack_start(self.g_email, False, False, 0)
        m.show_all()
        ret = m.run()
        m.destroy()
        if ret == Gtk.ResponseType.OK:
            params = urllib.urlencode({
                    'pagename': 'SITS-Incoming/SearchBugs',
                    'q': 'SITS-Incoming/"Submitter: %s"' % utils.mangle_email(self.g_email.get_text().decode("utf-8")()),
                })
            try:
                webbrowser.open_new("http://www.solfege.org?%s" % params)
            except Exception, e:
                self.display_error_message2(_("Error opening web browser"), str(e))
SharePage.py 文件源码 项目:bcloud 作者: wangYanJava 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def __init__(self, app):
        super().__init__(_('Password:'), app.window, Gtk.DialogFlags.MODAL,
                         (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
                         Gtk.STOCK_OK, Gtk.ResponseType.OK))

        self.set_default_response(Gtk.ResponseType.OK)
        self.set_default_size(320, 100)
        self.set_border_width(10)
        box = self.get_content_area()

        self.entry = Gtk.Entry()
        self.entry.props.placeholder_text = _('Password ...')
        box.pack_start(self.entry, False, False, 0)

        box.show_all()
NewFolderDialog.py 文件源码 项目:bcloud 作者: wangYanJava 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def __init__(self, parent, app, path):
        super().__init__(_('New Folder'), app.window, Gtk.DialogFlags.MODAL,
                         (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
                         Gtk.STOCK_OK, Gtk.ResponseType.OK))
        self.set_default_response(Gtk.ResponseType.OK)
        self.connect('show', self.on_show)
        self.set_default_size(550, 200)

        self.app = app
        self.path = path

        self.set_border_width(10)
        box = self.get_content_area()

        folder_name = _('New Folder')
        abspath = os.path.join(path, folder_name)
        self.entry = Gtk.Entry()
        self.entry.set_text(abspath)
        self.entry.connect('changed', self.on_entry_changed)
        self.entry.connect('activate', self.on_entry_activated)
        box.pack_start(self.entry, True, True, 10)

        self.infobar = Gtk.InfoBar()
        self.infobar.timestamp = 0
        self.infobar.set_message_type(Gtk.MessageType.ERROR)
        box.pack_start(self.infobar, False, False, 0)
        self.info_label= Gtk.Label()
        self.infobar.get_content_area().pack_start(self.info_label, False,
                                                   False, 0)

        box.show_all()
        self.infobar.hide()
VCodeDialog.py 文件源码 项目:bcloud 作者: wangYanJava 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def __init__(self, parent, app, info):
        super().__init__(_('Verification..'), app.window,
                         Gtk.DialogFlags.MODAL,
                         (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
                          Gtk.STOCK_OK, Gtk.ResponseType.OK))

        self.set_default_response(Gtk.ResponseType.OK)
        self.set_default_size(320, 200)
        self.set_border_width(10)
        self.app = app

        box = self.get_content_area()
        box.set_spacing(10)

        gutil.async_call(net.urlopen, info['img'],
                         {'Cookie': app.cookie.header_output()},
                         callback=self.update_img)
        self.img = Gtk.Image()
        box.pack_start(self.img, False, False, 0)

        self.entry = Gtk.Entry()
        self.entry.connect('activate',
                lambda *args: self.response(Gtk.ResponseType.OK))
        box.pack_start(self.entry, False, False, 0)

        box.show_all()
ui_utils.py 文件源码 项目:ez_gpg 作者: sgnn7 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def get_string_from_user(window, message, title="Input required", max_length=None):
        dialog = Gtk.MessageDialog(window,
                                   Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT,
                                   Gtk.MessageType.QUESTION,
                                   Gtk.ButtonsType.OK_CANCEL,
                                   message)
        dialog.set_title(title)

        dialog.set_default_response(Gtk.ResponseType.OK)

        dialog_box = dialog.get_content_area()

        input_entry = Gtk.Entry()
        input_entry.set_size_request(350,0)

        if max_length != None:
            print("Setting max length to", max_length)
            input_entry.set_max_length(max_length)

        input_entry_holder = Gtk.Box()
        input_entry_holder.pack_end(input_entry, True, False, 0)

        dialog_box.pack_end(input_entry_holder, False, False, 0)
        dialog.show_all()

        def input_entry_activate(*args):
            print("Enter pressed")
            dialog.response(Gtk.ResponseType.OK)

        input_entry.connect('activate', input_entry_activate)

        response = dialog.run()
        text = input_entry.get_text()

        dialog.destroy()

        if (response != Gtk.ResponseType.OK) or len(text) == 0:
            return None

        return text
right_textview.py 文件源码 项目:bokken 作者: thestr4ng3r 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def create_seek_buttons(self):
        self.hbox = Gtk.HBox(False, 1)

        self.back = Gtk.Button()
        self.back_img = Gtk.Image()
        self.back_img.set_from_stock(Gtk.STOCK_GO_BACK, Gtk.IconSize.MENU)
        self.back.set_image(self.back_img)
        self.back.set_relief(Gtk.ReliefStyle.NONE)
        self.back.connect('clicked', self.do_seek, 'b')

        self.forward = Gtk.Button()
        self.forward_img = Gtk.Image()
        self.forward_img.set_from_stock(Gtk.STOCK_GO_FORWARD, Gtk.IconSize.MENU)
        self.forward.set_image(self.forward_img)
        self.forward.set_relief(Gtk.ReliefStyle.NONE)
        self.forward.connect('clicked', self.do_seek, 'f')

        self.seek = Gtk.Entry()
        self.seek.set_max_length(30)
        self.seek.set_icon_from_stock(1, Gtk.STOCK_JUMP_TO)
        self.seek.set_activates_default(True)
        self.seek.connect("activate", self.goto)
        self.seek.connect("icon-press", self.goto)
        self.seek.set_icon_tooltip_text(1, 'Go')

        self.hbox.pack_start(self.back, False, False, 0)
        self.hbox.pack_start(self.forward, False, False, 0)
        self.hbox.pack_start(self.seek, True, True, 0)

        return self.hbox
RemarkableWindow.py 文件源码 项目:Remarkable 作者: jamiemcg 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def insert_image(self, widget):
        self.insert_window_image = Gtk.Window()
        self.insert_window_image.set_title("Insert Image")
        self.insert_window_image.set_resizable(True)
        self.insert_window_image.set_border_width(6)
        self.insert_window_image.set_default_size(300, 250)
        self.insert_window_image.set_position(Gtk.WindowPosition.CENTER)
        vbox = Gtk.VBox()
        label_alt_text = Gtk.Label("Alt Text:")
        self.entry_alt_text_i = Gtk.Entry()
        label_title = Gtk.Label("Title:")
        self.entry_title_i = Gtk.Entry()
        label_url = Gtk.Label("Path/Url:")
        self.entry_url_i = Gtk.Entry()
        vbox.pack_start(label_alt_text, self, False, False)
        vbox.pack_start(self.entry_alt_text_i, self, False, False)
        vbox.pack_start(label_title, self, False, False)
        vbox.pack_start(self.entry_title_i, self, False, False)
        vbox.pack_start(label_url, self, False, False)
        self.hbox_url = Gtk.HBox()
        self.hbox_url.pack_start(self.entry_url_i, self, True, False)
        self.path_file_button = Gtk.FileChooserButton(title= "Select an image")
        self.path_file_button.connect("file-set", self.file_chooser_button_clicked)
        self.hbox_url.pack_start(self.path_file_button, self, False, False)
        vbox.pack_start(self.hbox_url, self, False, False)
        button = Gtk.Button("Insert Image")
        vbox.pack_end(button, self, False, False)
        self.insert_window_image.add(vbox)
        self.insert_window_image.show_all()
        button.connect("clicked", self.insert_image_cmd, self.insert_window_image)
RemarkableWindow.py 文件源码 项目:Remarkable 作者: jamiemcg 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def insert_link(self, widget):
        self.insert_window_link = Gtk.Window()
        self.insert_window_link.set_title("Insert Link")
        self.insert_window_link.set_resizable(True)
        self.insert_window_link.set_border_width(6)
        self.insert_window_link.set_default_size(350, 250)
        self.insert_window_link.set_position(Gtk.WindowPosition.CENTER)
        vbox = Gtk.VBox()
        label_alt_text = Gtk.Label("Alt Text:")
        self.entry_alt_text = Gtk.Entry()
        label_url = Gtk.Label("Url:")
        self.entry_url = Gtk.Entry()
        vbox.pack_start(label_alt_text, self, False, False)
        vbox.pack_start(self.entry_alt_text, self, False, False)
        vbox.pack_start(label_url, self, False, False)
        vbox.pack_start(self.entry_url, self, False, False)
        button = Gtk.Button("Insert Link")
        vbox.pack_end(button, self, False, False)

        # Use highligted text as the default "alt text"
        if self.text_buffer.get_has_selection():
            start, end = self.text_buffer.get_selection_bounds()
            text = self.text_buffer.get_text(start, end, True)
            self.entry_alt_text.set_text(text)

        self.insert_window_link.add(vbox)
        self.insert_window_link.show_all()
        button.connect("clicked", self.insert_link_cmd, self.insert_window_link)
gui_text_editor.py 文件源码 项目:ghetto_omr 作者: pohzhiee 项目源码 文件源码 阅读 19 收藏 0 点赞 0 评论 0
def __init__(self, parent):
        Gtk.Dialog.__init__(self, "Search", parent,
            Gtk.DialogFlags.MODAL, buttons=(
            Gtk.STOCK_FIND, Gtk.ResponseType.OK,
            Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL))

        box = self.get_content_area()

        label = Gtk.Label("Insert text you want to search for:")
        box.add(label)

        self.entry = Gtk.Entry()
        box.add(self.entry)

        self.show_all()
gui_file_chooser.py 文件源码 项目:ghetto_omr 作者: pohzhiee 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def __init__(self):
        Gtk.Window.__init__(self, title="FileChooser Example")
        self.maximize()
        self.fold_str = None
        self.grid = Gtk.Grid(column_homogeneous=False,
                             column_spacing=10,
                             row_spacing=0)

        self.add(self.grid)
        button1 = Gtk.Button("Choose File")
        button1.connect("clicked", self.on_file_clicked)
        self.grid.add(button1)

        self.text_file = Gtk.Entry()
        self.grid.attach(self.text_file,1,0,4,1)

        button2 = Gtk.Button("Choose Folder")
        button2.connect("clicked", self.on_folder_clicked)

        button2.set_relief(Gtk.ReliefStyle(0))
        self.grid.attach_next_to(button2,button1,Gtk.PositionType.BOTTOM,1,1)


        self.text_folder = Gtk.Entry()
        self.grid.attach(self.text_folder,1,1,4,1)
        but3=buttontest()
        self.grid.attach(but3,0,2,1,1)
modify_interface.py 文件源码 项目:PyFlowChart 作者: steelcowboy 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def add_prereq(self, button=None, prereq=None):
        """Create a new prereq entry field."""
        new_entry = Gtk.Entry() 
        change_box = self.create_change_box()

        if prereq is not None:
            new_entry.set_text(prereq)

        self.prereq_box.pack_start(new_entry, True, True, 0)
        self.change_buttons_box.pack_end(change_box, True, True, 0)
        self.show_all()
editable_label.py 文件源码 项目:PyFlowChart 作者: steelcowboy 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def double_click(self, widget, event):
        if event.type == Gdk.EventType._2BUTTON_PRESS:
            if not self.has_entry:
                self.label.destroy()
                self.entry = Gtk.Entry()
                self.entry.connect('activate', self.enter_key)
                self.entry.set_text(self.text)
                self.add(self.entry)
                self.text = None

                self.show_all() 
                self.has_entry = True
        return True
impressWriter.py 文件源码 项目:impress-writer 作者: CSEC-NITH 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def __init__(self, parent):
        Gtk.Dialog.__init__(self, "Search", parent,
            Gtk.DialogFlags.MODAL, buttons=(
            Gtk.STOCK_FIND, Gtk.ResponseType.OK,
            Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL))

        box = self.get_content_area()

        label = Gtk.Label("Insert text you want to search for:")
        box.add(label)

        self.entry = Gtk.Entry()
        box.add(self.entry)

        self.show_all()
merger_data_manager.py 文件源码 项目:draobpilc 作者: awamper 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def __init__(self, name, value, escape=True):
        super().__init__()

        self.set_orientation(Gtk.Orientation.HORIZONTAL)
        self.set_hexpand(True)
        self.set_halign(Gtk.Align.FILL)

        if escape:
            try:
                name = name.encode('unicode_escape').decode('utf8')
            except UnicodeDecodeError:
                pass

            try:
                value = value.encode('unicode_escape').decode('utf8')
            except UnicodeDecodeError:
                pass

        self.name_entry = Gtk.Entry()
        self.name_entry.props.margin = ITEM_MARGIN
        self.name_entry.set_text(name)

        self.value_entry = Gtk.Entry()
        self.value_entry.props.margin = ITEM_MARGIN
        self.value_entry.set_text(value)

        self.delete_btn = Gtk.Button.new_from_icon_name(
            'edit-delete-symbolic',
            Gtk.IconSize.SMALL_TOOLBAR
        )
        self.delete_btn.props.margin = ITEM_MARGIN

        self.add(self.name_entry)
        self.add(self.value_entry)
        self.add(self.delete_btn)

        self.show_all()
histories_manager.py 文件源码 项目:draobpilc 作者: awamper 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def __init__(self):
        super().__init__()

        self.set_name('HistoriesManagerBox')
        self.set_orientation(Gtk.Orientation.HORIZONTAL)
        self.set_halign(Gtk.Align.END)
        self.set_valign(Gtk.Align.CENTER)
        self.set_hexpand(True)
        self.set_vexpand(False)

        self.link = Gtk.LinkButton()
        self.link.connect('activate-link', self._on_activate_link)
        self.link.set_label('...')
        self.link.set_tooltip_text(_('Open histories manager'))

        self._entry = Gtk.Entry()
        self._entry.set_placeholder_text(_('New history'))
        self._entry.set_icon_from_icon_name(
            Gtk.EntryIconPosition.PRIMARY,
            'list-add-symbolic'
        )
        self._entry.connect('activate', self._on_entry_activate)

        self._box = Gtk.Box()
        self._box.set_orientation(Gtk.Orientation.VERTICAL)
        self._box.add(self._entry)

        self.popover = Gtk.Popover()
        self.popover.set_relative_to(self.link)
        self.popover.add(self._box)

        self.add(self.link)

        gpaste_client.connect('SwitchHistory', self.update)
        gpaste_client.connect('DeleteHistory', self.update)
        self.update()
preferences.py 文件源码 项目:draobpilc 作者: awamper 项目源码 文件源码 阅读 33 收藏 0 点赞 0 评论 0
def add_entry(self, text, key):
        item = Gtk.Entry()
        item.set_hexpand(False)
        item.set_text(self._settings[key])
        self._settings.bind(key, item, 'text', Gio.SettingsBindFlags.DEFAULT)

        return self.add_row(text, item)
input_paste.py 文件源码 项目:input-paste 作者: RPing 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def __init__(self):
        # create a new window
        window = Gtk.Window()
        window.set_position(Gtk.WindowPosition.CENTER)
        window.set_name('window')
        window.set_title("Input Helper")
        window.set_decorated(False)

        window.set_default_size(300, 40)
        window.connect("destroy", self.destroy)

        self.entry = Gtk.Entry()
        self.entry.set_name('entry')
        self.entry.connect("key_press_event", self.on_key_press)

        self.clipboard = Gtk.Clipboard.get(Gdk.SELECTION_CLIPBOARD)

        style_provider = Gtk.CssProvider()
        base_dir = os.path.abspath(os.path.dirname(__file__))
        css_path = os.path.join(base_dir, 'input_paste.css')
        style_provider.load_from_file(Gio.File.new_for_path(css_path))
        Gtk.StyleContext.add_provider_for_screen(
            Gdk.Screen.get_default(),
            style_provider,
            Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION
        )

        window.add(self.entry)
        window.show_all()
comboboxcalendar.py 文件源码 项目:google-tasks-indicator 作者: atareao 项目源码 文件源码 阅读 24 收藏 0 点赞 0 评论 0
def __init__(self, window, format="dmy", separator='/', value = datetime.date.today()):
        Gtk.HBox.__init__(self)
        self.format = format
        self.separator = separator
        self._window = window
        self.entry = Gtk.Entry()
        self.entry.set_editable(False)
        self.button = Gtk.Button()
        self.button.add(Gtk.Arrow.new(Gtk.ArrowType.DOWN, Gtk.ShadowType.IN))
        self.button.connect('clicked', self.on_button)
        self.pack_start(self.entry, 0, 0, 0)
        self.pack_start(self.button, 0, 0, 0)
        self.month_changed = False
        self.set_date(value)


问题


面经


文章

微信
公众号

扫码关注公众号