/* * Copyright 2017 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #ifndef Window_ios_DEFINED #define Window_ios_DEFINED #include "../Window.h" #include "SkChecksum.h" #include "SkTDynamicHash.h" #include "SDL.h" namespace sk_app { class Window_ios : public Window { public: Window_ios() : INHERITED() , fWindow(nullptr) , fWindowID(0) , fGLContext(nullptr) , fMSAASampleCount(1) {} ~Window_ios() override { this->closeWindow(); } bool initWindow(); void setTitle(const char*) override; void show() override; bool attach(BackendType) override; void onInval() override; static bool HandleWindowEvent(const SDL_Event& event); static const Uint32& GetKey(const Window_ios& w) { return w.fWindowID; } static uint32_t Hash(const Uint32& winID) { return winID; } private: bool handleEvent(const SDL_Event& event); void closeWindow(); static SkTDynamicHash gWindowMap; SDL_Window* fWindow; Uint32 fWindowID; SDL_GLContext fGLContext; int fMSAASampleCount; typedef Window INHERITED; }; } // namespace sk_app #endif