Beispiel #1
0
    def __init__(self, agent):
        self.agent = agent
        self.builder = Gtk.Builder()
        self.builder.set_translation_domain('btsync-gui')
        self.builder.add_from_file(
            os.path.dirname(__file__) + "/btsyncstatus.glade")
        self.builder.connect_signals(self)
        self.menu = self.builder.get_object('btsyncmenu')
        self.menuconnection = self.builder.get_object('connectionitem')
        self.menustatus = self.builder.get_object('statusitem')
        self.menupause = self.builder.get_object('pausesyncing')
        self.menudebug = self.builder.get_object('setdebug')
        self.menuopenweb = self.builder.get_object('openweb')
        self.menuopenapp = self.builder.get_object('openapp')
        self.about = self.builder.get_object('aboutdialog')

        self.init_icons()

        self.ind = TrayIndicator('btsync', self.icn_disconnected)

        if agent.is_auto():
            self.menuconnection.set_visible(False)
            self.ind.set_title(_('BitTorrent Sync'))
            self.ind.set_tooltip_text(_('BitTorrent Sync Status Indicator'))
        else:
            self.menuconnection.set_label('{0}:{1}'.format(
                agent.get_host(), agent.get_port()))
            self.ind.set_title(
                _('BitTorrent Sync {0}:{1}').format(agent.get_host(),
                                                    agent.get_port()))
            self.ind.set_tooltip_text(
                _('BitTorrent Sync {0}:{1}').format(agent.get_host(),
                                                    agent.get_port()))

        self.ind.set_menu(self.menu)
        self.ind.set_default_action(self.onActivate)
        self.refresh_menus()

        # icon animator
        self.frame = 0
        self.rotating = False
        self.transferring = False
        self.animator_id = None

        # application window
        self.app = None

        # other variables
        self.connection = BtSyncStatus.DISCONNECTED
        self.connect_id = None
        self.status_to = BtDynamicTimeout(1000, self.btsync_refresh_status)
Beispiel #2
0
	def __init__(self,agent,status=None):
		self.agent	= agent
		self.status	= status

		self.builder = Gtk.Builder()
		self.builder.set_translation_domain('btsync-gui')
		self.builder.add_from_file(os.path.dirname(__file__) + "/btsyncapp.glade")
		self.builder.connect_signals (self)

		width, height = self.agent.get_pref('windowsize', (602,328))

		self.window = self.builder.get_object('btsyncapp')
		self.window.set_default_size(width, height)
		self.window.connect('delete-event',self.onDelete)
		if not self.agent.is_auto():
			title = self.window.get_title()
			self.window.set_title('{0} - ({1}:{2})'.format(
				title,
				agent.get_host(),
				agent.get_port()
			))
		self.window.show()

		self.clipboard = Gtk.Clipboard.get(Gdk.SELECTION_CLIPBOARD)
		self.app_status_to = BtDynamicTimeout(1000,self.refresh_app_status)
		self.dlg = None

		self.prefs = self.agent.get_prefs()

		self.init_folders_controls()
		self.init_devices_controls()
		self.init_transfers_controls()
		self.init_history_controls()
		self.init_preferences_controls()
		self.init_settings_controls()

		# TODO: Hide pages not supported by API
		notebook = self.builder.get_object('notebook1')
		transfers = notebook.get_nth_page(2)
		history = notebook.get_nth_page(3)
		transfers.hide()
		history.hide()
		# TODO: End

		self.init_transfer_status()

		self.init_folders_values()
		self.init_preferences_values()
		self.init_settings_values()