DELTA 5675 6503 4739
SVN  Çd}5ú =  ->, G ħ H , NĴ  VĴK° f°q¨ @@  G X @@4 AĴ D AĴ  AĴ E G µ @@> 2ÙL @@¤ @@Żv G  @@b G ¸ @@5 G ĥ @@ G Ħ @@} G B @@O G Ğ @@F G  @@Ċfc_config.h>
#endif

#include "SDL.h"

/* utility */
#include "fcintl.h"
#include "log.h"

/* client */
#include "client_main.h"

/* gui-sdl */
#include "colors.h"
#include "graphics.h"
#include "gui_main.h"
#include "gui_string.h"
#include "sprite.h"
#include "themespec.h"

#include "gui_tilespec.h"

struct Theme *pTheme;
struct City_Icon *pIcons;

static SDL_Surface *pCity_Surf;

static SDL_Surface *pNeutral_Tech_Icon;
static SDL_Surface *pNone_Tech_Icon;
static SDL_Surface *pFuture_Tech_Icon;

#define load_GUI_surface(pSpr, pStruct, pSurf, tag)		  \
do {								  \
  pSpr = theme_lookup_sprite_tag_alt(theme, LOG_FATAL, tag, "", "", ""); \
  fc_assert_action(pSpr != NULL, break);                          \
  pStruct->pSurf = adj_surf(GET_SURF_REAL(pSpr));                 \
  FREESURFACE(GET_SURF_REAL(pSpr));                               \
} while(0)

#define load_theme_surface(pSpr, pSurf, tag)		\
	load_GUI_surface(pSpr, pTheme, pSurf, tag)

#define load_city_icon_surface(pSpr, pSurf, tag)        \
        load_GUI_surface(pSpr, pIcons, pSurf, tag)

#define load_order_theme_surface(pSpr, pSurf, tag)	\
do {							\
  load_GUI_surface(pSpr, pTheme, pSurf, tag);		\
} while(0)

*********
 * reload small citizens "style" icons.*********/
static void reload_small_citizens_icons(int style)
{
  /* free info icons */
  FREESURFACE(pIcons->pMale_Content);
  FREESURFACE(pIcons->pFemale_Content);
  FREESURFACE(pIcons->pMale_Happy);
  FREESURFACE(pIcons->pFemale_Happy);
  FREESURFACE(pIcons->pMale_Unhappy);
  FREESURFACE(pIcons->pFemale_Unhappy);
  FREESURFACE(pIcons->pMale_Angry);
  FREESURFACE(pIcons->pFemale_Angry);
  
  FREESURFACE(pIcons->pSpec_Lux); /* Elvis */
  FREESURFACE(pIcons->pSpec_Tax); /* TaxMan */
  FREESURFACE(pIcons->pSpec_Sci); /* Scientist */
  
  /* allocate icons */
  pIcons->pMale_Happy = adj_surf(get_citizen_surface(CITIZEN_HAPPY, 0));
  pIcons->pFemale_Happy = adj_surf(get_citizen_surface(CITIZEN_HAPPY, 1));
  pIcons->pMale_Content = adj_surf(get_citizen_surface(CITIZEN_CONTENT, 0));
  pIcons->pFemale_Content = adj_surf(get_citizen_surface(CITIZEN_CONTENT, 1));
  pIcons->pMale_Unhappy = adj_surf(get_citizen_surface(CITIZEN_UNHAPPY, 0));
  pIcons->pFemale_Unhappy = adj_surf(get_citizen_surface(CITIZEN_UNHAPPY, 1));
  pIcons->pMale_Angry = adj_surf(get_citizen_surface(CITIZEN_ANGRY, 0));
  pIcons->pFemale_Angry = adj_surf(get_citizen_surface(CITIZEN_ANGRY, 1));
  pIcons->pSpec_Lux = get_tax_surface(O_LUXURY);
  pIcons->pSpec_Tax = get_tax_surface(O_GOLD);
  pIcons->pSpec_Sci = get_tax_surface(O_SCIENCE);
}

/* int style)
{
  reload_small_citizens_icons(style****
  Load theme city screen graphics.
**********/
void tilespec_setup_city_gfx(void) {
  struct sprite *pSpr =
    theme_lookup_sprite_tag_alt(theme, LOG_FATAL, "theme.city", "", "", "");    

  pCity_Surf = (pSpr ? adj_surf(GET_SURF_REAL(pSpr)) : NULL);
  
  fc_assert(pCity_Surf != NULL);
}


  Set city icons sprite value; should only happen after
  tileset_load_tiles(tileset).
