Russian Qt Forum

Разное => Говорилка => Тема начата: Bepec от Декабрь 14, 2011, 10:21



Название: Plugin для QDesigner невидимка.[НЕ ИМЕЕТ РЕШЕНИЯ]
Отправлено: Bepec от Декабрь 14, 2011, 10:21
Приветствую заглянувших.

Вопрос - Есть ли возможность создания плагина для QDesigner, без наследования его от QWidget'a?

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

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

update: ...


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 06, 2012, 12:56
UP, старожилы, хоть поотнекивайтесь, что ж молчать?


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Пантер от Февраль 06, 2012, 13:08
Не вижу смысла в таком плугине.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 06, 2012, 13:14
Смысл, когда в нескольких десятках проектов используются одни и те же плагины.
Добавлять в каждый файл проекта их вручную муторно и довольно неудобно.

Смысл в облегчении добавления в проект функционала, 1-2 перетаскиваниями.

PS к примеру работа с портом? перетянул компонент и он уже подключён. Работа с протоколом? ещё раз перетянул и усё.

update: может, вы и не видите необходимости, но сказать насчёт реализации всё же что-то можете? (возможно, невозможно)


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Пантер от Февраль 06, 2012, 13:26
Просмотри доки ничего не дал, так что предположу, что нельзя.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 06, 2012, 13:29
Печально, но хоть какой-никакой ответ. спасибо.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: andrewshkovskii от Февраль 06, 2012, 20:37
Тут попахивает делфи...


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Igors от Февраль 06, 2012, 20:52
Смысл, когда в нескольких десятках проектов используются одни и те же плагины.
Добавлять в каждый файл проекта их вручную муторно и довольно неудобно.
Не понял. Ну вот есть приложение (host). Оно сканирует определенный фолдер, если обнаружен файл плагина - добавляет в меню. А дальше уже пользователь выбирает из меню - какой плагин куда пристегнуть. Или как?


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 06, 2012, 21:03
Нет, имеет смысл Designer, в котором имеется вкладка с нашими (фирменными) модулями.
И чтобы добавить модуль, нужно его перенести на форму.

to andrewshkovskii: Тут попахивается десятком отделов разной специализации, и попыткой упростить всё по максимуму.

PS хотя делфи в этом плане хороший пример. Именно то, чего нехватает Qt Designer'u.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: andrew.k от Февраль 06, 2012, 23:15
PS хотя делфи в этом плане хороший пример. Именно то, чего нехватает Qt Designer'u.
Это именно то, от чего благополучно избавились в Qt еще в версии 1,
когда не глупые люди отделили семена от плевел.

К примеру, работа с портом не имеет совершенно никакого отношения к интерфейсу пользователя.
А размещать данные и логику внутри класса формы - дурной тон.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 07:02
А вот этого ненадо ;)

Скажи тогда, чем заменили быстрое добавление возможностей в программу? Или просто "зёрна отделили от плевел, и зёрна выбросили?"

Помоему добавление 6-7 инклудов в каждом проекте, это и есть какие то "плевла". Особенно когда нет возможности создать общую библиотеку ;)

Логику и внутри формы ты можешь построить. Пусть и простейшую, но "при нажатии на кнопку очистить всё", спокойно достигается с Designer'om.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Пантер от Февраль 07, 2012, 07:22
Дизайнер существует только для создания гуя. Не надо мерзкого делфизма в Qt. Нужные либы можно самому создать и без проблем подключать в коде.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 07:29
Когда либ штуки 3 и для себя - да.

Когда либ штук 20 и каждая из них содержит ненужный функционал - нет.

PS А когда Делфи стал мерзким? :)


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Пантер от Февраль 07, 2012, 07:50
Когда либ штуки 3 и для себя - да.

Когда либ штук 20 и каждая из них содержит ненужный функционал - нет.
Не понял, чем в данном случае помогут плугины.
PS А когда Делфи стал мерзким? :)
А разве нет? Ты давно с делфятниками общался? ;D


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 08:12
Не видел ещё программ, которые вызывают омерзение лишь потому, что написаны на Делфи. Наоборот парочка лежит - и прекрасно выполняют свою работу.

