Warning, file /office/calligra/libs/widgets/KoFontComboBox.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002  * Copyright (c) 2014 Dmitry Kazakov <dimula73@gmail.com>
0003  *
0004  * This library is free software; you can redistribute it and/or
0005  * modify it under the terms of the GNU Library General Public
0006  * License as published by the Free Software Foundation; either
0007  * version 2 of the License, or (at your option) any later version.
0008  *
0009  * This library is distributed in the hope that it will be useful,
0010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
0011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0012  * Library General Public License for more details.
0013  *
0014  * You should have received a copy of the GNU Library General Public License
0015  * along with this library; see the file COPYING.LIB.  If not, write to
0016  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0017  * Boston, MA 02110-1301, USA.
0018  */
0019 #ifndef _KO_FONT_COMBO_BOX_H_
0020 #define _KO_FONT_COMBO_BOX_H_
0021 
0022 #include "kowidgets_export.h"
0023 #include <QFontComboBox>
0024 
0025 /**
0026  * This class is neccessary to work around a suspected bug in QFontComboBox.
0027  * 
0028  * When setCurrentFont() is called, QFontComboBox seems to regenerate
0029  * the list of fonts and resets its model in the process, while the reset signal is blocked.
0030  * Anyhow, the result is that the QAccessible framework tries to use
0031  * an invalid index (which it does not check for validity!),
0032  * and this leads to a crash.
0033  */
0034 class KOWIDGETS_EXPORT KoFontComboBox : public QFontComboBox
0035 {
0036     Q_OBJECT
0037 public:
0038     KoFontComboBox(QWidget *parent = nullptr);
0039 
0040 public Q_SLOTS:
0041     void setCurrentFont(const QFont &font);
0042 };
0043 
0044 #endif // _KO_FONT_COMBO_BOX_H_