diff options
Diffstat (limited to 'lib/mcolor.cc')
-rw-r--r-- | lib/mcolor.cc | 132 |
1 files changed, 66 insertions, 66 deletions
diff --git a/lib/mcolor.cc b/lib/mcolor.cc index df75007..e2a921d 100644 --- a/lib/mcolor.cc +++ b/lib/mcolor.cc @@ -1,66 +1,66 @@ -/*
- * mogltk
- * Copyright (C) 1999-2004 Nicolas "Pixel" Noble
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program 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
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-/* $Id: mcolor.cc,v 1.7 2004-11-27 21:44:53 pixel Exp $ */
-
-#include <SDL.h>
-#include <SDL_opengl.h>
-#include "engine.h"
-#include "mcolor.h"
-
-Color mogltk::ColorP::Min(0, 0, 0, 0), mogltk::ColorP::Max = WHITE;
-
-mogltk::ColorP::ColorP(const Color & ac) : c(ac) {
-}
-
-mogltk::ColorP::ColorP(Uint8 ar, Uint8 ag, Uint8 ab, Uint8 aa) : c(ar, ag, ab, aa) {
-}
-
-void mogltk::ColorP::Bind() {
- glColor4d((double) MIN(MAX(c.R, Min.R), Max.R) / 255, (double) MIN(MAX(c.G, Min.G), Max.G) / 255, (double) MIN(MAX(c.B, Min.B), Max.B) / 255, (double) MIN(MAX(c.A, Min.A), Max.A) / 255);
-}
-
-Uint32 mogltk::ColorP::toSDL(SDL_PixelFormat * f) {
- if (!f)
- f = mogltk::engine::base_o->getsurface()->format;
-
- return SDL_MapRGBA(f, MIN(MAX(c.R, Min.R), Max.R), MIN(MAX(c.G, Min.G), Max.G), MIN(MAX(c.B, Min.B), Max.B), MIN(MAX(c.A, Min.A), Max.A));
-}
-
-void mogltk::ColorP::fromSDL(Uint32 p, SDL_PixelFormat * f) {
- if (!f)
- f = mogltk::engine::base_o->getsurface()->format;
-
- SDL_GetRGBA(p, f, &c.R, &c.G, &c.B, &c.A);
-}
-
-void mogltk::ColorP::Norm() {
- c.R = MIN(MAX(c.R, Min.R), Max.R);
- c.G = MIN(MAX(c.R, Min.G), Max.G);
- c.B = MIN(MAX(c.R, Min.B), Max.B);
- c.A = MIN(MAX(c.R, Min.A), Max.A);
-}
-
-bool mogltk::ColorP::operator==(const ColorP & nc) {
- return c == nc.c;
-}
-
-Color * mogltk::ColorP::operator->() {
- return &c;
-}
+/* + * mogltk + * Copyright (C) 1999-2004 Nicolas "Pixel" Noble + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program 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 + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +/* $Id: mcolor.cc,v 1.8 2004-11-27 21:48:03 pixel Exp $ */ + +#include <SDL.h> +#include <SDL_opengl.h> +#include "engine.h" +#include "mcolor.h" + +Color mogltk::ColorP::Min(0, 0, 0, 0), mogltk::ColorP::Max = WHITE; + +mogltk::ColorP::ColorP(const Color & ac) : c(ac) { +} + +mogltk::ColorP::ColorP(Uint8 ar, Uint8 ag, Uint8 ab, Uint8 aa) : c(ar, ag, ab, aa) { +} + +void mogltk::ColorP::Bind() { + glColor4d((double) MIN(MAX(c.R, Min.R), Max.R) / 255, (double) MIN(MAX(c.G, Min.G), Max.G) / 255, (double) MIN(MAX(c.B, Min.B), Max.B) / 255, (double) MIN(MAX(c.A, Min.A), Max.A) / 255); +} + +Uint32 mogltk::ColorP::toSDL(SDL_PixelFormat * f) { + if (!f) + f = mogltk::engine::base_o->getsurface()->format; + + return SDL_MapRGBA(f, MIN(MAX(c.R, Min.R), Max.R), MIN(MAX(c.G, Min.G), Max.G), MIN(MAX(c.B, Min.B), Max.B), MIN(MAX(c.A, Min.A), Max.A)); +} + +void mogltk::ColorP::fromSDL(Uint32 p, SDL_PixelFormat * f) { + if (!f) + f = mogltk::engine::base_o->getsurface()->format; + + SDL_GetRGBA(p, f, &c.R, &c.G, &c.B, &c.A); +} + +void mogltk::ColorP::Norm() { + c.R = MIN(MAX(c.R, Min.R), Max.R); + c.G = MIN(MAX(c.R, Min.G), Max.G); + c.B = MIN(MAX(c.R, Min.B), Max.B); + c.A = MIN(MAX(c.R, Min.A), Max.A); +} + +bool mogltk::ColorP::operator==(const ColorP & nc) { + return c == nc.c; +} + +Color * mogltk::ColorP::operator->() { + return &c; +} |