PS нет плохих языков программирования, есть плохие проекты и программисты ;)


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Akon от Февраль 07, 2012, 09:53
Цитировать
К примеру, работа с портом не имеет совершенно никакого отношения к интерфейсу пользователя.
А размещать данные и логику внутри класса формы - дурной тон.
+1. Специально для этого даже был создан специальный контейнер TDataModule. Это не гуй-компонент (не форма), но с ним работа точно такая же - перетаскивай на него компоненты и настраивай их свойства. В основном он используется для разработки модуля работы с базами данных (откуда по ходу и название).

Создается такое впечатление, что в Borland считали разработку в стиле компонентокидания охрененно крутой вещью. Но, скорее, на компонентокидание был спрос, и они занимали эту нишу:
1. Сегмент мелкого и динамичного бизнеса (за недорого и бысто наклепать небольшое корпоративное приложение).
2. Все увеличивающееся число начинающих разработчиков - для них Delphi обеспечивал низкий порог вхождения в профессию (в смысле получения результата, а не качественного дизайна или кода).

А так, VCL с точки зрения ООП на редкость качественная либа, имхо. 

Цитировать
Не видел ещё программ, которые вызывают омерзение лишь потому, что написаны на Делфи. Наоборот парочка лежит - и прекрасно выполняют свою работу.

PS нет плохих языков программирования, есть плохие проекты и программисты

+1. Например, на Delhi (или C++ Builder) написаны TotalCommander и TheBat.

P.S. Сам практически не пользуюсь дизайнером: 1. лэйауты снимают проблему позиционирования виджетов; 2. если есть условная компиляция, в результате которой виджет то нужен, то не нужен, что делать в дизайнере?



Название: Re: Plugin для QDesigner невидимка.
Отправлено: Пантер от Февраль 07, 2012, 10:05
TotalCommander не трогай, он пишется на Delphi 2 (и, скорее всего, в основном, на чистом WinApi).
Как раз вот это обилие компонент приводит к тому, что делфятник без них просто не может. То есть, если нет готового компонента, то задача нерешаема.
ИМХО, в Qt намного лучше подход - ведь не понимая, что делаешь, нормального ничего не сделаешь. И получаются на делфи говнопроги, коих несчетное количество.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 10:15
Многие проги написаны на делфи, и "пишется на делфи 2" не означает, что делфи пакость, а не язык :)

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

to Пантер: Я честно, незная что делаю на Qt, сделал нормальную программу, которую впоследствии конечно много переписывал, НО... Даже та её первая версия, выполняла свою задачу на 5+.

Делфи так же может использовать WinApi, и прочая прочая прочая. Так что ваши "нападки" на него беспочвенны.

PS лучше говорите "программы, написанные МЕРЗКИМИ программистами на делфи - отвратительны."


Название: Re: Plugin для QDesigner невидимка.
Отправлено: BRE от Февраль 07, 2012, 10:15
Когда либ штуки 3 и для себя - да.

Когда либ штук 20 и каждая из них содержит ненужный функционал - нет.
Не понял, чем в данном случае помогут плугины.
2Верес Перечитай сообщение Пантера и ответь на вопрос, ты думаешь что при перетаскивании компонента на форму тебе не придется править свои pro-файлы? Ты думаешь он сам там заработает... найдет все нужные библиотеки и слинкует с ними твою программу?


Название: Re: Plugin для QDesigner невидимка.
Отправлено: BRE от Февраль 07, 2012, 10:24
Смысл, когда в нескольких десятках проектов используются одни и те же плагины.
Добавлять в каждый файл проекта их вручную муторно и довольно неудобно.

Смысл в облегчении добавления в проект функционала, 1-2 перетаскиваниями.
Сомнительная автоматизация процесса, в ручную перетягивать в дизайнере компоненты, не находишь? Вот если бы для этого написать скрипт...


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Akon от Февраль 07, 2012, 10:28
Цитировать
TotalCommander не трогай, он пишется на Delphi 2 (и, скорее всего, в основном, на чистом WinApi).
Как раз вот это обилие компонент приводит к тому, что делфятник без них просто не может. То есть, если нет готового компонента, то задача нерешаема.
ИМХО, в Qt намного лучше подход - ведь не понимая, что делаешь, нормального ничего не сделаешь. И получаются на делфи говнопроги, коих несчетное количество.
Скажу так, на Delphi принципиально можно создавать очень качественный код, просто сама среда изначально толкает в другую сторону. Одни развиваются и пишут грамотно или меняют инструментарий, другие остановятся "делфятниками".


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 10:45
to BRE

