def start_app(ClassObject, geometry=None, stylesheet=None, user_settings=None, parent_win=None): if parent_win is None: app = QApplication(sys.argv) from confapp import conf conf += 'pyforms_gui.resources_settings' if user_settings: conf += user_settings mainwindow = StandAloneContainer(ClassObject) if hasattr(conf, 'PYFORMS_MAIN_WINDOW_ICON_PATH'): mainwindow.setWindowIcon(QIcon(conf.PYFORMS_MAIN_WINDOW_ICON_PATH)) myapp = mainwindow.centralWidget() if geometry is not None: mainwindow.show() mainwindow.setGeometry(*geometry) else: mainwindow.showMaximized() if conf.PYFORMS_QUALITY_TESTS_PATH is not None: import argparse parser = argparse.ArgumentParser() parser.add_argument("--test", help="File with the tests script") args = parser.parse_args() if args.test: TEST_PATH = os.path.join(conf.PYFORMS_QUALITY_TESTS_PATH, args.test) TEST_FILE_PATH = os.path.join(TEST_PATH, args.test + '.py') DATA_PATH = os.path.join(TEST_PATH, 'data', sys.platform) INPUT_DATA_PATH = os.path.join(DATA_PATH, 'input-data') OUTPUT_DATA_PATH = os.path.join(DATA_PATH, 'output-data') EXPECTED_DATA_PATH = os.path.join(DATA_PATH, 'expected-data') with open(TEST_FILE_PATH) as f: global_vars = {} # globals() local_vars = locals() code = compile(f.read(), TEST_FILE_PATH, 'exec') exec(code, global_vars, local_vars) if parent_win is None: if stylesheet: app.setStyleSheet(stylesheet) app.exec_() return myapp
def start_app(ClassObject, geometry=None, stylesheet=None): from pyforms.utils.settings_manager import conf app = QApplication(sys.argv) conf += 'pyforms.gui.settings' mainwindow = StandAloneContainer(ClassObject) myapp = mainwindow.centralWidget() if geometry is not None: mainwindow.show() mainwindow.setGeometry(*geometry) else: mainwindow.showNormal() if conf.PYFORMS_QUALITY_TESTS_PATH is not None: import argparse parser = argparse.ArgumentParser() parser.add_argument("--test", help="File with the tests script") args = parser.parse_args() if args.test: TEST_PATH = os.path.join(conf.PYFORMS_QUALITY_TESTS_PATH, args.test) TEST_FILE_PATH = os.path.join(TEST_PATH, args.test + '.py') DATA_PATH = os.path.join(TEST_PATH, 'data', sys.platform) INPUT_DATA_PATH = os.path.join(DATA_PATH, 'input-data') OUTPUT_DATA_PATH = os.path.join(DATA_PATH, 'output-data') EXPECTED_DATA_PATH = os.path.join(DATA_PATH, 'expected-data') with open(TEST_FILE_PATH) as f: global_vars = {} # globals() local_vars = locals() code = compile(f.read(), TEST_FILE_PATH, 'exec') exec(code, global_vars, local_vars) if stylesheet: app.setStyleSheet(stylesheet) app.exec_() return myapp