KGENDESIGNERPLUGI(1)

NAME
kgendesignerplugin - Genereert widget-plug-ins voor Qt(TM) Designer.

SAMENVATTING

kgendesignerplugin [OPTIES...] bestand

BESCHRIJVING

De aangepaste widget-plug-ins voor Qt(TM) Designer volgen gewoonlijk een standaard patroon en de door de plug-in geleverde klassen beiden meestal statische informatie, samen met de functie om een exemplaar te maken die normaal gewoon een eenvoudige aanroep van een constructor is. kgendesignerplugin stelt ontwikkelaars van bibliotheken die nieuwe widgets leveren om zo'n plug-in te maken zonder alle geassocieerde boilerplate-code te maken, door een eenvoudige ini-stijl beschrijvingsbestand te leveren.

kgendesignerplugin kiest zinvolle standaarden voor de meeste instellingen, dus is een minimale configuratie gewoonlijk nodig.

OPTIES

-o bestand
    De naam voor het gegenereerde C++ bestand. Indien niet gegeven zal stdout worden gebruikt.

-n plug-in-naam
    Geboden voor compatibiliteit. De standaard waarde voor de PluginName-optie is in het invoerbestand.

-g groep
    Geboden voor compatibiliteit. De standaard waarde voor de DefaultGroup-optie in het invoerbestand.

--author
    Auteurinformatie tonen.

--license
    Licentie-informatie tonen.

-h, --help
    Een korte helptekst tonen.

-v , --version
    Versie-informatie tonen

BESTANDSFORMAAT

Het invoerbestand is een configuratiebestand in ini-stijl (meer specifiek is het in het formaat ondersteund door het framework van KConfig) dat een set widgets beschrijft. Het bevat een sectie [Global], die algemene informatie over de plug-in levert en een sectie voor elk widget dat ingevoegd zou moeten worden in de plug-in.

De sectie [Global] kan de volgende items bevatten:

DefaultGroup
    De standaard waarde voor het item Group in de secties klasse is standaard: "Custom", tenzij de optie -g is gegeven.

Includes
    Een (kommagescheiden) lijst van vereiste includes (standaard: leeg). Merk op dat de header-bestanden voor de widgets later gespecificeerd in het bestand hier niet in de lijst moet staan; in plaats daarvan is dit voor speciale headers voor eigen gebruik van de plug-in, zoals die voor klassen die previews leveren.

PluginName
    De naam van de hoofd C++ klasse in de plug-in (standaard: "WidgetsPlugin", tenzij de optie -n is gegeven).

Elk klasse moet zijn eigen sectie [ClassName] hebben, die de volgende items ingevoegd kan hebben:

CodeTemplate
    De waarde teruggegeven door de functie codeTemplate() van de plug-in, die gemarkeerd is voor "toekomstig gebruik" door Qt(TM) Designer (standaard: leeg).

ConstructorArgs
    De argumenten om door te geven aan de constructor van de klasse gegeven door ImplClass; deze moeten omgeven worden door ronde haakjes (standaard: "(parent)"). De enige gegarandeerde variabele die beschikbaar is is parent, wat de ouder is van QWidget doorgegeven door Qt(TM) Designer.

    Dit item wordt genegeerd als CreateWidget is ingesteld.

CreateWidget
    De code nodig om een exemplaar van het widget te maken (standaard: gebruikt new om een exemplaar van de klasse gegeven door het item ImplClass te maken, waarbij de argumenten gespecificeerd door ConstructorArgs) worden doorgegeven. Zie de notities voor ImplClass en ConstructorArgs.

DomXML
    Een XML UI beschrijving van het widget (standaard: de standaard geleverd door de plug-in-headers van Qt(TM) Designer).

Group
    De groep waaronder het widget wordt getoond in Qt(TM) Designer (standaard: de waarde van het item DefaultGroup in de sectie [Global]).

