Project

General

Profile

Actions

Support Request #11007

closed

No UI Widget when overriding Init of cQtUIFilter

Added by hidden about 4 years ago. Updated almost 4 years ago.

Status:
Closed
Priority:
Normal
Customer:
VW
Department:
EEIS
Requester's Priority:
Normal
Support Level:
2nd Level
Resolution:
Solved Issue
Product Issue Numbers:
Affected Products:
Platform:
Windows 10 64bit
Topic:
ADTF::UI
FAQ Links:

Description

Supportanfrage

ich bin auf ein Problem beim hinzufügen einer GUi für einen Filter gestoßen. Wenn ich die Funktion
"virtual tResult Init(tInitStage eStage) override;" in meinem Filter verwende, wird mir die GUI nicht
länger angezeigt. Muss ich evtl. die Funktion CreateView() manuell in der Init aufrufen, oder kann man
das nicht kombinieren?

Falls es nicht geht, gibt es eine andere Möglichkeit die Properties eines Filters über eine GUI zu verändern,
auch wenn die GUI in einem externen Filter ist?

Lösung

sieh dir mal unser Bsp. Demo Qt Video Display Filter, hier wird auch die ::Ini@t üebrschrieben.
Wichtig dabei:
Du musst zu Beginn deiner Funktion die
::Init@ der Basisklasse cQtUIFilter aufrufen, siehe Implementierung im example:

RETURN_IF_FAILED(cQtUIFilter::Init(eStage));

Ansonsten hängt sich das Window nicht ins XSystem, das übernimmt die Basisklasse für dich.


Den Basis ::Init call musst du ja bei einen normalen cFilter Ableitung auch machen.
Steht auch so in der Doku -> cFilterBase::Init

Noch ein Hinweis zu deinem Use Case:
Im ADTF 3 legst du Property Variablen an und registrierst diese.
d.h. die haben immer den aktuellen Wert aus der Laufzeit.
Mit der 3.7.0 wird es auch ein Callback dafür geben.

Actions

Also available in: Atom PDF