PolySDLCore.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #pragma once
  2. #include "PolyGlobals.h"
  3. #include "PolyCore.h"
  4. #include "PolyGLRenderer.h"
  5. #include "PolyRectangle.h"
  6. #include <vector>
  7. #include <SDL/SDL.h>
  8. #include <iostream>
  9. using std::vector;
  10. namespace Polycode {
  11. class _PolyExport SDLCoreMutex : public CoreMutex {
  12. public:
  13. SDL_mutex *pMutex;
  14. };
  15. class _PolyExport SDLCore : public Core {
  16. public:
  17. SDLCore(PolycodeViewBase *view, int xRes, int yRes, bool fullScreen, int aaLevel, int frameRate);
  18. ~SDLCore();
  19. void enableMouse(bool newval);
  20. unsigned int getTicks();
  21. bool Update();
  22. void setVideoMode(int xRes, int yRes, bool fullScreen, int aaLevel);
  23. void createThread(Threaded *target);
  24. vector<Rectangle> getVideoModes();
  25. void setCursor(int cursorType);
  26. void lockMutex(CoreMutex *mutex);
  27. void unlockMutex(CoreMutex *mutex);
  28. CoreMutex *createMutex();
  29. void copyStringToClipboard(String str);
  30. String getClipboardString();
  31. void createFolder(String folderPath);
  32. void copyDiskItem(String itemPath, String destItemPath);
  33. void moveDiskItem(String itemPath, String destItemPath);
  34. void removeDiskItem(String itemPath);
  35. String openFolderPicker();
  36. vector<string> openFilePicker(vector<CoreFileExtension> extensions, bool allowMultiple);
  37. void resizeTo(int xRes, int yRes);
  38. private:
  39. };
  40. }