Commit Graph

64 Commits

Author SHA1 Message Date
Klaus Basan
94c9886c35 Based on discussion around T107 and slack
* Use CJsonScope scope("MetaData") for stacktrace
* added Q_UNUSED(scope) to avoid QtC warnings
2017-09-24 19:50:37 +01:00
Klaus Basan
d864171358 refs #875, fix for containers being class members 2017-02-24 15:21:10 +00:00
Mathew Sutcliffe
4f6d3ed3a3 refs #815 Added convertFromJsonNoThrow methods which catch CJsonException and return CStatusMessage. 2017-01-10 23:46:34 +00:00
Mathew Sutcliffe
bbdbd26f82 refs #815 Throw CJsonException when required JSON objects are not found. 2017-01-10 23:46:33 +00:00
Mathew Sutcliffe
e20c8bbcbd Doxygen style. 2016-07-04 23:40:30 +01:00
Roland Winklmeier
3d7a39ed00 Fix BlackMisc header includes
* Include only what is used
* Use forward declaration when possible
* Sorted includes

refs #630
2016-05-13 17:05:49 +02:00
Mathew Sutcliffe
4bd4baa535 refs #628 Use the metaclass mixins in all value classes. 2016-04-03 18:17:43 +01:00
Klaus Basan
c3722f9198 refs #485, refs #584 removed include blackmiscfreefunctions.h 2016-03-18 01:07:49 +00:00
Mathew Sutcliffe
3bdcd7e386 refs #584 Moved hash related stuff to dictionary.h
This also means moving Mixin::Icon from CContainerBase one step down the inheritance hierarchy
to resolve what would otherwise have been a circular include dependency.
2016-02-08 17:26:45 +00:00
Roland Winklmeier
794bf0cd74 Fix doxygen copydoc documentation
The following issues were fixed
* Fixed wrong/missing namespaces
* Fixed obvious typos in documentation
* Documentation not in sync with source code

