Cocoa: Proper handling of mDelegate
mDelegate keeps the pointer to a QNSFontPanelDelegate, which reacts on the NSFontPanel used by this dialog helper. It has to be created before it can be used. On a read-only access, this has been fixed to return a default-constructed value (like QFont()). For writing access (like setting the font) the delegate was already created. The same applies to mDelegate to QNSColorPanelDelegate respective. Change-Id: I36b89c16d98db9275aa31d399fe094b1d56d800d Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>bb10
parent
3918386779
commit
5a2ef8ebdd
|
|
@ -395,6 +395,8 @@ void QCocoaColorDialogHelper::hide_sys()
|
|||
|
||||
QCocoaColorDialogHelper::DialogCode QCocoaColorDialogHelper::dialogResultCode_sys()
|
||||
{
|
||||
if (!mDelegate)
|
||||
return QPlatformDialogHelper::Rejected;
|
||||
QT_MANGLE_NAMESPACE(QNSColorPanelDelegate) *delegate = static_cast<QT_MANGLE_NAMESPACE(QNSColorPanelDelegate) *>(mDelegate);
|
||||
return [delegate dialogResultCode];
|
||||
}
|
||||
|
|
@ -429,6 +431,8 @@ void QCocoaColorDialogHelper::setCurrentColor_sys(const QColor &color)
|
|||
|
||||
QColor QCocoaColorDialogHelper::currentColor_sys() const
|
||||
{
|
||||
if (!mDelegate)
|
||||
return QColor();
|
||||
return reinterpret_cast<QT_MANGLE_NAMESPACE(QNSColorPanelDelegate) *>(mDelegate)->mQtColor;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -414,6 +414,8 @@ void QCocoaFontDialogHelper::hide_sys()
|
|||
|
||||
QCocoaFontDialogHelper::DialogCode QCocoaFontDialogHelper::dialogResultCode_sys()
|
||||
{
|
||||
if (!mDelegate)
|
||||
return QPlatformDialogHelper::Rejected;
|
||||
QT_MANGLE_NAMESPACE(QNSFontPanelDelegate) *delegate = static_cast<QT_MANGLE_NAMESPACE(QNSFontPanelDelegate) *>(mDelegate);
|
||||
return [delegate dialogResultCode];
|
||||
}
|
||||
|
|
@ -448,6 +450,8 @@ void QCocoaFontDialogHelper::setCurrentFont_sys(const QFont &font)
|
|||
|
||||
QFont QCocoaFontDialogHelper::currentFont_sys() const
|
||||
{
|
||||
if (!mDelegate)
|
||||
return QFont();
|
||||
return reinterpret_cast<QT_MANGLE_NAMESPACE(QNSFontPanelDelegate) *>(mDelegate)->mQtFont;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue