ImagingTools Core SDK
CBackupSettingsComp.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4
5// ACF includes
6#include <icomp/CComponentBase.h>
7#include <ifile/IFileNameParam.h>
8
9// ImtCore includes
10#include <imtapp/CBackupSettings.h>
11
12
13namespace imtapp
14{
15
16
17class CBackupSettingsComp:
18 public icomp::CComponentBase,
19 virtual public CBackupSettings
20{
21public:
22 typedef icomp::CComponentBase BaseClass;
23 typedef CBackupSettings BaseClass2;
24
25 I_BEGIN_COMPONENT(CBackupSettingsComp);
26 I_REGISTER_INTERFACE(IBackupSettings);
27 I_REGISTER_INTERFACE(iser::IObject);
28 I_REGISTER_INTERFACE(iser::ISerializable);
29 I_REGISTER_INTERFACE(istd::IChangeable);
30 I_ASSIGN(m_backupPathCompPtr, "BackupFolderPath", "Backup folder path", true, "BackupFolderPath");
31 I_ASSIGN(m_startTimeAttrPtr, "StartTime", "The time at which backup will start", true, "dd-MM-yyyy HH:mm");
32 I_ASSIGN(m_backupIntervalAttrPtr, "BackupInterval", "Backup interval", true, 0);
33 I_END_COMPONENT;
34
35protected:
36 // reimplemented (icomp::CComponentBase)
37 virtual void OnComponentCreated() override;
38
39private:
40 I_REF(ifile::IFileNameParam, m_backupPathCompPtr);
41 I_ATTR(QString, m_startTimeAttrPtr);
42 I_ATTR(int, m_backupIntervalAttrPtr);
43};
44
45
46} // namespace imtapp
47
48
Desktop Application Framework Module.