Да, мне не придётся править свои pro файлы.

Не придётся так же мучаться с хедерами. Ибо об этом позаботиться обёртка плагина designer'a.

Это уже проверено. Так же проверен установочный файл, закачивающий плагин с репозитория в каталог дизайнера. (всегда актуальная версия)

А перетягивать компоненты - это и есть самая что ни есть автоматизация. Вместо прописывания 5 хедеров(куда то, с чем то, настройки путей), нужно перетянуть 5 компонентов, которые автоматом станут доступны в программе.

Единственное пока слабое место - именно расположение на форме. Ибо добрые компоновщики, даже с size(0,0), добавляют к ним отступы и перекомпонует.





Название: Re: Plugin для QDesigner невидимка.
Отправлено: andrew.k от Февраль 07, 2012, 10:49
PS нет плохих языков программирования, есть плохие проекты и программисты ;)
Вот в этом и проблема, ты не понимаешь, почему потраченные 5 секунд сейчас сэкономят тебе 5 дней потом.
А люди которые отделили зерна, это понимали.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: s200999900 от Февраль 07, 2012, 10:51
Может как вариант подойдет ТС, название проекта не помню, помню только, что он коммерческий. Там разрабатывается альтернатива IDE QtCreator-у была и Qt программа писалась "почти-полностью" в GUI, те перетаскиванием неких заготовок и созданием связей между ними. Очень полезно для начинающих и как для оптимизации затрат времени. На счет того будет ли результирующий код оптимальным не скажу, но там все можно менять.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: BRE от Февраль 07, 2012, 10:51
Да, мне не придётся править свои pro файлы.
Не поделишься этим секретом? Весь мир затаил дыхание, Nokia так вообще встала с открытым ртом, ведь они сами не знали что это возможно. :)


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Igors от Февраль 07, 2012, 11:25
ИМХО, в Qt намного лучше подход - ведь не понимая, что делаешь, нормального ничего не сделаешь. И получаются на делфи говнопроги, коих несчетное количество.
Никогда не работал на делфи, но чужую корову всегда легко охаять :) И я так думаю что говнопрогов на Qt никак не меньше, и это не в обиду Qt сказано, всегда есть много людей с (поразительными) способностями запоминать "форму/оболочку" - но не "содержание". И любой пакет имеет такой балласт, это нормально.

Верес, не могу сказать что Ваша проблема мне безумно интересна, но все же - не могли бы Вы пояснить о каком drag'n drop идет речь? Плагин что, пристыковывается к немодальному окну? Или как? И причем здесь хедеры, pro файлы если для конечного пользователя плагин = файл dll/dylib?

 


Название: Re: Plugin для QDesigner невидимка.
Отправлено: andrew.k от Февраль 07, 2012, 12:00
Верес, не могу сказать что Ваша проблема мне безумно интересна, но все же - не могли бы Вы пояснить о каком drag'n drop идет речь? Плагин что, пристыковывается к немодальному окну? Или как? И причем здесь хедеры, pro файлы если для конечного пользователя плагин = файл dll/dylib?
В дельфи/билдере основой приложения был класс формы (TForm).
Вот если ты хочешь, чтобы твое приложение имело возможность работы с сетью нужно было на эту форму положить "компонент" "TClientSocket", если не изменяет память.
Это действие добавляло в класс формы приватный член TClientSocket *socket;
Дальше в гуи ты мог этому компоненту задать разные свойства.
Дальше из такого описания формы, созданного визуально (dfm-файл) генерился код, который создавал все компоненты и задавал все свойства (по аналогии с uic).
При этом совершенно не надо было думать, что куда линковать и прописывать инклуды, править файлы проекта, т.к. все делалось автоматически. "Компоненты" сами умели себя устанавливать и прописывать в проект.

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

Вот этого и хочет господин Верес получить в Qt.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 12:31
andrew.k верно описал, пример того, чего я хочу. (за исключением мелких несущественных деталей)

to BRE:
Попробуйте создать свой плагин, скомпилить, добавить в Designer и переместить на форму.
А далее просто зарелизить проект.

И представьте - без всяких действий с вашей стороны, к проекту будет прилинкована dll или lib вашего же плагина.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: BRE от Февраль 07, 2012, 12:39
to BRE:
Попробуйте создать свой плагин, скомпилить, добавить в Designer и переместить на форму.
А далее просто зарелизить проект.

