Freeciv-3.3: /fast/freeciv/nightly/main/client/gui-gtk-5.0/graphics.c Source File

Freeciv-3.3

Loading...
Searching...
No Matches
graphics.c
Go to the documentation of this file.
1/***********************************************************************
2 Freeciv - Copyright (C) 1996 - A Kjeldberg, L Gregersen, P Unold
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2, or (at your option)
6 any later version.
7
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12***********************************************************************/
13
14#ifdef HAVE_CONFIG_H
15#include <fc_config.h>
16#endif
17
18#include <stdio.h>
19#include <stdlib.h>
20#include <string.h>
21
22#include <gtk/gtk.h>
23
24/* utility */
25#include "log.h"
26#include "mem.h"
27#include "shared.h"
28#include "support.h"
29
30/* common */
31#include "game.h"
32#include "movement.h"
33#include "unit.h"
34#include "version.h"
35
36/* client */
37#include "climisc.h"
38#include "colors.h"
39#include "mapview_g.h"
40#include "options.h"
41#include "tilespec.h"
42
43/* client/gui-gtk-5.0 */
44#include "gui_main.h"
45
46#include "graphics.h"
47
48 GdkCursor *fc_cursors[CURSOR_LAST][NUM_CURSOR_FRAMES];
49
50/***********************************************************************/
53 bool is_view_supported(enum ts_type type)
54{
55 switch (type) {
56 case TS_ISOMETRIC:
57 case TS_OVERHEAD:
58 return TRUE;
59 case TS_3D:
60#ifdef GTK3_3D_ENABLED
61 return TRUE;
62#else /* GTK3_3D_ENABLED */
63 return FALSE;
64#endif /* GTK3_3D_ENABLED */
65 }
66
67 return FALSE;
68}
69
70/***********************************************************************/
73 void tileset_type_set(enum ts_type type)
74{
75}
76
77#define COLOR_MOTTO_FACE_R 0x2D
78#define COLOR_MOTTO_FACE_G 0x71
79#define COLOR_MOTTO_FACE_B 0xE3
80
81/***********************************************************************/
84 void load_cursors(void)
85{
86 enum cursor_type cursor;
87 int frame;
88
89 for (cursor = 0; cursor < CURSOR_LAST; cursor++) {
90 for (frame = 0; frame < NUM_CURSOR_FRAMES; frame++) {
91 int hot_x, hot_y;
92 struct sprite *sprite
93 = get_cursor_sprite(tileset, cursor, &hot_x, &hot_y, frame);
94 GdkPixbuf *pixbuf = sprite_get_pixbuf(sprite);
95 GdkTexture *texture = gdk_texture_new_for_pixbuf(pixbuf);
96
97 fc_cursors[cursor][frame] = gdk_cursor_new_from_texture(texture, hot_x, hot_y, NULL);
98 g_object_unref(texture);
99 g_object_unref(G_OBJECT(pixbuf));
100 }
101 }
102}
climisc.h
incite_cost
char * incite_cost
Definition comments.c:74
game.h
is_view_supported
bool is_view_supported(enum ts_type type)
Definition graphics.c:53
tileset_type_set
void tileset_type_set(enum ts_type type)
Definition graphics.c:73
fc_cursors
GdkCursor * fc_cursors[CURSOR_LAST][NUM_CURSOR_FRAMES]
Definition graphics.c:48
load_cursors
void load_cursors(void)
Definition graphics.c:84
type
GType type
Definition repodlgs.c:1313
sprite_get_pixbuf
GdkPixbuf * sprite_get_pixbuf(struct sprite *sprite)
Definition sprite.c:402
colors.h
graphics.h
gui_main.h
log.h
mapview_g.h
mem.h
movement.h
options.h
shared.h
sprite
Definition sprite.h:22
tileset
Definition tilespec.c:481
support.h
TRUE
#define TRUE
Definition support.h:46
FALSE
#define FALSE
Definition support.h:47
get_cursor_sprite
struct sprite * get_cursor_sprite(const struct tileset *t, enum cursor_type cursor, int *hot_x, int *hot_y, int frame)
Definition tilespec.c:6978
tilespec.h
NUM_CURSOR_FRAMES
#define NUM_CURSOR_FRAMES
Definition tilespec.h:305
cursor_type
cursor_type
Definition tilespec.h:289
CURSOR_LAST
@ CURSOR_LAST
Definition tilespec.h:301
unit.h
version.h