X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fscreen.h;h=bfef0503bd9e27af1687987999433b7943be7747;hb=84160722392a024dda42bd86ca9bd85b68c49457;hp=0cd53ec24366d16617b940e65b2a3873984bb4d0;hpb=f9f9fbe54cef6c10191d68ff57b807ae76af4f4e;p=supertux.git diff --git a/src/screen.h b/src/screen.h index 0cd53ec24..bfef0503b 100644 --- a/src/screen.h +++ b/src/screen.h @@ -1,45 +1,55 @@ -/* - screen.h - - Super Tux - Screen Functions - - by Bill Kendrick - bill@newbreedsoftware.com - http://www.newbreedsoftware.com/supertux/ - - April 11, 2000 - April 21, 2000 -*/ +// $Id$ +// +// SuperTux - A Jump'n Run +// Copyright (C) 2000 Bill Kendrick +// +// 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. + +#ifndef SUPERTUX_SCREEN_H +#define SUPERTUX_SCREEN_H #include #ifndef NOOPENGL #include - -#ifndef GL_NV_texture_rectangle -#define GL_TEXTURE_RECTANGLE_NV 0x84F5 -#define GL_TEXTURE_BINDING_RECTANGLE_NV 0x84F6 -#define GL_PROXY_TEXTURE_RECTANGLE_NV 0x84F7 -#define GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8 -#endif #endif +#include "texture.h" -#define NO_UPDATE 0 -#define UPDATE 1 +#define NO_UPDATE false +#define UPDATE true #define USE_ALPHA 0 #define IGNORE_ALPHA 1 -void load_and_display_image(char * file); -void clearscreen(float r, float g, float b); -void fillrect(float x, float y, float w, float h, float r, float g, float b); +struct Color +{ + Color() + : red(0), green(0), blue(0) + {} + + Color(int red_, int green_, int blue_) + : red(red_), green(green_), blue(blue_) + {} + + int red, green, blue; +}; + +void drawline(int x1, int y1, int x2, int y2, int r, int g, int b, int a); +void clearscreen(int r, int g, int b); +void drawgradient(Color top_clr, Color bot_clr); +void fillrect(float x, float y, float w, float h, int r, int g, int b, int a); void updatescreen(void); void flipscreen(void); -SDL_Surface * load_image(char * file, int use_alpha); -/* -void drawimage(SDL_Surface * surf, float x, float y, int update); -void drawpart(SDL_Surface * surf, float x, float y, float w, float h, int update); -*/ -void drawtext(char * text, int x, int y, SDL_Surface * surf, int update, int shadowsize); -void drawcenteredtext(char * text, int y, SDL_Surface * surf, int update, int shadowsize); -void erasetext(char * text, int x, int y, SDL_Surface * surf, int update, int shadowsize); -void erasecenteredtext(char * text, int y, SDL_Surface * surf, int update, int shadowsize); void update_rect(SDL_Surface *scr, Sint32 x, Sint32 y, Sint32 w, Sint32 h); +#endif /*SUPERTUX_SCREEN_H*/