*******/
void tilespec_setup_city_icons(void)
{
  struct sprite *pSpr = NULL;

  pIcons = ( struct City_Icon *)fc_calloc(1,  sizeof( struct City_Icon ));

  load_city_icon_surface(pSpr, pBIG_Food_Corr, "city.food_waste");
  load_city_icon_surface(pSpr, pBIG_Shield_Corr, "city.shield_waste");
  load_city_icon_surface(pSpr, pBIG_Trade_Corr, "city.trade_waste");
  load_city_icon_surface(pSpr, pBIG_Food, "city.food");

  pIcons->pBIG_Food_Surplus = crop_rect_from_surface(pIcons->pBIG_Food, NULL);
  SDL_SetAlpha(pIcons->pBIG_Food_Surplus, SDL_SRCALPHA, 128);

  load_city_icon_surface(pSpr, pBIG_Shield, "city.shield");

  pIcons->pBIG_Shield_Surplus = crop_rect_from_surface(pIcons->pBIG_Shield, NULL);
  SDL_SetAlpha(pIcons->pBIG_Shield_Surplus, SDL_SRCALPHA, 128);

  load_city_icon_surface(pSpr, pBIG_Trade, "city.trade");
  load_city_icon_surface(pSpr, pBIG_Luxury, "city.lux");
  load_city_icon_surface(pSpr, pBIG_Coin, "city.coin");
  load_city_icon_surface(pSpr, pBIG_Colb, "city.colb");
  load_city_icon_surface(pSpr, pBIG_Face, "city.red_face");
  load_city_icon_surface(pSpr, pBIG_Coin_Corr, "city.dark_coin");
  load_city_icon_surface(pSpr, pBIG_Coin_UpKeep, "city.unkeep_coin");
  		  
  /* small icon */
  load_city_icon_surface(pSpr, pFood, "city.small_food");
  load_city_icon_surface(pSpr, pShield, "city.small_shield");
  load_city_icon_surface(pSpr, pTrade, "city.small_trade");
  load_city_icon_surface(pSpr, pFace, "city.small_red_face");
  load_city_icon_surface(pSpr, pLuxury, "city.small_lux");
  load_city_icon_surface(pSpr, pCoin, "city.small_coin");		  
  load_city_icon_surface(pSpr, pColb, "city.small_colb");		  
    
  load_city_icon_surface(pSpr, pPollution, "city.pollution");
  /*  */
  
  load_city_icon_surface(pSpr, pPolice, "city.police");
  /*  */
  pIcons->pWorklist = create_surf_alpha(9,9, SDL_SWSURFACE);
  SDL_FillRect(pIcons->pWorklist, NULL,
		  SDL_MapRGB(pIcons->pWorklist->format, 255, 255,255));
  putframe(pIcons->pWorklist,
           0,0, pIcons->pWorklist->w - 1, pIcons->pWorklist->h - 1,
           get_theme_color(COLOR_THEME_CITYREP_FRAME));
  putline(pIcons->pWorklist,
          3, 2, 5, 2,
          get_theme_color(COLOR_THEME_CITYREP_FRAME));
  putline(pIcons->pWorklist,
          3, 4, 7, 4,
          get_theme_color(COLOR_THEME_CITYREP_FRAME));
  putline(pIcons->pWorklist,
          3, 6, 6, 6,
          get_theme_color(COLOR_THEME_CITYREP_FRAME));
  
  /*  */
  
  /* force reload citizens icons */
  pIcons->style = 999;
}


  Free resources associated with city screen icons.
*******/
void tilespec_free_city_icons(void)
{
  if (!pIcons) {
    return;
  }

  /* small citizens */
  FREESURFACE(pIcons->pMale_Content);
  FREESURFACE(pIcons->pFemale_Content);
  FREESURFACE(pIcons->pMale_Happy);
  FREESURFACE(pIcons->pFemale_Happy);
  FREESURFACE(pIcons->pMale_Unhappy);
  FREESURFACE(pIcons->pFemale_Unhappy);
  FREESURFACE(pIcons->pMale_Angry);
  FREESURFACE(pIcons->pFemale_Angry);

  FREESURFACE(pIcons->pSpec_Lux); /* Elvis */
  FREESURFACE(pIcons->pSpec_Tax); /* TaxMan */
  FREESURFACE(pIcons->pSpec_Sci); /* Scientist */

  FC_FREE(pIcons);
}
*****
  Alloc and fill Theme struct
