Freeciv-3.1
|
#include <stdio.h>
#include <gtk/gtk.h>
#include "fcintl.h"
#include "log.h"
#include "mem.h"
#include "rand.h"
#include "support.h"
#include "timing.h"
#include "game.h"
#include "government.h"
#include "map.h"
#include "player.h"
#include "client_main.h"
#include "climap.h"
#include "climisc.h"
#include "colors.h"
#include "control.h"
#include "editor.h"
#include "options.h"
#include "overview_common.h"
#include "tilespec.h"
#include "text.h"
#include "zoom.h"
#include "citydlg.h"
#include "editgui.h"
#include "graphics.h"
#include "gui_main.h"
#include "gui_stuff.h"
#include "mapctrl.h"
#include "repodlgs.h"
#include "wldlg.h"
#include "mapview.h"
Go to the source code of this file.
Functions | |
void | update_turn_done_button (bool do_restore) |
void | update_timeout_label (void) |
void | update_info_label (void) |
static gboolean | anim_cursor_cb (gpointer data) |
void | update_mouse_cursor (enum cursor_type new_cursor_type) |
void | update_unit_info_label (struct unit_list *punits) |
GdkPixbuf * | get_thumb_pixbuf (int onoff) |
void | set_indicator_icons (struct sprite *bulb, struct sprite *sol, struct sprite *flake, struct sprite *gov) |
void | get_overview_area_dimensions (int *width, int *height) |
void | overview_size_changed (void) |
struct canvas * | get_overview_window (void) |
void | overview_canvas_draw (GtkDrawingArea *w, cairo_t *cr, int width, int height, gpointer data) |
void | mapview_freeze (void) |
void | mapview_thaw (void) |
bool | mapview_is_frozen (void) |
void | map_canvas_resize (GtkWidget *w, int width, int height, gpointer data) |
void | map_canvas_size_refresh (void) |
void | map_canvas_draw (GtkDrawingArea *w, cairo_t *cr, int width, int height, gpointer data) |
void | dirty_rect (int canvas_x, int canvas_y, int pixel_width, int pixel_height) |
void | dirty_all (void) |
void | flush_dirty (void) |
void | gui_flush (void) |
void | update_city_descriptions (void) |
void | put_unit_picture (struct unit *punit, GtkPicture *p, int height) |
void | put_unit_picture_city_overlays (struct unit *punit, GtkPicture *p, int height, int *upkeep_cost, int happy_cost) |
void | pixmap_put_overlay_tile (GdkSurface *pixmap, float zoom, int canvas_x, int canvas_y, struct sprite *ssprite) |
void | pixmap_put_overlay_tile_draw (struct canvas *pcanvas, int canvas_x, int canvas_y, struct sprite *ssprite, bool fog) |
void | put_cross_overlay_tile (struct tile *ptile) |
void | update_overview_scroll_window_pos (int x, int y) |
void | update_map_canvas_scrollbars (void) |
void | update_map_canvas_scrollbars_size (void) |
void | scrollbar_jump_callback (GtkAdjustment *adj, gpointer hscrollbar) |
void | draw_selection_rectangle (int canvas_x, int canvas_y, int w, int h) |
void | tileset_changed (void) |
void | start_turn (void) |
Variables | |
static GtkAdjustment * | map_hadj |
static GtkAdjustment * | map_vadj |
static int | cursor_timer_id = 0 |
static int | cursor_type = -1 |
static int | cursor_frame = 0 |
static int | mapview_frozen_level = 0 |
static int | mc_actual_width = -1 |
static int | mc_actual_height = -1 |
|
static |
void dirty_all | ( | void | ) |
void dirty_rect | ( | int | canvas_x, |
int | canvas_y, | ||
int | pixel_width, | ||
int | pixel_height | ||
) |
void draw_selection_rectangle | ( | int | canvas_x, |
int | canvas_y, | ||
int | w, | ||
int | h | ||
) |
Draws a rectangle with top left corner at (canvas_x, canvas_y), and width 'w' and height 'h'. It is drawn using the 'selection_gc' context, so the pixel combining function is XOR. This means that drawing twice in the same place will restore the image to its original state.
NB: A side effect of this function is to set the 'selection_gc' color to COLOR_MAPVIEW_SELECTION.
void flush_dirty | ( | void | ) |
void get_overview_area_dimensions | ( | int * | width, |
int * | height | ||
) |
Return the maximum dimensions of the area (container widget) for the overview. Due to the fact that the scaling factor is at least 1, the real size could be larger. The calculation in calculate_overview_dimensions() limit it to the smallest possible size.
struct canvas * get_overview_window | ( | void | ) |
GdkPixbuf * get_thumb_pixbuf | ( | int | onoff | ) |
void gui_flush | ( | void | ) |
void map_canvas_draw | ( | GtkDrawingArea * | w, |
cairo_t * | cr, | ||
int | width, | ||
int | height, | ||
gpointer | data | ||
) |
void map_canvas_resize | ( | GtkWidget * | w, |
int | width, | ||
int | height, | ||
gpointer | data | ||
) |
Update on canvas widget size change
Definition at line 406 of file mapview.c.
Referenced by setup_widgets().
void map_canvas_size_refresh | ( | void | ) |
void mapview_freeze | ( | void | ) |
bool mapview_is_frozen | ( | void | ) |
void overview_canvas_draw | ( | GtkDrawingArea * | w, |
cairo_t * | cr, | ||
int | width, | ||
int | height, | ||
gpointer | data | ||
) |
void overview_size_changed | ( | void | ) |
void pixmap_put_overlay_tile | ( | GdkSurface * | pixmap, |
float | zoom, | ||
int | canvas_x, | ||
int | canvas_y, | ||
struct sprite * | ssprite | ||
) |
void put_cross_overlay_tile | ( | struct tile * | ptile | ) |
void put_unit_picture | ( | struct unit * | punit, |
GtkPicture * | p, | ||
int | height | ||
) |
Fill picture with unit gfx
Definition at line 492 of file mapview.c.
Referenced by city_dialog_update_present_units(), and set_unit_icon().
void put_unit_picture_city_overlays | ( | struct unit * | punit, |
GtkPicture * | p, | ||
int | height, | ||
int * | upkeep_cost, | ||
int | happy_cost | ||
) |
FIXME: For now only two food, two gold one shield and two masks can be drawn per unit, the proper way to do this is probably something like what Civ II does. (One food/shield/mask drawn N times, possibly one top of itself. – SKi
Definition at line 517 of file mapview.c.
Referenced by city_dialog_update_supported_units().
void scrollbar_jump_callback | ( | GtkAdjustment * | adj, |
gpointer | hscrollbar | ||
) |
void tileset_changed | ( | void | ) |
void update_city_descriptions | ( | void | ) |
void update_map_canvas_scrollbars | ( | void | ) |
void update_map_canvas_scrollbars_size | ( | void | ) |
void update_mouse_cursor | ( | enum cursor_type | new_cursor_type | ) |
void update_overview_scroll_window_pos | ( | int | x, |
int | y | ||
) |
void update_timeout_label | ( | void | ) |
void update_turn_done_button | ( | bool | do_restore | ) |
void update_unit_info_label | ( | struct unit_list * | punits | ) |
Update the information label which gives info on the current unit and the square under the current unit, for specified unit. Note that in practice punit is always the focus unit. Clears label if punit is NULL. Also updates the cursor for the map_canvas (this is related because the info label includes a "select destination" prompt etc). Also calls update_unit_pix_label() to update the icons for units on this square.
|
static |
|
static |
Definition at line 70 of file mapview.c.
Referenced by map_canvas_resize(), and map_canvas_size_refresh().
|
static |
Definition at line 69 of file mapview.c.
Referenced by map_canvas_resize(), and map_canvas_size_refresh().