Provided by: kgendesignerplugin-bin_5.116.0-0ubuntu2_amd64 

kgendesignerplugi(1) KDE Frameworks: KDesignerPlugi kgendesignerplugi(1)
НАЗВА
kgendesignerplugin - Програма для створення додатків віджетів для Qt(TM) Designer.
КОРОТКИЙ ОГЛЯД
kgendesignerplugin [ПАРАМЕТРИ...] файл
ОПИС
Нетипові додатки віджетів для Qt(TM) Designer зазвичай мають стандартну структуру, класи, роботу яких
забезпечує додаток, здебільшого надають статичну інформацію, а функція для створення екземпляра класу
типово є простим викликом конструктора. За допомогою kgendesignerplugin розробники бібліотек, які
створюють нові віджети, можуть створити такий додаток з усім стандартним кодом на основі простого файла
опису у стилі ini.
kgendesignerplugin вибирає загальноприйнятні типові значення для більшості параметрів, отже, зазвичай,
потрібні лише мінімальні зміни у налаштуваннях.
ПАРАМЕТРИ
-o файл
Назва створеного програмою файла коду C++. Якщо назву не вказано, дані буде виведено до stdout.
-n назва додатка
Забезпечує сумісність із попередніми версіями. Типове значення для параметра PluginName у файлі
вхідних даних.
-g група
Забезпечує сумісність із попередніми версіями. Типове значення для параметра DefaultGroup у файлі
вхідних даних.
--author
Вивести дані щодо авторства програми.
--license
Вивести дані щодо умов ліцензування на програму.
-h, --help
Вивести короткий текст довідки.
-v , --version
Вивести дані щодо версії програми.
ФОРМАТ ФАЙЛІВ
Файл вхідних даних є файлом налаштувань у стилі ini (якщо бути точнішим, то у форматі, підтримуваному
бібліотекою KConfig), який містить опис набору віджетів. У ньому має бути розділ [Global], де наведено
загальні відомості щодо додатка, та окремий розділ для кожного з віджетів, які має бути включено до
додатка.
У розділі [Global] може бути вказано такі записи:
DefaultGroup
Типове значення для запису Group у розділах класів (типове значення: "Custom", якщо не вказано
параметра -g).
Includes
Список включень, відокремлених комами (типове значення: порожній). Зауважте, що тут не слід вказувати
файли заголовків, які пізніше буде вказано у файлі; це лише спеціальні файли заголовків, які
використовуватимуться лише самим додатком, якщо заголовки для класів, які надають можливість
попереднього перегляду.
PluginName
Назва основного класу C++ у додатку (типове значення: WidgetsPlugin, якщо не вказано параметра -n).
У кожного класу має бути власний розділ [ClassName], у якому мають бути такі записи:
CodeTemplate
Значення, яке повертає функція codeTemplate() додатка, яку буде позначено для наступного використання
Qt(TM) Designer (типове значення: порожнє).
ConstructorArgs
Аргументи, які слід передати конструктору класу, вказаного за допомогою ImplClass; ці значення слід
вказувати у дужках (типове значення: (parent)). Єдиною гарантовано доступною змінною є parent, тобто
батьківський об’єкт QWidget, переданий Qt(TM) Designer.
Цей запис буде проігноровано, якщо встановлено значення для CreateWidget.
CreateWidget
Код, потрібний для створення екземпляра віджета (типове значення: використовувати new для створення
екземпляра класу, вказаного записом ImplClass, передавати аргументи, вказані за допомогою
ConstructorArgs). Див. опис записів ImplClass та ConstructorArgs.
DomXML
Опис інтерфейсу користувача віджета у форматі XML (типове значення: типовий опис, створений на основі
заголовків додатків Qt(TM) Designer).
Group
Група, у якій віджет буде показано у Qt(TM) Designer (типове значення: значення запису DefaultGroup у
розділі [Global]).
IconName
Файл зображення або назва стандартної піктограми, яку слід використовувати як піктограму для цього
віджета у списку віджетів Qt(TM) Designer (типове значення: файл PNG, назва якого збігається з назвою
розділу без подвійних двокрапок, розташований у каталозі pics вбудованого файла ресурсів; приклад:
:/pics/Foo.png у розділі [Foo] або :/pics/FooBar.png у розділі [Foo::Bar]).
ImplClass
Клас, який слід використовувати для створення екземпляра віджета для використання у Qt(TM) Designer
(типове значення: назва розділу). Зауважте, що насправді це може бути не той клас, який було б
створено остаточною програмою: той клас визначається у DomXML.
Цей запис буде проігноровано, якщо встановлено значення для CreateWidget.
IncludeFile
Файл заголовків, який слід включити для використання цього віджета (типове значення: написана малими
літерами назва розділу без двокрапок з дописаним «.h»; приклад: foo.h у розділі [Foo] або foobar.h у
розділі [Foo::Bar]).
IsContainer
Визначає, чи містить цей віджет інші віджети (типове значення: false).
ToolTip
Підказка, яку буде показано у відповідь на затримування вказівника миші на віджеті у списку віджетів
Qt(TM) Designer (типове значення: назва розділу з дописуванням « Widget»; приклад: Foo Widget у
розділі [Foo]).
WhatsThis
Текст підказки «Що це?», пов’язаної з віджетом у Qt(TM) Designer (типове значення: назва розділу з
дописаним « Widget»; приклад: Foo Widget у розділі [Foo]).
ПРИКЛАДИ
Найпростіший файл опису може виглядати так:
[Foo]
ToolTip=Displays foos
[Bar]
ToolTip=Bar editor
Зауважте, що у кожному класі має бути принаймні один встановлений ключ (у нашому прикладі використано
ключ ToolTip), інакше запис класу буде проігноровано.
Зазвичай, виникає потреба у зміні принаймні видимого користувачем тексту, тобто записів ToolTip,
WhatsThis та Group. Крім того, варто також визначити назву додатка, щоб запобігти можливим конфліктам
символів і не ускладнювати роботу засобів діагностики (самої програми та особи, яка шукає вади):
[Global]
PluginName=FooWidgets
DefaultGroup=Display
[Foo]
ToolTip=Displays bears
WhatsThis=An image widget that displays dancing bears
[Bar]
ToolTip=Bar editor
WhatsThis=An editor interface for bars for bears
Group=Editing
Якщо у вашій програмі використовуються окремі простори назв для різних класів або додаткові параметри,
які слід передавати конструкторам, доведеться створити складніший файл. Приклад:
[Global]
PluginName=FooWidgets
DefaultGroup=Foo
[Foo::Bar]
ToolTip=Displays bars
WhatsThis=A widget that displays bars in a particular way
IncludeFile=foo/bar.h
IconName=:/previews/bar.png
[Foo::Baz]
IncludeFile=foo/baz.h
ConstructorArgs=(Foo::Baz::SomeOption, parent)
Group=Foo (Special)
IsContainer=true
IconName=:/previews/baz.png
Іноді, у дуже складних віджетах потрібна особлива реалізація «класу попереднього перегляду» для
використання у Qt(TM) Designer; це може бути підклас справжнього віджета, лише з деякими додатковими
налаштуваннями, або зовсім відмінна від нього реалізація.
[Global]
Includes=foopreviews.h
[FancyWidget]
ImplClass=FancyWidgetPreview
ПРОЧИТАЙТЕ ТАКОЖ
https://doc.qt.io/qt-5/designer-creating-custom-widgets.html
Документація з Qt(TM) Designer щодо створення додатків для нетипових віджетів.
ВАДИ
Для повідомлення про вади, будь ласка, скористайтеся системою стеження за вадами KDE[1], не надсилайте
електронних листів безпосередньо авторам.
АВТОРИ
Richard Johnson <rjohnson@kde.org>
Авторство початкової версії документації.
Alex Merry <alexmerry@kde.org>
Оновлена документація для KDE Frameworks 5.
ПРИМІТКИ
1. системою стеження за вадами KDE
https://bugs.kde.org
KDE Frameworks Frameworks 5.0 28 травня 2014 року kgendesignerplugi(1)