*******/
void tilespec_setup_theme(void)
{
  struct sprite *pBuf = NULL;
  
  pTheme = fc_calloc(1, sizeof(struct Theme));

  load_theme_surface(pBuf, FR_Left, "theme.left_frame");
  load_theme_surface(pBuf, FR_Right, "theme.right_frame");
  load_theme_surface(pBuf, FR_Top, "theme.top_frame");
  load_theme_surface(pBuf, FR_Bottom, "theme.bottom_frame");
  load_theme_surface(pBuf, Button, "theme.button");
  load_theme_surface(pBuf, Edit, "theme.edit");
  load_theme_surface(pBuf, CBOX_Sell_Icon, "theme.sbox");
  load_theme_surface(pBuf, CBOX_Unsell_Icon, "theme.ubox");
  load_theme_surface(pBuf, UP_Icon, "theme.UP_scroll");
  load_theme_surface(pBuf, DOWN_Icon, "theme.DOWN_scroll");
#if 0
  load_theme_surface(pBuf, LEFT_Icon, "theme.LEFT_scroll");
  load_theme_surface(pBuf, RIGHT_Icon, "theme.RIGHT_scroll");
#endif
  load_theme_surface(pBuf, Vertic, "theme.vertic_scrollbar");
  load_theme_surface(pBuf, Horiz, "theme.horiz_scrollbar");
  
  /* ------------------- */
  load_theme_surface(pBuf, OK_PACT_Icon, "theme.pact_ok");
  load_theme_surface(pBuf, CANCEL_PACT_Icon, "theme.pact_cancel");
  /* ------------------- */
  load_theme_surface(pBuf, Small_OK_Icon, "theme.SMALL_OK_button");
  load_theme_surface(pBuf, Small_CANCEL_Icon, "theme.SMALL_FAIL_button");
  /* ------------------- */
  load_theme_surface(pBuf, OK_Icon, "theme.OK_button");
  load_theme_surface(pBuf, CANCEL_Icon, "theme.FAIL_button");
  load_theme_surface(pBuf, FORWARD_Icon, "theme.NEXT_button");
  load_theme_surface(pBuf, BACK_Icon, "theme.BACK_button");
  load_theme_surface(pBuf, L_ARROW_Icon, "theme.LEFT_ARROW_button");
  load_theme_surface(pBuf, R_ARROW_Icon, "theme.RIGHT_ARROW_button");
  load_theme_surface(pBuf, MAP_Icon, "theme.MAP_button");
  load_theme_surface(pBuf, FindCity_Icon, "theme.FIND_CITY_button");
  load_theme_surface(pBuf, NEW_TURN_Icon, "theme.NEW_TURN_button");
  load_theme_surface(pBuf, LOG_Icon, "theme.LOG_button");
  load_theme_surface(pBuf, UNITS_Icon, "theme.UNITS_INFO_button");
  load_theme_surface(pBuf, Options_Icon, "theme.OPTIONS_button");
  load_theme_surface(pBuf, Block, "theme.block");
  load_theme_surface(pBuf, INFO_Icon, "theme.INFO_button");
  load_theme_surface(pBuf, Army_Icon, "theme.ARMY_button");
  load_theme_surface(pBuf, Happy_Icon, "theme.HAPPY_button");
  load_theme_surface(pBuf, Support_Icon, "theme.HOME_button");
  load_theme_surface(pBuf, Buy_PROD_Icon, "theme.BUY_button");
  load_theme_surface(pBuf, PROD_Icon, "theme.PROD_button");
  load_theme_surface(pBuf, QPROD_Icon, "theme.WORK_LIST_button");
  load_theme_surface(pBuf, CMA_Icon, "theme.CMA_button");
  load_theme_surface(pBuf, LOCK_Icon, "theme.LOCK_button");
  load_theme_surface(pBuf, UNLOCK_Icon, "theme.UNLOCK_button");
  load_theme_surface(pBuf, PLAYERS_Icon, "theme.PLAYERS_button");
  load_theme_surface(pBuf, UNITS2_Icon, "theme.UNITS_button");
  load_theme_surface(pBuf, SAVE_Icon, "theme.SAVE_button");
  load_theme_surface(pBuf, LOAD_Icon, "theme.LOAD_button");
  load_theme_surface(pBuf, DELETE_Icon, "theme.DELETE_button");
  load_theme_surface(pBuf, BORDERS_Icon, "theme.BORDERS_button");
  /* ------------------------------ */
  load_theme_surface(pBuf, Tech_Tree_Icon, "theme.tech_tree");
  /* ------------------------------ */

  load_order_theme_surface(pBuf, Order_Icon, "theme.order_empty");  
  load_order_theme_surface(pBuf, OAutoAtt_Icon, "theme.order_auto_attack");
  load_order_theme_surface(pBuf, OAutoConnect_Icon, "theme.order_auto_connect");  
  load_order_theme_surface(pBuf, OAutoExp_Icon, "theme.order_auto_explorer");
  load_order_theme_surface(pBuf, OAutoSett_Icon, "theme.order_auto_settler");
  load_order_theme_surface(pBuf, OBuildCity_Icon, "theme.order_build_city");
  load_order_theme_surface(pBuf, OCutDownForest_Icon, "theme.order_cutdown_forest");
  load_order_theme_surface(pBuf, OPlantForest_Icon, "theme.order_plant_forest");
  load_order_theme_surface(pBuf, OMine_Icon, "theme.order_build_mining");
  load_order_theme_surface(pBuf, OIrrigation_Icon, "theme.order_irrigation");
  load_order_theme_surface(pBuf, ODone_Icon, "theme.order_done");
  load_order_theme_surface(pBuf, ODisband_Icon, "theme.order_disband");
  load_order_theme_surface(pBuf, OFortify_Icon, "theme.order_fortify");
  load_order_theme_surface(pBuf, OGoto_Icon, "theme.order_goto");
  load_order_theme_surface(pBuf, OGotoCity_Icon, "theme.order_goto_city");
  load_order_theme_surface(pBuf, OHomeCity_Icon, "theme.order_home");  
  load_order_theme_surface(pBuf, ONuke_Icon, "theme.order_nuke");
  load_order_theme_surface(pBuf, OParaDrop_Icon, "theme.order_paradrop");
  load_order_theme_surface(pBuf, OPatrol_Icon, "theme.order_patrol");
  load_order_theme_surface(pBuf, OPillage_Icon, "theme.order_pillage");
  load_order_theme_surface(pBuf, ORailRoad_Icon, "theme.order_build_railroad");
  load_order_theme_surface(pBuf, ORoad_Icon, "theme.order_build_road");
  load_order_theme_surface(pBuf, OSentry_Icon, "theme.order_sentry");
  load_order_theme_surface(pBuf, OUnload_Icon, "theme.order_unload");
  load_order_theme_surface(pBuf, OWait_Icon, "theme.order_wait");
  load_order_theme_surface(pBuf, OFortress_Icon, "theme.order_build_fortress");
  load_order_theme_surface(pBuf, OFallout_Icon, "theme.order_clean_fallout");
  load_order_theme_surface(pBuf, OPollution_Icon, "theme.order_clean_pollution");
  load_order_theme_surface(pBuf, OAirBase_Icon, "theme.order_build_airbase");
  load_order_theme_surface(pBuf, OTransform_Icon, "theme.order_transform");
  load_order_theme_surface(pBuf, OAddCity_Icon, "theme.order_add_to_city");
  load_order_theme_surface(pBuf, OWonder_Icon, "theme.order_carravan_wonder");
  load_order_theme_surface(pBuf, OTrade_Icon, "theme.order_carravan_trade_route");
  load_order_theme_surface(pBuf, OSpy_Icon, "theme.order_spying");
  load_order_theme_surface(pBuf, OWakeUp_Icon, "theme.order_wakeup");
  load_order_theme_surface(pBuf, OReturn_Icon, "theme.order_return");
  load_order_theme_surface(pBuf, OAirLift_Icon, "theme.order_airlift");
  load_order_theme_surface(pBuf, OLoad_Icon, "theme.order_load");
  
  /* ------------------------------ */
    
  return;
}


  Free theme memory
