亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mwobjects.h

?? ecos下的gui開發源代碼
?? H
字號:
/*  Copyright (C) Chris Johns (ccj@acm.org)  MicroWindows C++ Wrappers. */#if !defined (_MWOBJECTS_H_)#define _MWOBJECTS_H_extern "C" {  #include "windows.h"#include "wintern.h"#include "graph3d.h"};#include <set>#include <iostream>namespace MicroWindowsObjects{  class FileDescriptor;  //  // Manage Window Classes. Notice you do not need to specify  // a Window Procedure function pointer. This is handled for   // you.  //  class WindowClass  {  public:        WindowClass ();    WindowClass (LPCSTR    lpszClassName,                 UINT      style = CS_DBLCLKS | CS_VREDRAW | CS_HREDRAW,                 int       cbClsExtra = 0,                 int       cbWndExtra = 0,                 HINSTANCE hInstance = 0,                 HICON     hIcon = 0,                 HCURSOR   hCursor = 0,                 HBRUSH    hbrBackground = 0,                 LPCSTR    lpszMenuName = 0);        void set_style (UINT style)      { wclass.style = style; }    void set_class_extra (int cbClsExtra)      { wclass.cbClsExtra = cbClsExtra; }    void set_window_extra (int cbWndExtra)      { wclass.cbWndExtra = cbWndExtra; }    void set_instance (HINSTANCE hInstance)      { wclass.hInstance = hInstance; }    void set_icon (HICON hIcon)      { wclass.hIcon = hIcon; }    void set_cursor (HCURSOR hCursor)      { wclass.hCursor = hCursor; }    void set_background (HBRUSH hbrBackground)      { wclass.hbrBackground = hbrBackground; }    void set_menu_name (LPCSTR lpszMenuName)      { wclass.lpszMenuName = lpszMenuName; }        ATOM register_class ();      private:    //    // This variable is a local copy which is     // registered. After that is class does little.    //    WNDCLASS wclass;  };    class Window  {    friend WindowClass;      public:    Window ();    Window (DWORD     dwExStyle,            LPCSTR    lpClassName,            LPCSTR    lpWindowName,            DWORD     dwStyle,            int       x,             int       y,            int       nWidth,            int       nHeight,            HWND      hwndParent,            HMENU     hMenu,            HINSTANCE hInstance,            LPVOID    lpParam);    virtual ~Window ();        HWND create (DWORD     dwExStyle,                 LPCSTR    lpClassName,                 LPCSTR    lpWindowName,                 DWORD     dwStyle,                 int       x,                  int       y,                 int       nWidth,                 int       nHeight,                 HWND      hwndParent,                 HMENU     hMenu,                 HINSTANCE hInstance,                 LPVOID    lpParam);    BOOL destory ();    HWND get_handle () const      { return hwnd; }    operator HWND () const      { return get_handle (); }            BOOL is_visible ()      { return IsWindowVisible (hwnd); }    BOOL show (int nCmdShow)      { return ::ShowWindow (hwnd, nCmdShow); }    BOOL update ()      { return ::UpdateWindow (hwnd); }    BOOL invalidate_rect (CONST RECT *lpRect, BOOL bErase)      { return ::InvalidateRect (hwnd, lpRect, bErase); }    HWND get_focus ()      { return ::GetFocus (); }    HWND set_focus ()      { return ::SetFocus (hwnd); }    BOOL move (int x, int y, int nWidth, int nHeight, BOOL bRepaint)      { return MoveWindow (hwnd, x, y, nWidth, nHeight, bRepaint); }    // FIXME: Should these be here ?    BOOL client_to_screen (LPPOINT lpPoint)      { return ::ClientToScreen (hwnd, lpPoint); }    BOOL screen_to_client (LPPOINT lpPoint)      { return ::ClientToScreen (hwnd, lpPoint); }    LONG get_long (int nIndex)      { return ::GetWindowLong (hwnd, nIndex); }    LONG set_long (int nIndex, LONG wNewLong)      { return ::SetWindowWord (hwnd, nIndex, wNewLong); }    WORD get_word (int nIndex)      { return ::GetWindowWord (hwnd, nIndex); }    WORD set_word (int nIndex, WORD wNewWord)      { return ::SetWindowWord (hwnd, nIndex, wNewWord); }    DWORD get_class_long (int nIndex)      { return ::GetClassLong (hwnd, nIndex); }    int get_text (LPSTR lpString, int nMaxCount)      { return GetWindowText (hwnd, lpString, nMaxCount); }    BOOL set_text (LPCSTR lpString)      { return SetWindowText (hwnd, lpString); }    //    // File Descriptor handlers.    //    virtual bool attach (const int fd, FileDescriptor& file_descriptor);    virtual bool detach (FileDescriptor& file_descriptor);  protected:    //    // The message handler. Insure you call this class's default    // handler for default message handling so any special    // filtering can occur.    //    virtual LRESULT message_handler (UINT   msg,                                     WPARAM wParam,                                     LPARAM lParam);  private:    //    // We only need one WndProc.    //    static LRESULT CALLBACK WndProc (HWND hwnd, UINT msg, WPARAM wp, LPARAM lp);    HWND   hwnd;    LPVOID lpCreateParams;        //    // Set of FileDescriptor objects    //    struct ltint     {      bool operator() (const FileDescriptor* f1, const FileDescriptor* f2) const;    };    set<FileDescriptor*, ltint> file_descriptors;      };    class Rect  {  public:    Rect ()       { empty (); }    Rect (int xLeft, int yTop, int xRight, int yBottom)       { set (xLeft, yTop, xRight, yBottom); }    Rect (HWND hwnd)      { get_window (hwnd); }            BOOL get_window (HWND hwnd)       { return GetWindowRect (hwnd, &rect); }    BOOL get_client (HWND hwnd)       { return GetClientRect (hwnd, &rect); }    BOOL set (int xLeft, int yTop, int xRight, int yBottom)      { return ::SetRect (&rect, xLeft, yTop, xRight, yBottom); }    BOOL empty ()       { return ::SetRectEmpty (&rect); }    Rect& operator= (const Rect& other)      { CopyRect (&rect, &other.rect); return *this; }    operator bool () const      { return ::IsRectEmpty (&rect); }    operator RECT* ()      { return &rect; }            BOOL copy (LPRECT lpRectDst)      { return ::CopyRect (lpRectDst, &rect); }    BOOL inflate (int dx, int dy)       { return ::InflateRect (&rect, dx, dy); }    BOOL offset (int dx, int dy)      { return ::OffsetRect (&rect, dx, dy); }    BOOL point_inside (POINT Point)      { return PtInRect (&rect, Point); }    MWCOORD left () const      { return rect.left; }    MWCOORD top () const      { return rect.top; }    MWCOORD right () const      { return rect.right; }    MWCOORD bottom () const      { return rect.bottom; }          private:    RECT rect;  };  inline ostream& operator<< (ostream& s, const Rect& r) {    s << "rect"      << "(l=" << r.left ()  << ",t=" << r.top ()      << ",r=" << r.right () << ",b=" << r.bottom ()      << ")";    return s;  }  //  // Generic Paint class. Try to help the paint message.  //  class Paint  {  public:    enum { TEXT_BUF_SIZE = 512 };        Paint (HWND hwnd);    Paint (HWND hwnd, LPARAM lpParam);    virtual ~Paint ();        //    // These begin and end a paint session.    //    void begin (bool init_3d = false, bool draw_3d_in_memory = false);    void end ();        //    // Aspects of the client paint area under our control.    //    operator HWND ()       { return hwnd; }    operator RECT* ()      { return r; }    operator HDC ()       { return hdc; }    operator PAINTSTRUCT* ()       { return &ps; }    operator POINT* ()       { return &pt; }    GDICOORD get_point_x () const      { return pt.x; }    GDICOORD get_point_y () const      { return pt.y; }        MWCOORD left () const      { return r.left (); }    MWCOORD top () const      { return r.top (); }    MWCOORD right () const      { return r.right (); }    MWCOORD bottom () const      { return r.bottom (); }        //    // Colour Control.    //    DWORD get_system_colour (int nIndex)      { return ::GetSysColor (nIndex); }        //    // Pixel, line and rectange draw support.    //    COLORREF set_pixel (int x, int y, COLORREF crColour)      { return ::SetPixel (hdc, x, y, crColour); }    BOOL move_to (int x, int y)      { return ::MoveToEx (hdc, x, y, 0); }    BOOL line_to (int x, int y)      { return ::LineTo (hdc, x, y); }    BOOL line_to (int x1, int y1, int x2, int y2)      { if (!move_to (x1, y1)) return FALSE;        return line_to (x2, y2); }    BOOL rectangle (int x1, int y1, int x2, int y2)      { return ::Rectangle (hdc, x1, y1, x2, y2); }    BOOL fill_rectangle (int x1, int y1, int x2, int y2, HBRUSH hbr)      { Rect r (x1, y1, x2, y2);        return ::FillRect (hdc, r, hbr); }        //    // Paint any 3d objects.    //    void initialise_3d (bool draw_3d_in_mem)       { if (!draw_3d) {         draw_3d = true; ::init3 (hdc, draw_3d_in_mem ? hwnd : 0); } }    void paint_3d ()      { if (draw_3d) { ::paint3 (hdc); draw_3d = false; } }            //    // Text Output.    //    void set_text_fromat (UINT uFormat)        { text_format = uFormat; }         int text_out (int x, int y, const char *format, ...);  private:    HWND        hwnd;    bool        draw_3d;    bool        drawing;    Rect        r;    HDC         hdc;    PAINTSTRUCT ps;    POINT       pt;    UINT        text_format;        char        format_buf[TEXT_BUF_SIZE];      };  //  // FileDescriptor handles fd event from the  User Registered File   // Descriptor support.  //  class FileDescriptor  {    friend class Window;      public:    FileDescriptor ();    virtual ~FileDescriptor ();    //    // Enable/disable controls.    //    bool enable_read ();    bool disable_read ();    bool read_enabled () const      { return read_is_enabled; }        bool enable_write ();    bool disable_write ();    bool write_enabled () const      { return write_is_enabled; }        bool enable_except ();    bool disable_except ();    bool except_enabled () const      { return except_is_enabled; }        int fd () const      { return file_desc; }        operator int () const      { return fd (); }        const Window *get_window () const      { return window; }      protected:    //    // These are called in responce to user fd messages to the window.    //    virtual LRESULT read ();    virtual LRESULT write ();    virtual LRESULT except ();      private:    int    file_desc;    bool   read_is_enabled;    bool   write_is_enabled;    bool   except_is_enabled;    Window *window;      };    class Application  {  public:      Application ();    Application (MWIMAGEHDR& background);    virtual ~Application ();        HINSTANCE instance () const      { return app_instance; }        HINSTANCE prev_instance () const      { return app_prev_instance; }    LPSTR cmd_line () const      { return app_cmd_line; }    int show_cmd ()      { return app_show_cmd; }            //    // This is called the public C linkage WinMain. Do not call.    //    static int WINAPI WinMain (HINSTANCE hInstance,                                HINSTANCE hPrevInstance,                                LPSTR     lpCmdLine,                               int       nShowCmd);  protected:        virtual int initialise ();    virtual int shutdown ();  private:        MWIMAGEHDR  *background;    HINSTANCE app_instance;    HINSTANCE app_prev_instance;    LPSTR     app_cmd_line;    int       app_show_cmd;  };}#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
a在线播放不卡| 欧美日韩高清影院| 丝袜美腿一区二区三区| 国产午夜一区二区三区| 欧美乱妇23p| 不卡的av电影在线观看| 奇米一区二区三区av| 亚洲品质自拍视频| 中日韩av电影| 久久一日本道色综合| 亚洲精品成人精品456| 精品对白一区国产伦| 51久久夜色精品国产麻豆| 色香蕉成人二区免费| 成人一级片在线观看| 激情另类小说区图片区视频区| 亚洲自拍偷拍综合| 亚洲欧美偷拍卡通变态| 国产亚洲成av人在线观看导航| 欧美一卡在线观看| 欧美视频第二页| 在线观看日韩电影| 色婷婷亚洲一区二区三区| 粗大黑人巨茎大战欧美成人| 国产在线播放一区三区四| 日本美女一区二区三区视频| 亚洲第一狼人社区| 亚洲一区二区三区国产| 亚洲激情在线激情| 亚洲黄色av一区| 亚洲另类春色国产| 亚洲天堂2014| 亚洲青青青在线视频| 亚洲视频 欧洲视频| 亚洲视频免费观看| 一区二区视频免费在线观看| 亚洲欧洲另类国产综合| 国产精品久久久久久户外露出| 国产欧美日韩三区| 中文字幕制服丝袜成人av| 国产精品色在线观看| 中文一区二区完整视频在线观看| 国产视频亚洲色图| 中文字幕一区免费在线观看| 国产精品久久久久影院| 亚洲色图第一区| 亚洲一区在线播放| 视频在线观看91| 精品一区二区影视| 国产成人啪免费观看软件| 成人精品在线视频观看| 91亚洲精品久久久蜜桃| 欧洲中文字幕精品| 91精品国产入口| 日韩免费一区二区| 国产欧美日本一区视频| 国产精品一区三区| 大白屁股一区二区视频| 91尤物视频在线观看| 欧美色欧美亚洲另类二区| 欧美日韩国产天堂| 欧美精品一区二区三区蜜桃| 国产亚洲污的网站| 亚洲精品日韩综合观看成人91| 亚洲国产成人av好男人在线观看| 蜜桃91丨九色丨蝌蚪91桃色| 丰满少妇在线播放bd日韩电影| 99国产精品久| 777奇米成人网| 中文字幕精品一区二区精品绿巨人 | 欧美日韩综合不卡| 欧美va亚洲va香蕉在线| 国产精品不卡在线| 青青草一区二区三区| 国产传媒久久文化传媒| 欧美在线观看你懂的| 久久嫩草精品久久久精品一| 亚洲欧美日韩国产综合在线| 毛片基地黄久久久久久天堂| av在线一区二区| 日韩午夜精品视频| 中文字幕佐山爱一区二区免费| 日韩精品色哟哟| 成人一区二区三区中文字幕| 欧美色欧美亚洲另类二区| 国产亚洲一区二区三区在线观看| 亚洲小少妇裸体bbw| 国产激情91久久精品导航| 欧美日韩中文国产| 欧美激情在线一区二区三区| 日韩制服丝袜av| a在线播放不卡| 亚洲精品一线二线三线无人区| 亚洲激情校园春色| 国产成人精品免费在线| 欧美一区二区观看视频| 亚洲欧美一区二区不卡| 国产精品影视在线观看| 3d成人动漫网站| 一区二区三区免费在线观看| 国产成人丝袜美腿| 精品理论电影在线| 爽好多水快深点欧美视频| 91蝌蚪porny九色| 久久久久国产精品麻豆| 热久久国产精品| 色美美综合视频| 国产精品麻豆99久久久久久| 老司机一区二区| 欧美乱熟臀69xxxxxx| 一区二区三区小说| 99久久精品国产网站| 精品不卡在线视频| 日韩高清在线不卡| 欧美日韩精品一区二区三区四区 | 国产福利一区二区三区视频在线 | 日韩精品一区二区三区在线播放 | 日韩主播视频在线| 在线观看网站黄不卡| 亚洲欧美激情插| av电影天堂一区二区在线观看| 国产欧美一区二区三区鸳鸯浴| 狠狠狠色丁香婷婷综合久久五月| 日韩视频永久免费| 日本欧美一区二区| 欧美一级一区二区| 日韩电影在线观看电影| 欧美日韩国产一级二级| 性做久久久久久| 欧美另类一区二区三区| 日精品一区二区三区| 欧美精品一卡二卡| 男人操女人的视频在线观看欧美| 91精品国产一区二区三区蜜臀| 首页国产欧美日韩丝袜| 欧美一区二区视频网站| 美女视频网站黄色亚洲| 久久综合久久综合久久| 国产精品综合久久| 国产精品网友自拍| 99久久国产免费看| 一区二区三区四区亚洲| 欧美日精品一区视频| 日韩高清在线电影| 欧美电影免费观看高清完整版在线 | 在线观看区一区二| 亚洲大尺度视频在线观看| 91麻豆精品国产91久久久久久| 日韩av网站免费在线| 精品国产精品网麻豆系列| 国产精品888| 日韩理论片一区二区| 欧美亚洲图片小说| 免费观看在线色综合| 国产三级三级三级精品8ⅰ区| 国产午夜精品一区二区三区嫩草 | 美女尤物国产一区| 久久亚区不卡日本| 91在线小视频| 亚洲成人免费视| 欧美va亚洲va国产综合| 成人免费视频视频| 亚洲一级二级三级| 日韩一区二区在线看片| 国产精品一区2区| 亚洲日本va在线观看| 欧美日韩一区三区| 久久激情五月婷婷| 亚洲三级在线播放| 欧美一卡2卡3卡4卡| 懂色一区二区三区免费观看| 亚洲永久免费视频| 久久综合九色欧美综合狠狠| 91网站在线播放| 久久精品国产精品亚洲精品 | 日韩不卡在线观看日韩不卡视频| 精品电影一区二区| 在线看国产日韩| 国产一区二区精品久久| 一区二区三区免费| 精品剧情在线观看| 欧美图片一区二区三区| 国产高清精品久久久久| 午夜久久福利影院| 中文字幕日本乱码精品影院| 日韩一区二区三区视频在线观看| 波多野结衣精品在线| 久久国产成人午夜av影院| 亚洲视频在线观看三级| 精品剧情v国产在线观看在线| 色哟哟在线观看一区二区三区| 国产一区二区在线视频| 亚洲成人激情综合网| 亚洲国产成人午夜在线一区| 777亚洲妇女| 91豆麻精品91久久久久久| 国产成人精品亚洲777人妖| 秋霞av亚洲一区二区三| 亚洲黄网站在线观看| 中文字幕国产一区二区|