BuildSettings.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. // Copyright (c) 2014-2015, THUNDERBEAST GAMES LLC All rights reserved
  2. // Please see LICENSE.md in repository root for license information
  3. // https://github.com/AtomicGameEngine/AtomicGameEngine
  4. #pragma once
  5. #include <rapidjson/document.h>
  6. #include <rapidjson/filestream.h>
  7. #include <rapidjson/prettywriter.h>
  8. #include <Atomic/Container/Str.h>
  9. #include <Atomic/Core/Object.h>
  10. using namespace Atomic;
  11. namespace AtomicEditor
  12. {
  13. struct AndroidBuildSettings
  14. {
  15. String appName;
  16. String package;
  17. String targetSDKVersion;
  18. String minSDKVersion;
  19. String activityName;
  20. String companyName;
  21. String productName;
  22. };
  23. class BuildSettings : public Object
  24. {
  25. OBJECT(BuildSettings);
  26. public:
  27. /// Construct.
  28. BuildSettings(Context* context);
  29. /// Destruct.
  30. virtual ~BuildSettings();
  31. const AndroidBuildSettings& GetAndroidSettings() { return android_; }
  32. void SetAndroidSettings(const AndroidBuildSettings& settings) { android_ = settings; }
  33. void Load(rapidjson::Value::Member* jobject);
  34. void Save(rapidjson::PrettyWriter<rapidjson::FileStream>& writer);
  35. private:
  36. String GetStringMember(rapidjson::Value::Member* jobject, const String& name);
  37. AndroidBuildSettings android_;
  38. };
  39. }