*******/
void tilespec_free_theme(void)
{
  if (!pTheme) {
    return;
  }

  FC_FREE(pTheme);
}

****
  Setup icons for special (non-real) technologies.
**********/
void setup_auxiliary_tech_icons(void)
{
  SDL_Color bg_color = {255, 255, 255, 136};

  SDL_Surface *pSurf;
  SDL_String16 *pStr = create_str16_from_char(_("None"), adj_font(10));
  
  pStr->style |= (TTF_STYLE_BOLD | SF_CENTER);
    
  /* create icons */
  pSurf = create_surf_alpha(adj_size(50), adj_size(50), SDL_SWSURFACE);
  SDL_FillRect(pSurf, NULL, map_rgba(pSurf->format, bg_color));
  putframe(pSurf,
           0 , 0, pSurf->w - 1, pSurf->h - 1,
           get_theme_color(COLOR_THEME_SCIENCEDLG_FRAME));

  pNeutral_Tech_Icon = SDL_DisplayFormatAlpha(pSurf);
  pNone_Tech_Icon = SDL_DisplayFormatAlpha(pSurf);    
  pFuture_Tech_Icon = SDL_DisplayFormatAlpha(pSurf);
  
  FREESURFACE(pSurf);
    
  /* None */
  pSurf = create_text_surf_from_str16(pStr);
  blit_entire_src(pSurf, pNone_Tech_Icon ,
	  (adj_size(50) - pSurf->w) / 2 , (adj_size(50) - pSurf->h) / 2);
  
  FREESURFACE(pSurf);
  
  /* TRANS: Future Technology */ 
  copy_chars_to_string16(pStr, _("FT"));
  pSurf = create_text_surf_from_str16(pStr);
  blit_entire_src(pSurf, pFuture_Tech_Icon,
	  (adj_size(50) - pSurf->w) / 2 , (adj_size(50) - pSurf->h) / 2);
  
  FREESURFACE(pSurf);
  
  FREESTRING16(pStr);
    
}

****
  Free resources associated with aux tech icons.
**********/
void free_auxiliary_tech_icons(void)
{
  FREESURFACE(pNeutral_Tech_Icon);
  FREESURFACE(pNone_Tech_Icon);
  FREESURFACE(pFuture_Tech_Icon);
}

****
  Return tech icon surface.
**********/
SDL_Surface * get_tech_icon(Tech_type_id tech)
{
  switch(tech)
  {
    case A_NONE:
    case A_UNSET:
    case A_UNKNOWN:
    case A_LAST:
      return SDL_DisplayFormatAlpha(pNone_Tech_Icon);
    case A_FUTURE:
      return SDL_DisplayFormatAlpha(pFuture_Tech_Icon);
    default:
      if (get_tech_sprite(tileset, tech)) {
        return adj_surf(GET_SURF(get_tech_sprite(tileset, tech)));
      } else {
        return SDL_DisplayFormatAlpha(pNeutral_Tech_Icon);
      }
  }
  return NULL;
}

****
  Return color associated with current tech knowledge state.
**********/
SDL_Color *get_tech_color(Tech_type_id tech_id)
{
  if (player_invention_reachable(client.conn.playing, tech_id, FALSE))
  {
    switch (player_invention_state(client.conn.playing, tech_id))
    {
      case TECH_UNKNOWN:
        return get_game_color(COLOR_REQTREE_UNKNOWN);
      case TECH_KNOWN:
        return get_game_color(COLOR_REQTREE_KNOWN);
      case TECH_PREREQS_KNOWN:
        return get_game_color(COLOR_REQTREE_PREREQS_KNOWN);
      default:
        return get_game_color(COLOR_REQTREE_BACKGROUND);
    }
  }
  return get_game_color(COLOR_REQTREE_UNREACHABLE);
}

