UIWelcomeFrame.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  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 "AEWidget.h"
  6. using namespace Atomic;
  7. namespace tb
  8. {
  9. class TBLayout;
  10. }
  11. namespace AtomicEditor
  12. {
  13. class WelcomeFrame : public AEWidget
  14. {
  15. OBJECT(WelcomeFrame);
  16. public:
  17. /// Construct.
  18. WelcomeFrame(Context* context);
  19. /// Destruct.
  20. virtual ~WelcomeFrame();
  21. bool OnEvent(const TBWidgetEvent &ev);
  22. void UpdateRecentProjects();
  23. private:
  24. struct ExampleInfo
  25. {
  26. String name;
  27. String folder;
  28. String module;
  29. String screenshot;
  30. TBID id;
  31. };
  32. void AddExample(const String& name, const String& desc, const String& screenshot, const String &folder, const String &module);
  33. void FillExamples();
  34. bool HandleExampleCopy(const String& name, const String& exampleFolder, String &atomicProjectFile);
  35. String exampleInfoDir_;
  36. String exampleSourceDir_;
  37. List<ExampleInfo> exampleInfo_;
  38. tb::TBLayout* currentExampleLayout_;
  39. int exampleCount_;
  40. };
  41. }