И представьте - без всяких действий с вашей стороны, к проекту будет прилинкована dll или lib вашего же плагина.
В отличие от тебя я пробовал и поэтому знаю, что так не будет. Ты хотя бы примеры посмотрел бы...


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 12:45
У меня лежит рабочая сборка, забирающая данные с репозитория, инсталлирующая их в Designer.
При проверке на виртуальной машине(чистой), проект(простенький проект, использующий плагин) собрался в релизе.
При запуске на требуемой машине (производственный компьютер) имеется весь необходимый функционал.

Вопрос: где же я обманул Qt, или себя? (на виртуалку попал плагин, исходный код программы и чистый Qt SDK).


Название: Re: Plugin для QDesigner невидимка.
Отправлено: BRE от Февраль 07, 2012, 12:53
У меня лежит рабочая сборка, забирающая данные с репозитория, инсталлирующая их в Designer.
При проверке на виртуальной машине(чистой), проект(простенький проект, использующий плагин) собрался в релизе.
При запуске на требуемой машине (производственный компьютер) имеется весь необходимый функционал.

Вопрос: где же я обманул Qt, или себя? (на виртуалку попал плагин, исходный код программы и чистый Qt SDK).
О чем ты сейчас говоришь?
Изначально ты не хотел прописывать дополнительные библиотеки в своих pro-файлах и надеялся, что перетащив одну иконку на окошко избавит тебя от этого. Это оказалось не тек.
Теперь ты пишешь про какие-то релизы на чистых виртуалках. :)


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Igors от Февраль 07, 2012, 12:56
...но сама среда "обязывала". Новичку так легче, а потом уже он привык.
Понял, спасибо (хотя ненавижу когда кто-то "на автомате" правит мой код или даже просто садится за мою машину(ы))

andrew.k верно описал, пример того, чего я хочу. (за исключением мелких несущественных деталей)
Конечно я не объективен (см выше). Но не слишком уж "развитОй социализм" Вы строите? Среда разработки для программиста - одно, для конечного пользователя - совсем другое. Есть опасность утонуть в (хитромудрых) настройках и в объяснениях "как это работает". Лучше ограничить возможности но зато сделать вещь проще/яснее. Как говорил профессор "..не спорю, теоретически это интересно. Но на кой черт делать искусственного гомункула когда любая баба.. и.т,д."


Название: Re: Plugin для QDesigner невидимка.
Отправлено: andrew.k от Февраль 07, 2012, 13:04
Верес, если у тебя все работает, все релизится и все розово и прекрасно. Что же ты хочешь от топика?
Тебе по сути хором говорят, что так делать не стоит.
Ты построил свой пятиколесный велосипед и хочешь убедить, что на нем все должны ездить?

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


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Igors от Февраль 07, 2012, 13:22
Пользы от твоих мучений ноль, один вред. Так зачем морочить голову людям?
На мой взгляд не стоит так рубить с плеча. Бывают идейки заманчивые - но из которых (почему-то) ничего не выходит. Напр когда я впервые написал metaballs я было подумал что "ну щас - куча применений!". Однако ни одного стоящего так и не нашлось :) И кто знает - а вдруг Верес прав? В любом случае не надо "давить", на правду оно само выплывет


Название: Re: Plugin для QDesigner невидимка.
Отправлено: andrew.k от Февраль 07, 2012, 13:31
Пользы от твоих мучений ноль, один вред. Так зачем морочить голову людям?
На мой взгляд не стоит так рубить с плеча. Бывают идейки заманчивые - но из которых (почему-то) ничего не выходит. Напр когда я впервые написал metaballs я было подумал что "ну щас - куча применений!". Однако ни одного стоящего так и не нашлось :) И кто знает - а вдруг Верес прав? В любом случае не надо "давить", на правду оно само выплывет
Прав в чем? Что нужно в интерфейс запихивать логику?
И ради чего? Ради болезненного нежелания писать инклуд?

Если бы он хоть выложил сюда что-то, то может быть и было о чем говорить, но все его посты огранечены "громкимы высказываниями, да я, да у меня, а у вас" и не более.
Поэтому на данный момент он не прав и занимается велосипедизмом. Ради бога.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 13:32
to andrew.k - брысь.

