X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=src%2FMoof%2FVideo.hh;h=0cc1a4e66687c8c33ea7c7a8d7ea89e983142c20;hp=736832f09d0277edb4da88e1a393e327dd934d63;hb=e973a129b5b83b628ba3f09e8c95682fc74080cd;hpb=a31d65a998121df0651c57bfb68782e2a07d2e2f diff --git a/src/Moof/Video.hh b/src/Moof/Video.hh index 736832f..0cc1a4e 100644 --- a/src/Moof/Video.hh +++ b/src/Moof/Video.hh @@ -1,30 +1,13 @@ -/******************************************************************************* - - Copyright (c) 2009, Charles McGarvey - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE - FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -*******************************************************************************/ +/*] Copyright (c) 2009-2010, Charles McGarvey [************************** +**] All rights reserved. +* +* vi:ts=8 sw=4 tw=75 +* +* Distributable under the terms and conditions of the 2-clause BSD license; +* see the file COPYING for a complete text of the license. +* +**************************************************************************/ #ifndef _MOOF_VIDEO_HH_ #define _MOOF_VIDEO_HH_ @@ -35,7 +18,7 @@ #include -#include +#include namespace Mf { @@ -62,7 +45,7 @@ public: long multisampleBuffers; long multisampleSamples; bool swapControl; - bool hardwareonly; + bool hardwareOnly; // Window attributes std::string caption; @@ -74,17 +57,23 @@ public: bool cursorGrab; Attributes(); + + private: + + Backend mBackend; + }; - static VideoP alloc(const std::string& caption, const std::string& icon) + static VideoP alloc(const std::string& caption, + const std::string& icon) { return VideoP(new Video(caption, icon)); } Video(); explicit Video(const Attributes& attribs); - explicit Video(const std::string& caption, const std::string& icon); + Video(const std::string& caption, const std::string& icon); ~Video(); void setVideoMode(const long mode[3]); @@ -96,6 +85,8 @@ public: void setCaption(const std::string& caption); std::string getCaption() const; + const std::string& getIcon() const; + void setFull(bool full); void toggleFull(); bool isFull() const; @@ -112,27 +103,14 @@ public: void toggleCursorGrab(); bool isCursorGrab() const; - void makeActive(); void swap(); int getWidth() const; int getHeight() const; - - struct Exception : public Mf::Exception - { - explicit Exception(unsigned error) : - Mf::Exception(error) {} - - void raise() - { - throw *this; - } - }; - private: - void init(const Attributes& attribs); + void init(); void recreateContext(); void setOpenGLAttributes(); @@ -147,9 +125,10 @@ private: }; +extern Video* video; + + } // namespace Mf #endif // _MOOF_VIDEO_HH_ -/** vim: set ts=4 sw=4 tw=80: *************************************************/ -