def __init__(self, controls): FControl.__init__(self, controls) Gtk.Box.__init__(self, orientation=Gtk.Orientation.HORIZONTAL, spacing=0) self.old_menu = MenuBarWidget(controls) self.pack_start(self.old_menu.widget, False, False, 0) self.new_menu_button = ImageButton("preferences-system", tooltip_text=_("Settings")) self.new_menu_button.connect("button-press-event", self.on_button_press) self.pack_start(self.new_menu_button, False, False, 0) self.pack_start(controls.playback, False, False, 0) self.pack_start(controls.os, False, False, 0) self.pack_start(controls.volume, False, False, 0) self.pack_start(Gtk.SeparatorToolItem.new(), False, False, 0) self.pack_start(controls.record, False, False, 0) self.pack_start(controls.seek_bar, True, True, 0) """menu init""" menu = Popup() decorator = MenuStyleDecorator() MenuBarWidget(self.controls, menu) menu.add_separator() menu.add_item(_("Preferences"), "preferences-system", self.controls.show_preferences) menu.add_separator() menu.add_item(_("Quit"), "application-exit", self.controls.quit) decorator.apply(menu) self.menu = menu
def on_button_press(self, w, e): if is_empty_click(w, e): w.get_selection().unselect_all() active = self.get_selected_bean() if active: active.type = FTYPE_NOT_UPDATE_INFO_PANEL else: return None if is_left_click(e): if active.get_status(): if active.get_status() == DOWNLOAD_STATUS_ALL: self.controls.dm.filter(None, FTreeModel().status[0]) else: self.controls.dm.filter(active.get_status(), FTreeModel().status[0]) if is_double_left_click(e): self.controls.play(active) if is_rigth_click(e): right_click_optimization_for_trees(w, e) menu = Popup() menu.add_item('Play', Gtk.STOCK_MEDIA_PLAY, self.controls.play, active) menu.add_item('Copy to Search Line', Gtk.STOCK_COPY, self.controls.searchPanel.set_search_text, active.text) menu.show(e)
def __init__(self, controls): FControl.__init__(self, controls) Gtk.HBox.__init__(self, False, 0) self.old_menu = MenuBarWidget(controls) self.pack_start(self.old_menu.widget, False, False, 0) self.new_menu_button = ImageButton(Gtk.STOCK_PREFERENCES) self.new_menu_button.connect("button-press-event", self.on_button_press) self.pack_start(self.new_menu_button, False, False, 0) self.pack_start(controls.playback, False, False, 0) self.pack_start(controls.os, False, False, 0) self.pack_start(controls.volume, False, False, 0) self.pack_start(Gtk.SeparatorToolItem.new(), False, False, 0) self.pack_start(controls.record, False, False, 0) self.pack_start(controls.seek_bar, True, True, 0) """menu init""" menu = Popup() decorator = MenuStyleDecorator() MenuBarWidget(self.controls, menu) menu.add_separator() menu.add_item(_("Preferences"), Gtk.STOCK_PREFERENCES, self.controls.show_preferences) menu.add_separator() menu.add_item(_("Quit"), Gtk.STOCK_QUIT, self.controls.quit) decorator.apply(menu) self.menu = menu
def _append_column(self, column): column.set_widget(column.label) column.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED) if column.key in ['*', '№', 'Time']: column.set_sizing(gtk.TREE_VIEW_COLUMN_AUTOSIZE) else: column.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED) if FC().columns[column.key][2] > 0: column.set_fixed_width(FC().columns[column.key][2]) self.append_column(column) column.button = column.label.get_parent().get_parent().get_parent() column.button.connect("button-press-event", self.on_click_header) if column.key == '№': self.trkn_col.button.menu = Popup() self.num_order = gtk.RadioMenuItem(None, _("Numbering by order")) self.num_order.connect("button-press-event", self.on_toggled_num) self.num_tags = gtk.RadioMenuItem(self.num_order, _("Numbering by tags")) self.num_tags.connect("button-press-event", self.on_toggled_num) self.trkn_col.button.menu.append(self.num_order) self.trkn_col.button.menu.append(self.num_tags) if FC().numbering_by_order: self.num_order.set_active(True) else: self.num_tags.set_active(True)
def on_button_press(self, w, e): if is_middle_click(e): """to avoid unselect all selected items""" self.stop_emission('button-press-event') if is_left_click(e): # on left click expand selected folders return if is_double_left_click(e): # on middle click play selected beans self.add_to_tab() return if is_rigth_click(e): # on right click, show pop-up menu menu = Popup() menu.add_item(_("Append to playlist"), gtk.STOCK_ADD, lambda: self.add_to_tab(True), None) menu.add_item(_("Open in new playlist"), gtk.STOCK_MEDIA_PLAY, self.add_to_tab, None) menu.add_separator() menu.add_item(_("Add folder here"), gtk.STOCK_OPEN, self.add_folder, None) menu.add_separator() if FC().tabs_mode == "Multi": menu.add_item(_("Add folder in new tab"), gtk.STOCK_OPEN, lambda: self.add_folder(True), None) menu.add_item( _("Clear"), gtk.STOCK_CLEAR, lambda: self.controls.tabhelper.clear_tree(self.scroll), None) menu.add_item( _("Update"), gtk.STOCK_REFRESH, lambda: self.controls.tabhelper .on_update_music_tree(self.scroll), None) f_model, f_t_paths = self.get_selection().get_selected_rows() if f_t_paths: model = f_model.get_model() t_paths = [ f_model.convert_child_path_to_path(f_t_path) for f_t_path in f_t_paths ] row = model[t_paths[0]] paths = [model[t_path][self.path[0]] for t_path in t_paths] row_refs = [ gtk.TreeRowReference(model, t_path) for t_path in t_paths ] menu.add_separator() menu.add_item(_("Open in file manager"), None, open_in_filemanager, self.get_selected_bean().path) menu.add_item(_("Rename file (folder)"), None, self.rename_files, (row, self.path[0], self.text[0])) menu.add_item( _("Delete file(s) / folder(s)"), None, self.delete_files, (row_refs, paths, self.get_iter_from_row_reference)) menu.show(e)
def tab_menu_creator(self, widget, tab_child): widget.menu = Popup() widget.menu.add_item(_("Rename tab"), "", lambda: self.on_rename_tab(tab_child, 90, FCache().tab_names), None) widget.menu.add_item(_("Update Music Tree"), "view-refresh", lambda: self.on_update_music_tree(tab_child), None) widget.menu.add_item(_("Add folder"), "folder-open", lambda: self.on_add_folder(tab_child), None) widget.menu.add_item(_("Add folder in new tab"), "folder-open", lambda : self.on_add_folder(tab_child, True), None) widget.menu.add_item(_("Clear Music Tree"), "edit-clear", lambda : self.clear_tree(tab_child), None) widget.menu.add_item(_("Close tab"), "window-close", lambda: self.on_delete_tab(tab_child), None) return widget
def on_button_press(self, w, e): active = self.get_selected_bean() if is_rigth_click(e): menu = Popup() menu.add_item(_('Play'), gtk.STOCK_MEDIA_PLAY, self.controls.play, active) menu.add_item(_('Copy to Search Line'), gtk.STOCK_COPY, self.controls.searchPanel.set_search_text, active.text) menu.show(e)
def tab_menu_creator(self, widget, tab_child): widget.menu = Popup() widget.menu.add_item( _("Rename tab"), "", lambda: self.on_rename_tab(tab_child, self.default_angle), None) widget.menu.add_item(_("Save playlist as"), Gtk.STOCK_SAVE_AS, lambda: self.on_save_playlist(tab_child)) widget.menu.add_item(_("Close tab"), Gtk.STOCK_CLOSE, lambda: self.on_delete_tab(tab_child), None) widget.show() return widget
def tab_menu_creator(self, widget, tab_child): widget.menu = Popup() widget.menu.add_item( _("Rename tab"), "", lambda: self.on_rename_tab(tab_child, self.default_angle), None) widget.menu.add_item(_("Save playlist as"), "document-save-as", lambda: self.on_save_playlist(tab_child)) widget.menu.add_item(_("Close tab"), "window-close", lambda: self.on_delete_tab(tab_child), None) widget.show() return widget
def create_menu(self): menu = Popup() menu.add_item(_("Play-Pause"), "media-playback-pause", self.set_action_text, "play_pause") menu.add_item(_("Stop"), "media-playback-stop", self.set_action_text, "state_stop") menu.add_item(_("Next song"), "go-next", self.set_action_text, "next") menu.add_item(_("Previous song"), "go-previous", self.set_action_text, "prev") menu.add_item(_("Volume up"), "go-up", self.set_action_text, "volume_up") menu.add_item(_("Volume down"), "go-down", self.set_action_text, "volume_down") menu.add_item(_("Show-Hide"), "view-fullscreen", self.set_action_text, "show_hide") menu.add_item(_('Download'), "list-add", self.set_action_text, "download") return menu
def on_button_press(self, w, e): logging.debug("on dm button release") if is_rigth_click(e): menu = Popup() try: if self.get_selected_bean(): menu.add_item(_("Open in file manager"), None, open_in_filemanager, self.get_selected_bean().path) else: menu.add_item(_("Open in file manager"), None, open_in_filemanager, FC().online_save_to_folder) except Exception, e: logging.error(e) menu.show(e)
def on_button_release(self, w, e): if is_rigth_click_release(e): """to select item under cursor""" try: path, col, cellx, celly = self.get_path_at_pos( int(e.x), int(e.y)) #@UnusedVariable self.get_selection().select_path(path) except TypeError: pass #menu.add_item('Save as', gtk.STOCK_SAVE_AS, self.controls.save_beans_to, self.get_all_selected_beans()) beans = self.get_selected_beans() if beans: menu = Popup() menu.add_item(_('Play'), gtk.STOCK_MEDIA_PLAY, self.controls.play_selected_song, None) menu.add_item(_('Download'), gtk.STOCK_ADD, self.controls.dm.append_tasks, self.get_all_selected_beans()) menu.add_item(_('Download To...'), gtk.STOCK_ADD, self.controls.dm.append_tasks_with_dialog, self.get_all_selected_beans()) menu.add_separator() paths = [bean.path for bean in beans] if paths[0]: menu.add_item(_('Edit Tags'), gtk.STOCK_EDIT, edit_tags, (self.controls, paths)) menu.add_item(_('Format Converter'), gtk.STOCK_CONVERT, convert_files, paths) text = self.get_selected_bean().text menu.add_item(_('Copy To Search Line'), gtk.STOCK_COPY, self.controls.searchPanel.set_search_text, text) menu.add_separator() menu.add_item(_('Copy №-Title-Time'), gtk.STOCK_COPY, self.copy_info_to_clipboard) menu.add_item(_('Copy Artist-Title-Album'), gtk.STOCK_COPY, self.copy_info_to_clipboard, True) menu.add_separator() menu.add_item(_('Love This Track(s)'), None, self.controls.love_this_tracks, self.get_all_selected_beans()) menu.add_separator() if paths[0]: menu.add_item(_("Open In File Manager"), None, open_in_filemanager, paths[0]) menu.show(e)
def __init__(self, controls): CommonTreeControl.__init__(self, controls) """column config""" column = Gtk.TreeViewColumn(_("Storage"), Gtk.CellRendererText(), text=self.text[0], font=self.font[0]) column.set_resizable(True) self.set_headers_visible(True) self.append_column(column) self.tree_menu = Popup() self.configure_send_drag() self.configure_recive_drag() self.set_type_tree()
def __init__(self, controls): CommonTreeControl.__init__(self, controls) self.set_reorderable(False) self.switcher_label = _("My channels") self.tree_menu = Popup() """column config""" column = Gtk.TreeViewColumn(_("Radio Stations"), self.ellipsize_render, text=self.text[0], font=self.font[0]) column.set_resizable(True) self.set_headers_visible(True) self.append_column(column) self.configure_send_drag() self.configure_recive_drag() self.set_type_tree()
def tab_menu_creator(self, widget, tab_child): widget.menu = Popup() widget.menu.add_item( _("Rename tab"), "", lambda: self.on_rename_tab(tab_child, 90, FCache().tab_names), None) widget.menu.add_item(_("Update Music Tree"), Gtk.STOCK_REFRESH, lambda: self.on_update_music_tree(tab_child), None) widget.menu.add_item(_("Add folder"), Gtk.STOCK_OPEN, lambda: self.on_add_folder(tab_child), None) widget.menu.add_item(_("Add folder in new tab"), Gtk.STOCK_OPEN, lambda: self.on_add_folder(tab_child, True), None) widget.menu.add_item(_("Clear Music Tree"), Gtk.STOCK_CLEAR, lambda: self.clear_tree(tab_child), None) widget.menu.add_item(_("Close tab"), Gtk.STOCK_CLOSE, lambda: self.on_delete_tab(tab_child), None) return widget
def create_menu(self): menu = Popup() menu.add_item(_("Play-Pause"), Gtk.STOCK_MEDIA_PAUSE, self.set_action_text, "play_pause") menu.add_item(_("Stop"), Gtk.STOCK_MEDIA_STOP, self.set_action_text, "state_stop") menu.add_item(_("Next song"), Gtk.STOCK_MEDIA_NEXT, self.set_action_text, "next") menu.add_item(_("Previous song"), Gtk.STOCK_MEDIA_PREVIOUS, self.set_action_text, "prev") menu.add_item(_("Volume up"), Gtk.STOCK_GO_UP, self.set_action_text, "volume_up") menu.add_item(_("Volume down"), Gtk.STOCK_GO_DOWN, self.set_action_text, "volume_down") menu.add_item(_("Show-Hide"), Gtk.STOCK_FULLSCREEN, self.set_action_text, "show_hide") menu.add_item(_('Download'), Gtk.STOCK_ADD, self.set_action_text, "download") return menu
def on_button_press(self, w, e): active = self.get_selected_bean() if active and is_rigth_click(e): menu = Popup() menu.add_item(_('Play'), gtk.STOCK_MEDIA_PLAY, self.controls.play, active) menu.add_item(_('Copy to Search Line'), gtk.STOCK_COPY, self.controls.searchPanel.set_search_text, active.text) menu.show(e) if is_double_left_click(e): selected = self.get_selected_bean() beans = self.get_all_child_beans_by_selected() self.controls.notetabs._append_tab(selected.text, [selected] + beans, optimization=True) "run radio channel" self.controls.play_first_file_in_playlist()
def __init__(self, controls): CommonTreeControl.__init__(self, controls) """column config""" column = Gtk.TreeViewColumn(_("VK Integration "), self.ellipsize_render, text=self.text[0], font=self.font[0]) column.set_resizable(True) self.set_headers_visible(True) self.append_column(column) self.tree_menu = Popup() self.configure_send_drag() self.configure_recive_drag() self.set_type_tree() self.lazy = False self.cache = []
def __init__(self, navigation): self.navigation = navigation CommonTreeControl.__init__(self, None) self.set_reorderable(False) self.set_headers_visible(True) self.tree_menu = Popup() """column config""" column = Gtk.TreeViewColumn("Name", Gtk.CellRendererText(), text=self.text[0]) column.set_resizable(True) self.append_column(column) """column config""" column = Gtk.TreeViewColumn("Progress", Gtk.CellRendererProgress(), text=self.persent[0], value=self.persent[0]) column.set_resizable(True) self.append_column(column) """column config""" column = Gtk.TreeViewColumn("Size", Gtk.CellRendererText(), text=self.size[0]) column.set_resizable(True) self.append_column(column) """status""" column = Gtk.TreeViewColumn("Status", Gtk.CellRendererText(), text=self.status[0]) column.set_resizable(True) self.append_column(column) """column config""" column = Gtk.TreeViewColumn("Path", Gtk.CellRendererText(), text=self.save_to[0]) column.set_resizable(True) column.set_expand(True) self.append_column(column) self.set_type_plain()
def on_mouse_click(self, w, event): menu = Popup() menu.add_item(_("Play"), gtk.STOCK_MEDIA_PLAY, self.set_action_text, "--play") menu.add_item(_("Pause"), gtk.STOCK_MEDIA_PAUSE, self.set_action_text, "--pause") menu.add_item(_("Stop"), gtk.STOCK_MEDIA_STOP, self.set_action_text, "--stop") menu.add_item(_("Next song"), gtk.STOCK_MEDIA_NEXT, self.set_action_text, "--next") menu.add_item(_("Previous song"), gtk.STOCK_MEDIA_PREVIOUS, self.set_action_text, "--prev") menu.add_item(_("Volume up"), gtk.STOCK_GO_UP, self.set_action_text, "--volume-up") menu.add_item(_("Volume down"), gtk.STOCK_GO_DOWN, self.set_action_text, "--volume-down") menu.add_item(_("Show-Hide"), gtk.STOCK_FULLSCREEN, self.set_action_text, "--show-hide") menu.add_item(_("Play-Pause"), gtk.STOCK_MEDIA_RECORD, self.set_action_text, "--play-pause") menu.show(event)
def on_button_press(self, w, e): if is_double_left_click(e): selected = self.get_selected_bean() beans = self.get_all_child_beans_by_selected() self.controls.notetabs._append_tab(selected.text, [selected] + beans, optimization=True) "run radio channel" self.controls.play_first_file_in_playlist() if is_rigth_click(e): menu = Popup() menu.add_item(_("Add Station"), gtk.STOCK_ADD, self.on_add_station, None) menu.add_item(_("Delete Station"), gtk.STOCK_DELETE, self.on_delete_station, None) menu.add_item(_("Edit Radio"), gtk.STOCK_EDIT, self.on_edit_radio, None) menu.add_separator() menu.add_item(_("Reload radio folder"), gtk.STOCK_REFRESH, self.update_radio_tree, None) menu.show(e)
def __init__(self, controls): CommonTreeControl.__init__(self, controls) """column config""" column = Gtk.TreeViewColumn(_("Lasm.fm Integration ") + FCBase().lfm_login, self.ellipsize_render, text=self.text[0], font=self.font[0]) column.set_resizable(True) self.set_headers_visible(True) self.append_column(column) self.tree_menu = Popup() self.configure_send_drag() self.configure_recive_drag() self.set_type_tree() self.services = { _("My recommendations"): self.controls.lastfm_service.get_recommended_artists, _("My loved tracks"): self.controls.lastfm_service.get_loved_tracks, _("My top tracks"): self.controls.lastfm_service.get_top_tracks, _("My recent tracks"): self.controls.lastfm_service.get_recent_tracks, _("My top artists"): self.controls.lastfm_service.get_top_artists, _("My events"): self.controls.lastfm_service.get_events, _("My friends"): self.controls.lastfm_service.get_friends, _("My neighbours"): self.controls.lastfm_service.get_neighbours } for name in self.services: parent = FModel(name) bean = FDModel(_("loading...")).parent(parent).add_is_file(True) self.append(parent) self.append(bean)
def __init__(self, controls): CommonTreeControl.__init__(self, controls) self.header_pressed = False self.menu = Popup() self.tree_menu = Popup() self.full_name = "" self.label = Gtk.Label() self.set_headers_visible(True) self.set_headers_clickable(True) self.set_reorderable(True) """Column icon""" self.icon_col = Gtk.TreeViewColumn(None, Gtk.CellRendererPixbuf(), icon_name=self.play_icon[0]) self.icon_col.key = "*" self.icon_col.set_sizing(Gtk.TreeViewColumnSizing.FIXED) self.icon_col.set_fixed_width(32) self.icon_col.set_min_width(32) self.icon_col.label = Gtk.Label("*") self._append_column(self.icon_col) """track number""" self.trkn_col = Gtk.TreeViewColumn(None, Gtk.CellRendererText(), text=self.tracknumber[0]) self.trkn_col.key = "N" self.trkn_col.set_clickable(True) self.trkn_col.label = Gtk.Label("№") self.trkn_col.label.show() self.trkn_col.item = Gtk.CheckMenuItem(_("Number")) self.trkn_col.set_widget(self.trkn_col.label) self._append_column(self.trkn_col) """column composer""" self.comp_col = Gtk.TreeViewColumn(None, Gtk.CellRendererText(), text=self.composer[0]) self.comp_col.key = "Composer" self.comp_col.set_resizable(True) self.comp_col.label = Gtk.Label(_("Composer")) self.comp_col.item = Gtk.CheckMenuItem(_("Composer")) self._append_column(self.comp_col) """column artist title""" self.description_col = Gtk.TreeViewColumn(None, Gtk.CellRendererText(), text=self.text[0], font=self.font[0]) self.description_col.key = "Track" self.description_col.set_resizable(True) self.description_col.label = Gtk.Label(_("Track")) self.description_col.item = Gtk.CheckMenuItem(_("Track")) self._append_column(self.description_col) """column artist""" self.artist_col = Gtk.TreeViewColumn(None, Gtk.CellRendererText(), text=self.artist[0]) self.artist_col.key = "Artist" self.artist_col.set_sizing(Gtk.TREE_VIEW_COLUMN_AUTOSIZE) self.artist_col.set_resizable(True) self.artist_col.label = Gtk.Label(_("Artist")) self.artist_col.item = Gtk.CheckMenuItem(_("Artist")) self._append_column(self.artist_col) """column title""" self.title_col = Gtk.TreeViewColumn(None, Gtk.CellRendererText(), text=self.title[0]) self.title_col.key = "Title" self.title_col.set_sizing(Gtk.TREE_VIEW_COLUMN_AUTOSIZE) self.title_col.set_resizable(True) self.title_col.label = Gtk.Label(_("Title")) self.title_col.item = Gtk.CheckMenuItem(_("Title")) self._append_column(self.title_col) """column album""" self.album_col = Gtk.TreeViewColumn(None, Gtk.CellRendererText(), text=self.album[0]) self.album_col.key = "Album" if self.album_col.key not in FC().columns: FC().columns[self.album_col.key] = [False, 7, 90] self.album_col.set_sizing(Gtk.TREE_VIEW_COLUMN_AUTOSIZE) self.album_col.set_resizable(True) self.album_col.label = Gtk.Label(_("Album")) self.album_col.item = Gtk.CheckMenuItem(_("Album")) self._append_column(self.album_col) """column time""" self.time_col = Gtk.TreeViewColumn(None, Gtk.CellRendererText(), text=self.time[0]) self.time_col.key = "Time" self.time_col.label = Gtk.Label(_("Time")) self.time_col.item = Gtk.CheckMenuItem(_("Time")) self._append_column(self.time_col) self.configure_send_drag() self.configure_recive_drag() self.set_playlist_plain() self.connect("button-release-event", self.on_button_press) self.on_load() self.connect("columns-changed", self.on_columns_changed)
def on_button_press(self, w, e): if is_rigth_click(e): menu = Popup() menu.add_item('Restore Defaults', "view-refresh", None) menu.show(e)
def __init__(self, controls): CommonTreeControl.__init__(self, controls) self.set_headers_visible(True) self.set_headers_clickable(True) self.set_reorderable(True) self.menu = Popup() """Column icon""" self.icon_col = gtk.TreeViewColumn(None, gtk.CellRendererPixbuf(), stock_id=self.play_icon[0]) self.icon_col.key = "*" self.icon_col.set_fixed_width(5) self.icon_col.set_min_width(5) self.icon_col.label = gtk.Label("*") self._append_column(self.icon_col) """track number""" self.trkn_col = gtk.TreeViewColumn(None, gtk.CellRendererText(), text=self.tracknumber[0]) self.trkn_col.key = "№" self.trkn_col.set_clickable(True) self.trkn_col.label = gtk.Label("№") self.trkn_col.label.show() self.trkn_col.item = gtk.CheckMenuItem(_("Number")) self.trkn_col.set_widget(self.trkn_col.label) self._append_column(self.trkn_col) """column composer""" self.comp_col = gtk.TreeViewColumn(None, gtk.CellRendererText(), text=self.composer[0]) self.comp_col.key = "Composer" self.comp_col.set_resizable(True) self.comp_col.label = gtk.Label(_("Composer")) self.comp_col.item = gtk.CheckMenuItem(_("Composer")) self._append_column(self.comp_col) """column artist title""" self.description_col = gtk.TreeViewColumn(None, gtk.CellRendererText(), text=self.text[0], font=self.font[0]) self.description_col.key = "Track" self.description_col.set_resizable(True) self.description_col.label = gtk.Label(_("Track")) self.description_col.item = gtk.CheckMenuItem(_("Track")) self._append_column(self.description_col) """column artist""" self.artist_col = gtk.TreeViewColumn(None, gtk.CellRendererText(), text=self.artist[0]) self.artist_col.key = "Artist" self.artist_col.set_sizing(gtk.TREE_VIEW_COLUMN_AUTOSIZE) self.artist_col.set_resizable(True) self.artist_col.label = gtk.Label(_("Artist")) self.artist_col.item = gtk.CheckMenuItem(_("Artist")) self._append_column(self.artist_col) """column title""" self.title_col = gtk.TreeViewColumn(None, gtk.CellRendererText(), text=self.title[0]) self.title_col.key = "Title" self.title_col.set_sizing(gtk.TREE_VIEW_COLUMN_AUTOSIZE) self.title_col.set_resizable(True) self.title_col.label = gtk.Label(_("Title")) self.title_col.item = gtk.CheckMenuItem(_("Title")) self._append_column(self.title_col) """column time""" self.time_col = gtk.TreeViewColumn(None, gtk.CellRendererText(), text=self.time[0]) self.time_col.key = "Time" self.time_col.label = gtk.Label(_("Time")) self.time_col.item = gtk.CheckMenuItem(_("Time")) self._append_column(self.time_col) self.configure_send_drag() self.configure_recive_drag() self.set_playlist_plain() self.connect("button-release-event", self.on_button_release) self.on_load() self.connect("columns-changed", self.on_columns_changed)
def __init__(self, controls): CommonTreeControl.__init__(self, controls) self.controls = controls self.full_name = "" self.label = Gtk.Label.new(None) self.tree_menu = Popup() self.set_headers_visible(True) self.set_headers_clickable(True) """column config""" self.column = Gtk.TreeViewColumn("File", self.ellipsize_render, text=self.text[0], font=self.font[0]) self._append_column(self.column, _("File")) def func(column, cell, model, iter, ext=False): try: data = model.get_value(iter, self.text[0]) except TypeError: data = None pass if not model.get_value(iter, self.path[0]): cell.set_property('text', '') return if os.path.isfile(model.get_value(iter, self.path[0])): if data: if ext: cell.set_property('text', os.path.splitext(data)[1][1:]) else: cell.set_property('text', os.path.splitext(data)[0]) else: if ext: cell.set_property('text', '') self.name_column = Gtk.TreeViewColumn("Name", self.ellipsize_render, text=self.text[0], font=self.font[0]) self.name_column.set_sizing(Gtk.TreeViewColumnSizing.FIXED) for rend in self.name_column.get_cells(): self.name_column.set_cell_data_func(rend, func, False) self._append_column(self.name_column, _("Name")) self.ext_column = Gtk.TreeViewColumn("Ext", Gtk.CellRendererText(), text=self.text[0], font=self.font[0]) for rend in self.ext_column.get_cells(): self.ext_column.set_cell_data_func(rend, func, True) self._append_column(self.ext_column, _("Ext")) self.configure_send_drag() self.configure_recive_drag() self.set_type_tree() self.connect("button-release-event", self.on_button_release) self.connect("drag-data-get", self.on_drag_data_get) '''to force the ext_column to take the minimum size''' self.name_column.set_fixed_width(2000) def task(*a): self.on_click_header(None, None, on_start=True) GLib.idle_add(task) self.scroll.get_vscrollbar().connect('show', task) self.scroll.get_vscrollbar().connect('hide', task)
def __init__(self, controls): CommonTreeControl.__init__(self, controls) self.header_pressed = False self.menu = Popup() self.tree_menu = Popup() self.full_name = "" self.label = Gtk.Label.new(None) self.set_headers_visible(True) self.set_headers_clickable(True) self.set_reorderable(True) """Column icon""" self.icon_col = Gtk.TreeViewColumn(None, Gtk.CellRendererPixbuf.new(), icon_name=self.play_icon[0]) self.icon_col.key = "*" self.icon_col.label = Gtk.Label.new("*") self._append_column(self.icon_col) """track number""" self.trkn_col = Gtk.TreeViewColumn(None, Gtk.CellRendererText.new(), text=self.tracknumber[0]) self.trkn_col.key = "N" #self.trkn_col.set_clickable(True) self.trkn_col.label = Gtk.Label.new("№") self.trkn_col.item = Gtk.CheckMenuItem.new_with_label(_("Number")) self._append_column(self.trkn_col) """column composer""" self.comp_col = Gtk.TreeViewColumn(None, self.ellipsize_render, text=self.composer[0]) self.comp_col.key = "Composer" self.comp_col.label = Gtk.Label.new(_("Composer")) self.comp_col.item = Gtk.CheckMenuItem.new_with_label(_("Composer")) self._append_column(self.comp_col) """column artist title""" self.description_col = Gtk.TreeViewColumn(None, self.ellipsize_render, text=self.text[0], font=self.font[0]) self.description_col.key = "Track" self.description_col.label = Gtk.Label.new(_("Track")) self.description_col.item = Gtk.CheckMenuItem.new_with_label(_("Track")) self._append_column(self.description_col) """column artist""" self.artist_col = Gtk.TreeViewColumn(None, self.ellipsize_render, text=self.artist[0]) self.artist_col.key = "Artist" self.artist_col.label = Gtk.Label.new(_("Artist")) self.artist_col.item = Gtk.CheckMenuItem.new_with_label(_("Artist")) self._append_column(self.artist_col) """column title""" self.title_col = Gtk.TreeViewColumn(None, self.ellipsize_render, text=self.title[0]) self.title_col.key = "Title" self.title_col.label = Gtk.Label.new(_("Title")) self.title_col.item = Gtk.CheckMenuItem.new_with_label(_("Title")) self._append_column(self.title_col) """column year""" self.year_col = Gtk.TreeViewColumn(None, Gtk.CellRendererText.new(), text=self.year[0]) self.year_col.key = "Year" self.year_col.label = Gtk.Label.new(_("Year")) self.year_col.item = Gtk.CheckMenuItem.new_with_label(_("Year")) self._append_column(self.year_col) """column album""" self.album_col = Gtk.TreeViewColumn(None, self.ellipsize_render, text=self.album[0]) self.album_col.key = "Album" if self.album_col.key not in FC().columns: FC().columns[self.album_col.key] = [False, 7, 90] self.album_col.label = Gtk.Label.new(_("Album")) self.album_col.item = Gtk.CheckMenuItem.new_with_label(_("Album")) self._append_column(self.album_col) """column time""" self.time_col = Gtk.TreeViewColumn(None, Gtk.CellRendererText.new(), text=self.time[0]) self.time_col.key = "Time" self.time_col.label = Gtk.Label.new(_("Time")) self.time_col.item = Gtk.CheckMenuItem.new_with_label(_("Time")) self._append_column(self.time_col) self.configure_send_drag() self.configure_recive_drag() self.set_playlist_plain() self.connect("button-release-event", self.on_button_press) self.connect("columns-changed", self.on_columns_changed) self.on_load()
def on_button_press(self, w, e): if is_rigth_click(e): menu = Popup() menu.add_item('Restore Defaults', gtk.STOCK_REFRESH, None) menu.show(e)