def select_colormap(): # @GBY must move to plantgl or lpy from openalea.core.control.manager import ControlManager from openalea.plantlab.tools import to_material controls = ControlManager().namespace(interface='IColorList') for v in controls.values(): return to_material(v)
def decode(mimetype, mimedata): """ decode("openalealab/model", "model1") -> Model("model1") returns an object Model of model1 """ if mimetype == 'openalealab/control': from openalea.core.control.manager import ControlManager identifier, name = mimedata.split(';') control = ControlManager().control(name) if isinstance(control, list): return ControlManager().control(uid=identifier) return control elif mimetype == 'openalealab/data': from openalea.core.project.manager import ProjectManager from openalea.core.path import path pm = ProjectManager() return pm.get('data', path(mimedata).name) else: return str(mimedata)
def _save_controls(self, obj): from openalea.core.control.serialization import ControlSerializer from openalea.core.control.manager import ControlManager cm = ControlManager() controls = cm.controls() if controls: serializer = ControlSerializer() lines = serializer.serialize(controls) else: lines = [] return lines
def decode(mimetype, mimedata): """ decode("openalealab/model", "model1") -> Model("model1") returns an object Model of model1 """ if mimetype == 'openalealab/control': from openalea.core.control.manager import ControlManager identifier, name = mimedata.split(';') control = ControlManager().control(name) if isinstance(control, list): return ControlManager().control(uid=identifier) return control elif mimetype == 'openalealab/data': from openalea.core.service.project import active_project from openalea.core.path import path project = active_project() if project: return project.get_item('data', path(unicode(mimedata)).name) else: return str(mimedata)
def __init__(self): import traceback traceback.print_stack(file=sys.__stdout__) self._project = None self._is_proj = False self._debug = False self.gui = True self.tmpdir = path(get_openalea_tmp_dir()) self._config = MainConfig() self.extension = None self.applet = {} self.manager = {} self.package_manager = package_manager self.control_manager = ControlManager() self.project_manager = ProjectManager() self.plugin_manager = PluginManager() self.plugin_instance_manager = PluginInstanceManager() self.manager['control'] = self.control_manager self.manager['package'] = self.package_manager self.manager['project'] = self.project_manager self.manager['plugin'] = self.plugin_manager self.manager['plugin_instance'] = self.plugin_instance_manager self.world = World() self.interpreter = interpreter() # Hack if interpreter is an object from class TerminalInteractiveShell if not hasattr(self.interpreter, "shell"): self.interpreter.shell = self.interpreter if hasattr(self.interpreter.shell, "events"): self.interpreter.shell.events.register("post_execute", self.add_to_history) else: print("You need ipython >= 2.0 to use history.") # self.project_manager.set_shell(self.interpreter.shell) self.interpreter.locals['session'] = self self.old_syspath = sys.path self.load_default() self.__class__.instantiated = True
def sample_controls(): cm = ControlManager() # cc1 = ControlContainer() # cc2 = ControlContainer() cmw = ControlManagerWidget() # cmw.model.set_manager(cc2) cp = ControlPanel() percent = get_interface('IInt', min=0, max=100) c = new_control('i', percent) # cc2.add_control(c) c = new_control('f', 'IFloat') cm.add_control(c)
def __init__(self, items=None, item_proxy=None, autoload=['entry_points']): # GenericManager GenericManager.__init__(self, items, item_proxy, autoload) self.default_group = "local" # ProjectManager self.tmpdir = Path(get_openalea_tmp_dir()) self._cproject = None self._cwd = Path('.').abspath() self.old_syspath = sys.path self.cm = ControlManager() self.repositories = self.search_path() self.previous_project = "temp" self.shell = interpreter() self.cproject = None
def __init__(self): Observed.__init__(self) AbstractListener.__init__(self) self.tmpdir = Path(get_openalea_tmp_dir()) self._cproject = None self._cwd = Path('.').abspath() self.old_syspath = sys.path self.cm = ControlManager() self.projects = [] self.repositories = self.search_path() self.previous_project = "temp" self.shell = interpreter() # TODO Search in preference file if user has path to append in self.repositories self.cproject = self.default()
def __init__(self, manager=None, parent=None): AbstractListener.__init__(self) Splitter.__init__(self, parent=parent) if manager is None: self._manager = ControlManager() else: self._manager = manager self.model = ControlModel(self._manager) self.view = ControlView() self.view.setModel(self.model) self.view.controlsSelected.connect(self.on_controls_selected) self.model.rowsInserted.connect(self.view.onRowsInserted) self.addWidget(self.view) self._i = 1 self._index = None self._widget_edit = None
def disp_controls(): cm = ControlManager() import sys for k, v in cm.namespace().items(): print >> sys.__stdout__, k, v
def control_namespace(): return ControlManager().namespace()
__all__ = [ "clear_controls", "create_control", "get_control", "group_controls", "new_control", "register_control", "unregister_control", ] from openalea.core.control.control import Control from openalea.core.control.manager import ControlManager, ControlContainer from openalea.core.plugin import iter_plugins CM = ControlManager() def create_control(name, iname=None, value=None, constraints=None): """ Create a new Control object. This object is local and standalone. To track it, use register service. """ if iname is None and value is None: raise ValueError('You must define a least a value or an interface') control = Control(name, iname, value, constraints=constraints) return control def register_control(control):
def stop(self, *args, **kwargs): self.started = False self.ns.clear() from openalea.core.control.manager import ControlManager cm = ControlManager() cm.clear()
def __init__(self, inputs, outputs): Node.__init__(self, inputs, outputs) AbstractListener.__init__(self) self.cm = ControlManager() self.cm.register_listener(self)
import copy from openalea.core.control.manager import ControlManager from openalea.core.project.manager import ProjectManager from openalea.core.service.model import to_model cm = ControlManager() pm = ProjectManager() def get_model(name): data = pm.cproject.get_model(name) if data: model = to_model(data) if model: return copy.copy(model) def namespace(): # Move to runner class (model manager or ParadigmEditor) namespace = {} namespace.update(cm.namespace()) namespace.update(pm.cproject.ns) namespace['Model'] = get_model return namespace