def on_query_completions(self, view, prefix, locations):
      # helpers.log_info("--> " + __name__ + ": " + type(self).__name__ + "." + sys._getframe().f_code.co_name)
   
      # if (not helpers.is_a_gold_view(view)) or (len(prefix) < 4):
      #    return []
   
      # api = environment.getSwaggerAPI()
   
      # fullChoiceList = api.MMBrowserAPI.MMBrowserAPI_searchEntities(q=prefix).result()
   
      # result = []
      # for item in fullChoiceList:
      #    result.append((item['label'], item['label']))

      # print(result)

      # helpers.log_info("<-- " + __name__ + ": " + type(self).__name__ + "." + sys._getframe().f_code.co_name)

      # return result

      helpers.log_info("--> " + __name__ + ": " + type(self).__name__ + "." + sys._getframe().f_code.co_name)
   
      if not helpers.is_a_gold_view(view):
         return []

      moduleName = helpers.get_module_from_view(view)
      sourceCode = helpers.get_view_content(view).replace('\n', "\\r\\n")
      
      api = environment.getSwaggerAPI()
      tSuggestBody = api.get_model("tSuggestBody")
      tImplem = api.get_model("tImplem")

      rowcol = view.rowcol(locations[0])
      lineRegion = view.line(locations[0])
      lineContent = view.substr(lineRegion)
      lineInfo = { "lineContent": lineContent, "lineNumber": rowcol[0]+1, "ColumnNumber": rowcol[1]+1 }

      implem = { "name": moduleName, "ancestor": "", "content": sourceCode }

      suggestBody = tSuggestBody(implem=implem, lineInfo=lineInfo)

      fullChoiceList = api.ModuleDefAPI.ModuleDefAPI_Suggest(name=moduleName, body=suggestBody).result()

      result = []
      for item in fullChoiceList["items"]:
         if item['insertText'] == "":
            result.append((item["label"], item["label"]))
         else:
            result.append((item["label"], item["insertText"]))

      helpers.log_info("<-- " + __name__ + ": " + type(self).__name__ + "." + sys._getframe().f_code.co_name)

      if result == []:
         flag = 0
      else:
         flag = sublime.INHIBIT_WORD_COMPLETIONS

      return (result, flag)
   def run(self, edit, event=None):
      moduleName = helpers.get_module_from_view(self.view)

      if not helpers.is_entity_checkedout(moduleName):
         return

      x = int(event["x"])
      y = int(event["y"])

      word = helpers.get_word_at(x, y, self.view)
      if word == None or word == "":
         return

      classname = helpers.get_module_from_view(self.view)

      api = environment.getSwaggerAPI()

      res = api.Runner.Runner_RunClass(className=classname).result()
def update_readonly(view=None):
   if view == None:
      view = sublime.active_window().active_view()

   if not helpers.is_a_gold_view(view):
      return

   module_name = helpers.get_module_from_view(view)

   api = environment.getSwaggerAPI()
   status = api.ModuleDefAPI.ModuleDefAPI_entityStatus(name=module_name).result()
   view.set_read_only(not status['checkedOut'])
   def on_modified_async(self, view):
      helpers.log_info("--> " + __name__ + ": " + type(self).__name__ + "." + sys._getframe().f_code.co_name)
      return
      now = time.time()

      if self.view_to_parse == None and helpers.is_a_gold_view(self.view_to_parse):
         self.view_to_parse = view
         name = helpers.get_module_from_view(self.view_to_parse)
         if helpers.is_entity_checkedout(name):
            sublime.set_timeout_async(self.treat_parses, 5000)

      helpers.log_info("<-- " + __name__ + ": " + type(self).__name__ + "." + sys._getframe().f_code.co_name)
      return None
Example #5
0
def choose_scenario(callback, view=None):
   name = helpers.get_module_from_view(view)

   api = environment.getSwaggerAPI()
   fullChoiceList = api.ModuleDefAPI.ModuleDefAPI_Scenarios(name=name).result()
   
   lightChoiceList = []
   for item in fullChoiceList:
      lightChoiceList.append([item['label']])

   choiceHandler = input_handler.ChoiceInputHandler(finalcallback=callback, selectionDone=scenario_chosen, fullChoiceList=fullChoiceList, lightChoiceList=lightChoiceList)
   
   choiceHandler.choice_input()
   def run(self, edit, event=None, refresh=True):
      api = environment.getSwaggerAPI()

      implemModel = api.get_model("tImplem")
      content = helpers.get_view_content(self.view)
      moduleName = helpers.get_module_from_view(self.view)

      content = content.replace('\n', "\\r\\n")

      implem = implemModel(content=content, name=moduleName, ancestor="")

      res = api.ModuleDefAPI.ModuleDefAPI_Modify(name=moduleName, body=implem).result()

      actions.update_error_view(res['errors'], self.view)

      if len(res['errors']) == 0 and refresh:
         actions.update_content(self.view, res['content'])
 def run(self, edit):
    api = environment.getSwaggerAPI()
    name = helpers.get_module_from_view(self.view)
    res = api.ModuleDefAPI.ModuleDefAPI_Deliver(name=name).result()
    actions.update_readonly(self.view)
 def is_visible(self):
    name = helpers.get_module_from_view(self.view)
    return helpers.is_entity_checkedout(name)
 def is_enabled(self):
    name = helpers.get_module_from_view(self.view)
    return not helpers.is_entity_checkedout(name)
 def inputResultCallback(self, scenario):
    api = environment.getSwaggerAPI()
    moduleName = helpers.get_module_from_view(self.view)
    res = api.ModuleDefAPI.ModuleDefAPI_GetMyScenario(name=moduleName, scenarioName=scenario['label']).result()
   def run(self, edit, event=None, refresh=True):
      api = environment.getSwaggerAPI()

      moduleName = helpers.get_module_from_view(self.view)
      inputs.choose_scenario(self.inputResultCallback, view=self.view)
Example #12
0
def get_module_name(callback, view=None):
   """ Retrieve module name using a view. The view defaults to current active view. """
   name = helpers.get_module_from_view(view)
   callback(name)