****
  Return current city screen graphics
**********/
SDL_Surface *get_city_gfx(void)
{
  return pCity_Surf;
}

****
  Draw theme intro gfx.
**********/
void draw_intro_gfx(void)
{
  SDL_Surface *pIntro = theme_get_background(theme, BACKGROUND_MAINPAGE);

  if(pIntro->w != Main.screen->w)
  {
    SDL_Surface *pTmp = ResizeSurface(pIntro, Main.screen->w, Main.screen->h,1);
    FREESURFACE(pIntro);
    pIntro = pTmp;
  }
  
  /* draw intro gfx center in screen */
  alphablit(pIntro, NULL, Main.map, NULL);
  
  FREESURFACE(pIntro);
}
ENDREP
id: 191.5kv.r25459/15846
type: file
pred: 191.5ck.r21074/15224
count: 64
text: 25459 0 15818 19325 d741e1c21c720d6d8b41619538c6f794
props: 10141 49776 111 0 0b146d6d431c2ad00452618c43381276
cpath: /branches/S2_5/client/gui-sdl/gui_tilespec.c
copyroot: 22812 /branches/S2_5

PLAIN
K 11
Makefile.am
V 25
file 16u.5kv.r25194/19087
K 11
alphablit.c
V 24
file 3be.5kv.r24471/4610
K 8
canvas.c
V 26
file 39i.5ck.r19259/464302
K 8
canvas.h
V 23
file 39j.0.r13354/56918
K 16
caravan_dialog.c
V 25
file 3bp.5ck.r22199/37022
K 10
chatline.c
V 25
file 16y.5kv.r25000/22568
K 10
chatline.h
V 26
file 16z.5ck.r16199/137581
K 9
citydlg.c
V 25
file 170.5kv.r25251/53451
K 9
citydlg.h
V 23
file 171.0.r13354/55222
K 9
cityrep.c
V 24
file 172.5kv.r23145/3987
K 9
cityrep.h
V 26
file 173.5ck.r18101/104032
K 8
cma_fe.c
V 25
file 174.5ck.r20334/55463
K 8
cma_fe.h
V 23
file 175.0.r11361/43495
K 8
colors.c
V 25
file 176.5ck.r20334/56485
K 8
colors.h
V 25
file 177.5ck.r19158/41252
K 12
connectdlg.c
V 24
file 178.5ck.r20741/1737
K 12
connectdlg.h
V 23
file 179.0.r12349/45319
K 9
dialogs.c
V 25
file 17a.5kv.r25251/52908
K 9
dialogs.h
V 25
file 17b.5ck.r20963/50147
K 10
diplodlg.c
V 23
file 17c.5kv.r23457/472
K 10
diplodlg.h
V 22
file 17d.0.r11584/2869
K 17
diplomat_dialog.c
V 25
file 3bn.5kv.r24484/24134
K 9
finddlg.c
V 25
file 17e.5ck.r21074/16515
K 9
finddlg.h
V 20
file 2d8.0.r5991/702
K 9
gotodlg.c
V 25
file 17f.5ck.r21074/14971
K 9
gotodlg.h
V 22
file 17g.0.r6515/58208
K 10
graphics.c
V 24
file 17h.5kv.r25124/6503
K 10
graphics.h
V 24
file 17i.5ck.r19390/4529
K 11
gui_iconv.c
V 24
file 17l.5kv.r25124/6773
K 11
gui_iconv.h
V 23
file 17m.0.r13354/66657
K 8
gui_id.h
V 23
file 17n.5ck.r18560/706
K 10
gui_main.c
V 25
file 17o.5ck.r21074/15483
K 10
gui_main.h
V 25
file 17p.5ck.r17169/47828
K 11
gui_mouse.c
V 25
file 3ca.5ck.r21074/15741
K 11
gui_mouse.h
V 24
file 3cb.0.r12670/112397
K 12
gui_string.c
V 22
file 17r.5kv.r24164/52
K 12
gui_string.h
V 23
file 17s.5kv.r24014/299
K 14
gui_tilespec.c
V 25
file 191.5kv.r25459/15846
K 14
gui_tilespec.h
V 24
file 192.5kv.r23145/3714
K 11
happiness.c
V 25
file 17x.5ck.r22264/31615
K 11
happiness.h
V 23
file 17y.0.r11361/41867
K 9
helpdlg.c
V 25
file 17z.5kv.r25251/53181
K 9
helpdlg.h
V 23
file 180.0.r11361/47416
K 10
inputdlg.c
V 26
file 181.5ck.r19259/472952
K 10
inputdlg.h
V 23
file 182.0.r5500/260641
K 10
inteldlg.c
V 23
file 183.5ck.r20726/159
K 10
inteldlg.h
V 22
file 2d9.0.r11409/2687
K 12
luaconsole.c
V 24
file 768.5ck.r20307/1888
K 12
luaconsole.h
V 24
file 769.5ck.r20307/2055
K 9
mapctrl.c
V 25
file 184.5ck.r20831/51867
K 9
mapctrl.h
V 23
file 185.0.r13354/63700
K 9
mapview.c
V 25
file 186.5kv.r25251/53723
K 9
mapview.h
V 23
file 187.0.r13354/56676
K 6
menu.c
V 25
file 188.5ck.r22199/37283
K 6
menu.h
V 25
file 189.5bk.r13856/57405
K 12
messagedlg.c
V 26
file 18a.5ck.r19259/474489
K 12
messagedlg.h
V 22
file 2da.0.r5989/48394
K 12
messagewin.c
V 25
file 18b.5ck.r20683/34064
K 12
messagewin.h
V 25
file 18c.5ck.r18082/39362
K 5
mmx.h
V 23
file 2e1.0.r6286/134429
K 11
optiondlg.c
V 25
file 18d.5ck.r20683/33300
K 11
optiondlg.h
V 25
file 18e.5ck.r17169/46811
K 7
pages.c
V 23
file 2qg.5kv.r23612/556
K 7
pages.h
V 22
file 2qh.0.r8639/16416
K 8
plrdlg.c
V 23
file 18f.5ck.r19391/281
K 8
plrdlg.h
V 22
file 18g.0.r6387/81301
K 10
ratesdlg.h
V 22
file 2db.0.r5989/47726
K 10
repodlgs.c
V 23
file 18i.5kv.r24511/227
K 10
repodlgs.h
V 25
file 18j.5ck.r18076/43515
K 14
spaceshipdlg.c
V 26
file 18m.5ck.r19259/473719
K 14
spaceshipdlg.h
V 23
file 18n.0.r5500/263363
K 8
sprite.c
V 24
file 39k.5ck.r19390/3521
K 8
sprite.h
V 24
file 39l.5ck.r19390/3772
K 18
themebackgrounds.c
V 26
file 3ff.5ck.r19259/465848
K 18
themebackgrounds.h
V 25
file 3fg.5bk.r13794/17440
K 13
themecolors.c
V 25
file 392.5ck.r20963/49888
K 13
themecolors.h
V 25
file 393.5ck.r20963/50401
K 8
themes.c
V 26
file 38p.5ck.r19259/466111
K 11
themespec.c
V 23
file 390.5ck.r21107/120
K 11
themespec.h
V 26
file 391.5ck.r16578/464018
K 11
unistring.c
V 26
file 18o.5ck.r19259/465075
K 11
unistring.h
V 23
file 18p.0.r13481/30205
K 14
voteinfo_bar.c
V 26
file 4ha.5ck.r19259/468679
K 14
voteinfo_bar.h
V 25
file 4hb.5ck.r16063/63032
K 8
widget.c
V 26
file 3fu.5ck.r19259/465592
K 8
widget.h
V 25
file 3fv.5ck.r18995/17029
K 15
widget_button.c
V 26
file 3fh.5ck.r19259/469137
K 15
widget_button.h
V 24
file 3g7.0.r12670/113556
K 17
widget_checkbox.c
V 26
file 3fi.5ck.r19259/475566
K 17
widget_checkbox.h
V 24
file 3g8.0.r12670/106620
K 14
widget_combo.c
V 26
file 4k3.5ck.r19259/471979
K 14
widget_combo.h
V 25
file 4k4.5ck.r17230/40775
K 13
widget_core.c
V 26
file 3fj.5ck.r19259/470438
K 13
widget_edit.c
V 24
file 3fk.5ck.r20741/1480
K 13
widget_edit.h
V 24
file 3g9.0.r12670/115595
K 13
widget_icon.c
V 26
file 3fl.5ck.r19259/467140
K 13
widget_icon.h
V 24
file 3ga.0.r12670/112107
K 14
widget_label.c
V 26
file 3fm.5ck.r19259/465330
K 14
widget_label.h
V 24
file 3gb.0.r12670/110079
K 10
widget_p.h
V 24
file 3fn.0.r12670/107197
K 18
widget_scrollbar.c
V 25
file 3fo.5df.r20683/35037
K 18
widget_scrollbar.h
V 24
file 3gc.0.r12670/116811
K 15
widget_window.c
V 26
file 3fp.5ck.r19259/464041
K 15
widget_window.h
V 23
file 3gd.0.r12699/32533
K 7
wldlg.c
V 22
file 18q.5kv.r25406/60
K 7
wldlg.h
V 26
file 18r.5ck.r16285/100508
END
ENDREP
id: 16t.5kv.r25459/21111
type: dir
pred: 16t.5kv.r25406/5310
count: 756
text: 25459 16120 4978 4978 069176be21d1c85226183093e1a23578
props: 11108 12869 78 0 a27c61ac5fddbd709df8c1876129f940
cpath: /branches/S2_5/client/gui-sdl
copyroot: 22812 /branches/S2_5

