https://bugs.kde.org/show_bug.cgi?id=426040

            Bug ID: 426040
           Summary: kconfig_compiler: Trouble with config notify signals,
                    are not inherited correctly to subclass .kcfg
                    skeletons.
           Product: frameworks-kconfig
           Version: unspecified
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: matt...@mjdsystems.ca
          Reporter: david.hu...@mailbox.org
                CC: kdelibs-b...@kde.org
  Target Milestone: ---

Created attachment 131329
  --> https://bugs.kde.org/attachment.cgi?id=131329&action=edit
Notify signals are not cleanly inherited

SUMMARY
When I define a config notify signal (using <signal name="mySignal"/>) in a
KConfig skeleton, and create a subclass that modifies mySignal revelant stuff,
I can not emit this signal.

STEPS TO REPRODUCE
1. Create a .kcfg file to define a KConfig skeleton, equip it with a <signal/>.
2. Create a second .kcfg file to define a subclass KConfig skeleton, make it
inherited by specifying Inherits in the .kcfgc file.
3. Equip the second .kcfg with a property that shall emit the signal from the
base skeleton.

OBSERVED RESULT
Option A: Compile error, the signal is defined only in the first skeleton, so
the second skeleton does not know the relevant enum values and so on.
Option B: Define the <signal/> in the subclass .kcfg too. No compile error, the
signal is just a different one. See screenshot.

EXPECTED RESULT
The subclass skeleton inherits the signal and knows about it.

SOFTWARE/OS VERSIONS
Qt 5.14.2
Frameworks 5.73
kconfig_compiler_kf5 5.73.0

ADDITIONAL INFORMATION
Workarround: Use multiple signals and listen to all of them.
Expected solution A: kconfig_compiler allows to inherit notify signals without
trouble.
Expected solution B:
https://api.kde.org/frameworks/kconfig/html/kconfig_compiler.html tells me how
to inherit signals. (I didn’t read all of them specifically for this issue, but
I expect it either in the “Inherits” table row, or where <signal/> is
described.)

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to