Редактирование текстовых файлов модулей ГитЖС | Editing of files of GitJS modules
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

105 lines
2.7KB

  1. const ИМЯ = "Редактор Главреда | Glavred Editor"
  2. // // // //
  3. СохранитьВременноеСодержимоеРедактируемогоФайла = мир =>
  4. {
  5. var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort();
  6. var файл = файлы[мир.номерВыбранногоФайла];
  7. var содержимое = мир.редактор.session.getValue();
  8. мир.временноеСодержимое[файл] = содержимое;
  9. };
  10. // // // //
  11. НеОтслеживатьРедактирование = мир =>
  12. {
  13. мир.отслеживатьРедактирование = false;
  14. };
  15. // // // //
  16. ОтслеживатьРедактирование = мир =>
  17. {
  18. мир.отслеживатьРедактирование = true;
  19. };
  20. // // // //
  21. НастроитьОтслеживаниеРедактирования = мир =>
  22. {
  23. мир.отслеживатьРедактирование = true;
  24. мир.редактор.session.on("change", function(delta) {
  25. if (мир.отслеживатьРедактирование)
  26. {
  27. мир.уведомить("редактирование");
  28. }
  29. });
  30. };
  31. // // // //
  32. ОтобразитьСодержимоеВыбранногоФайла = мир =>
  33. {
  34. var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort();
  35. var файл = файлы[мир.номерВыбранногоФайла];
  36. var содержимое = мир.временноеСодержимое[файл];
  37. if (!содержимое)
  38. {
  39. содержимое = мир.редактируемыйМодуль.содержимое[файл];
  40. };
  41. мир.редактор.session.setValue(содержимое);
  42. };
  43. // // // //
  44. СоздатьОбластьРедактированияПриОтсутствии = мир =>
  45. {
  46. var id = "редактор";
  47. if (!document.getElementById(id))
  48. {
  49. $(`#${мир.макет.константы.содержимое}`).html(`
  50. <div id="редактор"></div>
  51. `);
  52. var элемент = document.getElementById(id);
  53. элемент.style.cssText = `
  54. width: calc(100% - 320px);
  55. height: calc(100% - 80px);
  56. position: fixed;
  57. top: 80px;
  58. left: 320px;
  59. right: 0;
  60. bottom: 0;
  61. `;
  62. мир.редактор = window.ace.edit(id);
  63. мир.редактор.session.setMode("ace/mode/javascript");
  64. мир.уведомить("создали область редактирования");
  65. }
  66. };
  67. // // // //
  68. СоздатьВременноеСодержимое = мир =>
  69. {
  70. мир.временноеСодержимое = {};
  71. };