[Logo] Форум DL
  [DL]  На главную страницу 
Индекс форума ->Учебный процесс ГГУ/СШ 27 ->Обучение программированию "с начала" 1, 2, 3, ... 22, 23, 24, 25, 26, ... 88, 89, 90
Автор Сообщение
Юрий Решетько

Темы: 4
Сообщений: 646

Мой профиль
Проблема с дополнительными файлами в задании (графические, swf и др.).

Есть два способа загрузки заданий в конструктор:

1. Кнопка "Открыть задание".
2. Загрузка задания из базы заданий.

В первом случае если текстовый файл с заданием лежит не в одном каталоге с конструктором, то дополнительные файлы в конструктор не загружаются и никакой информации о их расположении и содержании конструктор также не получает. Если файл с заданием лежит в одном каталоге с конструктором, то в последний поступает содержимое этих файлов.

Во втором случае при загрузке заданий данные дополнительных файлов поступают в конструктор всегда.

Политика безопасности среды выполнения FlashPlayer не допускает массового сохранения данных. Другими словами чтобы сохранить один файл (текстовый или графический) пользователь должен сделать один клик по кнопке приложения, затем открывается диалоговое окно выбора места расположения файла, где пользователь должен выбрать каталог и нажать на кнопку "Сохранить".

Политика безопасности среды выполнения AIR более "благосклонна" к разработчику, она может сохранять любой объём любых файлов в каталоги, доступные пользователю для записи.

На данный момент Конструктор вообще не поддерживает сохранение всех файлов, кроме текстового по реакции пользователя.

AIR приложение может загружать в себя приложение для FlashPlayer и взаимодействовать с ним (передавать и получать данные). Обратная загрузка невозможна.

Предлагаемые варианты решения проблемы и уверенность в их реализации (в процентах)
1. При сохранении задания собирать весь список загруженных файлов и выводить в кнопочном режиме для сохранения каждого в отдельности (уверенность в успехе 70%)
2. Создать AIR Приложение, которое загружает в себя Конструктор и берет на себя функции:
- - Сохранение файла задания
- - Сбор данных о дополнительных файлах
- - Автоматическое сохранение списка файлов в каталог, с заданием
(уверенность в успехе 85-90%)

Недостаток первого пункта очевиден (если в задании 100 различных рисунков, то автор разобьет свою машину )
Недостатки второго пункта:
- - Дополнительная среда выполнения AIR
- - Невозможность сохранять данные с WEB-страницы


Примерная реализация любого из этих методов - 3 недели
Юрий Решетько

Темы: 4
Сообщений: 646

Мой профиль


Юрий Решетько:

...
2. Создать AIR Приложение, которое загружает в себя Конструктор и берет на себя функции:
- - Сохранение файла задания
- - Сбор данных о дополнительных файлах
- - Автоматическое сохранение списка файлов в каталог, с заданием
(уверенность в успехе 85-90%)
... 


В успехе реализации этого метода я уверен на 100%. Для эксперимента сделал маленькое приложение, которое сохраняет массив картинок. Думаю что синхронизация кода с конструктором займет не больше недели.
Михаил Долинский

Темы: 2181
Сообщений: 51960

Мой профиль
Неделя - это срок который мы можем себе позволить.

Я правильно понял, что в результате мы получим возможности автономно (без твоей помощи).

1. Загружать новые картинки в базу рисунков.
2. Выгружать базу рисунков

Дополнительно нужно поддержать (ты говорил не сложно).
Выгрузку базы пользовательских танов.

В результате получится, что АРХИВ разработчика
(по крайней мере ту часть, что касается баз заданий, пользовательских танов и рисунков)
можно будет обновлять пользователям самостоятельно

Или останутся еще какие-то проблемы на этом пути?

Кстати на страничке архива разработчика можно будет также отдельно выкладывать фалы программ и данных, поскольку они могут обновляться независимо и асинхронно.
Юрий Решетько

