Krita Source Code Documentation
Loading...
Searching...
No Matches
KisWidgetConnectionUtils.cpp File Reference
#include "KisWidgetConnectionUtils.h"
#include <QMetaObject>
#include <QMetaProperty>
#include <QAbstractButton>
#include <QAction>
#include <QComboBox>
#include <QButtonGroup>
#include <QSpinBox>
#include <QDoubleSpinBox>
#include <QLineEdit>
#include <QSlider>
#include <QCheckBox>
#include "kis_debug.h"
#include "kis_spacing_selection_widget.h"
#include "kis_multipliers_double_slider_spinbox.h"
#include "KisAngleSelector.h"
#include "kis_color_button.h"
#include "kis_file_name_requester.h"
#include <KisWidgetConnectionUtils.moc>

Go to the source code of this file.

Classes

class  KisWidgetConnectionUtils::ConnectButtonGroupHelper
 
class  ConnectButtonStateHelper
 
class  ConnectComboBoxStateHelper
 
class  KisWidgetConnectionUtils::ConnectDoubleSpinBoxStateHelper
 
class  KisWidgetConnectionUtils::ConnectIntSpinBoxStateHelper
 
class  KisWidgetConnectionUtils::ConnectSpacingWidgetHelper
 

Namespaces

namespace  KisWidgetConnectionUtils
 

Macros

#define SANITY_CHECK_PROPERTY_EXISTS(prop)   Q_ASSERT(prop.isValid())
 
#define SANITY_CHECK_PROPERTY_EXISTS_AND_WRITABLE(prop)   do { Q_ASSERT(prop.isValid()); Q_ASSERT(prop.isWritable()); } while (0)
 
#define SANITY_CHECK_PROPERTY_METATYPE_REGISTERED(prop)
 

Functions

template<typename Button >
void KisWidgetConnectionUtils::connectButtonLikeControl (Button *button, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (KisAngleSelector *widget, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (KisColorButton *widget, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (KisFileNameRequester *widget, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (KisMultipliersDoubleSliderSpinBox *spinBox, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (KisSpacingSelectionWidget *widget, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (QAbstractButton *button, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (QAction *button, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (QButtonGroup *group, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (QCheckBox *button, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (QComboBox *button, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (QDoubleSpinBox *spinBox, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (QLineEdit *widget, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (QSlider *slider, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControl (QSpinBox *spinBox, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectControlState (QAbstractButton *button, QObject *source, const char *readStatePropertyName, const char *writePropertyName)
 
void KisWidgetConnectionUtils::connectControlState (QButtonGroup *group, QObject *source, const char *readStateProperty, const char *writeProperty)
 
void KisWidgetConnectionUtils::connectControlState (QComboBox *button, QObject *source, const char *readStatePropertyName, const char *writePropertyName)
 
void KisWidgetConnectionUtils::connectControlState (QDoubleSpinBox *spinBox, QObject *source, const char *readStateProperty, const char *writeProperty)
 
void KisWidgetConnectionUtils::connectControlState (QSpinBox *spinBox, QObject *source, const char *readStateProperty, const char *writeProperty)
 
void KisWidgetConnectionUtils::connectWidgetEnabledToProperty (QWidget *widget, QObject *source, const char *property)
 
void KisWidgetConnectionUtils::connectWidgetVisibleToProperty (QWidget *widget, QObject *source, const char *property)
 

Macro Definition Documentation

◆ SANITY_CHECK_PROPERTY_EXISTS

#define SANITY_CHECK_PROPERTY_EXISTS ( prop)    Q_ASSERT(prop.isValid())

Sanity check asserts that check the validity of the passed properties (as c-strings). Sanity check intentionally use Q_ASSERT to strip this code completely from the release builds.

Definition at line 32 of file KisWidgetConnectionUtils.cpp.

◆ SANITY_CHECK_PROPERTY_EXISTS_AND_WRITABLE

#define SANITY_CHECK_PROPERTY_EXISTS_AND_WRITABLE ( prop)    do { Q_ASSERT(prop.isValid()); Q_ASSERT(prop.isWritable()); } while (0)

Definition at line 33 of file KisWidgetConnectionUtils.cpp.

◆ SANITY_CHECK_PROPERTY_METATYPE_REGISTERED

#define SANITY_CHECK_PROPERTY_METATYPE_REGISTERED ( prop)
Value:
do { \
const int metaTypeId = QMetaType::type(prop.typeName()); \
if (metaTypeId <= 0) { \
qWarning().nospace() << "WARNING: metatype for property \"" << prop.name() << "\" is not register. Please register type \"" << prop.typeName() << "\""; \
} \
Q_ASSERT(metaTypeId > 0); \
Q_ASSERT(QMetaType::isRegistered(metaTypeId)); \
} while (0)

Definition at line 34 of file KisWidgetConnectionUtils.cpp.

34#define SANITY_CHECK_PROPERTY_METATYPE_REGISTERED(prop) do { \
35 const int metaTypeId = QMetaType::type(prop.typeName()); \
36 if (metaTypeId <= 0) { \
37 qWarning().nospace() << "WARNING: metatype for property \"" << prop.name() << "\" is not register. Please register type \"" << prop.typeName() << "\""; \
38 } \
39 Q_ASSERT(metaTypeId > 0); \
40 Q_ASSERT(QMetaType::isRegistered(metaTypeId)); \
41} while (0)