![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
trdm |
![]()
Сообщение
#1
|
Дмитрий Трошин ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 575 Регистрация: 12.1.2008 Пользователь №: 68 Спасибо сказали: 21 раз(а) Репутация: ![]() ![]() ![]() |
Планирую сделать множество разных "документов" в смысле управляемых QWorkspace дочерних окон,
в которых будет разнородное содержимое: текст, формы разных типов, таблицы. Каждый из типов документов имеет свои уникальные действия. У некоторых документов есть даже свои менюшки 1-го уровня и панели инструментов. В смысле не одна а несколько. как мне правильно архитектурно скомпоновать их в интерфейс? есть ли примеры, которые можно посмотреть? зарезервировать в главном меню максимальное количество возможных меню и при смене активного чилда перестраивать менюшку? Как быть со стандартными акциями типа "ЗАписать", "Вырезать", "вставить", "Поиск" и т.п. Сделать абстрактный класс МидиЧилд, добавить в него политики, типа // политика доступности определенных действий для документов // т.е. действие доступно: Всегда, Никогда, Запрос на доступность. typedef enum _docActionPolicy { actPolisyAlways , actPolisyNever , actPolisyAsk } docActionPolicy; в базовом заглушить их, а в наследнике разрешать только доступные/реализованные? Вобщем кучка вопросов, на которых непонятно как правильно ответить ( Поможете? |
|
|
![]() |
Litkevich Yuriy |
![]()
Сообщение
#2
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
У тебя нет книжки "Патерны объектно-ориентированного проектирования" Э.Гамма и др.?
Там рассматривается пример создания тектового редактора Lexi, может быть это то что тебе нужно, я чесно говоря мельком посмотрел. Сообщение отредактировал Litkevich Yuriy - 11.2.2008, 8:08 |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 4.5.2025, 10:58 |