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

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

?? graphicswindowx11

?? 最新osg包
??
字號:
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield  * * This library is open source and may be redistributed and/or modified under   * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or  * (at your option) any later version.  The full license is in LICENSE file * included with this distribution, and on the openscenegraph.org website. *  * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  * OpenSceneGraph Public License for more details.*//* Note, elements of GraphicsWindowX11 have used Prodcer/RenderSurface_X11.cpp as both * a guide to use of X11/GLX and copiying directly in the case of setBorder(). * These elements are license under OSGPL as above, with Copyright (C) 2001-2004  Don Burns. */#ifndef OSGVIEWER_GRAPHICSWINDOWX11#define OSGVIEWER_GRAPHICSWINDOWX11 1#include <osgViewer/GraphicsWindow>#define GLX_GLXEXT_PROTOTYPES  1#include <X11/X.h>#include <GL/glx.h>#include <string.h>namespace osgViewer{class OSGVIEWER_EXPORT GraphicsWindowX11 : public osgViewer::GraphicsWindow{    public:        GraphicsWindowX11(osg::GraphicsContext::Traits* traits):            _valid(false),            _display(0),            _eventDisplay(0),            _parent(0),            _window(0),            _visualInfo(0),            _glxContext(0),            _currentCursor(0),            _initialized(false),            _realized(false),            _timeOfLastCheckEvents(-1.0),            _lastEventType(0),            _modifierState(0),            _numLockMask(0)        {            _traits = traits;            memset(_keyMap, 0, 32);            init();                        if (valid())            {                setState( new osg::State );                getState()->setGraphicsContext(this);                if (_traits.valid() && _traits->sharedContext)                {                    getState()->setContextID( _traits->sharedContext->getState()->getContextID() );                    incrementContextIDUsageCount( getState()->getContextID() );                   }                else                {                    getState()->setContextID( osg::GraphicsContext::createNewContextID() );                }            }        }            virtual bool isSameKindAs(const Object* object) const { return dynamic_cast<const GraphicsWindowX11*>(object)!=0; }        virtual const char* libraryName() const { return "osgViewer"; }        virtual const char* className() const { return "GraphicsWindowX11"; }        virtual bool valid() const { return _valid; }        /** Realise the GraphicsContext.*/        virtual bool realizeImplementation();        /** Return true if the graphics context has been realised and is ready to use.*/        virtual bool isRealizedImplementation() const { return _realized; }        /** Close the graphics context.*/        virtual void closeImplementation();        /** Make this graphics context current.*/        virtual bool makeCurrentImplementation();        /** Release the graphics context.*/        virtual bool releaseContextImplementation();        /** Swap the front and back buffers.*/        virtual void swapBuffersImplementation();                /** Check to see if any events have been generated.*/        virtual void checkEvents();        /** Set Window decoration.*/        virtual bool setWindowDecorationImplementation(bool flag);        /** Get focus.*/        virtual void grabFocus();                /** Get focus on if the pointer is in this window.*/        virtual void grabFocusIfPointerInWindow();        /** Raise specified window */        virtual void raiseWindow();        // Override from GUIActionAdapter        virtual void requestWarpPointer(float x,float y);        /** Set the window's position and size.*/        virtual bool setWindowRectangleImplementation(int x, int y, int width, int height);        /** Set the name of the window */        virtual void setWindowName(const std::string& name);        /** Set mouse cursor to a specific shape.*/        virtual void setCursor(MouseCursor cursor);        /** WindowData is used to pass in the X11 window handle attached the GraphicsContext::Traits structure. */        struct WindowData : public osg::Referenced        {            WindowData(Window window):                _window(window) {}                            Window          _window;        };    public:            // X11 specific aces functions        Display* getDisplay() const { return _display; }        Display* getEventDisplay() const { return _eventDisplay; }        Display* getDisplayToUse() const ;                Window& getParent() { return _parent; }        Window& getWindow() { return _window; }        GLXContext& getGLXContext() { return _glxContext; }        Cursor getCurrentCursor() { return _currentCursor; }    protected:            ~GraphicsWindowX11();            Cursor getOrCreateCursor(MouseCursor mouseShape);                bool createVisualInfo();        bool createWindow();        bool setWindow(Window window);                void init();        bool checkAndSendEventFullScreenIfNeeded(Display* display, int x, int y, int width, int height, bool windowDecoration);        void transformMouseXY(float& x, float& y);        void adaptKey(XKeyEvent& keyevent, int& keySymbol);        void forceKey(int key, double time, bool state);        void rescanModifierMapping();        void getModifierMap(char* keymap) const;        int getModifierMask() const;        void syncLocks();        void flushKeyEvents();                bool            _valid;        Display*        _display;        Display*        _eventDisplay;        Window          _parent;        Window          _window;        XVisualInfo*    _visualInfo;        GLXContext      _glxContext;        Cursor          _currentCursor;        Atom            _deleteWindow;                bool            _initialized;        bool            _realized;        bool            _ownsWindow;        double          _timeOfLastCheckEvents;        int             _lastEventType;        int             _modifierState;        int             _numLockMask;        char            _keyMap[32];        std::map<MouseCursor,Cursor> _mouseCursorMap;};}#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区av电影| 日韩亚洲国产中文字幕欧美| 日本国产一区二区| 欧美精选在线播放| 久久久久亚洲综合| 亚洲乱码国产乱码精品精可以看| 亚洲va韩国va欧美va精品 | 91亚洲精品乱码久久久久久蜜桃| 日本精品免费观看高清观看| 欧美一级免费大片| 国产精品嫩草影院av蜜臀| 亚洲国产aⅴ天堂久久| 久久99热这里只有精品| 91丨porny丨首页| 日韩一区二区免费在线观看| 国产精品久久久久久久久快鸭| 亚洲va天堂va国产va久| 成人一区二区三区| 欧美日韩不卡一区| 中文字幕免费不卡| 日韩专区一卡二卡| 99国产精品视频免费观看| 日韩欧美在线影院| 亚洲男同性视频| 韩国三级中文字幕hd久久精品| 色香蕉成人二区免费| 精品久久久久久久人人人人传媒 | 在线观看91视频| 久久亚洲精华国产精华液| 亚洲毛片av在线| 国产综合色产在线精品| 欧美日韩国产一级片| 国产精品久久影院| 国产原创一区二区| 欧美在线一区二区三区| 久久日一线二线三线suv| 亚洲国产一区二区三区| 成人天堂资源www在线| 欧美精品一区二区久久久| 亚洲第一主播视频| 91美女福利视频| 久久精品夜色噜噜亚洲aⅴ| 日日夜夜免费精品| 欧美性高清videossexo| 国产精品乱码久久久久久| 激情综合五月天| 欧美色综合天天久久综合精品| 中文字幕精品一区| 国产乱码一区二区三区| 欧美一区二区三区电影| 亚洲成av人影院| 日本精品一区二区三区高清 | 99精品热视频| 国产精品三级视频| 欧美日韩国产首页在线观看| 亚洲欧美在线aaa| 国产精品一二三四五| 日韩欧美激情在线| 日本女人一区二区三区| 欧美日韩精品电影| 亚洲一区二区免费视频| 日本伦理一区二区| 亚洲乱码中文字幕| 91啪亚洲精品| 中文字幕在线观看不卡| 成人久久久精品乱码一区二区三区| 久久久久久久电影| 国产成人午夜精品影院观看视频| 久久网这里都是精品| 国产一区欧美一区| 久久综合色之久久综合| 国内精品伊人久久久久av影院 | 石原莉奈在线亚洲二区| 欧美天堂亚洲电影院在线播放| 亚洲男同性恋视频| 91福利国产精品| 亚洲高清中文字幕| 91一区二区三区在线观看| 日韩美女视频19| 色综合中文综合网| 日韩一区二区免费在线电影 | 日韩美女一区二区三区四区| 久久99国产乱子伦精品免费| 精品国产一区二区三区久久久蜜月| 激情国产一区二区| 久久这里只有精品6| 国产成人鲁色资源国产91色综| 国产网红主播福利一区二区| 成人丝袜视频网| 亚洲伦理在线精品| 欧美久久久久久蜜桃| 捆绑调教美女网站视频一区| 久久亚洲精精品中文字幕早川悠里 | 一本久久a久久精品亚洲| 亚洲国产精品视频| 日韩午夜电影av| 国产精品911| 1024成人网色www| 欧美专区亚洲专区| 日韩av一级片| 国产亚洲精品超碰| 99re66热这里只有精品3直播| 一区二区三区欧美激情| 欧美一区日本一区韩国一区| 国产激情一区二区三区| 亚洲男同1069视频| 欧美一区二区三区在| 国产91精品在线观看| 樱花影视一区二区| 日韩亚洲欧美一区二区三区| 国产一区二区三区免费观看| 亚洲欧美激情一区二区| 88在线观看91蜜桃国自产| 国产精品白丝av| 一区二区高清免费观看影视大全| 日韩欧美中文字幕一区| 丁香天五香天堂综合| 亚洲伊人色欲综合网| 欧美大胆人体bbbb| 99精品欧美一区二区三区小说| 亚洲国产视频a| 久久男人中文字幕资源站| 99天天综合性| 蜜臀国产一区二区三区在线播放| 中文字幕亚洲一区二区va在线| 欧美军同video69gay| 国产成人免费视频网站| 婷婷久久综合九色国产成人| 国产欧美一区二区精品性色超碰| 欧美日韩免费在线视频| 国产馆精品极品| 石原莉奈在线亚洲二区| 亚洲天堂成人网| 久久影音资源网| 欧美日精品一区视频| 国产丶欧美丶日本不卡视频| 婷婷一区二区三区| 亚洲一区二区三区中文字幕 | 国产在线播放一区| 亚洲成人精品影院| 国产精品电影一区二区三区| 精品剧情v国产在线观看在线| 91精品办公室少妇高潮对白| 国产成人午夜片在线观看高清观看| 天堂久久久久va久久久久| 国产精品麻豆99久久久久久| 日韩精品一区二区三区swag| 欧美日韩精品一区二区天天拍小说 | 69久久99精品久久久久婷婷 | 怡红院av一区二区三区| 欧美激情中文不卡| 日韩写真欧美这视频| 欧美日韩午夜精品| 色香蕉久久蜜桃| 不卡视频一二三| 国产一区美女在线| 日韩成人伦理电影在线观看| 亚洲一区二区影院| 亚洲欧洲中文日韩久久av乱码| 国产日韩欧美高清| 久久亚洲影视婷婷| 日韩女优av电影| 91精品欧美久久久久久动漫| 色成人在线视频| 色一区在线观看| 成人av网在线| 国产高清精品网站| 国产曰批免费观看久久久| 久久99精品视频| 美女爽到高潮91| 麻豆精品新av中文字幕| 日韩精品午夜视频| 舔着乳尖日韩一区| 婷婷一区二区三区| 日本三级亚洲精品| 日韩国产欧美在线观看| 午夜精品一区二区三区免费视频| 亚洲综合网站在线观看| 亚洲午夜电影在线观看| 亚洲综合小说图片| 亚洲成人激情综合网| 五月激情六月综合| 秋霞午夜av一区二区三区| 日本欧美一区二区三区| 蜜臀久久99精品久久久画质超高清| 三级在线观看一区二区| 美腿丝袜亚洲三区| 老司机精品视频导航| 国产真实乱对白精彩久久| 国内外成人在线视频| 国产精品正在播放| 成人激情电影免费在线观看| 成人激情小说乱人伦| 91视视频在线直接观看在线看网页在线看| 99久久精品国产麻豆演员表| 91成人免费网站| 欧美日韩国产bt| 欧美成人a视频| 国产欧美精品区一区二区三区| 国产欧美一区二区在线观看|