PLAIN
K 11
Makefile.am
V 23
file 5f.5kv.r25194/7110
K 6
agents
V 22
dir zf.5kv.r23841/2148
K 11
attribute.c
V 23
file xh.5kv.r23780/1181
K 11
attribute.h
V 24
file xi.5ck.r18863/23649
K 7
audio.c
V 24
file 139.5ck.r22180/7668
K 7
audio.h
V 24
file 13a.5ck.r22180/7911
K 12
audio_none.c
V 26
file 13d.5ck.r19259/462511
K 12
audio_none.h
V 25
file 13e.5ck.r18863/20841
K 11
audio_sdl.c
V 25
file 13f.5ck.r19354/73618
K 11
audio_sdl.h
V 25
file 13g.5ck.r18863/23885
K 17
chatline_common.c
V 24
file 14q.5kv.r24896/5437
K 17
chatline_common.h
V 24
file 14r.5kv.r24893/5197
K 16
citydlg_common.c
V 23
file z4.5kv.r24934/8881
K 16
citydlg_common.h
V 24
file z5.5ck.r18863/18619
K 13
cityrepdata.c
V 22
file mb.5kv.r24130/185
K 13
cityrepdata.h
V 24
file mc.5ck.r18863/19121
K 13
client_main.c
V 23
file 2f.5m3.r25133/2645
K 13
client_main.h
V 24
file hz.5cq.r18863/25358
K 8
climap.c
V 24
file 197.5ck.r20232/3008
K 8
climap.h
V 25
file 198.5ck.r18863/24126
K 9
climisc.c
V 23
file d5.5kv.r24896/5700
K 9
climisc.h
V 24
file i0.5ck.r20865/60492
K 8
clinet.c
V 23
file hc.5ck.r22513/7891
K 8
clinet.h
V 24
file i1.5ck.r18863/24866
K 15
colors_common.c
V 24
file 33a.5kv.r22856/3020
K 15
colors_common.h
V 25
file 33b.5kv.r24137/11622
K 19
connectdlg_common.c
V 23
file 2fw.5kv.r24353/536
K 19
connectdlg_common.h
V 25
file 2fx.5ck.r19154/53802
K 9
control.c
V 24
file gz.5kv.r25165/29446
K 9
control.h
V 23
file i2.5kv.r24694/7006
K 7
dummy.c
V 23
file 4f9.5ck.r15641/551
K 12
dummycxx.cpp
V 23
file 6kr.5ck.r18947/939
K 8
editor.c
V 23
file 3bg.5kv.r24535/192
K 8
editor.h
V 25
file 3bh.5kv.r23106/10680
K 11
ggzclient.c
V 26
file 394.5ck.r20126/104106
K 11
ggzclient.h
V 25
file 395.5ck.r18863/21083
K 17
global_worklist.c
V 26
file 4i6.5ck.r19259/493810
K 17
global_worklist.h
V 25
file 4i7.5ck.r18863/22960
K 6
goto.c
V 23
file vu.5kv.r24694/7264
K 6
goto.h
V 24
file vv.5ck.r20865/49000
K 11
gui-gtk-2.0
V 23
dir zs.5kv.r25349/15629
K 11
gui-gtk-3.0
V 23
dir zs.5kx.r25349/10977
K 6
gui-qt
V 24
dir 6ie.5kv.r25251/67045
K 7
gui-sdl
V 24
dir 16t.5kv.r25459/21111
K 8
gui-stub
V 23
dir mh.5kv.r25194/10355
K 7
gui-xaw
V 23
dir 9o.5kv.r25349/19469
K 14
gui_cbsetter.c
V 24
file a3c.5kv.r25000/7316
K 14
gui_cbsetter.h
V 25
file a3d.5ck.r20753/37736
K 15
gui_interface.c
V 25
file 6jm.5ni.r25000/22121
K 15
gui_interface.h
V 25
file 6jn.5nj.r25000/22345
K 10
helpdata.c
V 23
file h1.5kv.r25448/4610
K 10
helpdata.h
V 24
file i3.5ck.r21778/46227
K 7
include
V 23
dir b8.5kv.r25000/21864
K 19
luaconsole_common.c
V 24
file 75z.5kv.r24896/5958
K 19
luaconsole_common.h
V 25
file 760.5ck.r20306/31022
K 9
luascript
V 24
dir 761.5kv.r24746/14570
K 16
mapctrl_common.c
V 25
file 15m.5ck.r20865/59741
K 16
mapctrl_common.h
V 25
file 15n.5ck.r19893/12504
K 16
mapview_common.c
V 23
file z2.5kv.r24606/9847
K 16
mapview_common.h
V 24
file z3.5ck.r20392/39510
K 19
messagewin_common.c
V 25
file 14s.5ck.r19354/71979
K 19
messagewin_common.h
V 25
file 14t.5ck.r18863/21579
K 9
options.c
V 23
file dc.5kv.r24526/7913
K 9
options.h
V 23
file i4.5kv.r23149/6288
K 17
overview_common.c
V 25
file 2yk.5kv.r23660/90028
K 17
overview_common.h
V 24
file 2yl.5ck.r19511/5441
K 10
packhand.c
V 22
file n.5kv.r25166/3196
K 10
packhand.h
V 24
file i5.5ck.r18863/20596
K 15
plrdlg_common.c
V 23
file 14u.5kv.r23427/983
K 15
plrdlg_common.h
V 25
file 14v.5ck.r18863/21328
K 17
repodlgs_common.c
V 25
file 11i.5ck.r22325/76263
K 17
repodlgs_common.h
V 25
file 11j.5ck.r19589/11861
K 9
reqtree.c
V 25
file 2ym.5kv.r24137/11365
K 9
reqtree.h
V 24
file 2yn.5ck.r19057/3837
K 9
servers.c
V 25
file 33x.5kv.r25000/28091
K 9
servers.h
V 25
file 33y.5ck.r20478/36372
K 6
text.c
V 25
file 2g3.5kv.r24188/36051
K 6
text.h
V 25
file 2g4.5ck.r22264/31375
K 15
themes_common.c
V 25
file 352.5ck.r19354/73121
K 15
themes_common.h
V 25
file 353.5ck.r18863/22710
K 10
tilespec.c
V 25
file hl.5kv.r24584/229048
K 10
tilespec.h
V 23
file i6.5kv.r23825/6831
K 19
unitselect_common.c
V 24
file 76v.5ck.r20397/3580
K 19
unitselect_common.h
V 24
file 76w.5ck.r20397/3746
K 14
update_queue.c
V 25
file 4jw.5ck.r22413/14226
K 14
update_queue.h
V 25
file 4jx.5ck.r18863/22078
K 10
voteinfo.c
V 25
file 4fe.5ck.r19354/72931
K 10
voteinfo.h
V 25
file 4ff.5ck.r18863/22523
END
ENDREP
id: d.5kv.r25459/25595
type: dir
pred: d.5kv.r25448/9094
count: 5832
text: 25459 21370 4212 4212 9acd62eeaa4bc3a06cbfba5ed1482003
props: 23991 877 341 0 4a292777c297b001f37cdd3988879aee
cpath: /branches/S2_5/client
copyroot: 22812 /branches/S2_5

