Feature #1109 ยป 0015-Replace-is_view_supported-by-gui-property.patch
client/gui-gtk-3.22/graphics.c | ||
---|---|---|
GdkCursor *fc_cursors[CURSOR_LAST][NUM_CURSOR_FRAMES];
|
||
/***********************************************************************//**
|
||
Returns TRUE to indicate that gtk3.22-client supports given view type
|
||
***************************************************************************/
|
||
bool is_view_supported(enum ts_type type)
|
||
{
|
||
switch (type) {
|
||
case TS_ISOMETRIC:
|
||
case TS_OVERHEAD:
|
||
return TRUE;
|
||
case TS_3D:
|
||
#ifdef GTK3_3D_ENABLED
|
||
return TRUE;
|
||
#else /* GTK3_3D_ENABLED */
|
||
return FALSE;
|
||
#endif /* GTK3_3D_ENABLED */
|
||
}
|
||
return FALSE;
|
||
}
|
||
/***********************************************************************//**
|
||
Loading tileset of the specified type
|
||
***************************************************************************/
|
client/gui-gtk-3.22/gui_main.c | ||
---|---|---|
void setup_gui_properties(void)
|
||
{
|
||
gui_properties.animations = FALSE;
|
||
gui_properties.views.isometric = TRUE;
|
||
gui_properties.views.overhead = TRUE;
|
||
#ifdef GTK3_3D_ENABLED
|
||
gui_properties.views.d3 = TRUE;
|
||
#else /* GTK3_3D_ENABLED */
|
||
gui_properties.views.d3 = FALSE;
|
||
#endif /* GTK3_3D_ENABLED */
|
||
}
|
client/gui-gtk-4.0/graphics.c | ||
---|---|---|
GdkCursor *fc_cursors[CURSOR_LAST][NUM_CURSOR_FRAMES];
|
||
/***********************************************************************//**
|
||
Returns TRUE to indicate that gtk4-client supports given view type
|
||
***************************************************************************/
|
||
bool is_view_supported(enum ts_type type)
|
||
{
|
||
switch (type) {
|
||
case TS_ISOMETRIC:
|
||
case TS_OVERHEAD:
|
||
return TRUE;
|
||
case TS_3D:
|
||
#ifdef GTK3_3D_ENABLED
|
||
return TRUE;
|
||
#else /* GTK3_3D_ENABLED */
|
||
return FALSE;
|
||
#endif /* GTK3_3D_ENABLED */
|
||
}
|
||
return FALSE;
|
||
}
|
||
/***********************************************************************//**
|
||
Loading tileset of the specified type
|
||
***************************************************************************/
|
client/gui-gtk-4.0/gui_main.c | ||
---|---|---|
void setup_gui_properties(void)
|
||
{
|
||
gui_properties.animations = TRUE;
|
||
gui_properties.views.isometric = TRUE;
|
||
gui_properties.views.overhead = TRUE;
|
||
#ifdef GTK3_3D_ENABLED
|
||
gui_properties.views.d3 = TRUE;
|
||
#else /* GTK3_3D_ENABLED */
|
||
gui_properties.views.d3 = FALSE;
|
||
#endif /* GTK3_3D_ENABLED */
|
||
}
|
client/gui-gtk-5.0/graphics.c | ||
---|---|---|
GdkCursor *fc_cursors[CURSOR_LAST][NUM_CURSOR_FRAMES];
|
||
/***********************************************************************//**
|
||
Returns TRUE to indicate that gtk4x-client supports given view type
|
||
***************************************************************************/
|
||
bool is_view_supported(enum ts_type type)
|
||
{
|
||
switch (type) {
|
||
case TS_ISOMETRIC:
|
||
case TS_OVERHEAD:
|
||
return TRUE;
|
||
case TS_3D:
|
||
#ifdef GTK3_3D_ENABLED
|
||
return TRUE;
|
||
#else /* GTK3_3D_ENABLED */
|
||
return FALSE;
|
||
#endif /* GTK3_3D_ENABLED */
|
||
}
|
||
return FALSE;
|
||
}
|
||
/***********************************************************************//**
|
||
Loading tileset of the specified type
|
||
***************************************************************************/
|
client/gui-gtk-5.0/gui_main.c | ||
---|---|---|
void setup_gui_properties(void)
|
||
{
|
||
gui_properties.animations = TRUE;
|
||
gui_properties.views.isometric = TRUE;
|
||
gui_properties.views.overhead = TRUE;
|
||
#ifdef GTK3_3D_ENABLED
|
||
gui_properties.views.d3 = TRUE;
|
||
#else /* GTK3_3D_ENABLED */
|
||
gui_properties.views.d3 = FALSE;
|
||
#endif /* GTK3_3D_ENABLED */
|
||
}
|
client/gui-qt/graphics.cpp | ||
---|---|---|
#include "graphics.h"
|
||
#include "qtg_cxxside.h"
|
||
/************************************************************************//**
|
||
Return whether the client supports given view type.
|
||
****************************************************************************/
|
||
bool qtg_is_view_supported(enum ts_type type)
|
||
{
|
||
switch (type) {
|
||
case TS_ISOMETRIC:
|
||
case TS_OVERHEAD:
|
||
return true;
|
||
case TS_3D:
|
||
return false;
|
||
}
|
||
return false;
|
||
}
|
||
/************************************************************************//**
|
||
Loading tileset of the specified type
|
||
****************************************************************************/
|
client/gui-qt/gui_main.cpp | ||
---|---|---|
void qtg_setup_gui_properties()
|
||
{
|
||
gui_properties.animations = FALSE;
|
||
gui_properties.views.isometric = TRUE;
|
||
gui_properties.views.overhead = TRUE;
|
||
gui_properties.views.d3 = FALSE;
|
||
}
|
client/gui-qt/qtg_cxxside.cpp | ||
---|---|---|
funcs->version_message = qtg_version_message;
|
||
funcs->real_output_window_append = qtg_real_output_window_append;
|
||
funcs->is_view_supported = qtg_is_view_supported;
|
||
funcs->tileset_type_set = qtg_tileset_type_set;
|
||
funcs->load_gfxfile = qtg_load_gfxfile;
|
||
funcs->load_gfxnumber = qtg_load_gfxnumber;
|
client/gui-qt/qtg_cxxside.h | ||
---|---|---|
const struct text_tag_list *tags,
|
||
int conn_id);
|
||
bool qtg_is_view_supported(enum ts_type type);
|
||
void qtg_tileset_type_set(enum ts_type type);
|
||
struct sprite *qtg_load_gfxfile(const char *filename, bool svgflag);
|
||
struct sprite *qtg_load_gfxnumber(int num);
|
client/gui-sdl2/graphics.c | ||
---|---|---|
/* ============ Freeciv game graphics function =========== */
|
||
/**********************************************************************//**
|
||
Return whether the client supports given view type
|
||
**************************************************************************/
|
||
bool is_view_supported(enum ts_type type)
|
||
{
|
||
switch (type) {
|
||
case TS_ISOMETRIC:
|
||
case TS_OVERHEAD:
|
||
return TRUE;
|
||
case TS_3D:
|
||
return FALSE;
|
||
}
|
||
return FALSE;
|
||
}
|
||
/**********************************************************************//**
|
||
Loading tileset of the specified type
|
||
**************************************************************************/
|
client/gui-sdl2/gui_main.c | ||
---|---|---|
void setup_gui_properties(void)
|
||
{
|
||
gui_properties.animations = FALSE;
|
||
gui_properties.views.isometric = TRUE;
|
||
gui_properties.views.overhead = TRUE;
|
||
gui_properties.views.d3 = FALSE;
|
||
}
|
client/gui-sdl3/graphics.c | ||
---|---|---|
/* ============ Freeciv game graphics function =========== */
|
||
/**********************************************************************//**
|
||
Return whether the client supports given view type
|
||
**************************************************************************/
|
||
bool is_view_supported(enum ts_type type)
|
||
{
|
||
switch (type) {
|
||
case TS_ISOMETRIC:
|
||
case TS_OVERHEAD:
|
||
return TRUE;
|
||
case TS_3D:
|
||
return FALSE;
|
||
}
|
||
return FALSE;
|
||
}
|
||
/**********************************************************************//**
|
||
Loading tileset of the specified type
|
||
**************************************************************************/
|
client/gui-sdl3/gui_main.c | ||
---|---|---|
void setup_gui_properties(void)
|
||
{
|
||
gui_properties.animations = FALSE;
|
||
gui_properties.views.isometric = TRUE;
|
||
gui_properties.views.overhead = TRUE;
|
||
gui_properties.views.d3 = FALSE;
|
||
}
|
client/gui-stub/graphics.c | ||
---|---|---|
#include "graphics.h"
|
||
/************************************************************************//**
|
||
Return whether the client supports given view type
|
||
****************************************************************************/
|
||
bool gui_is_view_supported(enum ts_type type)
|
||
{
|
||
/* PORTME */
|
||
return FALSE;
|
||
}
|
||
/************************************************************************//**
|
||
Loading tileset of the specified type
|
||
****************************************************************************/
|
client/gui_cbsetter.c | ||
---|---|---|
funcs->version_message = gui_version_message;
|
||
funcs->real_output_window_append = gui_real_output_window_append;
|
||
funcs->is_view_supported = gui_is_view_supported;
|
||
funcs->load_gfxfile = gui_load_gfxfile;
|
||
funcs->create_sprite = gui_create_sprite;
|
||
funcs->get_sprite_dimensions = gui_get_sprite_dimensions;
|
client/gui_interface.c | ||
---|---|---|
funcs.insert_client_build_info(outbuf, outlen);
|
||
}
|
||
/**********************************************************************//**
|
||
Call is_view_supported callback
|
||
**************************************************************************/
|
||
bool is_view_supported(enum ts_type type)
|
||
{
|
||
return funcs.is_view_supported(type);
|
||
}
|
||
/**********************************************************************//**
|
||
Call tileset_type_set callback
|
||
**************************************************************************/
|
client/gui_interface.h | ||
---|---|---|
const struct text_tag_list *tags,
|
||
int conn_id);
|
||
bool (*is_view_supported)(enum ts_type type);
|
||
void (*tileset_type_set)(enum ts_type type);
|
||
struct sprite * (*load_gfxfile)(const char *filename, bool svgflag);
|
||
struct sprite * (*load_gfxnumber)(int num);
|
client/gui_properties.h | ||
---|---|---|
struct client_properties {
|
||
bool animations;
|
||
struct {
|
||
bool isometric;
|
||
bool overhead;
|
||
bool d3;
|
||
} views;
|
||
};
|
||
extern struct client_properties gui_properties;
|
client/include/graphics_g.h | ||
---|---|---|
#include "gui_proto_constructor.h"
|
||
GUI_FUNC_PROTO(bool, is_view_supported, enum ts_type type)
|
||
GUI_FUNC_PROTO(void, tileset_type_set, enum ts_type type)
|
||
GUI_FUNC_PROTO(void, load_cursors, void)
|
||
#endif /* FC__GRAPHICS_G_H */
|
||
#endif /* FC__GRAPHICS_G_H */
|
client/tilespec.c | ||
---|---|---|
bool svg;
|
||
enum spec_file_types slist_type;
|
||
const char *type_name;
|
||
bool vsup;
|
||
fname = tilespec_fullname(tileset_name);
|
||
... | ... | |
t->ts_topo_idx = ts_topology_index(topo);
|
||
if (!is_view_supported(t->type)) {
|
||
switch (t->type) {
|
||
case TS_ISOMETRIC:
|
||
vsup = gui_properties.views.isometric;
|
||
break;
|
||
case TS_OVERHEAD:
|
||
vsup = gui_properties.views.overhead;
|
||
break;
|
||
case TS_3D:
|
||
vsup = gui_properties.views.d3;
|
||
break;
|
||
}
|
||
if (!vsup) {
|
||
/* TRANS: "Overhead" or "Isometric" */
|
||
log_normal(_("Client does not support %s tilesets."),
|
||
_(ts_type_name(t->type)));
|