return.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import { Types } from '../types';
  2. import { LocalizedStrings } from '../../services/localizedStringsService';
  3. import * as VariableValueMenu from './variable_value_menu';
  4. import * as CommandsManagement from '../commands';
  5. export function createFloatingCommand () {
  6. return $('<div class="ui return created_element"> <i class="ui icon small reply"></i> <span> '+LocalizedStrings.getUI('text_return')+' </span></div>');
  7. }
  8. export function renderCommand (command, function_obj) {
  9. var el = $('<div class="ui return command_container"> <i class="ui icon small reply command_drag"></i> <i class="ui icon times red button_remove_command"></i> <span class="span_command_spec"> '+LocalizedStrings.getUI('text_return')+' </span> <div class="var_value_menu_div"></div></div>');
  10. el.data('command', command);
  11. addHandlers(command, function_obj, el);
  12. if (function_obj.return_type != Types.VOID) {
  13. VariableValueMenu.renderMenu(command, command.variable_value_menu, el.find('.var_value_menu_div'), function_obj);
  14. } else {
  15. el.find('.var_value_menu_div').remove();
  16. command.variable_value_menu = null;
  17. }
  18. return el;
  19. }
  20. function addHandlers (command, function_obj, return_dom) {
  21. return_dom.find('.button_remove_command').on('click', function() {
  22. if (CommandsManagement.removeCommand(command, function_obj, return_dom)) {
  23. return_dom.fadeOut(400, function() {
  24. return_dom.remove();
  25. });
  26. }
  27. });
  28. }