def __init__(self): super(Gtk.EventBox, self).__init__() self.ui = Gtk.Builder() self.ui.add_from_file(Environement.get_resource('GameView.ui')) # Set the star rank self.rank_adjustment = Gtk.Adjustment() self.rank_adjustment.set_upper(100) self.rank = StarRank() self.rank.set_adjustment(self.rank_adjustment) self.ui.get_object('rankBox').add(self.rank) # Set the screenshot flow self.screenshots = PictureFlow() self.screenshots.set_size_request(-1, 256) self.ui.get_object('screenshotsBox').add(self.screenshots) # Add the UI self.add(self.ui.get_object('GameView')) self.show_all() self.game = None self.playinfo = None
def __init__(self): print (time.time()-start_time, "start init application") Gtk.Application.__init__(self, application_id = self.application_id, flags = Gio.ApplicationFlags.FLAGS_NONE) GLib.threads_init() Gdk.threads_init() self.datadir = os.path.dirname(os.path.dirname(os.path.realpath(sys.argv[0]))) self.savedatadir = Environement.save_data_path() self.systems = Badnik.SystemCollection.full () self.gamesdb = Badnik.Library(db_name = "games", db_dir = self.savedatadir, systems = self.systems) #self.gamesdb.app = self self.gamesdb.path = os.path.join(self.savedatadir, "games.db") self.focused_game = None self.connect("activate", self.on_activate) self.register(None) self.settings = Gio.Settings.new(self.application_id) self.builder = Gtk.Builder() self.builder.add_from_file(Environement.get_resource("AppMenu.ui")) self.builder.connect_signals(self) self.menumodel = self.builder.get_object("AppMenu") self.set_app_menu(self.menumodel) self._action_entries = [ { 'name': 'quit', 'callback': self.on_quit, 'accel': '<Primary>q' }, { 'name': 'about', 'callback': self.on_about }, { 'name': 'help', 'callback': self.on_help, 'accel': 'F1' }, #{ 'name': 'fullscreen', 'callback': self.on_fullscreen, 'accel': 'F11' }, #{ 'name': 'view-as', 'callback': self.on_view_as, 'create_hook': self._view_as_create_hook, # 'parameter_type': 's', 'state': self.settings.get_value('view-as') }, { 'name': 'add-games', 'callback': self.on_add_games }, #{ 'name': 'download-metadata', 'callback': self.on_download_metadata, 'accel': '<Primary>m' } ] self._add_actions() settings = Gtk.Settings.get_default() settings.set_property("gtk-application-prefer-dark-theme", True) settings.set_property("gtk-shell-shows-app-menu", True) print (time.time()-start_time, "end init application") self.running_games = {} self.systems.connect("game_found", self.on_game_found) self.gamesdb.connect("game_added", self.on_game_added)