PLAIN
K 9
ABOUT-NLS
V 24
file fu.5kv.r23463/86338
K 7
AUTHORS
V 24
file 5u.5ck.r22143/14016
K 7
COPYING
V 19
file 1h.0.r9643/400
K 9
ChangeLog
V 26
file 6l.5ck.r22811/6091752
K 7
INSTALL
V 22
file 6.5kv.r25136/6183
K 11
Makefile.am
V 23
file 59.5kv.r25144/3611
K 4
NEWS
V 24
file 6m.5kv.r23372/75525
K 6
README
V 20
file 7.0.r4421/96382
K 2
ai
V 21
dir 8.5kv.r25368/2783
K 10
autogen.sh
V 23
file 12o.5kv.r24092/228
K 9
bootstrap
V 23
dir 2p5.5kv.r25144/6959
K 6
client
V 22
dir d.5kv.r25459/25595
K 6
common
V 22
dir p.5kv.r25427/12885
K 12
configure.ac
V 23
file 149.5kv.r25403/251
K 4
data
V 22
dir w.5kv.r25455/11426
K 6
debian
V 22
dir 5w.5kv.r23304/4091
K 12
dependencies
V 23
dir 2yu.5kv.r25052/1755
K 11
diff_ignore
V 24
file qq.5ck.r21039/26581
K 3
doc
V 22
dir k7.5kv.r25455/7323
K 10
fc_version
V 23
file 2lo.5kw.r24989/115
K 2
m4
V 23
dir 12p.5kv.r25364/4508
K 7
scripts
V 22
dir 2yo.5kv.r24500/876
K 6
server
V 21
dir z.5kv.r25456/4100
K 5
tests
V 22
dir 2g9.5kv.r25380/686
K 5
tools
V 24
dir 4pj.5lo.r25194/42950
K 12
translations
V 26
dir t0n.5kv.r25443/1611733
K 7
utility
V 22
dir 1c.5kv.r25337/3468
K 3
vms
V 25
dir u9.5ck.r21528/1396085
K 5
win32
V 23
dir 2eu.5kv.r25408/1530
END
ENDREP
id: 3.5kv.r25459/27048
type: dir
pred: 3.5kv.r25456/5549
count: 17075
text: 25459 25842 1193 1193 3974248b5d8d64b38eccba6d3df4751c
props: 20140 3888 282 0 e4bb46e81629a60eef613b169b23a9ea
cpath: /branches/S2_5
copyroot: 22812 /branches/S2_5

