Russian Qt Forum

Qt => Вопросы новичков => Тема начата: unkeep от Август 21, 2013, 18:11



Название: проекты с поддиректориями (общие классы для двух независимых проектов)
Отправлено: unkeep от Август 21, 2013, 18:11
Пытаюсь построить такое дерево проектов
  • Project AB
    • Project А
    • Project B
    • Common
      • Widgets
        • WidgetAB
      • Models
        • ModelAB

Хочу в проектах A и B пользоваться общими виджетами и классами.
1)Создал в мастере Project AB(проект с поддиректориями)
2) в него добавил Project А, Project B (GUI приложения)
а дальше туплю:
1)Common, Widgets, Models - тоже проекты с поддиректориями?
2) какой проект создавать для  WidgetAB и как этот виджет добавить на форму в Project А, Project B?
3) какой проект создавать для ModelAB и как воспользоваться его кодом в Project А, Project B?

растолкуйте пожалуйста


Название: Re: проекты с поддиректориями (общие классы для двух независимых проектов)
Отправлено: mutineer от Август 22, 2013, 10:01
1) Models точно нет
3) Никакой проект не создавать. Добавляешь ModelAB в список инклудов и сорцов в проеты A и B


Название: Re: проекты с поддиректориями (общие классы для двух независимых проектов)
Отправлено: xokc от Август 22, 2013, 12:18
1, 3 - Всё зависит от того, насколько самодостаточны Widgets, Models да и Common в целом. Если - да, то я бы оформлял Widgets и Models в виде отдельных проектов (lib или dll - на выбор). Если - нет, то в виде инклудов для ProjectA и ProjectB.
2 - Вот тут не понял. Если речь идёт о Дизайнере, то надо регистрировать свои виджеты в дизайнере и потом пользоваться. Я обычно ставлю в дизайнере просто QWidget вместо своего виджета и потом делаю "Преобразовать в..." в свой класс.