From: CEA Support SALOME Date: Tue, 7 Jul 2015 09:49:48 +0000 (+0200) Subject: 7.6.0 X-Git-Tag: 7.6.0 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=5764956076476aaf47d9e769fc9e6e96e762b191;p=tools%2FSALOME.git 7.6.0 --- diff --git a/CMakeLists.txt b/CMakeLists.txt index ab6fa02..a01b77b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -69,12 +69,7 @@ SET(GUI_ROOT_DIR $ENV{GUI_ROOT_DIR} CACHE PATH "Path to the Salome GUI") IF(EXISTS ${GUI_ROOT_DIR}) LIST(APPEND CMAKE_MODULE_PATH "${GUI_ROOT_DIR}/adm_local/cmake_files") FIND_PACKAGE(SalomeGUI REQUIRED) - SALOME_GUI_WITH_CORBA() #remove this line if you don't need GUI module builded with CORBA - #remove unnecessary options from this list (see SALOME_GUI_MODE() macro description) - SALOME_GUI_MODE(SALOME_USE_SALOMEOBJECT SALOME_USE_OCCVIEWER SALOME_USE_VTKVIEWER SALOME_USE_PYCONSOLE - OPTIONAL SALOME_USE_PLOT2DVIEWER SALOME_USE_GLVIEWER SALOME_USE_GRAPHICSVIEW - SALOME_USE_QXGRAPHVIEWER SALOME_USE_PVVIEWER SALOME_USE_PYVIEWER - ) + FULL_GUI(TRUE) # check whether GUI builded in full mode and with CORBA ADD_DEFINITIONS(${GUI_DEFINITIONS}) INCLUDE_DIRECTORIES(${GUI_INCLUDE_DIRS}) ELSE(EXISTS ${GUI_ROOT_DIR}) diff --git a/resources/about.png b/resources/about.png index df7481d..dfdc7e6 100644 Binary files a/resources/about.png and b/resources/about.png differ diff --git a/resources/app_logo.png b/resources/app_logo.png index 33971d2..df849dc 100644 Binary files a/resources/app_logo.png and b/resources/app_logo.png differ diff --git a/resources/splash.png b/resources/splash.png index df7481d..dfdc7e6 100644 Binary files a/resources/splash.png and b/resources/splash.png differ diff --git a/src/resources/LightApp_msg_en.ts b/src/resources/LightApp_msg_en.ts index c0733e3..75c2f0e 100644 --- a/src/resources/LightApp_msg_en.ts +++ b/src/resources/LightApp_msg_en.ts @@ -17,7 +17,7 @@ APP_VERSION - Vmaster + V7.6.0 ABOUT_LICENSE @@ -25,7 +25,7 @@ ABOUT_VERSION - Version master + Version 7.6.0 ABOUT_TITLE diff --git a/src/resources/LightApp_msg_fr.ts b/src/resources/LightApp_msg_fr.ts index 3a9e749..d592a6f 100644 --- a/src/resources/LightApp_msg_fr.ts +++ b/src/resources/LightApp_msg_fr.ts @@ -17,7 +17,7 @@ APP_VERSION - Vmaster + V7.6.0 ABOUT_LICENSE @@ -25,7 +25,7 @@ ABOUT_VERSION - Version master + Version 7.6.0 ABOUT_TITLE diff --git a/src/resources/LightApp_msg_ja.ts b/src/resources/LightApp_msg_ja.ts index 7c4f98a..fde1555 100644 --- a/src/resources/LightApp_msg_ja.ts +++ b/src/resources/LightApp_msg_ja.ts @@ -17,7 +17,7 @@ APP_VERSION - Vmaster + V7.6.0 ABOUT_LICENSE @@ -25,7 +25,7 @@ ABOUT_VERSION - Version master + Version 7.6.0 ABOUT_TITLE diff --git a/src/salomeContext.py b/src/salomeContext.py index 545e929..384db9b 100755 --- a/src/salomeContext.py +++ b/src/salomeContext.py @@ -33,6 +33,8 @@ import platform from salomeContextUtils import SalomeContextException def usage(): + #exeName = os.path.splitext(os.path.basename(__file__))[0] + msg = '''\ Usage: salome [command] [options] [--config=] @@ -49,13 +51,14 @@ Commands: test Run SALOME tests. info Display some information about SALOME help Show this message + coffee Yes! SALOME can also make coffee!! If no command is given, default to start. Command options: ================ Use salome --help to show help on command ; available for commands: - start, shell, connect, test, info. + start, shell, test. --config= ========================== @@ -236,16 +239,13 @@ class SalomeContext: See usage for details on commands. """ def _startSalome(self, args): - import os - import sys try: - from setenv import add_path + import os absoluteAppliPath = os.getenv('ABSOLUTE_APPLI_PATH') + import sys path = os.path.realpath(os.path.join(absoluteAppliPath, "bin", "salome")) - add_path(path, "PYTHONPATH") - path = os.path.realpath(os.path.join(absoluteAppliPath, "bin", "salome", "appliskel")) - add_path(path, "PYTHONPATH") - + if not path in sys.path: + sys.path[:0] = [path] except: pass @@ -330,9 +330,7 @@ class SalomeContext: sys.path[:0] = pythonpath # - def _runAppli(self, args=None): - if args is None: - args = [] + def _runAppli(self, args=[]): # Initialize SALOME environment sys.argv = ['runSalome'] + args import setenv @@ -362,9 +360,7 @@ class SalomeContext: return proc.communicate() # - def _runSession(self, args=None): - if args is None: - args = [] + def _runSession(self, args=[]): sys.argv = ['runSession'] + args import runSession params, args = runSession.configureSession(args, exe="salome shell") @@ -376,21 +372,18 @@ class SalomeContext: return runSession.runSession(params, args) # - def _runConsole(self, args=None): - if args is None: - args = [] + def _runConsole(self, args=[]): # Initialize SALOME environment - sys.argv = ['runConsole'] + sys.argv = ['runConsole'] + args import setenv setenv.main(True) - import runConsole - return runConsole.connect(args) + cmd = ["python", "-c", "import runConsole\nrunConsole.connect()" ] + proc = subprocess.Popen(cmd, shell=False, close_fds=True) + return proc.communicate() # - def _kill(self, args=None): - if args is None: - args = [] + def _kill(self, args=[]): ports = args if not ports: print "Port number(s) not provided to command: salome kill " @@ -427,9 +420,7 @@ class SalomeContext: pass # - def _runTests(self, args=None): - if args is None: - args = [] + def _runTests(self, args=[]): sys.argv = ['runTests'] import setenv setenv.main(True) @@ -438,35 +429,9 @@ class SalomeContext: return runTests.runTests(args, exe="salome test") # - def _showInfo(self, args=None): - if args is None: - args = [] - - usage = "Usage: salome info [options]" - epilog = """\n -Display some information about SALOME.\n -Available options are: - -p,--ports Show list of busy ports (running SALOME instances). - -v,--version Show running SALOME version. - -h,--help Show this message. -""" - if not args: - args = ["--version"] - - if "-h" in args or "--help" in args: - print usage + epilog - return - - if "-p" in args or "--ports" in args: - import PortManager - ports = PortManager.getBusyPorts() - print "SALOME instances are running on ports:", ports - if ports: - print "Last started instance on port %s"%ports[-1] - - if "-v" in args or "--version" in args: - print "Running with python", platform.python_version() - self._runAppli(["--version"]) + def _showInfo(self, unused=None): + print "Running with python", platform.python_version() + self._runAppli(["--version"]) # def _usage(self, unused=None): diff --git a/src/salomeContextUtils.py b/src/salomeContextUtils.py index de561cf..12cd3a6 100755 --- a/src/salomeContextUtils.py +++ b/src/salomeContextUtils.py @@ -61,14 +61,18 @@ def __getConfigFileNamesDefault(): return __listDirectory(envdDir) # -def __getEnvironmentFileNames(args, optionPrefix, checkExistence): - # special case: extra configuration/environment files are provided by user - # Search for command-line argument(s) =file1,file2,..., filen - # Search for command-line argument(s) =dir1,dir2,..., dirn - configArgs = [ str(x) for x in args if str(x).startswith(optionPrefix) ] +def getConfigFileNames(args, checkExistence=False): + # special case: configuration files are provided by user + # Search for command-line argument(s) --config=file1,file2,..., filen + # Search for command-line argument(s) --config=dir1,dir2,..., dirn + configOptionPrefix = "--config=" + configArgs = [ str(x) for x in args if str(x).startswith(configOptionPrefix) ] - args = [ x for x in args if not x.startswith(optionPrefix) ] - allLists = [ x.replace(optionPrefix, '') for x in configArgs ] + if len(configArgs) == 0: + return __getConfigFileNamesDefault(), args, [] + + args = [ x for x in args if not x.startswith(configOptionPrefix) ] + allLists = [ x.replace(configOptionPrefix, '') for x in configArgs ] configFileNames = [] unexisting = [] @@ -87,105 +91,6 @@ def __getEnvironmentFileNames(args, optionPrefix, checkExistence): return configFileNames, args, unexisting # -def __validate_pair(ob): - try: - if not (len(ob) == 2): - #print "Unexpected result:", ob - raise ValueError - except: - return False - return True -# -def __get_environment_from_batch_command(env_cmd, initial=None): - """ - Take a command (either a single command or list of arguments) - and return the environment created after running that command. - Note that if the command must be a batch file or .cmd file, or the - changes to the environment will not be captured. - - If initial is supplied, it is used as the initial environment passed - to the child process. - """ - #if not isinstance(env_cmd, (list, tuple)): - # env_cmd = [env_cmd] - # construct the command that will alter the environment - #env_cmd = subprocess.list2cmdline(env_cmd) - # create a tag so we can tell in the output when the proc is done - tag = 'Done running command' - # construct a command to do accomplish this - cmd = '{env_cmd} && echo "{tag}"'.format(**vars()) - - # launch the process - proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, env=initial, shell=True) - # parse the output sent to stdout - lines = proc.stdout - # consume whatever output occurs until the tag is reached - #consume(itertools.takewhile(lambda l: tag not in l, lines)) - # define a way to handle each KEY=VALUE line - handle_line = lambda l: l.rstrip().split('=',1) - # parse key/values into pairs - #pairs = map(handle_line, lines) - pairs = [] - cpt = 0 - while True: - line = lines.readline() - cpt = cpt+1 - if tag in line or cpt > 1000: - break - if line: - pairs.append(line.rstrip().split('=',1)) - # make sure the pairs are valid - valid_pairs = filter(__validate_pair, pairs) - # construct a dictionary of the pairs - result = dict(valid_pairs) - # let the process finish - proc.communicate() - return result -# -def __subtract(ref, dic): - result = {} - for key,val in ref.items(): - if not dic.has_key(key): - result[key] = val - else: - # compare values types - if (type(dic[key]) != type(val)): - result[key] = val - else: - # compare values - if isinstance(val, basestring): - tolist1 = dic[key].split(os.pathsep) - tolist2 = val.split(os.pathsep) - diff = list(set(tolist2)-set(tolist1)) - if diff: - result[key] = os.pathsep.join(diff) - else: - result[key] = val - - return result -# - -def getConfigFileNames(args, checkExistence=False): - configOptionPrefix = "--config=" - configArgs = [ str(x) for x in args if str(x).startswith(configOptionPrefix) ] - if len(configArgs) == 0: - configFileNames, unexist1 = __getConfigFileNamesDefault(), [] - else: - # get configuration filenames - configFileNames, args, unexist1 = __getEnvironmentFileNames(args, configOptionPrefix, checkExistence) - - # get extra environment - extraEnvFileNames, args, unexist2 = __getEnvironmentFileNames(args, "--extra_env=", checkExistence) - before = __get_environment_from_batch_command("env") - after = {} - for filename in extraEnvFileNames: - after.update(__get_environment_from_batch_command(filename)) - pass - - extraEnv = __subtract(after,before) - return configFileNames, extraEnv, args, unexist1+unexist2 -# - def __getScriptPath(scriptName, searchPathList): scriptName = os.path.expanduser(scriptName) if os.path.isabs(scriptName): @@ -228,9 +133,7 @@ class ScriptAndArgsObjectEncoder(json.JSONEncoder): return json.JSONEncoder.default(self, obj) # -def getShortAndExtraArgs(args=None): - if args is None: - args = [] +def getShortAndExtraArgs(args=[]): try: pos = args.index("--") # raise a ValueError if not found short_args = args[:pos] @@ -244,9 +147,7 @@ def getShortAndExtraArgs(args=None): # # Return an array of ScriptAndArgs objects -def getScriptsAndArgs(args=None, searchPathList=None): - if args is None: - args = [] +def getScriptsAndArgs(args=[], searchPathList=None): short_args, extra_args = getShortAndExtraArgs(args) args = short_args