PLAIN
K 5
S1_14
V 21
dir 3.21.r18109/18803
K 4
S2_0
V 21
dir 3.10x.r21862/4178
K 4
S2_1
V 22
dir 3.59e.r20026/11014
K 4
S2_2
V 21
dir 3.5cy.r21861/5036
K 4
S2_3
V 21
dir 3.5f2.r24391/5183
K 4
S2_4
V 22
dir 3.5ii.r25451/13857
K 4
S2_5
V 22
dir 3.5kv.r25459/27048
K 11
freeciv-web
V 22
dir 3.5bl.r13594/14918
END
ENDREP
id: 1.0.r25459/27608
type: dir
pred: 1.0.r25456/6107
count: 7609
text: 25459 27290 305 305 c9fe028bc8a3e82755ad600272b937e3
cpath: /branches
copyroot: 0 /

PLAIN
K 8
branches
V 20
dir 1.0.r25459/27608
K 4
tags
V 19
dir 2.0.r24394/6245
K 5
trunk
V 22
dir 3.5ck.r25458/19993
K 7
website
V 21
dir 3ge.0.r22980/2263
END
ENDREP
id: 0.0.r25459/27931
type: dir
pred: 0.0.r25458/20385
count: 25459
text: 25459 27764 154 154 a135eec9e46418f70338af50ec3b63c6
cpath: /
copyroot: 0 /

191.5kv.t25458-1 modify true false /branches/S2_5/client/gui-sdl/gui_tilespec.c


27931 28081
