7 changed files with 259 additions and 232 deletions
@ -1,53 +0,0 @@ |
|||||
#include <QObject> |
|
||||
|
|
||||
//! A QML signelton to access the QtMvvm namespace methods for showing simple dialogs
|
|
||||
class Message : public QObject |
|
||||
{ |
|
||||
public: |
|
||||
//! @brief A QML version of the QtMvvm::information method
|
|
||||
//! @copydetails QtMvvm::information(const QString &, const QString &, const std::function<void()> &, const QString &)
|
|
||||
static void information(string title, string text, function onResult, string okText); |
|
||||
//! @brief A QML version of the QtMvvm::question method
|
|
||||
//! @copydoc QtMvvm::question(const QString &, const QString &, const std::function<void(bool)> &, const QString &, const QString &)
|
|
||||
static void question(string title, string text, function onResult, string yesText, string noText); |
|
||||
//! @brief A QML version of the QtMvvm::warning method
|
|
||||
//! @copydoc QtMvvm::warning(const QString &, const QString &, const std::function<void()> &, const QString &)
|
|
||||
static void warning(string title, string text, function onResult, string okText); |
|
||||
//! @brief A QML version of the QtMvvm::critical method
|
|
||||
//! @copydoc QtMvvm::critical(const QString &, const QString &, const std::function<void()> &, const QString &)
|
|
||||
static void critical(string title, string text, function onResult, string okText); |
|
||||
//! @brief A QML version of the QtMvvm::about method
|
|
||||
//! @copydoc QtMvvm::about
|
|
||||
static void about(string description, |
|
||||
url websiteUrl, |
|
||||
string licenseName, |
|
||||
url licenseUrl, |
|
||||
string companyName, |
|
||||
bool addQtVersion, |
|
||||
list extraTopInfos, |
|
||||
string extraBottomInfos); |
|
||||
|
|
||||
//! @brief A QML version of the QtMvvm::getInput method
|
|
||||
//! @copydoc QtMvvm::getInput(const QString &, const QString &, const char *, const std::function<void(QVariant)> &, const QVariant &, const QVariantMap &, const QString &, const QString &)
|
|
||||
static void getInput(string title, |
|
||||
string text, |
|
||||
string inputType, |
|
||||
function onResult, |
|
||||
var defaultValue, |
|
||||
object viewProperties, |
|
||||
string okText, |
|
||||
string cancelText); |
|
||||
|
|
||||
//! @brief A QML version of the QtMvvm::getExistingDirectory method
|
|
||||
//! @copydoc QtMvvm::getExistingDirectory(const std::function<void(QUrl)> &, const QString &, const QUrl &)
|
|
||||
static void getExistingDirectory(function onResult, string title, url dir); |
|
||||
//! @brief A QML version of the QtMvvm::getOpenFile method
|
|
||||
//! @copydoc QtMvvm::getOpenFile(const std::function<void(QUrl)> &, const QString &, const QStringList &, const QUrl &)
|
|
||||
static void getOpenFile(function onResult, string title, list supportedMimeTypes, url dir); |
|
||||
//! @brief A QML version of the QtMvvm::getOpenFiles method
|
|
||||
//! @copydoc QtMvvm::getOpenFiles(const std::function<void(QList<QUrl>)> &, const QString &, const QStringList &, const QUrl &)
|
|
||||
static void getOpenFiles(function onResult, string title, list supportedMimeTypes, url dir); |
|
||||
//! @brief A QML version of the QtMvvm::getSaveFile method
|
|
||||
//! @copydoc QtMvvm::getSaveFile(const std::function<void(QUrl)> &, const QString &, const QStringList &, const QUrl &)
|
|
||||
static void getSaveFile(function onResult, string title, list supportedMimeTypes, url dir); |
|
||||
} |
|
@ -1,119 +0,0 @@ |
|||||
#include <QObject> |
|
||||
|
|
||||
/*! @brief A QML class to create a local mvvm multiway binding
|
|
||||
* |
|
||||
* It is basically a wrapper around the QtMvvm::bind method. The parameters are set via the |
|
||||
* properties, and once the binding component is completed, it will create the binding. It is |
|
||||
* possible to modify the properties while running. This will recreate the binding, discarding |
|
||||
* the previous one |
|
||||
* |
|
||||
* @sa QtMvvm::bind |
|
||||
*/ |
|
||||
class MvvmBinding : public QObject |
|
||||
{ |
|
||||
/*! @brief The object in the role of a viewmodel
|
|
||||
* |
|
||||
* @default{`null`} |
|
||||
* @accessors{ |
|
||||
* @memberAc{viewModel} |
|
||||
* @notifyAc{viewModelChanged()} |
|
||||
* } |
|
||||
* @sa QtMvvm::bind |
|
||||
*/ |
|
||||
Q_PROPERTY(QObject* viewModel MEMBER viewModel NOTIFY viewModelChanged) |
|
||||
/*! @brief The property of the viewmodel to use in the binding
|
|
||||
* |
|
||||
* @default{<i>Empty</i>} |
|
||||
* @accessors{ |
|
||||
* @memberAc{viewModelProperty} |
|
||||
* @notifyAc{viewModelPropertyChanged()} |
|
||||
* } |
|
||||
* @sa QtMvvm::bind |
|
||||
*/ |
|
||||
Q_PROPERTY(QString viewModelProperty MEMBER viewModelProperty NOTIFY viewModelPropertyChanged) |
|
||||
/*! @brief The object in the role of a view
|
|
||||
* |
|
||||
* @default{`parent()`} |
|
||||
* @accessors{ |
|
||||
* @memberAc{view} |
|
||||
* @notifyAc{viewChanged()} |
|
||||
* } |
|
||||
* @sa QtMvvm::bind |
|
||||
*/ |
|
||||
Q_PROPERTY(QObject* view MEMBER view NOTIFY viewChanged) |
|
||||
/*! @brief The property of the view to use in the binding
|
|
||||
* |
|
||||
* @default{<i>Empty</i>} |
|
||||
* @accessors{ |
|
||||
* @memberAc{viewProperty} |
|
||||
* @notifyAc{viewPropertyChanged()} |
|
||||
* } |
|
||||
* @sa QtMvvm::bind |
|
||||
*/ |
|
||||
Q_PROPERTY(QString viewProperty MEMBER viewProperty NOTIFY viewPropertyChanged) |
|
||||
/*! @brief An alternative signal to be used instead of the viewModelProperty notify signal
|
|
||||
* to detect property changes |
|
||||
* |
|
||||
* @default{<i>Empty</i>} |
|
||||
* @accessors{ |
|
||||
* @memberAc{viewModelChangeSignal} |
|
||||
* @notifyAc{viewModelChangeSignalChanged()} |
|
||||
* } |
|
||||
* @sa QtMvvm::bind |
|
||||
*/ |
|
||||
Q_PROPERTY(QString viewModelChangeSignal MEMBER viewModelChangeSignal NOTIFY viewModelChangeSignalChanged) |
|
||||
/*! @brief An alternative signal to be used instead of the viewProperty notify signal to
|
|
||||
* detect property changes |
|
||||
* |
|
||||
* @default{<i>Empty</i>} |
|
||||
* @accessors{ |
|
||||
* @memberAc{viewChangeSignal} |
|
||||
* @notifyAc{viewChangeSignalChanged()} |
|
||||
* } |
|
||||
* @sa QtMvvm::bind |
|
||||
*/ |
|
||||
Q_PROPERTY(QString viewChangeSignal MEMBER viewChangeSignal NOTIFY viewChangeSignalChanged) |
|
||||
/*! @brief The type/direction of binding to create
|
|
||||
* |
|
||||
* @default{`MvvmBinding::TwoWay`} |
|
||||
* @accessors{ |
|
||||
* @readAc{type} |
|
||||
* @writeAc{setType()} |
|
||||
* @notifyAc{typeChanged()} |
|
||||
* } |
|
||||
* @sa QtMvvm::bind |
|
||||
*/ |
|
||||
Q_PROPERTY(BindingDirection type READ type WRITE setType NOTIFY typeChanged) |
|
||||
|
|
||||
public: |
|
||||
//! @copydoc QtMvvm::Binding::BindingDirectionFlag
|
|
||||
enum BindingDirection { |
|
||||
SingleInit = 1, //!< @copydoc QtMvvm::Binding::SingleInit
|
|
||||
OneWayToView = 3, //!< @copydoc QtMvvm::Binding::OneWayToView
|
|
||||
OneWayToViewModel = 4, //!< @copydoc QtMvvm::Binding::OneWayToViewModel
|
|
||||
TwoWay = 7 //!< @copydoc QtMvvm::Binding::TwoWay
|
|
||||
}; |
|
||||
|
|
||||
//! @copydoc QtMvvm::Binding::unbind
|
|
||||
void unbind(); |
|
||||
//! @copydoc QtMvvm::Binding::isValid
|
|
||||
bool isValid(); |
|
||||
//! @writeAcFn{MvvmBinding::type}
|
|
||||
void setType(BindingDirection type); |
|
||||
|
|
||||
signals: |
|
||||
//! @notifyAcFn{MvvmBinding::viewModel}
|
|
||||
void viewModelChanged(); |
|
||||
//! @notifyAcFn{MvvmBinding::viewModelProperty}
|
|
||||
void viewModelPropertyChanged(); |
|
||||
//! @notifyAcFn{MvvmBinding::view}
|
|
||||
void viewChanged(); |
|
||||
//! @notifyAcFn{MvvmBinding::viewProperty}
|
|
||||
void viewPropertyChanged(); |
|
||||
//! @notifyAcFn{MvvmBinding::viewModelChangeSignal}
|
|
||||
void viewModelChangeSignalChanged(); |
|
||||
//! @notifyAcFn{MvvmBinding::viewChangeSignal}
|
|
||||
void viewChangeSignalChanged(); |
|
||||
//! @notifyAcFn{MvvmBinding::type}
|
|
||||
void typeChanged(); |
|
||||
}; |
|
Loading…
Reference in new issue