[Development] Qt Platform Extras

Nurmi J-P jpnurmi at digia.com
Fri Aug 30 15:17:33 CEST 2013

Hi all,

While we still have a chance to tweak things before releasing 5.2, I'd like to re-open the discussion about platform extras naming.

Short version:

Could we rename the QtMacExtras & QtWinExtras namespaces to just QtMac & QtWin? (QtX11Extras namespace doesn't exist, at least yet)

Long version:

The current status:

- Classes: QPlatformFoo
  - QX11Info (*)
  - QMacNativeWidget, ...
  - QWinTaskbarButton, ...

(*) The only thing in QtX11Extras - already released in Qt 5.1.

- Stand-alone function namespaces: QtPlatformExtras::toType()
  - QtWinExtras::toHBITMAP(), ...
  - QtMacExtras::toCGImageRef(), ...

I'm not entirely happy with how the current stand-alone function namespaces look in application code. I would find it prettier if we dropped the "Extras" part from the namespace names. IMHO that would still remain distinctive enough, just making it look more professional and... convenient to type. :)

    if (QtWinExtras::isCompositionEnabled())
        // ...


    if (QtWin::isCompositionEnabled())
        // ...

Open questions:
- What about the headers?
  - Could #include <QtMacExtras/qmacfoo.h> also become <QtMac/qmacfoo.h>?
  - <QX11Extras/QX11Info> was already released - so it would have to remain as a compatibility header if we chose the latter

- What about the lib names? Should we keep them intact?
  - QtWinExtras.dll vs. QtWin.dll, or QtMacExtras.framework vs. QtMac.framework is not necessarily an improvement
  - The lib names are IMHO not that important, because users rarely have to care.

J-P Nurmi

More information about the Development mailing list