Ты не уловил сути, не читал видимо тему(даже первое сообщение не прочитал ;D) и не понял смысла.
И пользы от моих мучений, для тебя должно быть 0. -  [невырезанный цензурой цензурный посыл в лес]
*** ***** - [вырезанный цензурой нецензурный посыл в лес]

Прочитай 1 сообщение и мб до тебя дойдёт, неадекватик ты мой злейший? :P

to Igors: Про пользователей никто ничего не говорит. Так сложилось, что наработками будут пользоваться люди, которые являются программистами, но в разных областях. И это лишь один из рассматриваемых вариантов.
оффтоп: "на кой чёрт создавать атомные реакторы, когда каждый человек греется на печке нормально?"

to BRE: Без вмешательства пользователя плагин будет прилинкован к проекту, если его перетащить в дизайнере. Никаких "ручных" правок *.pro , линковок проекта, добавления в свойства проекта необходимых путей. Пользователь перетащит и будет пользоваться, заместо "ковыряния, линковок".
Я был против "ручками дописываем в *.pro, прописываем путь в **, собираем".

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


спешиал то andrew.k - выливать помои иди в другие темы.
Идея не для тебя и даже не для форумчан, а для конкретно моих целей. И я не заставляю всех пользоваться этим.
Не "логику в интерфейс", а в "добавить за секунды возможности, попробовать, протестировать и составить методику тестирования".







Название: Re: Plugin для QDesigner невидимка.
Отправлено: BRE от Февраль 07, 2012, 13:39
to BRE: Без вмешательства пользователя плагин будет прилинкован к проекту, если его перетащить в дизайнере. Никаких "ручных" правок *.pro , линковок проекта, добавления в свойства проекта необходимых путей. Пользователь перетащит и будет пользоваться, заместо "ковыряния, линковок".
Я был против "ручками дописываем в *.pro, прописываем путь в **, собираем".
К сожалению это не возможно. Как только ты перестанешь мечтать и хотя бы залезешь в примеры, то ты все это увидишь сам.



Название: Re: Plugin для QDesigner невидимка.
Отправлено: andrew.k от Февраль 07, 2012, 13:40
А я вообще приложения в дизайнере пишу.
У меня и про-файлы сами генерятся и код пишется автоматически, я только контроллы в дизайнере двигаю.
Очень удобно, кстати.
Это я такой плагин написал.
Но правда не покажу никому и не расскажу, как это возможно.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 13:43
BRE: я тебе уже писал, мб прочитаешь? :)
О том, что есть проект, который спокойно тянет файлы, добавляет плагин в designer. И после чего на чистом Qt SDK, чистой системе, без ручного "исправления *.pro файлов, путей" собирается функциональный проект.


to andrew.k - изыди, неадекватушка ^.^


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 13:46
Andrew.k - противный!

to Пантер: лучше бы флуд удалил, и продолжили обсуждение. А не в говорилку пихать.

Вести тему в говорилке дело пустое. Закрываю темы, помощи не получил.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Пантер от Февраль 07, 2012, 13:47
Тут есть не флуд? Ойли.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: BRE от Февраль 07, 2012, 13:48
BRE: я тебе уже писал, мб прочитаешь? :)
О том, что есть проект, который спокойно тянет файлы, добавляет плагин в designer. И после чего на чистом Qt SDK, чистой системе, без ручного "исправления *.pro файлов, путей" собирается функциональный проект.
Я тебя уже просил раскрыть эту "тайну". Уверен, это потрясет компьютерный мир, потому что это как найти Атлантиду. :)


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 13:50
Спасибо, теперь понятно, что попытаться развить идею тут не стоило.

Никакой помощи, окромя агра и скептицизма.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: pastor от Февраль 07, 2012, 15:28
К сожалению это не возможно. Как только ты перестанешь мечтать и хотя бы залезешь в примеры, то ты все это увидишь сам.

+1

Bepec, тебе придется править pro-файл, иначе твой проект просто не слинкуется. Простого добавления компонента на виджет мало.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: BRE от Февраль 07, 2012, 15:43
Bepec, тебе придется править pro-файл, иначе твой проект просто не слинкуется. Простого добавления компонента на виджет мало.
Есть еще один способ... это регистрировать плагин в дизайнере (что бы он был доступен фабрике дизайнера) и создавать виджеты, его использующие, исключительно через QUiLoader. Может они используют этот способ? Но тут вопрос к тому, кто это делал.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 15:53
До BRE дошла основная идея... Только поздно...

