Home | History | Annotate | Download | only in views
      1 
      2 /*
      3  * Copyright 2011 Google Inc.
      4  *
      5  * Use of this source code is governed by a BSD-style license that can be
      6  * found in the LICENSE file.
      7  */
      8 #ifndef SkOSWindow_iOS_DEFINED
      9 #define SkOSWindow_iOS_DEFINED
     10 
     11 #include "SkWindow.h"
     12 
     13 class SkOSWindow : public SkWindow {
     14 public:
     15     SkOSWindow(void* hwnd);
     16     ~SkOSWindow();
     17     void*   getHWND() const { return fHWND; }
     18 
     19     enum SkBackEndTypes {
     20         kNone_BackEndType,
     21         kNativeGL_BackEndType,
     22     };
     23 
     24     void    detach();
     25     bool    attach(SkBackEndTypes attachType, int msaaSampleCount, AttachmentInfo*);
     26     void    present();
     27 
     28 protected:
     29     // overrides from SkEventSink
     30     virtual bool onEvent(const SkEvent& evt);
     31     // overrides from SkWindow
     32     virtual void onHandleInval(const SkIRect&);
     33     // overrides from SkView
     34     virtual void onAddMenu(const SkOSMenu*);
     35     virtual void onUpdateMenu(SkOSMenu*);
     36     virtual void onSetTitle(const char[]);
     37 
     38 private:
     39     void*   fHWND;
     40     bool    fInvalEventIsPending;
     41     void*   fNotifier;
     42     typedef SkWindow INHERITED;
     43 };
     44 
     45 #endif
     46