##// END OF EJS Templates
Updates IDataProvider::requestDataLoading() method's signature...
Updates IDataProvider::requestDataLoading() method's signature The parameters needed for data retrieval are passed to a DataProviderParameters object. For now, it concerns only the list of datetimes to process, but the object will be completed with extra data which may be necessary for certain providers

File last commit:

r135:7a9a79ed3b02
r375:49f712bf7e59
Show More
DataSourceItemAction.h
48 lines | 1.2 KiB | text/x-c | CLexer
#ifndef SCIQLOP_DATASOURCEITEMACTION_H
#define SCIQLOP_DATASOURCEITEMACTION_H
#include <Common/spimpl.h>
#include <QLoggingCategory>
#include <QObject>
Q_DECLARE_LOGGING_CATEGORY(LOG_DataSourceItemAction)
class DataSourceItem;
/**
* @brief The DataSourceItemAction class represents an action on a data source item.
*
* An action is a function that will be executed when the slot execute() is called.
*/
class DataSourceItemAction : public QObject {
Q_OBJECT
public:
/// Signature of the function associated to the action
using ExecuteFunction = std::function<void(DataSourceItem &dataSourceItem)>;
/**
* Ctor
* @param name the name of the action
* @param fun the function that will be called when the action is executed
* @sa execute()
*/
explicit DataSourceItemAction(const QString &name, ExecuteFunction fun);
QString name() const noexcept;
/// Sets the data source item concerned by the action
void setDataSourceItem(DataSourceItem *dataSourceItem) noexcept;
public slots:
/// Executes the action
void execute();
private:
class DataSourceItemActionPrivate;
spimpl::unique_impl_ptr<DataSourceItemActionPrivate> impl;
};
#endif // SCIQLOP_DATASOURCEITEMACTION_H