С каких это пор заблокированные темы разблокируются самостоятельно? хм...


Название: Re: Plugin для QDesigner невидимка.
Отправлено: pastor от Февраль 07, 2012, 16:00
Есть еще один способ... это регистрировать плагин в дизайнере (что бы он был доступен фабрике дизайнера) и создавать виджеты, его использующие, исключительно через QUiLoader. Может они используют этот способ? Но тут вопрос к тому, кто это делал.

Про этот способ даже мысли и близко небыло. Не каждый день встретишься с использование QUiLoader )))


Название: Re: Plugin для QDesigner невидимка.
Отправлено: BRE от Февраль 07, 2012, 17:20
До BRE дошла основная идея...
Ну тут главное, что ты наконец понял как там у вас это все работает и в следующий раз сможешь это быстро объяснить.

Только поздно...
Ну от этого теряешь только ты. :)


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 07, 2012, 23:34
Конечно я теряю. Когда начинают тупить люди, которым я прямым текстом объясняю, как и что сделано, и чего я хочу (всего то невидимку виджета для компоновщика).

А мне в ответ начинают тупить - это нереально.

Я пишу - проект уже собран, протестирован, осталась 1 проблема!

Мне пишут - это сказки ! Такого быть не может! Ё! Правь руками! Ё!

И с радостью вам сообщаю - вы жёстко тупили, если в момент ответа знали технологию регистрации плагина в дизайнере.



Название: Re: Plugin для QDesigner невидимка.
Отправлено: andrew.k от Февраль 07, 2012, 23:54
Кому ты нах нужен после такого поста?
Сиди тупи сам с собой, умник.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: pastor от Февраль 08, 2012, 05:15
И с радостью вам сообщаю - вы жёстко тупили, если в момент ответа знали технологию регистрации плагина в дизайнере.

Просто про такой изврат как QUiLoader и подумать было страшно и непонятно какой профит от его использования. Все заради невидимой компоненты? ))) Вот хотелось бы понять истинную причину выбора сего решения)) За многие годы разработки ниразу не возникало в нем потребности.

ЗЫ: Один раз воспользовался QFormBuilder когда писал ковертор форм Sammi (ADK, Motif) на ui. Была масса проблем с ним, вспоминаю как страшный сон. В итоге отказался от QFormBuilder и переписал конвертор используя DOM классы.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 08, 2012, 06:53
andrew.k - вы неисправимый неадекватус ;)

А я привёл лишь краткое содержание темы. Если не тупить, а попытаться ответить на мой вопрос, высказанный в 1 посте, всё кристально ясно и чисто. Пантер сразу вон определил суть вопроса, да и все остальные, если прочтут 1 пост, могут попытаться на него ответить. А не критиковать один из возможных путей развития сей идеи.

Pastor, тут имеет место специфическое использование в одной конкретной специализированной области(тестирование считай) в отдельно взятом предприятии.

И уж конечно ниодному пользователю такая радость не нужна ^.^


Название: Re: Plugin для QDesigner невидимка.
Отправлено: BRE от Февраль 08, 2012, 09:11
И с радостью вам сообщаю - вы жёстко тупили, если в момент ответа знали технологию регистрации плагина в дизайнере.
Я жёстко тупил, когда разговаривал с человеком, который понятия не имеет как и что работает в системе, разрабатываемой у них на предприятии, иначе объяснение заняло бы не более одного предложения и к этой теме (изменения в pro-файлах) уже бы никто не возвращался.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 08, 2012, 12:43
to BRE:
Попробуйте создать свой плагин, скомпилить, добавить в Designer и переместить на форму.
А далее просто зарелизить проект.

И представьте - без всяких действий с вашей стороны, к проекту будет прилинкована dll или lib вашего же плагина.
В отличие от тебя я пробовал и поэтому знаю, что так не будет. Ты хотя бы примеры посмотрел бы...

Ты лицемер? :)

Почитай реплики и отыщи, кто первым скатился с "как сделать невидимый виджет" на "это невозможно, это нереально, ты что, как так, да ты нуб, читай документацию, это фантастика".
 А далее, признав что это реально, начал гнать бочку что "ты не смог мне нормально объяснить"  ;)

PS сама реализация и идея моя. Сделана на отлично. Проблема лишь в виджете, который бы не слушался компоновщика ;)

