예제 #1
0
    def testNotPortableConfig1(self):
        """
        Проверка правильности определения расположения конфига при хранении его
        в папке профиля
        """
        dirname = ".outwiker_test"
        fname = "outwiker_test.ini"

        programDir = getCurrentDir()
        localPath = os.path.join(programDir, fname)

        # На всякий случай проверим, что файла в локальной папке нет,
        # иначе удалим его
        if os.path.exists(localPath):
            os.remove(localPath)

        homeDir = os.path.join(getOS().settingsDir, dirname)
        homePath = os.path.join(homeDir, fname)

        # Удалим папку в профиле
        if os.path.exists(homeDir):
            shutil.rmtree(homeDir)

        fullpath = getConfigPath(dirname, fname)

        self.assertEqual(homePath, fullpath)
        self.assertTrue(os.path.exists(homeDir))

        # Удалим папку в профиле
        if os.path.exists(homeDir):
            shutil.rmtree(homeDir)
예제 #2
0
파일: config.py 프로젝트: qyqx/outwiker
    def testNotPortableConfig1 (self):
        """
        Проверка правильности определения расположения конфига при хранении его в папке профиля
        """
        dirname = u".outwiker_test"
        fname = u"outwiker_test.ini"

        programDir = getCurrentDir()
        localPath = os.path.join (programDir, fname)

        # На всякий случай проверим, что файла в локальной папке нет, иначе удалим его
        if os.path.exists (localPath):
            os.remove (localPath)

        homeDir = os.path.join (os.path.expanduser("~"), dirname)
        homePath = os.path.join (homeDir, fname)

        # Удалим папку в профиле
        if os.path.exists (homeDir):
            shutil.rmtree (homeDir)

        fullpath = getConfigPath(dirname, fname)

        self.assertEqual (homePath, fullpath)
        self.assertTrue (os.path.exists (homeDir))

        # Удалим папку в профиле
        if os.path.exists (homeDir):
            shutil.rmtree (homeDir)
예제 #3
0
    def OnInit(self):
        self._fullConfigPath = getConfigPath ()
        Application.init(self._fullConfigPath)

        # Если программа запускается в виде exe-шника, то перенаправить вывод ошибок в лог
        exepath = unicode (sys.argv[0], getOS().filesEncoding)
        if exepath.endswith (u".exe"):
            # Закоментировать следующую строку, если не надо выводить strout/strerr в лог-файл
            self.RedirectStdio (self.getLogFileName (self._fullConfigPath))
            pass

        from outwiker.gui.mainwindow import MainWindow
        
        wx.InitAllImageHandlers()
        self.mainWnd = MainWindow(None, -1, "")
        self.SetTopWindow (self.mainWnd)

        Application.mainWindow = self.mainWnd
        Application.actionController = ActionController (self.mainWnd, Application.config)

        registerActions(Application)
        self.mainWnd.createGui()

        Application.plugins.load (getPluginsDirList())

        self.bindActivateApp()
        self.Bind (wx.EVT_QUERY_END_SESSION, self._onEndSession)

        starter = Starter()
        starter.process()
        
        return True
예제 #4
0
    def OnInit(self):
        getOS().migrateConfig()
        self._fullConfigPath = getConfigPath()
        Application.init(self._fullConfigPath)

        try:
            starter = Starter()
            starter.processConsole()
        except StarterExit:
            return True

        redirector = LogRedirector(self.getLogFileName(self._fullConfigPath))
        redirector.init()

        from outwiker.gui.mainwindow import MainWindow

        self.mainWnd = MainWindow(None, -1, "")
        self.SetTopWindow(self.mainWnd)

        Application.mainWindow = self.mainWnd
        Application.actionController = ActionController(
            self.mainWnd, Application.config)

        registerActions(Application)
        self.mainWnd.createGui()

        Application.plugins.load(getPluginsDirList())

        self.bindActivateApp()
        self.Bind(wx.EVT_QUERY_END_SESSION, self._onEndSession)

        starter.processGUI()

        return True
예제 #5
0
    def OnInit (self):
        getOS().migrateConfig()
        self._fullConfigPath = getConfigPath ()
        Application.init(self._fullConfigPath)

        try:
            starter = Starter()
            starter.processConsole()
        except StarterExit:
            return True

        redirector = LogRedirector (self.getLogFileName (self._fullConfigPath))
        redirector.init()

        from outwiker.gui.mainwindow import MainWindow

        self.mainWnd = MainWindow(None, -1, "")
        self.SetTopWindow (self.mainWnd)

        Application.mainWindow = self.mainWnd
        Application.actionController = ActionController (self.mainWnd, Application.config)

        registerActions(Application)
        self.mainWnd.createGui()

        Application.plugins.load (getPluginsDirList())

        self.bindActivateApp()
        self.Bind (wx.EVT_QUERY_END_SESSION, self._onEndSession)

        starter.processGUI()

        return True
