Beispiel #1
0
def get_editor(cli, obj, name):
    editobj = get_editor_object(obj)
    if editobj is None: # not registered, try generic defaults
        if isinstance(obj, dict):
            cmd = cli.clone(CLI.DictCLI)
        elif hasattr(obj, "__dict__"):
            if isinstance(obj, netobjects.PersistentData):
                cmd = CLI.get_generic_clone(obj, cli, DataEditor)
            else:
                cmd = CLI.get_generic_clone(obj, cli, ObjectEditor)
        else:
            raise TypeError, "no editor available for %r." % (obj,)
    else:
        cmd = cli.clone(editobj)
    cmd._setup(obj, name)
    return cmd
Beispiel #2
0
def get_editor(cli, obj, name):
    editobj = get_editor_object(obj)
    if editobj is None:  # not registered, try generic defaults
        if isinstance(obj, dict):
            cmd = cli.clone(CLI.DictCLI)
        elif hasattr(obj, "__dict__"):
            if isinstance(obj, netobjects.PersistentData):
                cmd = CLI.get_generic_clone(obj, cli, DataEditor)
            else:
                cmd = CLI.get_generic_clone(obj, cli, ObjectEditor)
        else:
            raise TypeError, "no editor available for %r." % (obj, )
    else:
        cmd = cli.clone(editobj)
    cmd._setup(obj, name)
    return cmd