def __init_navigatebar(self): self.navigatebar = TreeView(enable_drag_drop=False, enable_multiple_select=False) self.navigatebar.connect("single-click-item", self.on_navigatebar_single_click) self.navigatebar.set_size_request(132, -1) self.navigatebar.draw_mask = self.on_navigatebar_draw_mask local_expand_item = ExpandItem(_("Library")) network_expand_item = ExpandItem(_("Internet")) self.navigatebar.add_items([ local_expand_item, network_expand_item, ]) local_expand_item.add_childs( [(_("System"), self.system_wallpapers_page), (_("Pictures"), self.picture_wallpapers_page), (_("Favorites"), self.download_wallpapaers_page)], expand=True) network_expand_item.add_childs([ (_("360 Wallpaper"), self.bizhi360_cache_page), (_("LoveWallpaper"), self.aibizhi_cache_page), ], expand=True) self.navigatebar.set_highlight_item(self.navigatebar.get_items()[1])
def __init__(self): gtk.VBox.__init__(self) self.set_spacing(5) self.plugins = utils.get_main_window().plugins self.plugins_view = TreeView() self.plugins_view.add_items = self.plugins_view_add_items self.plugins_view.set_expand_column(0) self.plugins_view.draw_mask = self.plugins_view_draw_mask self.plugins_view.set_size_request(420, 330) self.plugins_view.connect("single-click-item", self.on_plugins_view_single_click) self.plugins_view.connect("press-return", self.on_plugins_view_press_return) self.plugins_view.set_column_titles([_("Name"), _("Version"), _("Enable"), ""], (self.sort_by_title, self.sort_by_title, self.sort_by_title, self.sort_by_title)) plugins_view_align = set_widget_gravity(self.plugins_view, gravity=(1, 1, 1, 1), paddings=(10, 0, 0, 0)) self.plugin_infos = PluginInfos() self.plugin_infos.set_size_request(420, 90) # plugin info self.pack_start(plugins_view_align, False, True) self.pack_start(self.plugin_infos, False, True)
def __init__(self, data_manager): ''' init docs ''' # Init. gtk.VBox.__init__(self) self.data_manager = data_manager self.keywords = [] self.all_pkg_names = [] self.message_bar = MessageBar(18) self.content_box = gtk.VBox() self.treeview = TreeView(enable_drag_drop=False, expand_column=0) global_event.register_event("delete-search-page-items", self.treeview.delete_items) self.cute_message_image = gtk.VBox() self.cute_message_pixbuf = utils.get_common_locale_image_pixbuf("info", "noresult.png") self.cute_message_image.connect("expose-event", self.expose_cute_message_image) self.content_box.pack_start(self.message_bar, False, False) self.content_box.pack_start(self.treeview) self.loading_box = LoadingBox() self.pack_start(self.loading_box, True, True) self.treeview.connect("items-change", self.update_message_bar) self.treeview.draw_mask = self.draw_mask
def __init_navigatebar(self): self.navigatebar = TreeView(enable_drag_drop=False, enable_multiple_select=False) self.navigatebar.connect("single-click-item", self.on_navigatebar_single_click) self.navigatebar.set_size_request(132, -1) self.navigatebar.draw_mask = self.on_navigatebar_draw_mask local_expand_item = ExpandItem(_("Library")) network_expand_item = ExpandItem(_("Internet")) self.navigatebar.add_items([ local_expand_item, network_expand_item, ]) local_expand_item.add_childs([ (FavoritesTitle, self.favorites_page), (LocalWallpapersTitle, self.pictures_page), ], expand=True) network_expand_item.add_childs([ (_("360 Wallpaper"), self.bizhi360_cache_page), (_("LoveWallpaper"), self.aibizhi_cache_page), ], expand=True) if get_favorite_number() == 0: self.navigatebar.set_highlight_item( self.navigatebar.get_items()[2]) self.switch_page.add(self.pictures_page) else: self.navigatebar.set_highlight_item( self.navigatebar.get_items()[1]) self.switch_page.add(self.favorites_page)
def __init__(self, bus_interface, data_manager): ''' init docs ''' # Init. gtk.VBox.__init__(self) self.bus_interface = bus_interface self.data_manager = data_manager self.message_bar = MessageBar(32) self.message_box = gtk.HBox() self.treeview = TreeView(enable_drag_drop=False) self.treeview.set_expand_column(0) self.cute_message_image = gtk.VBox() self.content_box = gtk.VBox() self.pack_start(self.message_box, False, False) self.pack_start(self.content_box, True, True) self.cute_message_pixbuf = utils.get_common_locale_image_pixbuf( "info", "no_download.png") self.content_box.pack_start(self.cute_message_image, True, True) self.treeview.draw_mask = self.draw_mask self.cute_message_image.connect("expose-event", self.expose_cute_message_image) self.treeview.connect("items-change", self.update_message_bar) self.treeview.connect( "items-change", lambda treeview: global_event.emit( "update-install-notify-number", self.get_installing_pkgs_number()))
def create_mirror_select_table(self): main_table = gtk.Table(3, 2) main_table.set_row_spacings(CONTENT_ROW_SPACING) mirror_select_title = Label(_("Select mirror")) self.select_best_mirror_button = Button(self.select_best_mirror_button_texts["normal"]) self.select_best_mirror_button.connect("clicked", self.select_best_mirror) self.mirrors_dir = os.path.join(get_parent_dir(__file__, 2), 'mirrors') self.current_mirror_hostname = utils.get_current_mirror_hostname() self.mirror_items = self.get_mirror_items() self.mirror_view = TreeView(self.mirror_items, enable_drag_drop=False, enable_multiple_select=False, mask_bound_height=0, ) self.mirror_view.set_expand_column(1) self.mirror_view.set_size_request(-1, 280) self.mirror_view.draw_mask = self.mirror_treeview_draw_mask main_table.attach(mirror_select_title, 0, 1, 0, 1, yoptions=gtk.FILL) main_table.attach(self.select_best_mirror_button, 1, 2, 0, 1, xoptions=gtk.FILL) main_table.attach(create_separator_box(), 0, 2, 1, 2, xoptions=gtk.FILL) main_table.attach(self.mirror_view, 0, 2, 2, 3, xoptions=gtk.FILL) return main_table
def plugin_widget(self): self.__get_devices() plugin_box = gtk.VBox() adapter_box = gtk.HBox(spacing=5) adapter_image = ImageBox( app_theme.get_pixbuf("bluetooth/enable_open.png")) adapter_label = self.__setup_label(_("Adapter")) adapter_toggle = self.__setup_toggle() if self.my_bluetooth.adapter: adapter_toggle.set_active(self.my_bluetooth.adapter.get_powered()) if self.my_bluetooth.adapter.get_powered(): self.tray_icon.set_icon_theme("enable") else: self.tray_icon.set_icon_theme("enable_disconnect") adapter_toggle.connect("toggled", self.__adapter_toggled) separator_align = self.__setup_align(padding_bottom=0) separator = self.__setup_separator() separator_align.add(separator) ''' devices treeview ''' device_treeview = TreeView() device_separator_align = self.__setup_align() device_separator = self.__setup_separator() device_separator_align.add(device_separator) device_count = len(self.device_items) if device_count: device_treeview.delete_all_items() device_treeview.add_items(self.device_items) device_treeview.set_size_request( self.width, device_count * DeviceItem.ITEM_HEIGHT) else: device_treeview.set_child_visible(False) device_separator_align.set_size_request(-1, 0) device_separator_align.set_child_visible(False) ''' select button ''' select_button_align = self.__setup_align() select_button = SelectButton(_("Advanced options..."), font_size=10, ali_padding=5) select_button.set_size_request(self.width, 25) select_button.connect( "clicked", self.__bluetooth_selected ) # I don't know why, but replacing "button-press-event" with select_button_align.add(select_button) # clicked really works... adapter_box.pack_start(adapter_image, False, False) adapter_box.pack_start(adapter_label, False, False) adapter_box.pack_start(adapter_toggle, False, False) plugin_box.pack_start(adapter_box, False, False) plugin_box.pack_start(separator_align, False, False) plugin_box.pack_start(device_treeview, False, False) plugin_box.pack_start(device_separator_align, False, False) plugin_box.pack_start(select_button_align, False, False) return plugin_box
def add_switcher(self): if self.device_tree == None: self.device_tree = TreeView( [DeviceToggleItem(self.wireless_devices, 0)]) self.device_tree.set_expand_column(1) self.content_box.pack_start(self.device_tree, False, True) self.content_box.reorder_child(self.device_tree, 0) net_manager.emit_wifi_switch(0)
def __init__(self): DialogBox.__init__( self, _("Lyrics search"), 460, 300, DIALOG_MASK_MULTIPLE_PAGE, close_callback=self.hide_all, modal=False, window_hint=None, skip_taskbar_hint=False, window_pos=gtk.WIN_POS_CENTER) self.artist_entry = InputEntry() self.artist_entry.set_size(130, 23) self.title_entry = InputEntry() self.title_entry.set_size(130, 23) artist_label = Label(_("Artist:")) title_label = Label(_("Title:")) right_align = gtk.Alignment() right_align.set(0, 0, 0, 1) self.search_button = Button(_("Search")) self.search_button.connect("clicked", self.search_lyric_cb) self.process_id = 0 info_box = gtk.HBox(spacing=25) control_box = gtk.HBox(spacing=5) title_box = gtk.HBox(spacing=5) title_box.pack_start(title_label, False, False) title_box.pack_start(self.title_entry) artist_box = gtk.HBox(spacing=5) artist_box.pack_start(artist_label, False, False) artist_box.pack_start(self.artist_entry) control_box.pack_start(title_box, False, False) control_box.pack_start(artist_box, False, False) info_box.pack_start(control_box, False, False) info_box.pack_start(self.search_button, False, False) sort_items = [ lambda items, reverse : self.sort_by_key(items, reverse, "title"), lambda items, reverse : self.sort_by_key(items, reverse, "artist")] self.result_view = TreeView() self.result_view.set_expand_column(0) self.result_view.connect("double-click-item", self.double_click_cb) self.result_view.set_column_titles([_("Title"), _("Artist")], sort_items) self.result_view.draw_mask = self.draw_view_mask self.prompt_label = Label("") download_button = Button(_("Download")) download_button.connect("clicked", self.download_lyric_cb) cancel_button = Button(_("Close")) cancel_button.connect("clicked", lambda w: self.hide_all()) info_box_align = gtk.Alignment() info_box_align.set_padding(5, 0, 5, 0) info_box_align.add(info_box) self.body_box.set_spacing(5) self.body_box.pack_start(info_box_align, False, False) self.body_box.pack_start(self.result_view, True, True) self.left_button_box.set_buttons([self.prompt_label]) self.right_button_box.set_buttons([download_button, cancel_button]) self.lrc_manager = LrcManager()
def add_switcher(self): if not hasattr(self, "device_tree") or not self.device_tree: self.device_tree = TreeView([DeviceItem()], mask_bound_height=0) self.device_tree.set_expand_column(1) self.wireless_box.pack_start(self.device_tree, False, False) self.wireless_box.reorder_child( self.wireless_box.get_children()[-2], len(self.wireless_box.get_children())) tray_log.debug(self.wireless_box.get_children()) net_manager.emit_wifi_switch(0)
def __init__(self, window_width, window_height): ''' init docs ''' # Init. Window.__init__( self, # shadow_visible=False, shape_frame_function=self.shape_completion_window_frame, expose_frame_function=self.expose_completion_window_frame) self.window_width = window_width self.window_height = window_height self.window_offset_x = 8 self.window_offset_y = 34 self.align_size = 2 self.treeview = TreeView( [], enable_highlight=False, enable_multiple_select=False, enable_drag_drop=False, expand_column=0, ) self.treeview.scrolled_window.tag_by_popup_grab_window = True self.treeview_align = gtk.Alignment() self.treeview_align.set(0.5, 0.5, 1, 1) self.treeview_align.set_padding(self.align_size, self.align_size, self.align_size, self.align_size) self.treeview_align.add(self.treeview) self.treeview.connect("press-return", self.treeview_press_return) self.treeview.draw_mask = self.draw_mask self.window_frame.pack_start(self.treeview_align, True, True) self.connect("realize", self.realize_completion_window) self.get_scrolledwindow = self.get_scrolledwindow wrap_grab_window(completion_grab_window, self) completion_grab_window.connect("input-method-focus-in", self.input_method_focus_in) completion_grab_window.connect("input-method-commit", self.input_method_commit) self.keymap = { "Home": self.treeview.select_first_item, "End": self.treeview.select_last_item, "Page_Up": self.treeview.scroll_page_up, "Page_Down": self.treeview.scroll_page_down, "Up": self.treeview.select_prev_item, "Down": self.treeview.select_next_item, }
def __init_widget(self): self.buttonbox = gtk.VBox() self.pack_start(self.buttonbox, False, False) style.add_separator(self) #self.connection_tree = EntryTreeView() self.add_button = AddSettingItem(_("New Connection"), self.add_new_connection) add_setting_tree = TreeView([self.add_button]) add_setting_tree.set_expand_column(1) self.pack_start(add_setting_tree, False, False) self.set_size_request(160, -1) self.show_all() self.__init_signals()
def __init_webcastbar(self): self.webcastbar = TreeView(enable_drag_drop=False, enable_multiple_select=False) self.webcastbar.connect("single-click-item", self.on_webcastbar_single_click_item) items = [] for category in self.__categorys: items.append( CategoryTreeItem(self.__category_gettexts[category], category=category)) items.append(CollectTreeItem(_("Favorites"))) self.webcastbar.add_items(items) self.webcastbar.select_items([self.webcastbar.visible_items[0]]) self.webcastbar.set_size_request(121, -1) self.webcastbar.draw_mask = self.on_webcastbar_draw_mask
def load(self, toggle, content=[]): self.toggle = toggle self.content_box = gtk.VBox(spacing=0) self.pack_start(self.toggle, False, False) self.toggle.switch.connect("toggled", self.toggle_callback) self.tree = TreeView([]) self.tree.set_expand_column(1) self.tree.draw_mask = self.draw_mask content.insert(0, self.tree) for c in content: self.content_box.pack_start(c, False, False) self.align = self._set_align() self.pack_start(self.align, False, False) self.show_all()
def __init__(self, data_manager, album_info): ''' init docs ''' gtk.VBox.__init__(self) self.treeview = TreeView(enable_drag_drop=False, expand_column=1) items = [] album_detail_infos = album_info['softwares'] album_detail_infos = sorted(album_detail_infos, key=lambda info: info.get('order'), reverse=True) for software_info in album_detail_infos: items.append(AlbumDetailItem(software_info, data_manager)) self.treeview.add_items(items) self.treeview.draw_mask = self.draw_mask self.pack_start(self.treeview, True, True)
def init_ui(self): self.wire = Section(app_theme.get_pixbuf("network/cable.png"), _("Wired")) self.wireless = Section(app_theme.get_pixbuf("network/wifi.png"), _("Wireless")) self.mobile = Section(app_theme.get_pixbuf("network/3g.png"), _("Mobile Network")) # vpn self.vpn = Section(app_theme.get_pixbuf("network/vpn.png"), _("VPN Network")) self.dsl = Section(app_theme.get_pixbuf("network/dsl.png"), _("DSL")) self.ssid_list = [] self.tree_box = gtk.VBox(spacing=0) self.button_more = SelectButton(_("Advanced..."), font_size=10, ali_padding=5) self.button_more.set_size_request(-1, 25) #self.pack_start(self.button_more, False, False) self.ap_tree = TreeView(mask_bound_height=0) self.ap_tree.set_expand_column(0) self.vpn_list = ConList() self.dsl_list = DSLConList() self.wire_box = self.section_box([self.wire]) self.wireless_box = self.section_box([self.wireless, self.tree_box]) self.mobile_box = self.section_box([self.mobile]) self.vpn_box = self.section_box([self.vpn, self.vpn_list]) self.dsl_box = self.section_box([self.dsl, self.dsl_list]) self.wire_state = False self.wireless_state = False self.mobile_state = False self.vpn_state = False self.dsl_state = False self.device_tree = None self.pack_start(self.wire_box, False, False) self.pack_start(self.wireless_box, False, False) self.pack_start(self.mobile_box, False, False) self.pack_start(self.vpn_box, False, False) self.pack_start(self.dsl_box, False, False) self.pack_start(self.button_more, False, False)
def __init__(self): gtk.VBox.__init__(self) self.open_dialog = False self.tmp_editing_session = None # UI style style.draw_background_color(self) self.tree = TreeView( [], enable_drag_drop=False, enable_hover=True, enable_multiple_select=False, ) self.tree.set_expand_column(3) self.tree.set_column_titles( (_("Active"), _("Application"), _("Description"), _("Exec")), ) self.tree.set_size_request(800, -1) self.tree.connect("right-press-items", self.right_press_item) self.tree.draw_mask = self.draw_mask self.tree.add_items(self.get_list()) align = gtk.Alignment(0, 0, 0, 1) align.set_padding(15, 0, 20, 20) align.add(self.tree) align.connect("expose-event", self.expose_line) add_button = Button(_("New")) self.delete_button = Button(_("Delete")) add_button.connect("clicked", self.add_autostart) self.delete_button.connect("clicked", self.delete_autostart) self.delete_button.set_sensitive(False) foot_box = FootBox(adjustment=15) foot_box.set_buttons([add_button, self.delete_button]) self.pack_start(align, True, True) self.pack_end(foot_box, False, False) #self.pack_end(self.new_box, False, False) self.show_all() self._init_monitor()
def __init_sourcebar(self): self.sourcebar = TreeView(enable_drag_drop=False, enable_multiple_select=False) items = [] for index, (key, value) in enumerate(self.source_data.items()): if index == 0: show_icon = True else: show_icon = False items.append( CategroyItem(value, key, self.sourcebar, index, show_icon)) items.append( CustomItem( "我的收藏", lambda: switch_tab(self.switch_view_box, self.collect_sw))) self.sourcebar.add_items(items) self.sourcebar.set_size_request(121, -1) self.sourcebar.draw_mask = self.on_sourcebar_draw_mask self.sourcebar.draw_area.tag_by_poup_panel_grab_window = True popup_grab_window.focus_out_callback = self.handle_focus_out
def __init__(self, window_width, window_height): ''' init docs ''' # Init. Window.__init__( self, shadow_visible=False, shadow_radius = 0, shape_frame_function=self.shape_completion_window_frame, expose_frame_function=self.expose_completion_window_frame, # window_type=gtk.WINDOW_POPUP, ) self.window_width = window_width self.window_height = window_height self.window_offset_x = 0 self.window_offset_y = 0 self.align_size = 2 self.treeview = TreeView( enable_highlight=False, enable_multiple_select=False, enable_drag_drop=False,) self.treeview.draw_mask = self.treeview_draw_mask self.treeview.scrolled_window.tag_by_popup_grab_window = True self.treeview_align = gtk.Alignment() self.treeview_align.set(0.5, 0.5, 1, 1) self.treeview_align.set_padding(self.align_size, self.align_size, self.align_size, self.align_size) self.treeview_align.add(self.treeview) self.window_frame.pack_start(self.treeview_align, True, True) self.connect("realize", self.realize_completion_window) self.get_scrolledwindow = self.get_scrolledwindow wrap_grab_window(completion_grab_window, self)
def __init__(self, bus_interface, data_manager): ''' init docs ''' # Init. gtk.VBox.__init__(self) self.bus_interface = bus_interface self.data_manager = data_manager self.search_flag = False self.uninstall_change_items = {"add": [], "delete": []} ### init UI widgets self.message_bar = MessageBar(32) self.message_bar.search_entry.entry.connect("changed", self.search_cb) self.message_bar.search_button.connect("clicked", self.search_cb) self.top_hbox = gtk.HBox() self.top_hbox.pack_start(self.message_bar) self.treeview = TreeView(enable_drag_drop=False) self.treeview.set_expand_column(0) self.treeview.connect("items-change", self.update_message_bar) self.loading_box = LoadingBox() self.loading_box_align = create_align((0.5, 0.5, 1, 1), (10, 10, 10, 10)) self.loading_box_align.add(self.loading_box) ### init UI widgets self.white_kernel_pkg_names = self.get_white_kernel_pkg_names() global_event.register_event("uninstall-items-filtered", self.load_uninstall_items) self.show_loading_page() self.fetch_uninstall_info() self.treeview.draw_mask = self.draw_mask
def __init_radiobar(self): self.radiobar = TreeView(enable_drag_drop=False, enable_multiple_select=False) items = [] items.append( CategroyTreeItem( _("Home"), "home", lambda: switch_tab(self.page_box, self.home_page))) items.append( CategroyTreeItem( _("Hot MHz"), "hot", lambda: switch_tab(self.page_box, self.hot_page_sw))) items.append( CategroyTreeItem( _("Genres"), "genre", lambda: switch_tab(self.page_box, self.genre_page))) items.append( CategroyTreeItem( _("Pop MHz"), "up", lambda: switch_tab(self.page_box, self.fast_page_sw))) self.radiobar.add_items(items) self.radiobar.select_items([self.radiobar.visible_items[0]]) self.radiobar.set_size_request(121, -1) self.radiobar.draw_mask = self.on_radiobar_draw_mask
def __init__(self, connection=None): gtk.Alignment.__init__(self, 0, 0, 0, 0) ################# self.provider_select = None self.connect('expose-event', self.expose_event) self.prop_dict = {} main_table = gtk.Table(2, 2, False) main_table.set_row_spacing(1, 10) main_table.set_col_spacings(4) self.add(main_table) self.country_tree = TreeView( enable_multiple_select=False, enable_drag_drop=False, ) self.country_tree.set_expand_column(1) self.country_tree.set_size_request(365, 380) self.country_tree.draw_mask = self.draw_mask self.country_tree.connect("button-press-item", self.country_selected) left_box_align = gtk.Alignment(0, 0, 0, 0) left_box_align.set_padding(1, 1, 1, 1) left_box_align.add(self.country_tree) left_box_align.show_all() left_box = gtk.VBox() # wrap title country_title = TitleBar( app_theme.get_pixbuf("network/globe-green.png"), _("Country or Region:"), has_separator=False) left_box.pack_start(country_title, False, False) left_box.pack_start(left_box_align, False, False) self.provider_tree = TreeView( enable_multiple_select=False, enable_drag_drop=False, ) self.provider_tree.set_expand_column(0) self.provider_tree.set_size_request(365, 380) self.provider_tree.draw_mask = self.draw_mask self.provider_tree.connect("button-press-item", self.provider_selected) right_box_align = gtk.Alignment(0, 0, 0, 0) right_box_align.set_padding(1, 1, 1, 1) right_box_align.add(self.provider_tree) right_box = gtk.VBox() # wrap title provider_title = TitleBar(app_theme.get_pixbuf("network/building.png"), _("Provider:"), has_separator=False) right_box.pack_start(provider_title, False, False) right_box.pack_start(right_box_align, False, False) main_left_align = gtk.Alignment(0, 0, 0, 0) main_left_align.set_padding(15, 0, 20, 0) main_left_align.add(left_box) main_table.attach(main_left_align, 0, 1, 0, 1) main_right_align = gtk.Alignment(0, 0, 0, 0) main_right_align.set_padding(15, 0, 0, 20) main_right_align.add(right_box) main_table.attach(main_right_align, 1, 2, 0, 1) hints = _( "Tips:This assistant helps you easily set up a mobile broadband connection to a cellular network." ) left_box_align.connect("expose-event", self.expose_outline) right_box_align.connect("expose-event", self.expose_outline) next_button = Button("Next") next_button.connect("clicked", self.next_button_clicked) self.foot_box = FootBox() self.foot_box.set_buttons([next_button]) self.foot_box.set_tip(hints) main_table.attach(self.foot_box, 0, 2, 1, 2) self.show_all()
def __init__(self, data_manager, recommend_status): ''' init docs ''' # Init. gtk.HBox.__init__(self) self.data_manager = data_manager self.recommend_status = recommend_status self.background_box = BackgroundBox() self.background_box.draw_mask = self.draw_mask self.sidebar_box = gtk.VBox() self.page_box = gtk.VBox() self.sidebar_box.set_size_request(CATEGORY_VIEW_WIDTH, -1) self.canopy = gtk.VBox() self.canopy.set_size_request(-1, 19) self.search_align = gtk.Alignment() self.search_align.set(0.5, 0.5, 0, 0) self.search_align.set_padding(15, 5, 13, 13) self.search_align.add(search_entry) self.in_press = False self.press_return = False self.press_id = 0 self.show_timeout_id = None self.entry_changed = False search_entry.entry.connect("changed", self.search_entry_changed) search_entry.entry.connect("key-press-event", self.search_entry_key_press) search_entry.entry.connect("key-release-event", self.search_entry_key_release) search_entry.connect( "action-active", lambda entry, search_string: self.show_search_page(search_string)) search_entry.entry.connect( "press-return", lambda entry: self.show_search_page(entry.get_text(), True)) self.recommend_item = RecommendItem(data_manager, self.recommend_status) category_items = [] for (index, first_category_name) in enumerate( data_manager.get_first_category()): category_items.append( CategoryItem(index + 1, first_category_name, data_manager)) self.category_view = TreeView( [self.recommend_item] + category_items, enable_drag_drop=False, enable_multiple_select=False, expand_column=0, ) self.category_view.draw_mask = self.draw_mask self.category_view.set_size_request(-1, 470) self.category_view_align = gtk.Alignment() self.category_view_align.set(0.5, 0.5, 1, 1) self.category_view_align.set_padding(10, 10, 0, 0) self.category_view_align.add(self.category_view) self.background_box.pack_start(self.canopy, False, False) self.background_box.pack_start(self.search_align, True, True) self.background_box.pack_end(self.category_view_align, False, False) self.sidebar_box.pack_start(self.background_box, False, False) self.split_line = gtk.VBox() self.split_line.set_size_request(1, -1) self.pack_start(self.sidebar_box, False, False) self.pack_start(self.split_line, False, False) self.pack_start(self.page_box, True, True) self.canopy.connect("expose-event", self.expose_canopy) self.split_line.connect("expose-event", self.expose_split_line) global_event.register_event("show-pkg-view", self.show_pkg_view) global_event.register_event("category-expand", self.category_expand_handler)
# Set application icon. application.set_icon(os.path.join(get_current_dir(__file__), "icon.ico")) # Set application preview pixbuf. application.set_skin_preview(os.path.join(get_current_dir(__file__), "frame.png")) # Add titlebar. application.add_titlebar( ["theme", "max", "min", "close"], os.path.join(get_current_dir(__file__), "logo.png"), "TreeView demo", "TreeView demo", ) # Add TreeView. treeview = TreeView() treeview.add_items(map(TextItem, ["Node1", "Node2", "Node3"])) treeview.visible_items[0].add_items(map(TextItem, ["Node1 - SubNode1", "Node1 - SubNode2", "Node1 - SubNode3"])) treeview.visible_items[1].add_items(map(TextItem, ["Node2 - SubNode1", "Node2 - SubNode2", "Node2 - SubNode3"])) treeview.visible_items[2].add_items(map(TextItem, ["Node3 - SubNode1", "Node3 - SubNode2", "Node3 - SubNode3"])) treeview_align = gtk.Alignment() treeview_align.set(0.5, 0.5, 1, 1) treeview_align.set_padding(0, 2, 2, 2) treeview_align.add(treeview) application.main_box.pack_start(treeview_align) application.window.connect("show", lambda w: treeview.visible_highlight()) application.run()
# Set application preview pixbuf. application.set_skin_preview( os.path.join(get_current_dir(__file__), "frame.png")) # Add titlebar. application.add_titlebar( ["theme", "max", "min", "close"], os.path.join(get_current_dir(__file__), "logo.png"), "TreeView demo", "TreeView demo", ) # Add TreeView. print os.path.expanduser("~") treeview = TreeView(get_dir_items(os.path.expanduser("~"))) # expand column. treeview.set_expand_column(3) # hide column treeview.set_hide_columns([1, 2]) #treeview.set_highlight_item(treeview.get_items()[35]) treeview.connect("delete-select-items", m_delete_select_items) treeview.connect("button-press-item", m_button_press_item) treeview.connect("double-click-item", m_double_click_item) treeview.connect("right-press-items", m_right_press_items) treeview.connect("single-click-item", m_single_click_item) # treeview = TreeView(get_dir_items("/")) treeview_align = gtk.Alignment()
self.index += 1 def round_minus(self): self.index -= 1 if self.index == 0: self.index = len(self.devices) def set_index(self, device): self.device_name = device.get_device_desc() self.index = self.devices.index(device) + 1 self.redraw() if __name__ == "__main__": win = gtk.Window(gtk.WINDOW_TOPLEVEL) win.set_title("Container") win.set_size_request(700, 100) #win.border_width(2) win.connect("destroy", lambda w: gtk.main_quit()) tree = [WirelessItem("deepinwork"), WirelessItem("myhost")] tv = TreeView(tree) tv.set_spacing = 0 vbox = gtk.VBox(False) vbox.pack_start(tv) win.add(vbox) win.show_all() gtk.main()