def fill_games(self, categoryid): self.gui.setBusy(self.window_main, True) self.treeview_games.clear() if categoryid == 0: cat = self.actions.get_games() else: cat = self.actions.get_games({'category':categoryid}) if cat: self.download_images(categoryid) for n in cat: game = Game(n['game']) game.game_id = n['id'] game.category = n['category'] game.rate = n['rate'] game.description = n['description'] game.image_filename = n['image_file'] game.version = n['version'] game.file_size = n['file_size'] game.image_url = n['image_url'] game.website = n['website'] game.requires = n['requires'] game.install_command = n['install_command'] game.deb_filename = n['deb_filename'] game.download_url = n['download_url'] game.download_type= n['download_type'] game.localpicture = not load_pixbuf_image(game.image_filename)[1] self.treeview_games.add(game) self.gui.setBusy(self.window_main)
def download_images(self, categoryid): need_download = [] cat = self.actions.get_games({'category':categoryid}) if cat: for n in cat: if load_pixbuf_image(n['image_file'])[1]: need_download.append(n) if len(need_download)>0: dialog = ProgressDialog(self.window_main ,'') dialog.connect("download-failed", self._fileDownloadFailed) # Download queue downloadItems = set() for n in need_download: downloadItems.add(DownloadItem('%s image' % n['game'], n['image_url'], os.path.join(CONFIG_DIR, n['image_file']))) # Try to download all items #response = dialog.download(downloadItems) dialog.message('Downloading Games images...') response = dialog.download(downloadItems) # Destroy wizard dialog.destroy() # Abort installation if user pressed cancel during the download #if response == gtk.RESPONSE_ACCEPT: self.window_main.set_sensitive(True)
def add_game(self, game): """ @param games a reference to IUG.Games object. """ pixbuf, isdefault = load_pixbuf_image(game.image_filename) pixscaled = pixbuf.scale_simple(48, 48, gtk.gdk.INTERP_HYPER) item = [pixscaled, game.game, game.rate, game, False] self.append_method(self, item)
def on_treeview_games_selected(self, widget, game): self.treeview_description.clear() self.image_game.clear() self.menu_viewsite.set_sensitive(True) self.button_download.set_sensitive(True) self.menu_download.set_sensitive(True) self.button_zoom.set_sensitive(True) self.menu_fullscreen.set_sensitive(True) self.treeview_description.add(game) pixbuf,isdefault = load_pixbuf_image(game.image_filename) pixscaled = self.gui.scale(pixbuf,192,192) self.image_game.set_from_pixbuf(pixscaled)
def __game_view_func(self, cell_layout, renderer, model, iter): if isinstance(renderer, gtk.CellRendererPixbuf): # if not model.get_value(iter, model.IMG_SET_COL): game = model.get_value(iter, model.GAME_COL) pixbuf, isdefault = load_pixbuf_image(game.image_filename) model.set_value(iter, model.IMG_SET_COL, True) pixscaled = pixbuf.scale_simple(48, 48, gtk.gdk.INTERP_HYPER) model.set_value(iter, model.PIC_COL, pixscaled) gc.collect() # Tell Python to clean up the memory elif isinstance(renderer, gtk.CellRendererText): game = model.get_value(iter, self.model.GAME_COL) markup = MSG_000021 % (game.game, game.description, game.file_size, game.version) renderer.set_property("markup", markup)
def __init__(self): gtk.AboutDialog.__init__(self) self.set_name("IUG") self.set_logo(load_pixbuf_image("temp.jpg")[0]) self.set_version("1.0") self.set_website("http://www.ubuntugames.org") self.set_comments(MSG_000022) self.set_artists(['Carlos Donizete "Coringao" <*****@*****.**>']) self.set_authors( [ "Laudeci Oliveira <*****@*****.**>", "Thiago Avelino <*****@*****.**>", "Carlos Donizete <*****@*****.**>", ] ) self.set_copyright("Copyright (C) 2009 Carlos Donizete <*****@*****.**>") self.set_license(MSG_000023) self.run() self.destroy()
def __init__(self): self.gui = GTKWrappers() self.actions = Actions() # setup a default icon self.icons = gtk.icon_theme_get_default() self.current_category_id = 0 self.gui.get_glade(MAIN_GLADE, 'window_main') #Main widget self.window_main = self.gui.get_widget('window_main') self.window_main.set_icon(load_pixbuf_image('iug')[0]) # Sexy search entry self.search_hbox = self.gui.get_widget('search_hbox') self.search_entry = SearchEntry(self.icons) self.search_hbox.add(self.search_entry) self.search_entry.show() #creates the GamesListView to view a list of games self.scrolled_window = self.gui.get_widget('scrolled_window') self.treeview_games = GamesListView() self.scrolled_window.add(self.treeview_games) self.treeview_games.show() #create the description listview to show games info. self.scrolled_description = self.gui.get_widget('scrolled_description') self.treeview_description = DescriptionTreeView() self.scrolled_description.add(self.treeview_description) self.treeview_description.show() #Application menu self.menu_download = self.gui.get_widget('menu_download') self.menu_download.set_sensitive(False) self.menu_viewsite = self.gui.get_widget('menu_viewsite') self.menu_viewsite.set_sensitive(False) self.menu_quit = self.gui.get_widget('menu_quit') self.menu_preferences = self.gui.get_widget('menu_preferences') self.menu_fullscreen = self.gui.get_widget('menu_fullscreen') self.menu_fullscreen.set_sensitive(False) self.menu_reportbug = self.gui.get_widget('menu_reportbug') self.menu_about = self.gui.get_widget('menu_about') #Application buttons self.button_close = self.gui.get_widget('button_close') self.button_download = self.gui.get_widget('button_download') self.button_zoom = self.gui.get_widget("button_zoom") self.menu_viewsite.set_sensitive(False) self.button_download.set_sensitive(False) self.menu_download.set_sensitive(False) self.button_zoom.set_sensitive(False) # image widget to show the game screenshot self.image_game = self.gui.get_widget('image_game') # create the category treeview self.treeview_categories = self.gui.get_widget('treeview_categories') renderer_cat_name = gtk.CellRendererText() renderer_cat_name.set_property('scale', 1.0) column_cat = gtk.TreeViewColumn(MSG_000001,renderer_cat_name) column_cat.add_attribute(renderer_cat_name, 'markup', COL_CAT_NAME) self.treeview_categories.append_column(column_cat) self.treeview_categories.set_search_column(COL_CAT_NAME) self.category_selection = self.treeview_categories.get_selection() self.category_selection.set_mode(gtk.SELECTION_SINGLE) self.window_main.show() self.connect_events() self.check_version() self.fill_category() self.search_entry.grab_focus()