Повтор вопроса - можно ли создать "невидимый виджет, не учитываемый компоновщиками".


Название: Re: Plugin для QDesigner невидимка.
Отправлено: pastor от Февраль 08, 2012, 16:12
Pastor, тут имеет место специфическое использование в одной конкретной специализированной области(тестирование считай) в отдельно взятом предприятии.

Мне вот и близко непонятно как "невизуальные" компоненты дизайнера применяются в тестировании? И какая надобность (выгода чтоли) грузить гуй через QUiLoader? Про очень интересно почемц был выбран этот путь


Название: Re: Plugin для QDesigner невидимка.
Отправлено: pastor от Февраль 08, 2012, 16:32

to BRE
Да, мне не придётся править свои pro файлы.
Не придётся так же мучаться с хедерами. Ибо об этом позаботиться обёртка плагина designer'a.
Это уже проверено. Так же проверен установочный файл, закачивающий плагин с репозитория в каталог дизайнера. (всегда актуальная версия)

Вот, что вызвало большие непонятки. Это "обёртка плагина designer'a". Что это? Как из этого можно понять, что это использование QtUiTools?

to BRE:
Попробуйте создать свой плагин, скомпилить, добавить в Designer и переместить на форму.
А далее просто зарелизить проект.

И представьте - без всяких действий с вашей стороны, к проекту будет прилинкована dll или lib вашего же плагина.

Небудут прилинкованы. Или объясни каким они образом будут прилинкованы к моему проекту? Или снова тут нужно было догадаться, что ты имеешь ввиду QtUiTools?


Вобщем объяснил ты херово. Телепаты тогда также не помогли, мб они просто отсутствовали )))) Ну, а как результат, тупили мы, должен же быть кто-то крайний, да? )))

Почему нельзя было сказать, что мы используем QtUiTools и создаем виджеты динамически, поэтому необходимость в линковке отсутствует?


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 09, 2012, 18:30
Люди, мб я конечно технологию не понимаю, НО...

Создание плагина для QDesigner'a, компиляция его и добавление в инклуды, где он его подхватывает вместе с lib ками, решает проблему "линковки/путей/прописи в pro файле".

Собственно говоря - плагин, который подхватил QDesigner автоматом линкуется(ну или подберите другое, более ёмкое слово), добавляется к проекту. И чтобы вызвать функцию, нет нужны подключать "#include "123.h" ". А достаточно обратиться через форму.

И тем, кто спорит, кричит, орёт, филосовствует насчёт "это нереально", флаг вам в руки и манул по ассистанту. Потому что проект собран, реализован, существует без дополнительных телодвижений, но остаётся лишь одна проблема - Необходимо сделать этот виджет "невидимкой" для компоновщика.

Проблема в принципе идёт по теме "уже работает", но неудобно, что компоновщик на форме его учитывает, ставит поля (даже с размером 1;1), а при предпросмотре, виджет убирается аля "setVisible"

PS ДОБРЫЕ ЛЮДИ, не пиндите мне про "это невозможно", лучше вопрос прочитайте всей темы млиааа :D


Название: Re: Plugin для QDesigner невидимка.
Отправлено: _OLEGator_ от Февраль 09, 2012, 21:30
Остается вариант скрывать.
Я просто плагины для дизайнера не делал, поэтому могу только предполагать, что либо в самом плагине это как то реализовать, либо код дизайнера копать.
Форма поидее - это QGraphicsView?
Тогда возникнет ряд других вопросов - как определить какие компоненты добавлены, как удалить ненужные.
Скорее всего надо будет дорабатывать дизайнер, чтобы расширить функционал до таких компонент, которые не будут добавлены в слой формы.


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 10, 2012, 07:29
Благодарю за совет.

Только вы чуток не поняли идею.
Я хочу не "полностью невидимое и неосязаемое" поле. А аналог "Spacer", которые во время компоновки видны, а во время работы скрыты.

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


Название: Re: Plugin для QDesigner невидимка.
Отправлено: _OLEGator_ от Февраль 10, 2012, 09:00
Тогда понятно.
Ну если проект будет развиваться, то тогда дизайнер доработать все же придется =)


Название: Re: Plugin для QDesigner невидимка.
Отправлено: Bepec от Февраль 10, 2012, 09:21
Возможно ^.^