Темы: 4
Сообщений: 646

Мой профиль


Михаил Долинский:

...

1. Загружать новые картинки в базу рисунков.
2. Выгружать базу рисунков
... 


Нет Вы меня неправильно поняли, я экспериментировал с сохранением картинок в туже папку на локальной машине, куда сохраняет автор файл Position.txt. При этом нет различия откуда был взят файл из базы заданий(в каком либо задании) или с какого либо места локальной машины.
Михаил Долинский

Темы: 2181
Сообщений: 51960

Мой профиль
Тогда напиши КОНКРЕТНО.
Какую ИМЕННО проблему ты готов решить за неделю.
Юрий Решетько

Темы: 4
Сообщений: 646

Мой профиль
Проблему, которая описана в верхнем посте этой страницы форума.
Михаил Долинский

Темы: 2181
Сообщений: 51960

Мой профиль
Обсудим устно.
Михаил Долинский

Темы: 2181
Сообщений: 51960

Мой профиль
Точнее забудем эту проблему до лучших времен.
Пока есть более важные.
И работай по ПЛАНУ, не отвлекайся.

Юрий Решетько

Темы: 4
Сообщений: 646

Мой профиль
Сделал добавление иконок в соответствии с функциями.
Параметр на вкладке настройки задания "Добавить значки"
Юрий Решетько

Темы: 4
Сообщений: 646

Мой профиль
Исправлены баги:
1. Время в таймер не вписывается после загрузки текстового файла
- переработан доступ к параметрам задания
- - теперь настройки имени задания и уровня вложенности в одной панели с таймером и жизнями
- упразднена одна панель
- кнопка создания нового задания перенесена в нижнюю панель
- кнопка тестового режима перенесена также в нижнюю панель (Кнопка с надписью "Т")
- задание адекватно воспринимает уровень вложенности в дереве
2. В панели рисования удаляются лишние точки
3. При тестировании задания в конструкторе задание сбивается*
- сделано так, что если возникает ошибка, то либо плеер не загружается, либо показываются кнопки закрытия окна
4. Перечисляемые поля могут не работать с символами < и >
5. Проблемы в создании дерева заданий
6. Проблема с выделением группы объектов и нечаянным нажатием клавиши "Delete" и правой клавиши мыши

Сделана кнопка для сохранения только текущего задания в дереве (теперь тест можно в конструкторе разбирать по отдельным заданиям)

Переработана загрузка старых надписей, теперь они автоматически конвертируются в новые.

Слегка переработано расположение кнопок в нижней панели (панель стала шире, кнопки располагаются в два ряда)
Юрий Решетько

Темы: 4
Сообщений: 646

Мой профиль
По приоритету:
-- при загрузке SWFСобытие Cansel всё равно создаёт объект задания
-- SWF не загружается более 150 кб.
-- Сделать палитру цветов выше всех элементов.
-- Возможность раскрашивать области выделения (В конструкторе)
-- При загрузке задания с полями ввода в поле допустимых символов вводится null
-- При выделении группы объектов и изменении настройки, настройка первого элемента
в списке распространяются на все выделенные
-- Слои не воссоздаются в конструкторе при повторной загрузке
-- Новые надписи сдвигаются
-- Открыть дерево задач

-- Не всегда в текстовое поле можно установить курсор
-- Иногда не загружаются элементы из базы


-- ОБОЛОЧКА.