Pictogramnaam
    De naam van het afbeeldingsbestand of standaard pictogramnaam voor gebruik als het pictogram voor dit widget in de lijst met Qt(TM) Designer widgets (standaard: een PNG-bestandsnaam met de sectienaam, met elke dubbele dubbelpunt verwijdert, in de map "pics" van een bij compileren ingesloten broncodebestand; bijvoorbeeld, :/pics/Foo.png in de sectie [Foo] of :/pics/FooBar.png in de sectie [Foo::Bar]).

ImplClass
    De klasse die gebruikt zou moeten worden om een exemplaar van het widget te maken voor gebruik van Qt(TM) Designer (standaard: de sectienaam). Merk op dat dit niet echt de klasse hoeft te zijn die zou worden genaakt voor een eindtoepassing: die bepaald wordt door de DomXML.

    Dit item wordt genegeerd als CreateWidget is ingesteld.

IncludeFile
    De header die ingesloten moet worden om dit widget te gebruiken (standaard: de versie in kleine letters van de sectienaam, met elke dubbelpunt verwijdert en ".h" achtergevoegt; bijvoorbeeld, foo.h in de sectie [Foo] of foobar.h in de sectie [Foo::Bar]).

IsContainer
    Of dit widget andere widgets kan bevatten (standaard: false).

Tekstballon
    De te tonen tekstballon bij zweven boven het widget in de lijst met widgets van Qt(TM) Designer (standaard: de sectienaam, met " Widget" achtergevoegd; bijvoorbeeld, Foo Widget in de sectie [Foo]).

WatisDit
    De WatisDit-tekst verbonden aan het widget in Qt(TM) Designer (standaard: de sectienaam, met " Widget" achtergevoegd; bijvoorbeeld, Foo Widget in de sectie [Foo]).

VOORBEELDEN

Het eenvoudigste beschrijvingsbestand kan er zo uit zien:

    [Foo]
    ToolTip=Toont foo's
    [Bar]
    ToolTip=Balk-editor

Merk op dat elke klasse minstens één set toetsen moet hebben (ToolTip is in dit voorbeeld gebruikt), anders zal het worden genegeerd.

Gewoonlijk zult u de voor de gebruiker zichtbare tekst willen wijzigen, dus de items ToolTip, WhatsThis en Group. Bovendien kan het instellen van de naam van de plug-in een goed idee zijn om mogelijke botsingen tussen symbolen te voorkomen en debuggers niet te verwarren (zowel de toepassing voor debuggen als de persoon die de debugging uitvoert):

    [Global]
    PluginName=FooWidgets
    DefaultGroup=Display

    [Foo]
    ToolTip=Displays bears
    WhatsThis=Een afbeeldingswidget dat dansende beren toont

    [Bar]
    ToolTip=Bar editor
    WhatsThis=Een editor-interface voor balken voor beren
    Group=Editing

Meer complexe bestanden kunnen noodzakelijk zijn als u klassen met naamruimten hebt of extra opties die het leveren van constructors nodig hebben, bijvoorbeeld:

    [Global]
    PluginName=FooWidgets
    DefaultGroup=Foo

    [Foo::Bar]
    ToolTip=Toon balken
    WhatsThis=Een widget die balken toont op een speciale manier
    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

Soms is, speciaal bij complexe widgets, een speciale "preview class" implementatie nodig bij gebruik in Qt(TM) Designer; dit kan een subklasse zijn van de echte widget die gewoon enige extra instellingen doet of het kan een compleet andere implementatie zijn.

    [Global]
    Includes=foopreviews.h

    [FancyWidget]
    ImplClass=FancyWidgetPreview

ZIE OOK

https://doc.qt.io/doc/qt-5/designer-creating-custom-widgets.html
    De documentatie van Qt(TM) Designer over het maken van plug-ins voor eigen widgets.

FOUTEN/BUGS

Gaarne bugvolger van KDE[1] gebruiken om bugrapporten in te dienen, stuur geen e-mail direct naar de auteurs.

AUTEURS

Richard Johnson <rjohnson@kde.org>
    Schreef de originele documentatie.

Alex Merry <alexmerry@kde.org>
    De documentatie voor KDE-frameworks; 5 is bijgewerkt.

OPMERKINGEN

1.  bugvolger van KDE
    http://bugs.kde.org