@@ -5,6 +5,68 @@ const ИМЯ = "Редактор Главреда | Glavred Editor" | |||||
// // // // | // // // // | ||||
СохранитьВременноеСодержимоеРедактируемогоФайла = мир => | |||||
{ | |||||
var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort(); | |||||
var файл = файлы[мир.номерВыбранногоФайла]; | |||||
var содержимое = мир.редактор.session.getValue(); | |||||
мир.временноеСодержимое[файл] = содержимое; | |||||
}; | |||||
// // // // | |||||
НеОтслеживатьРедактирование = мир => | |||||
{ | |||||
мир.отслеживатьРедактирование = false; | |||||
}; | |||||
// // // // | |||||
ОтслеживатьРедактирование = мир => | |||||
{ | |||||
мир.отслеживатьРедактирование = true; | |||||
}; | |||||
// // // // | |||||
НастроитьОтслеживаниеРедактирования = мир => | |||||
{ | |||||
мир.отслеживатьРедактирование = true; | |||||
мир.редактор.session.on("change", function(delta) { | |||||
if (мир.отслеживатьРедактирование) | |||||
{ | |||||
мир.уведомить("редактирование"); | |||||
} | |||||
}); | |||||
}; | |||||
// // // // | |||||
ОтобразитьСодержимоеВыбранногоФайла = мир => | |||||
{ | |||||
var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort(); | |||||
var файл = файлы[мир.номерВыбранногоФайла]; | |||||
var содержимое = мир.временноеСодержимое[файл]; | |||||
if (!содержимое) | |||||
{ | |||||
содержимое = мир.редактируемыйМодуль.содержимое[файл]; | |||||
}; | |||||
мир.редактор.session.setValue(содержимое); | |||||
}; | |||||
// // // // | |||||
СоздатьОбластьРедактированияПриОтсутствии = мир => | СоздатьОбластьРедактированияПриОтсутствии = мир => | ||||
{ | { | ||||
var id = "редактор"; | var id = "редактор"; | ||||
@@ -26,6 +88,17 @@ bottom: 0; | |||||
мир.редактор = window.ace.edit(id); | мир.редактор = window.ace.edit(id); | ||||
мир.редактор.session.setMode("ace/mode/javascript"); | мир.редактор.session.setMode("ace/mode/javascript"); | ||||
мир.уведомить("создали область редактирования"); | |||||
} | } | ||||
}; | }; | ||||
// // // // | |||||
СоздатьВременноеСодержимое = мир => | |||||
{ | |||||
мир.временноеСодержимое = {}; | |||||
}; | |||||
@@ -1,18 +1,15 @@ | |||||
пуск модулей главреда | пуск модулей главреда | ||||
# создать редактор Ace | |||||
# задать элементы макета списка файлов | |||||
# задать раздел меню со списком файлов | |||||
# отслеживать выбор файла | |||||
## создать кнопки проверки изменений файла | |||||
выбрали файл | |||||
создать область редактирования при отсутствии | |||||
создать временное содержимое | |||||
создали область редактирования | |||||
настроить отслеживание редактирования | |||||
## ПРОВЕРКА | |||||
#проверить отображение изменения файла | |||||
# отобразить изменение файла | |||||
#проверить очистку изменения файла | |||||
# очистить изменение файла | |||||
#проверить очистку изменений всех файлов | |||||
# очистить изменения всех файлов | |||||
# | |||||
выбрали файл | |||||
создать область редактирования при отсутствии | |||||
не отслеживать редактирование | |||||
отобразить содержимое выбранного файла | |||||
отслеживать редактирование | |||||
редактирование | |||||
отобразить изменение файла | |||||
сохранить временное содержимое редактируемого файла |
@@ -1,76 +1,4 @@ | |||||
/* | /* | ||||
* ВЫБОР ФАЙЛА | |||||
*/ | |||||
/* | |||||
ЗадатьУказанныйФайл = function(мир) | |||||
{ | |||||
мир.файл = мир.файлы[мир.номерВыбранногоФайла]; | |||||
}; | |||||
// // // // | |||||
НеОтслеживатьРедактирование = function(мир) | |||||
{ | |||||
мир.отслеживатьРедактирование = false; | |||||
}; | |||||
// // // // | |||||
ОтслеживатьРедактирование = function(мир) | |||||
{ | |||||
мир.отслеживатьРедактирование = true; | |||||
}; | |||||
// // // // | |||||
ЗадатьПараметрФайла = function(мир) | |||||
{ | |||||
var файл = мир.файлы[мир.номерВыбранногоФайла]; | |||||
задатьПараметрВСтрокеПоиска("📁", файл); | |||||
}; | |||||
// // // // | |||||
ОтобразитьСодержимоеВыбранногоФайла = function(мир) | |||||
{ | |||||
var файл = мир.файлы[мир.номерВыбранногоФайла]; | |||||
var содержимое = мир.временноеСодержимое[файл]; | |||||
if (!содержимое) | |||||
{ | |||||
содержимое = мир.редактируемыйМодуль.содержимое[файл]; | |||||
}; | |||||
мир.редактор.session.setValue(содержимое); | |||||
}; | |||||
*/ | |||||
/* | |||||
* ПУСК | |||||
*/ | |||||
/* | |||||
const ИМЯ = "Главред | Glavred"; | |||||
// // // // | |||||
ЗадатьВременноеСодержимое = function(мир) | |||||
{ | |||||
мир.временноеСодержимое = {}; | |||||
}; | |||||
// // // // | // // // // | ||||
@@ -91,121 +19,6 @@ const ИМЯ = "Главред | Glavred"; | |||||
// // // // | // // // // | ||||
НастроитьОтслеживаниеРедактирования = function(мир) | |||||
{ | |||||
мир.отслеживатьРедактирование = true; | |||||
мир.редактор.session.on("change", function(delta) { | |||||
if (мир.отслеживатьРедактирование) | |||||
{ | |||||
мир.уведомить("редактирование"); | |||||
} | |||||
}); | |||||
}; | |||||
// // // // | |||||
ВыбратьУказанныйФайл = function(мир) | |||||
{ | |||||
мир.номерВыбранногоФайла = мир.файлы.indexOf(мир.файл); | |||||
мир.уведомить("выбрали файл"); | |||||
} | |||||
// // // // | |||||
ВыбратьПервыйФайл = function(мир) | |||||
{ | |||||
мир.номерВыбранногоФайла = 0; | |||||
мир.уведомить("выбрали файл"); | |||||
} | |||||
// // // // | |||||
ПроверитьНаличиеУказанногоФайла = function(мир) | |||||
{ | |||||
if ( | |||||
мир.файл && | |||||
мир.файлы.includes(мир.файл) | |||||
) { | |||||
мир.уведомить("указанный файл существует"); | |||||
} | |||||
else | |||||
{ | |||||
мир.уведомить("указанный файл не существует"); | |||||
} | |||||
}; | |||||
// // // // | |||||
НастроитьAce = function(мир) | |||||
{ | |||||
мир.редактор = window.ace.edit("редактор"); | |||||
мир.редактор.session.setMode("ace/mode/javascript"); | |||||
}; | |||||
// // // // | |||||
ВывестиРазобранныеПараметры = function(мир) | |||||
{ | |||||
console.debug(` | |||||
Разобранные параметры редактора: | |||||
* 📦: '${мир.указатель}' | |||||
* 📁: '${мир.файл}' | |||||
`); | |||||
}; | |||||
*/ | |||||
/* | |||||
* РЕДАКТИРОВАНИЕ | |||||
*/ | |||||
/* | |||||
СохранитьВременноеСодержимоеРедактируемогоФайла = function(мир) | |||||
{ | |||||
var файл = мир.файлы[мир.номерВыбранногоФайла]; | |||||
var содержимое = мир.редактор.session.getValue(); | |||||
мир.временноеСодержимое[файл] = содержимое; | |||||
}; | |||||
// // // // | |||||
ПометитьВыбранныйФайлКакИзменённый = function(мир) | |||||
{ | |||||
$(`#${мир.макет.константы.файл}-${мир.номерВыбранногоФайла}-изменение`).removeAttr("hidden"); | |||||
}; | |||||
// // // // | |||||
ВывестиРедактирование = function(мир) | |||||
{ | |||||
console.debug("Редактирование"); | |||||
}; | |||||
*/ | |||||
/* | |||||
* СОХРАНЕНИЕ | |||||
*/ | |||||
/* | |||||
УведомитьОНеудачномСохраненииИзменений = function(мир) | УведомитьОНеудачномСохраненииИзменений = function(мир) | ||||
{ | { | ||||
UIkit.notification("Не удалось сохранить изменения", {status: "danger"}); | UIkit.notification("Не удалось сохранить изменения", {status: "danger"}); | ||||
@@ -1,61 +1,3 @@ | |||||
# ВЫБОР ФАЙЛА | |||||
#выбрали файл | |||||
# задать указанный файл | |||||
# не отслеживать редактирование | |||||
# отобразить выбор файла | |||||
# отобразить содержимое выбранного файла | |||||
# задать параметр файла | |||||
# отслеживать редактирование | |||||
# ПУСК | |||||
#пуск редактора | |||||
# разобрать параметры | |||||
# вывести разобранные параметры | |||||
# задать ведущий модуль | |||||
# загрузить макет | |||||
# настроить макет | |||||
# установить макет | |||||
# очистить макет от заглушек | |||||
# задать заголовок и версию | |||||
# проверить наличие редактируемого модуля | |||||
#редактируемый модуль не существует | |||||
# назначить редактируемым модуль редактора | |||||
# задать параметр модуля редактором | |||||
# продолжить загрузку | |||||
#редактируемый модуль существует | |||||
# загрузить содержимое редактируемого модуля | |||||
#не загрузили содержимое | |||||
# уведомить об ошибке загрузки содержимого редактируемого модуля | |||||
#загрузили содержимое | |||||
# настроить Ace | |||||
# настроить отслеживание редактирования | |||||
# задать кнопку сохранения | |||||
# задать временное содержимое | |||||
# задать список файлов | |||||
# отслеживать выбор файла | |||||
# проверить наличие указанного файла | |||||
#указанный файл не существует | |||||
# выбрать первый файл | |||||
#указанный файл существует | |||||
# выбрать указанный файл | |||||
# РЕДАКТИРОВАНИЕ | |||||
#редактирование | |||||
## вывести редактирование | |||||
# пометить выбранный файл как изменённый | |||||
# сохранить временное содержимое редактируемого файла | |||||
# СОХРАНЕНИЕ | |||||
#выбрали сохранить | #выбрали сохранить | ||||
# сохранить изменения | # сохранить изменения | ||||
#не сохранили изменения | #не сохранили изменения | ||||