Оставшиеся хотелки:
--В тестовом режиме истратил жизни - переход на следующее заданиее; если мнимых несколько, то по кнопке "Сначала" возвращаться на первое мнимое.
--При работе в конструкторе в тестовом режиме сделать кнопки В КОНСТРУКТОРЕ кнопки перехода по заданиям и кнопку Тестировать текущее задание.
--Неправильно загружается, если слой точек соединения выше собств. элементов. (Слои не воссоздаются в конструкторе)
--При использовании областей выделения показывать верность решения (обводка красным) только после того, как кликнули подряд на всех правильных местах (Найти 2 одинаковых предмета).
--Точка как отдельный конструктивный элемент, выбор цвета линий соединения (Соединить точки по порядку, лабиринт).
--Блокировка поворота элементов параметром.
-- Соединение точек сплошной линией (Нарисовать не отрывая руки).
-- Неоднозначность решения для точек соединения (Лабиринт, "Из мухи слона").
--Возможность изменять, добавлять, выделять цветом текст в динамических полях (Отделить слова друг от друга, В каждом слове отыскать другое спрятанное слово, В бессмысленный набор букв вставляются слова, требуется отыскать их).
-- Возможность изменять размер собственных элементов.
-- Отметить не менее указанного количества кружочков.
-- Кнопка Удалить последнюю точку.
-- При группировке собственных элементов и изменении настройки группы элементов изменяется цвет всех.
-- если убрать настройку Раскрашивание обычное, то удаляется и цвет собств. элемента (перед этим просто раскрасить кисточкой)
--Элементы заблокированного слоя группируются вместе с остальными и перемещаются потом.
Юрий Решетько

Темы: 4
Сообщений: 646

Мой профиль
Исправлено:
-- при загрузке SWFСобытие Cansel всё равно создаёт объект задания
-- SWF не загружается более 150 кб. (Данного ограничения не было, необходимо смотреть по факту SWF файл)
-- Сделать палитру цветов выше всех элементов. (на слой SWF танов)
-- Возможность раскрашивать области выделения (В конструкторе) (Через панель настроек)
-- При загрузке задания с полями ввода в поле допустимых символов вводится null
-- При выделении группы объектов и изменении настройки, настройка первого элемента
в списке распространяются на все выделенные
-- Слои не воссоздаются в конструкторе при повторной загрузке
-- -- Переработана система работы слоёв
-- -- Настройки слоя сохраняются при переходе на новое задание (невидимость, блокировка)
-- Новые надписи сдвигаются
-- Переработана система создания нового задания. Если текущая позиция конструктора в середине дерева,
то при нажатии на кнопку "Создать новое задание" следующее не затирается, а отодвигается на позицию дальше,
а на его место вставляется новое задание.

Сделано:
-- Открыто дерево задач
Функционал описан в теории -> http://dl.gsu.by/theory.jsp?id=6210&cid=419
Юрий Решетько

Темы: 4
Сообщений: 646

Мой профиль
Дописан функционал для дерева задач
Теория соответственно обновлена -> http://dl.gsu.by/theory.jsp?id=6210&cid=419
Михаил Долинский

Темы: 2181
Сообщений: 51960

Мой профиль
Надо ставить иконки типов заданий АВТОМАТИЧЕСКИ.
А не заставлять меня ВСЕМ, кто делает задания, говорить, что им нужно найти и выставить этот параметр.

Лучше уже старые задания переделать, если по-другому "никак-никак" проблему не решить.

А еще можно по дате файла position.txt ориентироваться - ты можешь ее унать?
Юрий Решетько

Темы: 4
Сообщений: 646

Мой профиль


Михаил Долинский:

Надо ставить иконки типов заданий АВТОМАТИЧЕСКИ.
А не заставлять меня ВСЕМ, кто делает задания, говорить, что им нужно найти и выставить этот параметр.

Лучше уже старые задания переделать, если по-другому "никак-никак" проблему не решить.

А еще можно по дате файла position.txt ориентироваться - ты можешь ее унать? 


Узнать дату - это врятли!
Но тут тоже могут возникнуть свои недостатки: Автор, который не предполагает, что иконки будут добавлены, будет использовать ту часть сцены, где должны быть эти самые иконки. Тогда произойдёт наложение задания на поясняющие картинки.
 
Индекс форума ->Учебный процесс ГГУ/СШ 27 ->Обучение программированию "с начала" 1, 2, 3, ... 22, 23, 24, 25, 26, ... 88, 89, 90
Time:0,118