summaryrefslogtreecommitdiff
path: root/gfx.h
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2007-01-02 19:19:48 +0000
committerrubidium <rubidium@openttd.org>2007-01-02 19:19:48 +0000
commit013df98f79866a75f367853c9e436f3c5c79f645 (patch)
treead4a63860df2626b22f77e7dac712e958bea54cb /gfx.h
parent3d32fd3f4bfaceb8a48530fbc2f4bd5db2752596 (diff)
downloadopenttd-013df98f79866a75f367853c9e436f3c5c79f645.tar.xz
(svn r7759) -Merge: makefile rewrite. This merge features:
- A proper ./configure, so everything needs to be configured only once, not for every make. - Usage of makedepend when available. This greatly reduces the time needed for generating the dependencies. - A generator for all project files. There is a single file with sources, which is used to generate Makefiles and the project files for MSVC. - Proper support for OSX universal binaries. - Object files for non-MSVC compiles are also placed in separate directories, making is faster to switch between debug and release compiles and it does not touch the directory with the source files. - Functionality to make a bundle of all needed files for for example a nightly or distribution of a binary with all needed GRFs and language files. Note: as this merge moves almost all files, it is recommended to make a backup of your working copy before updating your working copy.
Diffstat (limited to 'gfx.h')
-rw-r--r--gfx.h163
1 files changed, 0 insertions, 163 deletions
diff --git a/gfx.h b/gfx.h
deleted file mode 100644
index 8636a36a6..000000000
--- a/gfx.h
+++ /dev/null
@@ -1,163 +0,0 @@
-/* $Id$ */
-
-#ifndef GFX_H
-#define GFX_H
-
-typedef byte Pixel;
-
-struct DrawPixelInfo {
- Pixel *dst_ptr;
- int left, top, width, height;
- int pitch;
- uint16 zoom;
-};
-
-
-typedef struct CursorVars {
- Point pos, size, offs, delta; ///< position, size, offset from top-left, and movement
- Point draw_pos, draw_size; ///< position and size bounding-box for drawing
- CursorID sprite; ///< current image of cursor
-
- int wheel; ///< mouse wheel movement
- const CursorID *animate_list, *animate_cur; ///< in case of animated cursor, list of frames
- uint animate_timeout; ///< current frame in list of animated cursor
-
- bool visible; ///< cursor is visible
- bool dirty; ///< the rect occupied by the mouse is dirty (redraw)
- bool fix_at; ///< mouse is moving, but cursor is not (used for scrolling)
- bool in_window; ///< mouse inside this window, determines drawing logic
-} CursorVars;
-
-
-typedef enum FontSizes {
- FS_NORMAL,
- FS_SMALL,
- FS_LARGE,
- FS_END,
-} FontSize;
-
-
-void RedrawScreenRect(int left, int top, int right, int bottom);
-void GfxScroll(int left, int top, int width, int height, int xo, int yo);
-
-
-// XXX doesn't really belong here, but the only
-// consumers always use it in conjunction with DoDrawString()
-#define UPARROW "\xEE\x8A\x80"
-#define DOWNARROW "\xEE\x8A\xAA"
-
-
-int DrawStringCentered(int x, int y, StringID str, uint16 color);
-int DrawStringCenteredTruncated(int xl, int xr, int y, StringID str, uint16 color);
-int DoDrawStringCentered(int x, int y, const char *str, uint16 color);
-
-int DrawString(int x, int y, StringID str, uint16 color);
-int DrawStringTruncated(int x, int y, StringID str, uint16 color, uint maxw);
-
-int DoDrawString(const char *string, int x, int y, uint16 color);
-int DoDrawStringTruncated(const char *str, int x, int y, uint16 color, uint maxw);
-
-void DrawStringCenterUnderline(int x, int y, StringID str, uint16 color);
-void DrawStringCenterUnderlineTruncated(int xl, int xr, int y, StringID str, uint16 color);
-
-int DrawStringRightAligned(int x, int y, StringID str, uint16 color);
-void DrawStringRightAlignedTruncated(int x, int y, StringID str, uint16 color, uint maxw);
-void DrawStringRightAlignedUnderline(int x, int y, StringID str, uint16 color);
-
-void GfxFillRect(int left, int top, int right, int bottom, int color);
-void GfxDrawLine(int left, int top, int right, int bottom, int color);
-
-BoundingRect GetStringBoundingBox(const char *str);
-uint32 FormatStringLinebreaks(char *str, int maxw);
-void LoadStringWidthTable(void);
-void DrawStringMultiCenter(int x, int y, StringID str, int maxw);
-uint DrawStringMultiLine(int x, int y, StringID str, int maxw);
-void DrawDirtyBlocks(void);
-void SetDirtyBlocks(int left, int top, int right, int bottom);
-void MarkWholeScreenDirty(void);
-
-void GfxInitPalettes(void);
-
-bool FillDrawPixelInfo(DrawPixelInfo* n, int left, int top, int width, int height);
-
-/* window.c */
-void DrawOverlappedWindowForAll(int left, int top, int right, int bottom);
-
-void SetMouseCursor(uint cursor);
-void SetAnimatedMouseCursor(const CursorID *table);
-void CursorTick(void);
-void DrawMouseCursor(void);
-void ScreenSizeChanged(void);
-void UndrawMouseCursor(void);
-bool ChangeResInGame(int w, int h);
-void SortResolutions(int count);
-void ToggleFullScreen(bool fs);
-
-/* gfx.c */
-#define ASCII_LETTERSTART 32
-extern FontSize _cur_fontsize;
-
-byte GetCharacterWidth(FontSize size, uint32 key);
-
-static inline byte GetCharacterHeight(FontSize size)
-{
- switch (size) {
- default: NOT_REACHED();
- case FS_NORMAL: return 10;
- case FS_SMALL: return 6;
- case FS_LARGE: return 18;
- }
-}
-
-VARDEF DrawPixelInfo _screen;
-VARDEF DrawPixelInfo *_cur_dpi;
-VARDEF CursorVars _cursor;
-
-enum {
- COLOUR_DARK_BLUE,
- COLOUR_PALE_GREEN,
- COLOUR_PINK,
- COLOUR_YELLOW,
- COLOUR_RED,
- COLOUR_LIGHT_BLUE,
- COLOUR_GREEN,
- COLOUR_DARK_GREEN,
- COLOUR_BLUE,
- COLOUR_CREAM,
- COLOUR_MAUVE,
- COLOUR_PURPLE,
- COLOUR_ORANGE,
- COLOUR_BROWN,
- COLOUR_GREY,
- COLOUR_WHITE
-};
-
-/**
- * All 16 colour gradients
- * 8 colours per gradient from darkest (0) to lightest (7)
- */
-VARDEF byte _colour_gradient[16][8];
-
-VARDEF int _pal_first_dirty;
-VARDEF int _pal_last_dirty;
-
-VARDEF bool _use_dos_palette;
-
-typedef struct Colour {
- byte r;
- byte g;
- byte b;
-} Colour;
-
-extern Colour _cur_palette[256];
-
-
-typedef enum StringColorFlags {
- IS_PALETTE_COLOR = 0x100, // color value is already a real palette color index, not an index of a StringColor
-} StringColorFlags;
-
-#ifdef _DEBUG
-extern bool _dbg_screen_rect;
-#endif
-
-#endif /* GFX_H */