OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Среда, 05 Июнь, 2024 11:13

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
СообщениеДобавлено: Понедельник, 09 Июнь, 2008 21:24 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
Создаю два документа, каждый в своём окне. В одном - макет страницы отчёта, в другом - разметка полос. Модель одна.

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

А хочется, чтоб оба документа лежали в одном файле. И что-то не понимаю, возможно ли такое вообще, не задействуя конвертеры.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 09 Июнь, 2008 23:26 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 1538
Откуда: Беларусь, Минск
А чем различаются макет страницы и разметка полос? Это структура данных и расположение данных на листе?

И одну модель Вы храните в двух файлах?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 09 Июнь, 2008 23:58 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
Я использую возможности составных документов для макетирования отчёта.

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

В другом окне редактируется список полос (т.н. bands), то есть, последовательно и циклически выводимых блоков.

Редактор полос - это отображение-контейнер, внутри которого внедрено текстовое отображение TextViews.View. Каждая полоса - это формочка, на которую стандартным образом можно набрасывать контролы.

Макет и полосы разнесены по разным окнам в силу того, что макетировать в одном окне лист и полосы неудобно.

То есть, отчёт включает в себя макет страницы и набор полос. И надо всё это дело соответственно сохранять в один файл.

По отдельности всё сохраняется стандартным способом (Save As). Либо форма-макет. Либо текст-полосы.
Все отображения завязаны на одну модель, которая распространяет изменения дизайна (например, в окне макета пользователь изменил ширину области вывода полос, и ширина полос автоматически изменилась), и тоже сохраняется в файле.

Вот и интересно - а можно ли выкрутиться и сохранить содержимое обоих окон в один файл? Это было бы изящно :)
Если такого способа нет, ну что ж - сделаю конвертер.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 10 Июнь, 2008 18:25 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 1538
Откуда: Беларусь, Минск
И всё же для меня непонятен смысл слова "макет" в сочетании с "редактором полос". Для меня это что-то почти одинаковое, две сущности со множесвом дублирующихся функций.

Возможно, это форма и содержание (правильнее - структура содержания) отчёта соответственно? Я на ББ не работаю, поэтому MVC знаю слабо, но если предположить, то Блэкбоксовская реализация MVC идеальна, то моделью (а соответственно, и одним файлом) может стать форма и содержание отчёта, а два отображения модели позволят работать с каждой из этих сущностей в отдельном окне. Но Вы, скорее всего, уже пытались пройти этим путём, я напомнил об этом так, на всякий случай : ). Если же Вы "сюдою не ходили" и Вам это интересно, но я не особо понятно объяснил, то обращайтесь : ).

P.S. Или Вы это и называете конвертером?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 10 Июнь, 2008 19:33 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Может быть тут две разные вьюшки на одну модель? Это-то как раз предусмотрено.
А вторая вьюшка (макет) открывается/зависит от первой? Тогда она (вторая) всегда хранится в первой.

Не кажется, что есть реальная трудность.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 10 Июнь, 2008 19:37 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
Я слово "макет" употребляю в сочетании со словом "страница", и отдельно от "редактора полос". Как мне показалось, макетирование страницы и полос - это разные вещи, поэтому и развёл их на разные окна.

А модель у них, конечно же, одна.

Я малость не дотумкал - отображение "макета страницы" и отображение "редактора полос" надо экстернализировать именно через их модель (формулировка ещё та, извините). А модель сбрасывается в файл при попытке сохранить любое из окон.

Реальной трудности, конечно же нет, трудность в тугости шариков и роликов в голове :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 11 Июнь, 2008 03:01 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Иван Кузьмицкий писал(а):
... трудность в тугости ...


На самом деле самому протюхиваться через неожиданные способы употребления ББ-каркаса та еще морока.

Вот тоже бодался вставлял по инерции (по образцу текстов, форм и проч.) вьюшки в модель-контейнер, а потом оказалось что должны быть параллельные иерархии конейнер-элементы и для вьюшек, и для моделей -- и всё встало на места.

И сложного ничего нет, но до чего же инерция мешает видеть простые вещи, блин.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 11 Июнь, 2008 08:27 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4625
Откуда: Россия, Орёл
Info21 писал(а):
И сложного ничего нет, но до чего же инерция мешает видеть простые вещи, блин.
Извиняюсь за оффтоп, но хочется подписаться под этими словами. А некторые ещё ноют, что их Блэкбоксу стали учить...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB