1 /* 2 * DQt - D bindings for the Qt Toolkit 3 * 4 * GNU Lesser General Public License Usage 5 * This file may be used under the terms of the GNU Lesser 6 * General Public License version 3 as published by the Free Software 7 * Foundation and appearing in the file LICENSE.LGPL3 included in the 8 * packaging of this file. Please review the following information to 9 * ensure the GNU Lesser General Public License version 3 requirements 10 * will be met: https://www.gnu.org/licenses/lgpl-3.0.html. 11 */ 12 module qt.widgets.radiobutton; 13 extern(C++): 14 15 import qt.config; 16 import qt.core.coreevent; 17 import qt.core.point; 18 import qt.core.size; 19 import qt.core.string; 20 import qt.gui.event; 21 import qt.helpers; 22 import qt.widgets.abstractbutton; 23 import qt.widgets.styleoption; 24 import qt.widgets.widget; 25 26 /+ QT_REQUIRE_CONFIG(radiobutton); +/ 27 28 29 30 extern(C++, class) struct QRadioButtonPrivate; 31 32 /// Binding for C++ class [QRadioButton](https://doc.qt.io/qt-6/qradiobutton.html). 33 class /+ Q_WIDGETS_EXPORT +/ QRadioButton : QAbstractButton 34 { 35 mixin(Q_OBJECT); 36 37 public: 38 /+ explicit +/this(QWidget parent = null); 39 /+ explicit +/this(ref const(QString) text, QWidget parent = null); 40 ~this(); 41 42 override QSize sizeHint() const; 43 override QSize minimumSizeHint() const; 44 45 protected: 46 override bool event(QEvent e); 47 override bool hitButton(ref const(QPoint) ) const; 48 override void paintEvent(QPaintEvent ); 49 override void mouseMoveEvent(QMouseEvent ); 50 /+ virtual +/ void initStyleOption(QStyleOptionButton* button) const; 51 52 53 private: 54 /+ Q_DECLARE_PRIVATE(QRadioButton) +/ 55 /+ Q_DISABLE_COPY(QRadioButton) +/ 56 /+ friend class QAccessibleButton; +/ 57 mixin(CREATE_CONVENIENCE_WRAPPERS); 58 } 59