mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-21 04:45:31 +08:00
refs #413 Breaking circular dependencies by moving mixin classes from valueobject.h to the files where they fit best:
* DBus mixins moved to dbus.h * Json mixins moved to json.h * Icon mixin moved to icon.h * Comparison mixins moved to compare.h * Hash and string mixins moved to blackmiscfreefunctions.h * Index mixin moved to propertyindexvariantmap.h * MetaType mixins moved to variant.h * registerMetaValueType moved to variant.h * valueobject_private.h renamed to variant_private.h
This commit is contained in:
@@ -9,13 +9,15 @@
|
||||
|
||||
//! \file
|
||||
|
||||
#include "valueobject.h" // outside include guard due to cyclic dependency hack (MS)
|
||||
|
||||
#ifndef BLACKMISC_PROPERTYINDEX_H
|
||||
#define BLACKMISC_PROPERTYINDEX_H
|
||||
|
||||
#include "blackmiscexport.h"
|
||||
#include "blackmiscfreefunctions.h"
|
||||
#include "variant.h"
|
||||
#include "dbus.h"
|
||||
#include "json.h"
|
||||
#include "compare.h"
|
||||
#include <initializer_list>
|
||||
|
||||
namespace BlackMisc
|
||||
@@ -25,7 +27,15 @@ namespace BlackMisc
|
||||
* Property index. The index can be nested, that's why it is a sequence
|
||||
* (e.g. PropertyIndexPilot, PropertyIndexRealname).
|
||||
*/
|
||||
class BLACKMISC_EXPORT CPropertyIndex : public CValueObject<CPropertyIndex>
|
||||
class BLACKMISC_EXPORT CPropertyIndex :
|
||||
public Mixin::MetaType<CPropertyIndex>,
|
||||
public Mixin::HashByTuple<CPropertyIndex>,
|
||||
public Mixin::DBusByTuple<CPropertyIndex>,
|
||||
public Mixin::JsonByTuple<CPropertyIndex>,
|
||||
public Mixin::EqualsByTuple<CPropertyIndex>,
|
||||
public Mixin::LessThanByTuple<CPropertyIndex>,
|
||||
public Mixin::CompareByTuple<CPropertyIndex>,
|
||||
public Mixin::String<CPropertyIndex>
|
||||
{
|
||||
// In the first trial I have used CSequence<int> as base class
|
||||
// This has created too much circular dependencies of the headers
|
||||
|
||||
Reference in New Issue
Block a user