def _runEventEditor(self, args):
        eventEditor = EventEditor(args)
        editing = True
        editorMode = EDITOR_MODE.EDITOR_ASK

        while editing:
            if editorMode == EDITOR_MODE.EDITOR_EXIT:
                editing = False  # leave editor mode loop
            elif editorMode == EDITOR_MODE.EDITOR_ASK:
                editorMode = self._promptForEditorCommand()
            elif editorMode == EDITOR_MODE.EDITOR_LIST:
                eventEditor.printNumberedEventList()
                editorMode = EDITOR_MODE.EDITOR_ASK
            elif editorMode == EDITOR_MODE.EDITOR_MOVE:
                oldPosition = self._promptForNumber("Select index which will move: ")
                newPosition = self._promptForNumber("Select destination index: ")
                eventEditor._moveEvent(int(oldPosition), int(newPosition))
                editorMode = EDITOR_MODE.EDITOR_ASK
            elif editorMode == EDITOR_MODE.EDITOR_CHANGE_TIME:
                self._editorChangeTimeHelper(eventEditor)
                editorMode = EDITOR_MODE.EDITOR_ASK
            elif editorMode == EDITOR_MODE.EDITOR_CHANGE_EVENT:
                self._editorChangeEventHelper(eventEditor)
                editorMode = EDITOR_MODE.EDITOR_ASK
            elif editorMode == EDITOR_MODE.EDITOR_SAVE:
                self._editorSaveHelpers(eventEditor)
                editorMode = EDITOR_MODE.EDITOR_ASK
            else:
                return