refs #544
2016-02-08 01:53:17 +01:00
Mathew Sutcliffe
6ddce24f0c Improved efficiency of CSequence::removeIf, but CCollection::removeIf must still use the old algorithm. 2016-01-27 23:37:41 +00:00
Mathew Sutcliffe
886f9937ce Fixed errors found while trying to compile with Clang on Windows. 2015-12-08 21:16:57 +00:00
Klaus Basan
348d4e2f60 refs #507, added utility function toStringList 2015-11-19 21:08:01 +00:00
Mathew Sutcliffe
eb11b69c6d refs #494 Value class CValueCachePacket is a packet of cache value changes with timestamps. 2015-11-19 21:05:35 +00:00
Klaus Basan
2d46a93676 refs #478, fixes for datacache and containerbase discussed with MS via slack 2015-11-19 21:03:34 +00:00
Klaus Basan
a725ce2181 refs #478 refs #488, utils / free functions
* seed for random numbers per thread
* added function to get all user metatypes as string
* added new read file function per path/name
* removed DBus operators for pixmap
* JSON operators for byte array
* util function for JSON string
2015-11-19 21:03:23 +00:00
Roland Winklmeier
5fbf8a227d Fixed friend compare() method in CContainerBase 2015-11-19 20:57:50 +00:00
Mathew Sutcliffe
5a91d761c2 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
2015-05-12 20:37:59 +01:00
Mathew Sutcliffe
36d116b4e9 refs #413 Removed one overload of CRange::findBy and one of CSequence::applyIf; they were never used and they caused a circular dependency.
Templatized another overload of applyIf to break a circular dependency.
2015-05-12 20:37:53 +01:00
Mathew Sutcliffe
36a2e1a2bb refs #413 All value classes which had custom policies shall inherit from mixins instead. 2015-05-12 20:37:50 +01:00
Mathew Sutcliffe
6b40cde862 refs #413 Make all value class methods non-virtual.
toCVariant() and convertFromCVariant() are now deprecated,
use CVariant::from() and CVariant::to() instead.
2015-05-12 20:37:47 +01:00
Mathew Sutcliffe
b64ae55a86 refs #413 Access control of convertToQString changed from protected to public. 2015-05-12 20:37:43 +01:00
Mathew Sutcliffe
64e21b0a46 refs #413 Decomposed json-related functions of CValueObject into Mixin::JsonByTuple. 2015-05-12 20:37:41 +01:00
Mathew Sutcliffe
30cc7048ac refs #413 Decomposed dbus-related functions of CValueObject into Mixin::DBusByTuple. 2015-05-12 20:37:31 +01:00
Mathew Sutcliffe
2f55caf7c6 refs #413 Decomposed hash-related functions of CValueObject into Mixin::HashByTuple. 2015-05-12 20:36:04 +01:00
Mathew Sutcliffe
d9faa031d2 refs #413 Decomposed metatype-related functions of CValueObject into a dedicated class Mixin::MetaType,
bypassing the old Policy::MetaType classes. The ultimate intention is to decompose all the aspects of
CValueObject into separate mixins in this manner, and have derived classes inherit from the mixins directly.
Splitting the responsibilities of CValueObject into separate classes will reduce the coupling between different
cross-cutting concerns and allow us to untangle the web of interdependencies and greatly simplify things.
2015-05-12 20:36:03 +01:00
Roland Winklmeier
38b00e06b3 refs #403 Add Policy::MetaType::None for base class templates 2015-05-05 21:34:14 +02:00
Roland Winklmeier
f71e0a89fb Make CContainerBase::compare public
This workarounds a cppcheck warning. The method was not unused,
but cppcheck was complaining.
2015-04-03 11:39:54 +02:00
Mathew Sutcliffe
9977d97a67 refs #356 Renamed CValueObjectStdTuple to CValueObject. 2015-03-27 23:03:25 +00:00
Mathew Sutcliffe
a5e6b31c0f refs #356 Update remaining CValueObject derived classes to use CValueObjectStdTuple instead. 2015-03-27 19:08:53 +00:00
Mathew Sutcliffe
31c33b4b8d refs #356 Removed CValueObject and expanded CValueObjectStdTuple to compensate.
* Involves rearranging some header includes to break cyclic include dependencies,
* Adding a new, simple base class CEmpty,
* Removing any remaining polymorphic uses of CValueObject with templates,
* Adding a new trait for use with enable_if to restrict templates to work only with value objects,
* Replacing the polymorphic/runtime multimethod-based compare functions with static/compile-time compare functions.
2015-03-27 19:08:51 +00:00
Mathew Sutcliffe
d8d361a317 refs #247 Improved CSequence comparison, and suppressed stupid warnings. 2014-12-13 01:38:49 +00:00
Mathew Sutcliffe
e3446d78d8 refs #336 Style and const-correctness. 2014-10-15 01:46:34 +01:00
Klaus Basan
31646b91f6 refs #330, relevant predicate-based container mutator methods now return the number of elements they modified. 2014-10-07 13:10:34 +02:00
Klaus Basan
4b50134d2a refs #325, refs #330 fixed apply method to return list of changed properties
* changed CValueObject apply
* created CIndexPropertyList
* renamed CIndexVariantMap to CPropertyIndexVariantMap
2014-10-07 13:10:33 +02:00
Klaus Basan
c1895c1ab2 refs #314, fixed missing virtual keyword and Doxygen comment 2014-08-25 13:10:13 +02:00
Klaus Basan
40b428a315 refs #314, renamed convertFromQVariant, convertFromJson
discussion: https://dev.vatsim-germany.org/issues/314#note-19
2014-08-24 02:47:16 +02:00
Klaus Basan
290abe3693 refs #314, fromQVariant / location of toQVariant
* renamed fromQVariant to convertFromQVariant, the "from" methods imply the object is changed (fromJson, fromString ..)
* implemented fromQVariant - changing the object by QVariant
* moved toQVariant into PQ template
* free function setFromQVariant
2014-08-24 02:47:05 +02:00
Klaus Basan
3fb5087ea8 Renaming, header, Doxygen, formatting (during refs #314) 2014-08-24 02:45:52 +02:00
Mathew Sutcliffe
101c5a4f98 refs #290 using a CRange of iterator adaptors to return from the primary predicate-based methods of CRangeBase without copying elements 2014-07-13 20:30:20 +01:00
Mathew Sutcliffe
32e3c0298c refs #290 Preparatory to adding CRange, refactored all const algorithm-based methods from CContainerBase into a common base class CRangeBase 2014-07-13 20:30:16 +01:00
Mathew Sutcliffe
e23e418797 incidental refactoring: simplify some predicates by templating their call operators 2014-07-13 00:45:22 +01:00
Mathew Sutcliffe
482ddf2081 fixes #285 removing fake variadics in predicate-based container methods 2014-07-04 11:41:44 +02:00
Roland Winklmeier
d46c5edb9f Generic CDictionary as associative container
refs #281
2014-07-04 11:41:44 +02:00
Klaus Basan
e474671ead refs #207, renamed CValueMap to CIndexVariantMap.
* The map will be used with CSimulaorInfo to transfer a variable number of setting information about the flight simulator. It is being used, because it is already DBus and tupel compliant. The new name better fits its purpose.
* Add == operator for CIndexVariantMap (ambiguity error with tupels)
2014-04-17 00:10:04 +02:00
Klaus Basan
87e4267872 Slightly improved version of compareImpl in containerbase.h 2014-03-26 20:18:49 +01:00
Klaus Basan
88fb9e8832 refs #192, enable value objects for JSON:
* from/toJson methods
* jsonMembers where applicable
2014-03-26 20:18:42 +01:00
Klaus Basan
8208e5858a refs #146 , using ", " in convertToQString -> better readability and word wrap 2014-02-26 03:44:33 +01:00
Mathew Sutcliffe
a5d8f6c8f0 refs #91 fixed \copydoc commands in Doxygen comments for CContainerBase 2014-02-08 15:01:59 +00:00
Klaus Basan
526cd916a8 refs #91 & #124 doxygen fixes, style/comment changes, typos, and override keywords 2014-02-06 03:22:42 +01:00