示例#1
0
文件: main.py 项目: nullset1/Turpial
    def __init__(self):
        parser = OptionParser()
        parser.add_option('-d',
                          '--debug',
                          dest='debug',
                          action='store_true',
                          help='Debug Mode',
                          default=False)
        parser.add_option('-i',
                          '--interface',
                          dest='interface',
                          help='Select interface to use. (cmd|gtk)',
                          default='gtk')
        parser.add_option('-c',
                          '--clean',
                          dest='clean',
                          action='store_true',
                          help='Clean all bytecodes',
                          default=False)
        parser.add_option('--test',
                          dest='test',
                          action='store_true',
                          help='Test mode. Only load timeline',
                          default=False)

        (options, _) = parser.parse_args()

        self.config = None
        self.global_cfg = ConfigApp()
        self.profile = None
        self.remember = False
        self.testmode = options.test
        self.httpserv = None
        self.api = None

        if options.debug:
            logging.basicConfig(level=logging.DEBUG)
        else:
            logging.basicConfig(level=logging.INFO)
        self.log = logging.getLogger('Controller')

        if options.clean:
            self.__clean()
            self.signout()

        self.interface = options.interface
        if options.interface == 'gtk+':
            self.ui = _GTK(self, extend=True)
        elif options.interface == 'gtk':
            self.ui = _GTK(self)
        else:
            print 'No existe tal interfaz. Saliendo...'
            sys.exit(-1)

        self.httpserv = HTTPServices()
        self.api = TurpialAPI()

        self.log.debug('Iniciando Turpial')
        self.httpserv.start()
        self.api.start()
        self.api.change_api_url(self.global_cfg.read('Proxy', 'url'))

        if self.testmode:
            self.log.debug('Modo Pruebas Activado')

        self.ui.show_login(self.global_cfg)
        self.ui.main_loop()