コード例 #1
0
ファイル: BaseConfigObject.cpp プロジェクト: 02JanDal/jd-util
BaseConfigObject::BaseConfigObject(const QString &filename)
	: m_filename(filename)
{
	m_saveTimer = new QTimer;
	m_saveTimer->setSingleShot(true);
	// cppcheck-suppress pureVirtualCall
	QObject::connect(m_saveTimer, &QTimer::timeout, [this]() { saveNow(); });
	setSaveTimeout(250);

	QTimer::singleShot(0, [this]() { loadNow(); });

	// cppcheck-suppress pureVirtualCall
	m_appQuitConnection = QObject::connect(qApp, &QCoreApplication::aboutToQuit, [this]() { saveNow(); });
}
コード例 #2
0
ファイル: BaseConfigObject.cpp プロジェクト: 02JanDal/jd-util
void BaseConfigObject::loadNow()
{
	if (m_saveTimer->isActive())
	{
		saveNow();
	}

	try
	{
		doLoad(FS::read(m_filename));
	}
	catch (Exception & e)
	{
		qWarning() << "Error loading" << m_filename << ":" << e.cause();
	}
}
コード例 #3
0
void BooksSaveTimer::onAboutToQuit()
{
    if (saveRequested()) {
        saveNow();
    }
}
コード例 #4
0
void BooksSaveTimer::onTimeout()
{
    saveNow();
}