logic: add name delimiter to NameHierarchy

* NameHierarchy now looks like this: <delimiter>\tm<all the rest>
* made new baseclasses for SettingsMigration and SettingsMigrator
* Use the migration system for SqliteBookmarkStorage as well
This commit is contained in:
malte_langkabel
2017-05-16 13:08:12 +02:00
parent 6d0f633d24
commit c551c9a1dd
71 changed files with 692 additions and 523 deletions
@@ -0,0 +1,19 @@
#ifndef SQLITE_STORAGE_MIGRATION_LAMBDA_H
#define SQLITE_STORAGE_MIGRATION_LAMBDA_H
#include <functional>
#include "data/SqliteStorageMigration.h"
class SqliteStorageMigrationLambda: public SqliteStorageMigration
{
public:
SqliteStorageMigrationLambda(std::function<void(const SqliteStorageMigration*, SqliteStorage*)> m_lambda);
virtual ~SqliteStorageMigrationLambda();
virtual void apply(SqliteStorage* migratable) const;
private:
std::function<void(const SqliteStorageMigration*, SqliteStorage*)> m_lambda;
};
#endif // SQLITE_STORAGE_MIGRATION_LAMBDA_H