예제 #6
0
    def OnInit(self):
        getOS().init()
        getOS().migrateConfig()

        self._fullConfigPath = getConfigPath()
        Application.init(self._fullConfigPath)
        self._locale = wx.Locale(wx.LANGUAGE_DEFAULT)

        try:
            starter = Starter()
            starter.processConsole()
        except StarterExit:
            return True

        if APP_DATA_DEBUG not in Application.sharedData:
            config = GeneralGuiConfig(Application.config)
            Application.sharedData[APP_DATA_DEBUG] = config.debug.value

        level = (logging.DEBUG
                 if Application.sharedData.get(APP_DATA_DEBUG, False)
                 else logging.WARNING)

        redirector = LogRedirector(self.getLogFileName(self._fullConfigPath),
                                   level)
        redirector.init()
        wx.Log.SetLogLevel(0)

        logger = logging.getLogger('outwiker')
        for n, dirname in enumerate(getSpecialDirList(u'')):
            logger.info(u'Special directory [{}]: {}'.format(n, dirname))

        from outwiker.gui.mainwindow import MainWindow

        self.mainWnd = MainWindow(None, -1, "")
        self.SetTopWindow(self.mainWnd)

        Application.mainWindow = self.mainWnd
        Application.actionController = ActionController(self.mainWnd,
                                                        Application.config)

        registerActions(Application)
        self.mainWnd.createGui()

        Application.plugins.load(getPluginsDirList())

        self.bindActivateApp()
        self.Bind(wx.EVT_QUERY_END_SESSION, self._onEndSession)

        starter.processGUI()

        return True
예제 #7
0
    def OnInit(self):
        getOS().init()
        getOS().migrateConfig()

        self._fullConfigPath = getConfigPath()
        Application.init(self._fullConfigPath)
        self._locale = wx.Locale(wx.LANGUAGE_DEFAULT)

        try:
            starter = Starter()
            starter.processConsole()
        except StarterExit:
            return True

        if APP_DATA_DEBUG not in Application.sharedData:
            config = GeneralGuiConfig(Application.config)
            Application.sharedData[APP_DATA_DEBUG] = config.debug.value

        level = (logging.INFO
                 if Application.sharedData.get(APP_DATA_DEBUG, False)
                 else logging.WARNING)

        redirector = LogRedirector(self.getLogFileName(self._fullConfigPath),
                                   level)
        redirector.init()
        wx.Log.SetLogLevel(0)

        from outwiker.gui.mainwindow import MainWindow

        self.mainWnd = MainWindow(None, -1, "")
        self.SetTopWindow(self.mainWnd)

        Application.mainWindow = self.mainWnd
        Application.actionController = ActionController(self.mainWnd,
                                                        Application.config)

        registerActions(Application)
        self.mainWnd.createGui()

        Application.plugins.load(getPluginsDirList())

        self.bindActivateApp()
        self.Bind(wx.EVT_QUERY_END_SESSION, self._onEndSession)

        starter.processGUI()

        return True
예제 #8
0
파일: config.py 프로젝트: qyqx/outwiker
    def testPortableConfig (self):
        """
        Проверка правильности определения расположения конфига при хранении его в папке с программой
        """
        dirname = u".outwiker_test"
        fname = u"outwiker_test.ini"

        programDir = getCurrentDir()
        localPath = os.path.join (programDir, fname)

        # Создадим файл рядом с запускаемым файлом
        fp = open (localPath, "w")
        fp.close()
        
        fullpath = getConfigPath(dirname, fname)

        self.assertEqual (localPath, fullpath)

        # Удалим созданный файл
        os.remove (localPath)
예제 #9
0
    def testPortableConfig(self):
        """
        Проверка правильности определения расположения конфига при хранении его в папке с программой
        """
        dirname = u".outwiker_test"
        fname = u"outwiker_test.ini"

        programDir = getCurrentDir()
        localPath = os.path.join(programDir, fname)

        # Создадим файл рядом с запускаемым файлом
        fp = open(localPath, "w")
        fp.close()

        fullpath = getConfigPath(dirname, fname)

        self.assertEqual(localPath, fullpath)

        # Удалим созданный файл
        os.remove(localPath)
예제 #10
0
    def OnInit (self):
        getOS().migrateConfig()
        self._fullConfigPath = getConfigPath ()
        Application.init(self._fullConfigPath)

        try:
            starter = Starter()
            starter.processConsole()
        except StarterExit:
            return True

        # Если программа запускается в виде exe-шника, то перенаправить вывод ошибок в лог
        if getExeFile().endswith (u".exe"):
            # Закоментировать следующую строку, если не надо выводить strout/strerr в лог-файл
            self.RedirectStdio (self.getLogFileName (self._fullConfigPath))
            pass

        from outwiker.gui.mainwindow import MainWindow

        self.mainWnd = MainWindow(None, -1, "")
        self.SetTopWindow (self.mainWnd)

        Application.mainWindow = self.mainWnd
        Application.actionController = ActionController (self.mainWnd, Application.config)

        registerActions(Application)
        self.mainWnd.createGui()

        Application.plugins.load (getPluginsDirList())

        self.bindActivateApp()
        self.Bind (wx.EVT_QUERY_END_SESSION, self._onEndSession)

        starter.processGUI()

        return True
예제 #11
0

def print_info():
    logger.debug('Python version: {}'.format(sys.version))
    logger.debug('wxPython version: {}'.format(wx.__version__))
    logger.debug('Current OutWiker API version: {}.{}'.format(
        outwiker.__api_version__[0], outwiker.__api_version__[1]))
    logger.debug(u'Current working directory: {}'.format(os.getcwd()))
    for n, dirname in enumerate(getSpecialDirList(u'')):
        logger.debug(u'Special directory [{}]: {}'.format(n, dirname))


if __name__ == "__main__":
    getOS().migrateConfig()

    config_path = getConfigPath()
    application = Application
    application.init(config_path)

    outwiker_app = OutWikerApplication(application)
    locale = initLocale(outwiker_app.application.config)

    try:
        starter = Starter(application)
    except StarterExit:
        sys.exit(1)

    application.sharedData[APP_DATA_DEBUG] = starter.isDebugMode
    outwiker_app.initLogger(starter.isDebugMode)
    print_info()