Tables display implemented. Flags added.
@ -98,7 +98,7 @@
|
||||
<signal name="activate" handler="on_start_editor_activate" last_modification_time="Sun, 30 May 2004 19:58:16 GMT"/>
|
||||
|
||||
<child internal-child="image">
|
||||
<widget class="GtkImage" id="image209">
|
||||
<widget class="GtkImage" id="image217">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-preferences</property>
|
||||
<property name="icon_size">1</property>
|
||||
@ -119,7 +119,7 @@
|
||||
<signal name="activate" handler="on_start_update_activate" last_modification_time="Mon, 13 Sep 2004 12:30:42 GMT"/>
|
||||
|
||||
<child internal-child="image">
|
||||
<widget class="GtkImage" id="image210">
|
||||
<widget class="GtkImage" id="image218">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-refresh</property>
|
||||
<property name="icon_size">1</property>
|
||||
@ -168,7 +168,7 @@
|
||||
<signal name="activate" handler="on_menu_preferences_activate" last_modification_time="Sun, 02 Jan 2005 15:30:45 GMT"/>
|
||||
|
||||
<child internal-child="image">
|
||||
<widget class="GtkImage" id="image211">
|
||||
<widget class="GtkImage" id="image219">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-preferences</property>
|
||||
<property name="icon_size">1</property>
|
||||
@ -250,21 +250,22 @@
|
||||
</widget>
|
||||
</child>
|
||||
|
||||
<child>
|
||||
<widget class="GtkMenuItem" id="menu_my_league_results">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">My league results</property>
|
||||
<property name="use_underline">True</property>
|
||||
<signal name="activate" handler="on_menu_my_league_results_activate" last_modification_time="Sun, 02 Jan 2005 15:55:13 GMT"/>
|
||||
</widget>
|
||||
</child>
|
||||
|
||||
<child>
|
||||
<widget class="GtkMenuItem" id="menu_tables">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">Tables</property>
|
||||
<property name="use_underline">True</property>
|
||||
<signal name="activate" handler="on_menu_tables_activate" last_modification_time="Sun, 02 Jan 2005 15:38:39 GMT"/>
|
||||
<accelerator key="F5" modifiers="0" signal="activate"/>
|
||||
</widget>
|
||||
</child>
|
||||
|
||||
<child>
|
||||
<widget class="GtkMenuItem" id="menu_my_league_results">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">My league results</property>
|
||||
<property name="use_underline">True</property>
|
||||
<signal name="activate" handler="on_menu_my_league_results_activate" last_modification_time="Sun, 02 Jan 2005 15:55:13 GMT"/>
|
||||
</widget>
|
||||
</child>
|
||||
|
||||
@ -653,7 +654,7 @@
|
||||
<accelerator key="F9" modifiers="0" signal="activate"/>
|
||||
|
||||
<child internal-child="image">
|
||||
<widget class="GtkImage" id="image212">
|
||||
<widget class="GtkImage" id="image220">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-go-forward</property>
|
||||
<property name="icon_size">1</property>
|
||||
@ -675,7 +676,7 @@
|
||||
<accelerator key="F8" modifiers="0" signal="activate"/>
|
||||
|
||||
<child internal-child="image">
|
||||
<widget class="GtkImage" id="image213">
|
||||
<widget class="GtkImage" id="image221">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-go-back</property>
|
||||
<property name="icon_size">1</property>
|
||||
@ -697,7 +698,7 @@
|
||||
<accelerator key="F12" modifiers="0" signal="activate"/>
|
||||
|
||||
<child internal-child="image">
|
||||
<widget class="GtkImage" id="image214">
|
||||
<widget class="GtkImage" id="image222">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-justify-fill</property>
|
||||
<property name="icon_size">1</property>
|
||||
@ -1843,7 +1844,6 @@
|
||||
|
||||
<child>
|
||||
<widget class="GtkButton" id="button_browse_back">
|
||||
<property name="border_width">2</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="tooltip" translatable="yes">Previous (Q)</property>
|
||||
<property name="can_focus">True</property>
|
||||
@ -1873,7 +1873,6 @@
|
||||
|
||||
<child>
|
||||
<widget class="GtkButton" id="button_browse_forward">
|
||||
<property name="border_width">2</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="tooltip" translatable="yes">Next (W)</property>
|
||||
<property name="can_focus">True</property>
|
||||
|
@ -68,6 +68,24 @@ callback_show_next_live_game(void)
|
||||
void
|
||||
callback_player_clicked(gint idx, GdkEventButton *event)
|
||||
{
|
||||
/*d*/
|
||||
gint i,j,k, sum=0, cnt;
|
||||
|
||||
for(i=0;i<ligs->len;i++)
|
||||
{
|
||||
sum = cnt = 0;
|
||||
for(j=0;j<lig(i).teams->len;j++)
|
||||
{
|
||||
for(k=0;k<g_array_index(lig(i).teams, Team, j).players->len;k++)
|
||||
{
|
||||
sum += g_array_index(g_array_index(lig(i).teams, Team, j).players, Player, k).wage;
|
||||
}
|
||||
cnt++;
|
||||
}
|
||||
|
||||
printf("%s %d\n", lig(i).name->str, (gint)rint((gfloat)sum / (gfloat)cnt));
|
||||
}
|
||||
|
||||
/** Only accept single-clicks right now. */
|
||||
if(event->type != GDK_BUTTON_PRESS)
|
||||
return;
|
||||
@ -137,3 +155,31 @@ callback_show_fixtures(gint type)
|
||||
stat2 = fix->week_number;
|
||||
stat3 = fix->week_round_number;
|
||||
}
|
||||
|
||||
/** Show tables.
|
||||
@type Integer telling us whether to show the current user's
|
||||
tables or those of the previous/next league/cup. */
|
||||
void
|
||||
callback_show_tables(gint type)
|
||||
{
|
||||
gint clid = -1;
|
||||
|
||||
if(type == SHOW_CURRENT)
|
||||
clid = usr(current_user).tm->clid;
|
||||
else if(type == SHOW_NEXT_LEAGUE)
|
||||
{
|
||||
clid = league_cup_get_next_clid(stat1);
|
||||
while(clid >= ID_CUP_START && cup_from_clid(clid)->tables->len == 0)
|
||||
clid = league_cup_get_next_clid(clid);
|
||||
}
|
||||
else if(type == SHOW_PREVIOUS_LEAGUE)
|
||||
{
|
||||
clid = league_cup_get_previous_clid(stat1);
|
||||
while(clid >= ID_CUP_START && cup_from_clid(clid)->tables->len == 0)
|
||||
clid = league_cup_get_previous_clid(clid);
|
||||
}
|
||||
|
||||
stat1 = clid;
|
||||
|
||||
treeview_show_table(GTK_TREE_VIEW(lookup_widget(window.main, "treeview_right")), clid);
|
||||
}
|
||||
|
@ -15,4 +15,7 @@ callback_show_last_match(void);
|
||||
void
|
||||
callback_show_fixtures(gint type);
|
||||
|
||||
void
|
||||
callback_show_tables(gint type);
|
||||
|
||||
#endif
|
||||
|
@ -1,7 +1,6 @@
|
||||
#include "callbacks.h"
|
||||
#include "callback_func.h"
|
||||
#include "enums.h"
|
||||
#include "fixture.h"
|
||||
#include "game_gui.h"
|
||||
#include "main.h"
|
||||
#include "team.h"
|
||||
@ -197,7 +196,7 @@ on_button_browse_forward_clicked (GtkButton *button,
|
||||
switch(stat0)
|
||||
{
|
||||
case STATUS_SHOW_FIXTURES:
|
||||
callback_show_fixtures(SHOW_FIX_NEXT);
|
||||
callback_show_fixtures(SHOW_NEXT);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -210,7 +209,7 @@ on_button_browse_back_clicked (GtkButton *button,
|
||||
switch(stat0)
|
||||
{
|
||||
case STATUS_SHOW_FIXTURES:
|
||||
callback_show_fixtures(SHOW_FIX_PREVIOUS);
|
||||
callback_show_fixtures(SHOW_PREVIOUS);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -224,7 +223,10 @@ on_button_cl_back_clicked (GtkButton *button,
|
||||
switch(stat0)
|
||||
{
|
||||
case STATUS_SHOW_FIXTURES:
|
||||
callback_show_fixtures(SHOW_FIX_PREVIOUS_LEAGUE);
|
||||
callback_show_fixtures(SHOW_PREVIOUS_LEAGUE);
|
||||
break;
|
||||
case STATUS_SHOW_TABLES:
|
||||
callback_show_tables(SHOW_PREVIOUS_LEAGUE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -237,7 +239,10 @@ on_button_cl_forward_clicked (GtkButton *button,
|
||||
switch(stat0)
|
||||
{
|
||||
case STATUS_SHOW_FIXTURES:
|
||||
callback_show_fixtures(SHOW_FIX_NEXT_LEAGUE);
|
||||
callback_show_fixtures(SHOW_NEXT_LEAGUE);
|
||||
break;
|
||||
case STATUS_SHOW_TABLES:
|
||||
callback_show_tables(SHOW_NEXT_LEAGUE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -288,14 +293,15 @@ on_menu_fixtures_activate (GtkMenuItem *menuitem,
|
||||
gpointer user_data)
|
||||
{
|
||||
stat0 = STATUS_SHOW_FIXTURES;
|
||||
callback_show_fixtures(SHOW_FIX_TEAM);
|
||||
callback_show_fixtures(SHOW_TEAM);
|
||||
}
|
||||
|
||||
void
|
||||
on_menu_tables_activate (GtkMenuItem *menuitem,
|
||||
gpointer user_data)
|
||||
{
|
||||
|
||||
stat0 = STATUS_SHOW_TABLES;
|
||||
callback_show_tables(SHOW_CURRENT);
|
||||
}
|
||||
|
||||
|
||||
|
@ -27,7 +27,6 @@ cup_new(void)
|
||||
new.last_week = new.week_gap = -1;
|
||||
new.yellow_red = 1000;
|
||||
new.skill_diff = 0;
|
||||
new.average_capacity = -1;
|
||||
|
||||
new.choose_teams = g_array_new(FALSE, FALSE, sizeof(CupChooseTeam));
|
||||
new.choose_team_user = cup_choose_team_new();
|
||||
@ -174,7 +173,7 @@ cup_load_choose_teams(Cup *cup)
|
||||
}
|
||||
|
||||
for(i=0;i<cup->teams->len;i++)
|
||||
team_generate_players(&g_array_index(cup->teams, Team, i));
|
||||
team_generate_players_stadium(&g_array_index(cup->teams, Team, i));
|
||||
|
||||
/*d*/
|
||||
/* printf("\n%s\n", cup->name->str); */
|
||||
|
@ -89,8 +89,6 @@ typedef struct
|
||||
the league with highest average skill.
|
||||
Default: 0. */
|
||||
gint skill_diff;
|
||||
/** Average stadium capacity. Default: -1. */
|
||||
gint average_capacity;
|
||||
/** Array with rules how teams are chosen.
|
||||
@see #CupChooseTeam */
|
||||
GArray *choose_teams;
|
||||
|
14
src/enums.h
@ -61,7 +61,21 @@ enum Status0Value
|
||||
STATUS_SHOW_LAST_MATCH,
|
||||
STATUS_SHOW_LAST_MATCH_STATS,
|
||||
STATUS_SHOW_FIXTURES,
|
||||
STATUS_SHOW_TABLES,
|
||||
STATUS_END
|
||||
};
|
||||
|
||||
/** Enum used to determine what kind of fixtures or
|
||||
tables to show (e.g. when an arrow is clicked on). */
|
||||
enum ShowType
|
||||
{
|
||||
SHOW_TEAM = 0,
|
||||
SHOW_CURRENT,
|
||||
SHOW_NEXT,
|
||||
SHOW_PREVIOUS,
|
||||
SHOW_NEXT_LEAGUE,
|
||||
SHOW_PREVIOUS_LEAGUE,
|
||||
SHOW_END
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -165,7 +165,7 @@ fixture_get_cup_round_winners(const Cup *cup)
|
||||
const CupRound *cupround = &g_array_index(cup->rounds, CupRound, round);
|
||||
|
||||
if(cupround->round_robin_number_of_groups > 0)
|
||||
return fixture_get_round_robin_advance(cup);
|
||||
return fixture_get_round_robin_advance(cup, round);
|
||||
|
||||
array = g_ptr_array_new();
|
||||
|
||||
@ -204,13 +204,13 @@ fixture_get_cup_round_winners(const Cup *cup)
|
||||
/** Return an array of teams advancing from a round robin
|
||||
stage of a cup.
|
||||
@param cup The cup.
|
||||
@param round The cup round.
|
||||
@return The pointers to the teams. */
|
||||
GPtrArray*
|
||||
fixture_get_round_robin_advance(const Cup *cup)
|
||||
fixture_get_round_robin_advance(const Cup *cup, gint round)
|
||||
{
|
||||
gint i, j;
|
||||
GArray *fixtures = cup->fixtures;
|
||||
gint round = g_array_index(fixtures, Fixture, fixtures->len - 1).round;
|
||||
GPtrArray *array = g_ptr_array_new();
|
||||
const CupRound *cupround = &g_array_index(cup->rounds, CupRound, round);
|
||||
GArray *best_advance = g_array_new(FALSE, FALSE, sizeof(TableElement));
|
||||
@ -828,7 +828,7 @@ fixture_get_previous(gint clid, gint week_number, gint week_round_number)
|
||||
@param clid The id of the current league/cup we're showing.
|
||||
@param week_number The week we're showing.
|
||||
@param week_round_number The round we're showing.
|
||||
@param tm A team pointer (for the case SHOW_FIX_TEAM).
|
||||
@param tm A team pointer (for the case SHOW_TEAM).
|
||||
@return A fixture pointer or NULL. */
|
||||
Fixture*
|
||||
fixture_get(gint type, gint clid, gint week_number, gint week_round_number, const Team *tm)
|
||||
@ -836,29 +836,29 @@ fixture_get(gint type, gint clid, gint week_number, gint week_round_number, cons
|
||||
Fixture *fix = NULL;
|
||||
gint new_clid = -1;
|
||||
|
||||
if(type == SHOW_FIX_TEAM)
|
||||
if(type == SHOW_TEAM)
|
||||
{
|
||||
fix = team_get_fixture(tm, TRUE);
|
||||
if(fix == NULL)
|
||||
fix = team_get_fixture(tm, FALSE);
|
||||
}
|
||||
else if(type == SHOW_FIX_CURRENT)
|
||||
else if(type == SHOW_CURRENT)
|
||||
{
|
||||
fix = league_cup_get_previous_fixture(clid, week_number, week_round_number);
|
||||
if(fix == NULL)
|
||||
fix = league_cup_get_next_fixture(clid, week_number, week_round_number);
|
||||
}
|
||||
else if(type == SHOW_FIX_NEXT)
|
||||
else if(type == SHOW_NEXT)
|
||||
fix = fixture_get_next(clid, week_number, week_round_number);
|
||||
else if(type == SHOW_FIX_PREVIOUS)
|
||||
else if(type == SHOW_PREVIOUS)
|
||||
fix = fixture_get_previous(clid, week_number, week_round_number);
|
||||
else if(type == SHOW_FIX_NEXT_LEAGUE ||
|
||||
type == SHOW_FIX_PREVIOUS_LEAGUE)
|
||||
else if(type == SHOW_NEXT_LEAGUE ||
|
||||
type == SHOW_PREVIOUS_LEAGUE)
|
||||
{
|
||||
new_clid = (type == SHOW_FIX_NEXT_LEAGUE) ?
|
||||
new_clid = (type == SHOW_NEXT_LEAGUE) ?
|
||||
league_cup_get_next_clid(clid):
|
||||
league_cup_get_previous_clid(clid);
|
||||
fix = fixture_get(SHOW_FIX_CURRENT, new_clid, week, week_round, NULL);
|
||||
fix = fixture_get(SHOW_CURRENT, new_clid, week, week_round, NULL);
|
||||
}
|
||||
|
||||
if(fix == NULL)
|
||||
|
@ -6,17 +6,6 @@
|
||||
#include "fixture_struct.h"
|
||||
#include "league_struct.h"
|
||||
|
||||
enum ShowFixType
|
||||
{
|
||||
SHOW_FIX_TEAM = 0,
|
||||
SHOW_FIX_CURRENT,
|
||||
SHOW_FIX_NEXT,
|
||||
SHOW_FIX_PREVIOUS,
|
||||
SHOW_FIX_NEXT_LEAGUE,
|
||||
SHOW_FIX_PREVIOUS_LEAGUE,
|
||||
SHOW_FIX_END
|
||||
};
|
||||
|
||||
void
|
||||
fixture_write_league_fixtures(League *league);
|
||||
|
||||
@ -52,7 +41,7 @@ GPtrArray*
|
||||
fixture_get_cup_round_winners(const Cup *cup);
|
||||
|
||||
GPtrArray*
|
||||
fixture_get_round_robin_advance(const Cup *cup);
|
||||
fixture_get_round_robin_advance(const Cup *cup, gint round);
|
||||
|
||||
Team*
|
||||
fixture_winner_of(const Fixture *fix);
|
||||
|
@ -146,12 +146,11 @@ void
|
||||
free_league(League *league)
|
||||
{
|
||||
gint i;
|
||||
GString **strings[7] =
|
||||
GString **strings[6] =
|
||||
{&league->name,
|
||||
&league->short_name,
|
||||
&league->symbol,
|
||||
&league->sid,
|
||||
&league->prom_rel.prom_games_cup_sid,
|
||||
&league->prom_rel.prom_games_dest_sid,
|
||||
&league->table.name};
|
||||
GArray **arrays[3] =
|
||||
@ -159,7 +158,7 @@ free_league(League *league)
|
||||
&league->prom_rel.elements,
|
||||
&league->table.elements};
|
||||
|
||||
for(i=0;i<7;i++)
|
||||
for(i=0;i<6;i++)
|
||||
free_g_string(strings[i]);
|
||||
|
||||
if(league->teams != NULL)
|
||||
|
@ -42,15 +42,15 @@ create_main_window (void)
|
||||
GtkWidget *trennlinie1;
|
||||
GtkWidget *separatormenuitem1;
|
||||
GtkWidget *start_editor;
|
||||
GtkWidget *image209;
|
||||
GtkWidget *image217;
|
||||
GtkWidget *start_update;
|
||||
GtkWidget *image210;
|
||||
GtkWidget *image218;
|
||||
GtkWidget *trennlinie2;
|
||||
GtkWidget *menu_quit;
|
||||
GtkWidget *menu_options;
|
||||
GtkWidget *menu_options_menu;
|
||||
GtkWidget *menu_preferences;
|
||||
GtkWidget *image211;
|
||||
GtkWidget *image219;
|
||||
GtkWidget *trennlinie7;
|
||||
GtkWidget *menu_notify;
|
||||
GtkWidget *menu_job_offers;
|
||||
@ -59,8 +59,8 @@ create_main_window (void)
|
||||
GtkWidget *menu_figures;
|
||||
GtkWidget *menu_figures_menu;
|
||||
GtkWidget *menu_fixtures;
|
||||
GtkWidget *menu_my_league_results;
|
||||
GtkWidget *menu_tables;
|
||||
GtkWidget *menu_my_league_results;
|
||||
GtkWidget *players1;
|
||||
GtkWidget *menu_season_history;
|
||||
GtkWidget *menu_team;
|
||||
@ -109,11 +109,11 @@ create_main_window (void)
|
||||
GtkWidget *menu_user_show_last_stats;
|
||||
GtkWidget *trennlinie9;
|
||||
GtkWidget *menu_next_user;
|
||||
GtkWidget *image212;
|
||||
GtkWidget *image220;
|
||||
GtkWidget *menu_previous_user;
|
||||
GtkWidget *image213;
|
||||
GtkWidget *image221;
|
||||
GtkWidget *menu_manage_users;
|
||||
GtkWidget *image214;
|
||||
GtkWidget *image222;
|
||||
GtkWidget *menu_finances_stadium;
|
||||
GtkWidget *menu_finances_stadium_menu;
|
||||
GtkWidget *menu_increase_capacity;
|
||||
@ -263,17 +263,17 @@ create_main_window (void)
|
||||
gtk_widget_show (start_editor);
|
||||
gtk_container_add (GTK_CONTAINER (menu_file_menu), start_editor);
|
||||
|
||||
image209 = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image209);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (start_editor), image209);
|
||||
image217 = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image217);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (start_editor), image217);
|
||||
|
||||
start_update = gtk_image_menu_item_new_with_mnemonic (_("Start Bygfoot Online Update"));
|
||||
gtk_widget_show (start_update);
|
||||
gtk_container_add (GTK_CONTAINER (menu_file_menu), start_update);
|
||||
|
||||
image210 = gtk_image_new_from_stock ("gtk-refresh", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image210);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (start_update), image210);
|
||||
image218 = gtk_image_new_from_stock ("gtk-refresh", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image218);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (start_update), image218);
|
||||
|
||||
trennlinie2 = gtk_separator_menu_item_new ();
|
||||
gtk_widget_show (trennlinie2);
|
||||
@ -295,9 +295,9 @@ create_main_window (void)
|
||||
gtk_widget_show (menu_preferences);
|
||||
gtk_container_add (GTK_CONTAINER (menu_options_menu), menu_preferences);
|
||||
|
||||
image211 = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image211);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_preferences), image211);
|
||||
image219 = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image219);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_preferences), image219);
|
||||
|
||||
trennlinie7 = gtk_separator_menu_item_new ();
|
||||
gtk_widget_show (trennlinie7);
|
||||
@ -334,13 +334,16 @@ create_main_window (void)
|
||||
GDK_F4, 0,
|
||||
GTK_ACCEL_VISIBLE);
|
||||
|
||||
menu_my_league_results = gtk_menu_item_new_with_mnemonic (_("My league results"));
|
||||
gtk_widget_show (menu_my_league_results);
|
||||
gtk_container_add (GTK_CONTAINER (menu_figures_menu), menu_my_league_results);
|
||||
|
||||
menu_tables = gtk_menu_item_new_with_mnemonic (_("Tables"));
|
||||
gtk_widget_show (menu_tables);
|
||||
gtk_container_add (GTK_CONTAINER (menu_figures_menu), menu_tables);
|
||||
gtk_widget_add_accelerator (menu_tables, "activate", accel_group,
|
||||
GDK_F5, 0,
|
||||
GTK_ACCEL_VISIBLE);
|
||||
|
||||
menu_my_league_results = gtk_menu_item_new_with_mnemonic (_("My league results"));
|
||||
gtk_widget_show (menu_my_league_results);
|
||||
gtk_container_add (GTK_CONTAINER (menu_figures_menu), menu_my_league_results);
|
||||
|
||||
players1 = gtk_menu_item_new_with_mnemonic (_("Players"));
|
||||
gtk_widget_show (players1);
|
||||
@ -551,9 +554,9 @@ create_main_window (void)
|
||||
GDK_F9, 0,
|
||||
GTK_ACCEL_VISIBLE);
|
||||
|
||||
image212 = gtk_image_new_from_stock ("gtk-go-forward", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image212);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_next_user), image212);
|
||||
image220 = gtk_image_new_from_stock ("gtk-go-forward", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image220);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_next_user), image220);
|
||||
|
||||
menu_previous_user = gtk_image_menu_item_new_with_mnemonic (_("Previous user"));
|
||||
gtk_widget_show (menu_previous_user);
|
||||
@ -562,9 +565,9 @@ create_main_window (void)
|
||||
GDK_F8, 0,
|
||||
GTK_ACCEL_VISIBLE);
|
||||
|
||||
image213 = gtk_image_new_from_stock ("gtk-go-back", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image213);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_previous_user), image213);
|
||||
image221 = gtk_image_new_from_stock ("gtk-go-back", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image221);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_previous_user), image221);
|
||||
|
||||
menu_manage_users = gtk_image_menu_item_new_with_mnemonic (_("Manage users"));
|
||||
gtk_widget_show (menu_manage_users);
|
||||
@ -573,9 +576,9 @@ create_main_window (void)
|
||||
GDK_F12, 0,
|
||||
GTK_ACCEL_VISIBLE);
|
||||
|
||||
image214 = gtk_image_new_from_stock ("gtk-justify-fill", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image214);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_manage_users), image214);
|
||||
image222 = gtk_image_new_from_stock ("gtk-justify-fill", GTK_ICON_SIZE_MENU);
|
||||
gtk_widget_show (image222);
|
||||
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_manage_users), image222);
|
||||
|
||||
menu_finances_stadium = gtk_menu_item_new_with_mnemonic (_("FinStad"));
|
||||
gtk_widget_show (menu_finances_stadium);
|
||||
@ -974,7 +977,6 @@ create_main_window (void)
|
||||
button_browse_back = gtk_button_new ();
|
||||
gtk_widget_show (button_browse_back);
|
||||
gtk_box_pack_start (GTK_BOX (hbox_14), button_browse_back, TRUE, TRUE, 0);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (button_browse_back), 2);
|
||||
gtk_tooltips_set_tip (tooltips, button_browse_back, _("Previous (Q)"), NULL);
|
||||
gtk_widget_add_accelerator (button_browse_back, "clicked", accel_group,
|
||||
GDK_q, 0,
|
||||
@ -987,7 +989,6 @@ create_main_window (void)
|
||||
button_browse_forward = gtk_button_new ();
|
||||
gtk_widget_show (button_browse_forward);
|
||||
gtk_box_pack_start (GTK_BOX (hbox_14), button_browse_forward, TRUE, TRUE, 0);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (button_browse_forward), 2);
|
||||
gtk_tooltips_set_tip (tooltips, button_browse_forward, _("Next (W)"), NULL);
|
||||
gtk_widget_add_accelerator (button_browse_forward, "clicked", accel_group,
|
||||
GDK_w, 0,
|
||||
@ -1054,12 +1055,12 @@ create_main_window (void)
|
||||
g_signal_connect ((gpointer) menu_fixtures, "activate",
|
||||
G_CALLBACK (on_menu_fixtures_activate),
|
||||
NULL);
|
||||
g_signal_connect ((gpointer) menu_my_league_results, "activate",
|
||||
G_CALLBACK (on_menu_my_league_results_activate),
|
||||
NULL);
|
||||
g_signal_connect ((gpointer) menu_tables, "activate",
|
||||
G_CALLBACK (on_menu_tables_activate),
|
||||
NULL);
|
||||
g_signal_connect ((gpointer) menu_my_league_results, "activate",
|
||||
G_CALLBACK (on_menu_my_league_results_activate),
|
||||
NULL);
|
||||
g_signal_connect ((gpointer) players1, "activate",
|
||||
G_CALLBACK (on_players1_activate),
|
||||
NULL);
|
||||
@ -1242,15 +1243,15 @@ create_main_window (void)
|
||||
GLADE_HOOKUP_OBJECT (main_window, trennlinie1, "trennlinie1");
|
||||
GLADE_HOOKUP_OBJECT (main_window, separatormenuitem1, "separatormenuitem1");
|
||||
GLADE_HOOKUP_OBJECT (main_window, start_editor, "start_editor");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image209, "image209");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image217, "image217");
|
||||
GLADE_HOOKUP_OBJECT (main_window, start_update, "start_update");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image210, "image210");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image218, "image218");
|
||||
GLADE_HOOKUP_OBJECT (main_window, trennlinie2, "trennlinie2");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_quit, "menu_quit");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_options, "menu_options");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_options_menu, "menu_options_menu");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_preferences, "menu_preferences");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image211, "image211");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image219, "image219");
|
||||
GLADE_HOOKUP_OBJECT (main_window, trennlinie7, "trennlinie7");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_notify, "menu_notify");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_job_offers, "menu_job_offers");
|
||||
@ -1259,8 +1260,8 @@ create_main_window (void)
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_figures, "menu_figures");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_figures_menu, "menu_figures_menu");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_fixtures, "menu_fixtures");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_my_league_results, "menu_my_league_results");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_tables, "menu_tables");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_my_league_results, "menu_my_league_results");
|
||||
GLADE_HOOKUP_OBJECT (main_window, players1, "players1");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_season_history, "menu_season_history");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_team, "menu_team");
|
||||
@ -1305,11 +1306,11 @@ create_main_window (void)
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_user_show_last_stats, "menu_user_show_last_stats");
|
||||
GLADE_HOOKUP_OBJECT (main_window, trennlinie9, "trennlinie9");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_next_user, "menu_next_user");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image212, "image212");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image220, "image220");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_previous_user, "menu_previous_user");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image213, "image213");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image221, "image221");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_manage_users, "menu_manage_users");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image214, "image214");
|
||||
GLADE_HOOKUP_OBJECT (main_window, image222, "image222");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_finances_stadium, "menu_finances_stadium");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_finances_stadium_menu, "menu_finances_stadium_menu");
|
||||
GLADE_HOOKUP_OBJECT (main_window, menu_increase_capacity, "menu_increase_capacity");
|
||||
|
@ -21,10 +21,9 @@ league_new(void)
|
||||
|
||||
new.id = league_new_id();
|
||||
|
||||
new.average_skill = new.average_capacity = -1;
|
||||
new.average_skill = -1;
|
||||
|
||||
new.prom_rel.prom_games_dest_sid = g_string_new("");
|
||||
new.prom_rel.prom_games_cup_sid = g_string_new("");
|
||||
new.prom_rel.elements = g_array_new(FALSE, FALSE, sizeof(PromRelElement));
|
||||
|
||||
new.teams = g_array_new(FALSE, FALSE, sizeof(Team));
|
||||
@ -54,6 +53,7 @@ prom_rel_element_new(void)
|
||||
|
||||
new.ranks[0] = new.ranks[1] = 0;
|
||||
new.dest_sid = g_string_new("");
|
||||
new.type = PROM_REL_NONE;
|
||||
|
||||
return new;
|
||||
}
|
||||
|
@ -3,6 +3,14 @@
|
||||
|
||||
#include "bygfoot.h"
|
||||
#include "table_struct.h"
|
||||
#include "cup_struct.h"
|
||||
|
||||
enum PromRelType
|
||||
{
|
||||
PROM_REL_PROMOTION = 0,
|
||||
PROM_REL_RELEGATION,
|
||||
PROM_REL_NONE
|
||||
};
|
||||
|
||||
/**
|
||||
An element representing a promotion or relegation rule.
|
||||
@ -14,6 +22,7 @@ typedef struct
|
||||
{
|
||||
gint ranks[2]; /**< The range of teams; default 0 and 0 */
|
||||
GString *dest_sid; /**< The id of the destination league. Default "" */
|
||||
gint type; /**< Type. Promotion or relegation or none. */
|
||||
} PromRelElement;
|
||||
|
||||
/**
|
||||
@ -26,16 +35,14 @@ typedef struct
|
||||
{
|
||||
/** The id of the league the promotion games winner gets promoted to. Default "" */
|
||||
GString *prom_games_dest_sid;
|
||||
/** The id of the cup that specifies the promotion games format.
|
||||
We regard the promotion games as a national cup like any other cup.
|
||||
@see Cup
|
||||
*/
|
||||
GString *prom_games_cup_sid; /* "" */
|
||||
|
||||
/** Array with promotion/relegation rules.
|
||||
@see PromRelElement
|
||||
*/
|
||||
GArray *elements;
|
||||
|
||||
/** The cup determining how the promotion games are handled. */
|
||||
Cup prom_games_cup;
|
||||
} PromRel;
|
||||
|
||||
/**
|
||||
@ -60,8 +67,6 @@ typedef struct
|
||||
gint yellow_red;
|
||||
/** Average skill for the first season. Default: -1. */
|
||||
gint average_skill;
|
||||
/** Average stadium capacity. Default: -1. */
|
||||
gint average_capacity;
|
||||
/** Array of teams in the league.
|
||||
@see Team */
|
||||
GArray *teams;
|
||||
|
@ -60,14 +60,7 @@ start_new_season(void)
|
||||
fixture_write_league_fixtures(&lig(i));
|
||||
|
||||
for(i=0;i<cps->len;i++)
|
||||
{
|
||||
fixture_write_cup_fixtures(&cp(i));
|
||||
/*d*/
|
||||
/* printf("%s %d %d %d\n", */
|
||||
/* cp(i).name->str, cp(i).id, */
|
||||
/* g_array_index(cp(i).fixtures, Fixture, 0).week_number, */
|
||||
/* g_array_index(cp(i).fixtures, Fixture, 0).week_round_number); */
|
||||
}
|
||||
}
|
||||
|
||||
/** Fill some global variables with default values at the
|
||||
@ -91,24 +84,14 @@ void
|
||||
start_generate_league_teams(void)
|
||||
{
|
||||
gint i, j;
|
||||
Team *tm;
|
||||
|
||||
if(ligs->len == 0)
|
||||
main_exit_program(EXIT_NO_LEAGUES,
|
||||
"start_generate_league_teams: no leagues found. there must be at least one league in the game.\n");
|
||||
|
||||
for(i=0;i<ligs->len;i++)
|
||||
{
|
||||
for(j=0;j<lig(i).teams->len;j++)
|
||||
{
|
||||
tm = &g_array_index(lig(i).teams, Team, j);
|
||||
tm->stadium.capacity =
|
||||
math_gauss_disti((gint)(lig(i).average_capacity * 0.66),
|
||||
(gint)(lig(i).average_capacity * 1.33));
|
||||
|
||||
team_generate_players(tm);
|
||||
}
|
||||
}
|
||||
team_generate_players_stadium(&g_array_index(lig(i).teams, Team, j));
|
||||
}
|
||||
|
||||
/** Load the names from the xml files for the cups
|
||||
|
@ -40,6 +40,8 @@ table_update(const Fixture *fix)
|
||||
elements[i]->values[TABLE_PLAYED]++;
|
||||
elements[i]->values[TABLE_GF] += fix->result[i][0];
|
||||
elements[i]->values[TABLE_GA] += fix->result[!i][0];
|
||||
elements[i]->values[TABLE_GD] =
|
||||
elements[i]->values[TABLE_GF] - elements[i]->values[TABLE_GA];
|
||||
}
|
||||
|
||||
if(fix->result[0][0] == fix->result[1][0])
|
||||
|
@ -17,6 +17,7 @@ enum TableElementValues
|
||||
TABLE_LOST,
|
||||
TABLE_GF,
|
||||
TABLE_GA,
|
||||
TABLE_GD,
|
||||
TABLE_PTS,
|
||||
TABLE_END
|
||||
};
|
||||
|
34
src/team.c
@ -30,8 +30,6 @@ team_new(void)
|
||||
new.style = team_assign_playing_style();
|
||||
new.boost = 0;
|
||||
|
||||
new.stadium = team_stadium_new();
|
||||
|
||||
new.players = g_array_new(FALSE, FALSE, sizeof(Player));
|
||||
|
||||
return new;
|
||||
@ -92,7 +90,8 @@ team_stadium_new(void)
|
||||
Stadium new;
|
||||
|
||||
new.capacity = -1;
|
||||
new.safety = math_gauss_disti(80, 100);
|
||||
new.safety = 0;
|
||||
|
||||
new.average_attendance =
|
||||
new.possible_attendance =
|
||||
new.games = 0;
|
||||
@ -100,21 +99,22 @@ team_stadium_new(void)
|
||||
return new;
|
||||
}
|
||||
|
||||
/* Fill the players array of the team.
|
||||
/* Fill the players array of the team and the stadium.
|
||||
@param tm The team that gets filled. */
|
||||
void
|
||||
team_generate_players(Team *tm)
|
||||
team_generate_players_stadium(Team *tm)
|
||||
{
|
||||
gint i;
|
||||
gfloat skill_factor = math_rnd(1 - const_float("float_team_skill_variance"),
|
||||
1 + const_float("float_team_skill_variance"));
|
||||
Player new;
|
||||
gfloat average_skill;
|
||||
gfloat wages = 0;
|
||||
|
||||
if(tm->clid < ID_CUP_START)
|
||||
average_skill =
|
||||
const_float("float_player_max_skill") * skill_factor *
|
||||
((gfloat)team_return_league_cup_value_int(tm, LEAGUE_CUP_VALUE_AVERAGE_SKILL) / 100);
|
||||
((gfloat)team_return_league_cup_value_int(tm, LEAGUE_CUP_VALUE_AVERAGE_SKILL) / 1000);
|
||||
else
|
||||
average_skill =
|
||||
skill_factor * lig(0).average_skill *
|
||||
@ -125,8 +125,26 @@ team_generate_players(Team *tm)
|
||||
for(i=0;i<const_int("int_team_max_players");i++)
|
||||
{
|
||||
new = player_new(tm, average_skill);
|
||||
wages += new.wage;
|
||||
g_array_append_val(tm->players, new);
|
||||
}
|
||||
|
||||
tm->stadium.average_attendance = tm->stadium.possible_attendance =
|
||||
tm->stadium.games = 0;
|
||||
tm->stadium.safety =
|
||||
math_rnd(const_float("float_team_stadium_safety_lower"),
|
||||
const_float("float_team_stadium_safety_upper"));
|
||||
|
||||
tm->stadium.capacity =
|
||||
math_round_integer((gint)rint((wages / (gfloat)const_int("int_team_stadium_ticket_price")) *
|
||||
const_float("float_team_stadium_size_wage_factor")), 2);
|
||||
|
||||
/*d*/
|
||||
/* printf("%30s wag %.0f stadcap %d cap * tick %d diff %d\n", */
|
||||
/* tm->name->str, wages, tm->stadium.capacity, */
|
||||
/* tm->stadium.capacity * const_int("int_team_stadium_ticket_price"), */
|
||||
/* math_round_integer((gint)(2 * wages) - */
|
||||
/* tm->stadium.capacity * const_int("int_team_stadium_ticket_price"), 3)); */
|
||||
}
|
||||
|
||||
/** Return a certain value from the league or cup struct
|
||||
@ -150,8 +168,6 @@ team_return_league_cup_value_int(const Team *tm, gint value_type)
|
||||
return cp(idx).week_gap;
|
||||
case LEAGUE_CUP_VALUE_YELLOW_RED:
|
||||
return cp(idx).yellow_red;
|
||||
case LEAGUE_CUP_VALUE_AVERAGE_CAPACITY:
|
||||
return cp(idx).average_capacity;
|
||||
case LEAGUE_CUP_VALUE_CUP_TYPE:
|
||||
return cp(idx).type;
|
||||
case LEAGUE_CUP_VALUE_SKILL_DIFF:
|
||||
@ -174,8 +190,6 @@ team_return_league_cup_value_int(const Team *tm, gint value_type)
|
||||
return lig(idx).yellow_red;
|
||||
case LEAGUE_CUP_VALUE_AVERAGE_SKILL:
|
||||
return lig(idx).average_skill;
|
||||
case LEAGUE_CUP_VALUE_AVERAGE_CAPACITY:
|
||||
return lig(idx).average_capacity;
|
||||
default:
|
||||
g_warning("team_return_league_cup_value_int: unknown value_type for leagues: %d\n",
|
||||
value_type);
|
||||
|
@ -22,7 +22,7 @@ gboolean
|
||||
query_is_my_team(const Team *tm);
|
||||
|
||||
void
|
||||
team_generate_players(Team *tm);
|
||||
team_generate_players_stadium(Team *tm);
|
||||
|
||||
gint
|
||||
team_return_league_cup_value_int(const Team *tm, gint value_type);
|
||||
|
261
src/treeview.c
@ -1002,13 +1002,13 @@ treeview_create_fixture(const Fixture *fix, GtkListStore *liststore)
|
||||
{
|
||||
if(fixture_user_team_involved(fix) == current_user)
|
||||
{
|
||||
colour_fg = const_str("string_treeview_fixture_current_user_fg");
|
||||
colour_bg = const_str("string_treeview_fixture_current_user_bg");
|
||||
colour_fg = const_str("string_treeview_current_user_fg");
|
||||
colour_bg = const_str("string_treeview_current_user_bg");
|
||||
}
|
||||
else
|
||||
{
|
||||
colour_fg = const_str("string_treeview_fixture_user_fg");
|
||||
colour_bg = const_str("string_treeview_fixture_user_bg");
|
||||
colour_fg = const_str("string_treeview_user_fg");
|
||||
colour_bg = const_str("string_treeview_user_bg");
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -1089,7 +1089,8 @@ treeview_set_up_fixtures(GtkTreeView *treeview)
|
||||
col = gtk_tree_view_column_new();
|
||||
gtk_tree_view_append_column(treeview, col);
|
||||
renderer = gtk_cell_renderer_pixbuf_new();
|
||||
g_object_set(renderer, "cell-background", "lightgrey", NULL);
|
||||
g_object_set(renderer, "cell-background",
|
||||
const_str("string_treeview_symbol_bg"), NULL);
|
||||
gtk_tree_view_column_pack_start(col, renderer, TRUE);
|
||||
gtk_tree_view_column_add_attribute(col, renderer,
|
||||
"pixbuf", 0);
|
||||
@ -1110,7 +1111,9 @@ treeview_set_up_fixtures(GtkTreeView *treeview)
|
||||
col = gtk_tree_view_column_new();
|
||||
gtk_tree_view_append_column(treeview, col);
|
||||
renderer = gtk_cell_renderer_pixbuf_new();
|
||||
gtk_tree_view_column_pack_start(col, renderer, TRUE);
|
||||
g_object_set(renderer, "cell-background",
|
||||
const_str("string_treeview_symbol_bg"), NULL);
|
||||
gtk_tree_view_column_pack_start(col, renderer, FALSE);
|
||||
gtk_tree_view_column_add_attribute(col, renderer,
|
||||
"pixbuf", 4);
|
||||
}
|
||||
@ -1134,3 +1137,249 @@ treeview_show_fixtures(GtkTreeView *treeview, gint clid,
|
||||
gtk_tree_view_set_model(treeview, model);
|
||||
g_object_unref(model);
|
||||
}
|
||||
|
||||
/** Write the header for a table into the liststore
|
||||
@param clid The cup or league id.
|
||||
@param number The number of the table if we display more than one. */
|
||||
void
|
||||
treeview_table_write_header(GtkListStore *liststore, gint clid, gint number)
|
||||
{
|
||||
gint i;
|
||||
gchar buf[SMALL];
|
||||
GdkPixbuf *symbol = NULL;
|
||||
GtkTreeIter iter;
|
||||
|
||||
if(clid < ID_CUP_START)
|
||||
{
|
||||
symbol = treeview_pixbuf_from_filename(league_from_clid(clid)->symbol->str);
|
||||
strcpy(buf, league_from_clid(clid)->name->str);
|
||||
}
|
||||
else
|
||||
{
|
||||
symbol = treeview_pixbuf_from_filename(cup_from_clid(clid)->symbol->str);
|
||||
sprintf(buf, _("%s Group %d"), cup_from_clid(clid)->name->str, number);
|
||||
}
|
||||
|
||||
gtk_list_store_append(liststore, &iter);
|
||||
gtk_list_store_set(liststore, &iter, 0, symbol, 1, "", 2, buf, -1);
|
||||
|
||||
for(i=3;i<11;i++)
|
||||
gtk_list_store_set(liststore, &iter, i, "", -1);
|
||||
|
||||
if(symbol != NULL)
|
||||
g_object_unref(symbol);
|
||||
}
|
||||
|
||||
/** Get the colours for a team in the tables.
|
||||
@param table The table pointer.
|
||||
@param idx The index of the element we're looking at.
|
||||
@param user Whether to take into account user colours. */
|
||||
void
|
||||
treeview_get_table_element_colours(const Table *table, gint idx, gchar *colour_fg,
|
||||
gchar *colour_bg, gboolean user)
|
||||
{
|
||||
gint i;
|
||||
const TableElement *elem = &g_array_index(table->elements, TableElement, idx);
|
||||
const PromRelElement *pelem = NULL;
|
||||
const League *league = NULL;
|
||||
GPtrArray *cup_advance = NULL;
|
||||
|
||||
|
||||
strcpy(colour_fg, const_str("string_treeview_cell_color_default_foreground"));
|
||||
strcpy(colour_bg, const_str("string_treeview_cell_color_default_background"));
|
||||
|
||||
if(user && elem->team == usr(current_user).tm)
|
||||
{
|
||||
strcpy(colour_fg, const_str("string_treeview_current_user_fg"));
|
||||
strcpy(colour_bg, const_str("string_treeview_current_user_bg"));
|
||||
}
|
||||
else if(user && team_is_user(elem->team) != -1)
|
||||
{
|
||||
strcpy(colour_fg, const_str("string_treeview_user_fg"));
|
||||
strcpy(colour_bg, const_str("string_treeview_user_bg"));
|
||||
}
|
||||
else if(table->clid < ID_CUP_START)
|
||||
{
|
||||
league = league_from_clid(table->clid);
|
||||
|
||||
if(idx + 1 == 1)
|
||||
strcpy(colour_bg, const_str("string_treeview_table_first"));
|
||||
else
|
||||
{
|
||||
for(i=0;i<league->prom_rel.elements->len;i++)
|
||||
{
|
||||
pelem = &g_array_index(league_from_clid(table->clid)->prom_rel.elements, PromRelElement, i);
|
||||
if(pelem->ranks[0] <= idx + 1 && idx + 1 <= pelem->ranks[1])
|
||||
{
|
||||
if(pelem->type == PROM_REL_PROMOTION)
|
||||
strcpy(colour_bg, const_str("string_treeview_table_promotion"));
|
||||
else if(pelem->type == PROM_REL_RELEGATION)
|
||||
strcpy(colour_bg, const_str("string_treeview_table_relegation"));
|
||||
}
|
||||
}
|
||||
|
||||
if(strlen(league->prom_rel.prom_games_dest_sid->str) != 0 &&
|
||||
g_array_index(league->prom_rel.prom_games_cup.choose_teams,
|
||||
CupChooseTeam, 0).start_idx <= idx + 1 &&
|
||||
idx + 1 <= g_array_index(league->prom_rel.prom_games_cup.choose_teams,
|
||||
CupChooseTeam, 0).end_idx)
|
||||
strcpy(colour_bg, const_str("string_treeview_table_promgames"));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
cup_advance =
|
||||
fixture_get_round_robin_advance(cup_from_clid(table->clid), table->round);
|
||||
for(i=0;i<cup_advance->len;i++)
|
||||
if((Team*)g_ptr_array_index(cup_advance, i) == elem->team)
|
||||
strcpy(colour_bg, const_str("string_treeview_table_promotion"));
|
||||
|
||||
free_g_ptr_array(&cup_advance);
|
||||
}
|
||||
}
|
||||
|
||||
/** Display a table in the liststore.
|
||||
@param number The number of the table if we display more than one
|
||||
(cups, round robin); or -1 for leagues. */
|
||||
void
|
||||
treeview_create_single_table(GtkListStore *liststore, const Table *table, gint number)
|
||||
{
|
||||
gint i, j;
|
||||
GtkTreeIter iter;
|
||||
GdkPixbuf *symbol = NULL;
|
||||
TableElement *elem = NULL;
|
||||
gchar buf[10][SMALL];
|
||||
gchar colour_bg[SMALL], colour_fg[SMALL];
|
||||
|
||||
treeview_table_write_header(liststore, table->clid, number);
|
||||
|
||||
for(i=0;i<table->elements->len;i++)
|
||||
{
|
||||
gtk_list_store_append(liststore, &iter);
|
||||
|
||||
elem = &g_array_index(table->elements, TableElement, i);
|
||||
if(table->clid >= ID_CUP_START)
|
||||
symbol = treeview_pixbuf_from_filename(elem->team->symbol->str);
|
||||
|
||||
gtk_list_store_set(liststore, &iter, 0, symbol, -1);
|
||||
|
||||
treeview_get_table_element_colours(table, i, colour_fg, colour_bg, FALSE);
|
||||
sprintf(buf[0], "<span background='%s' foreground = '%s'>%d</span>",
|
||||
colour_bg, colour_fg, i + 1);
|
||||
|
||||
treeview_get_table_element_colours(table, i, colour_fg, colour_bg, TRUE);
|
||||
sprintf(buf[1], "<span background='%s' foreground = '%s'>%s</span>",
|
||||
colour_bg, colour_fg, elem->team->name->str);
|
||||
|
||||
for(j=2;j<10;j++)
|
||||
if(j - 2 != TABLE_GD)
|
||||
sprintf(buf[j], "%d", elem->values[j - 2]);
|
||||
else
|
||||
sprintf(buf[j], "%+d", elem->values[j - 2]);
|
||||
|
||||
for(j=0;j<10;j++)
|
||||
gtk_list_store_set(liststore, &iter, j + 1, buf[j], -1);
|
||||
|
||||
if(symbol != NULL)
|
||||
g_object_unref(symbol);
|
||||
}
|
||||
|
||||
gtk_list_store_append(liststore, &iter);
|
||||
gtk_list_store_set(liststore, &iter, 0, NULL, -1);
|
||||
for(j=1;j<11;j++)
|
||||
gtk_list_store_set(liststore, &iter, j, "", -1);
|
||||
}
|
||||
|
||||
/** Create a league table or one or more cup tables. */
|
||||
GtkTreeModel*
|
||||
treeview_create_table(gint clid)
|
||||
{
|
||||
gint i;
|
||||
GArray *tables = NULL;
|
||||
GtkListStore *liststore =
|
||||
gtk_list_store_new(11,
|
||||
GDK_TYPE_PIXBUF,
|
||||
G_TYPE_STRING,
|
||||
G_TYPE_STRING,
|
||||
G_TYPE_STRING,
|
||||
G_TYPE_STRING,
|
||||
G_TYPE_STRING,
|
||||
G_TYPE_STRING,
|
||||
G_TYPE_STRING,
|
||||
G_TYPE_STRING,
|
||||
G_TYPE_STRING,
|
||||
G_TYPE_STRING);
|
||||
|
||||
if(clid < ID_CUP_START)
|
||||
treeview_create_single_table(liststore,
|
||||
&league_from_clid(clid)->table, -1);
|
||||
else
|
||||
{
|
||||
tables = cup_from_clid(clid)->tables;
|
||||
for(i=0;i<tables->len;i++)
|
||||
treeview_create_single_table(liststore, &g_array_index(tables, Table, i), i + 1);
|
||||
}
|
||||
|
||||
return GTK_TREE_MODEL(liststore);
|
||||
}
|
||||
|
||||
void
|
||||
treeview_set_up_table(GtkTreeView *treeview)
|
||||
{
|
||||
gint i;
|
||||
GtkTreeViewColumn *col;
|
||||
GtkCellRenderer *renderer;
|
||||
gchar *titles[11] =
|
||||
{"",
|
||||
"",
|
||||
_("Team"),
|
||||
_("PL"),
|
||||
_("W"),
|
||||
_("D"),
|
||||
_("L"),
|
||||
_("GF"),
|
||||
_("GA"),
|
||||
_("GD"),
|
||||
_("PTS")};
|
||||
|
||||
gtk_tree_selection_set_mode(gtk_tree_view_get_selection(treeview),
|
||||
GTK_SELECTION_NONE);
|
||||
|
||||
col = gtk_tree_view_column_new();
|
||||
gtk_tree_view_append_column(treeview, col);
|
||||
renderer = gtk_cell_renderer_pixbuf_new();
|
||||
g_object_set(renderer, "cell-background",
|
||||
const_str("string_treeview_symbol_bg"), NULL);
|
||||
gtk_tree_view_column_pack_start(col, renderer, TRUE);
|
||||
gtk_tree_view_column_add_attribute(col, renderer,
|
||||
"pixbuf", 0);
|
||||
|
||||
for(i=1;i<11;i++)
|
||||
{
|
||||
col = gtk_tree_view_column_new();
|
||||
gtk_tree_view_column_set_title(col, titles[i]);
|
||||
gtk_tree_view_append_column(treeview, col);
|
||||
renderer = gtk_cell_renderer_text_new();
|
||||
gtk_tree_view_column_pack_start(col, renderer, FALSE);
|
||||
gtk_tree_view_column_add_attribute(col, renderer,
|
||||
"markup", i);
|
||||
|
||||
if(i == 1)
|
||||
g_object_set(renderer, "xalign", 1.0, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
/** Show the table going with a league or cup. */
|
||||
void
|
||||
treeview_show_table(GtkTreeView *treeview, gint clid)
|
||||
{
|
||||
GtkTreeModel *model = NULL;
|
||||
|
||||
treeview_clear(treeview);
|
||||
gtk_tree_view_set_headers_visible(treeview, TRUE);
|
||||
|
||||
treeview_set_up_table(treeview);
|
||||
model = treeview_create_table(clid);
|
||||
gtk_tree_view_set_model(treeview, model);
|
||||
g_object_unref(model);
|
||||
}
|
||||
|
@ -109,4 +109,23 @@ treeview_create_fixtures_header(const Fixture *fix, GtkListStore *liststore);
|
||||
void
|
||||
treeview_create_fixture(const Fixture *fix, GtkListStore *liststore);
|
||||
|
||||
void
|
||||
treeview_show_table(GtkTreeView *treeview, gint clid);
|
||||
|
||||
void
|
||||
treeview_set_up_table(GtkTreeView *treeview);
|
||||
|
||||
GtkTreeModel*
|
||||
treeview_create_table(gint clid);
|
||||
|
||||
void
|
||||
treeview_create_single_table(GtkListStore *liststore, const Table *table, gint number);
|
||||
|
||||
void
|
||||
treeview_table_write_header(GtkListStore *liststore, gint clid, gint number);
|
||||
|
||||
void
|
||||
treeview_get_table_element_colours(const Table *table, gint idx, gchar *colour_fg,
|
||||
gchar *colour_bg, gboolean user);
|
||||
|
||||
#endif
|
||||
|
@ -18,7 +18,6 @@
|
||||
#define TAG_WEEK_GAP "week_gap"
|
||||
#define TAG_YELLOW_RED "yellow_red"
|
||||
#define TAG_SKILL_DIFF "skill_diff"
|
||||
#define TAG_AVERAGE_STADIUM_CAPACITY "average_stadium_capacity"
|
||||
#define TAG_CUP_ROUNDS "cup_rounds"
|
||||
#define TAG_CUP_ROUND "cup_round"
|
||||
#define TAG_CUP_ROUND_HOME_AWAY "home_away"
|
||||
@ -51,7 +50,6 @@ enum XmlCupStates
|
||||
STATE_WEEK_GAP,
|
||||
STATE_YELLOW_RED,
|
||||
STATE_SKILL_DIFF,
|
||||
STATE_AVERAGE_STADIUM_CAPACITY,
|
||||
STATE_CUP_ROUNDS,
|
||||
STATE_CUP_ROUND,
|
||||
STATE_CUP_ROUND_HOME_AWAY,
|
||||
@ -129,8 +127,6 @@ xml_cup_read_start_element (GMarkupParseContext *context,
|
||||
state = STATE_YELLOW_RED;
|
||||
else if(strcmp(element_name, TAG_SKILL_DIFF) == 0)
|
||||
state = STATE_SKILL_DIFF;
|
||||
else if(strcmp(element_name, TAG_AVERAGE_STADIUM_CAPACITY) == 0)
|
||||
state = STATE_AVERAGE_STADIUM_CAPACITY;
|
||||
else if(strcmp(element_name, TAG_CUP_ROUNDS) == 0)
|
||||
state = STATE_CUP_ROUNDS;
|
||||
else if(strcmp(element_name, TAG_CUP_ROUND) == 0)
|
||||
@ -199,7 +195,6 @@ xml_cup_read_end_element (GMarkupParseContext *context,
|
||||
strcmp(element_name, TAG_WEEK_GAP) == 0 ||
|
||||
strcmp(element_name, TAG_YELLOW_RED) == 0 ||
|
||||
strcmp(element_name, TAG_SKILL_DIFF) == 0 ||
|
||||
strcmp(element_name, TAG_AVERAGE_STADIUM_CAPACITY) == 0 ||
|
||||
strcmp(element_name, TAG_CUP_ROUNDS) == 0 ||
|
||||
strcmp(element_name, TAG_CHOOSE_TEAMS) == 0)
|
||||
state = STATE_CUP;
|
||||
@ -284,8 +279,6 @@ xml_cup_read_text (GMarkupParseContext *context,
|
||||
new_cup.yellow_red = value;
|
||||
else if(state == STATE_SKILL_DIFF)
|
||||
new_cup.skill_diff = value;
|
||||
else if(state == STATE_AVERAGE_STADIUM_CAPACITY)
|
||||
new_cup.average_capacity = value;
|
||||
else if(state == STATE_CUP_ROUND_HOME_AWAY)
|
||||
g_array_index(new_cup.rounds, CupRound, new_cup.rounds->len - 1).home_away = value;
|
||||
else if(state == STATE_CUP_ROUND_REPLAY)
|
||||
|
@ -1,10 +1,13 @@
|
||||
#include "cup_struct.h"
|
||||
#include "file.h"
|
||||
#include "free.h"
|
||||
#include "league.h"
|
||||
#include "misc.h"
|
||||
#include "team.h"
|
||||
#include "table.h"
|
||||
#include "variables.h"
|
||||
#include "xml_league.h"
|
||||
#include "xml_cup.h"
|
||||
|
||||
/**
|
||||
* The tags used in the XML files defining leagues.
|
||||
@ -18,7 +21,6 @@
|
||||
#define TAG_WEEK_GAP "week_gap"
|
||||
#define TAG_YELLOW_RED "yellow_red"
|
||||
#define TAG_AVERAGE_SKILL "average_skill"
|
||||
#define TAG_AVERAGE_STADIUM_CAPACITY "average_stadium_capacity"
|
||||
#define TAG_PROM_REL "prom_rel"
|
||||
#define TAG_PROM_GAMES "prom_games"
|
||||
#define TAG_PROM_GAMES_DEST_SID "prom_games_dest_sid"
|
||||
@ -27,6 +29,7 @@
|
||||
#define TAG_PROM_REL_ELEMENT_RANK_START "rank_start"
|
||||
#define TAG_PROM_REL_ELEMENT_RANK_END "rank_end"
|
||||
#define TAG_PROM_REL_ELEMENT_DEST_SID "dest_sid"
|
||||
#define TAG_PROM_REL_ELEMENT_TYPE "prom_rel_type"
|
||||
#define TAG_TEAMS "teams"
|
||||
#define TAG_TEAM "team"
|
||||
#define TAG_TEAM_NAME "team_name"
|
||||
@ -45,7 +48,6 @@ enum XmlLeagueStates
|
||||
STATE_WEEK_GAP,
|
||||
STATE_YELLOW_RED,
|
||||
STATE_AVERAGE_SKILL,
|
||||
STATE_AVERAGE_STADIUM_CAPACITY,
|
||||
STATE_PROM_REL,
|
||||
STATE_PROM_GAMES,
|
||||
STATE_PROM_GAMES_DEST_SID,
|
||||
@ -54,6 +56,7 @@ enum XmlLeagueStates
|
||||
STATE_PROM_REL_ELEMENT_RANK_START,
|
||||
STATE_PROM_REL_ELEMENT_RANK_END,
|
||||
STATE_PROM_REL_ELEMENT_DEST_SID,
|
||||
STATE_PROM_REL_ELEMENT_TYPE,
|
||||
STATE_TEAMS,
|
||||
STATE_TEAM,
|
||||
STATE_TEAM_NAME,
|
||||
@ -108,8 +111,6 @@ xml_league_read_start_element (GMarkupParseContext *context,
|
||||
state = STATE_YELLOW_RED;
|
||||
else if(strcmp(element_name, TAG_AVERAGE_SKILL) == 0)
|
||||
state = STATE_AVERAGE_SKILL;
|
||||
else if(strcmp(element_name, TAG_AVERAGE_STADIUM_CAPACITY) == 0)
|
||||
state = STATE_AVERAGE_STADIUM_CAPACITY;
|
||||
else if(strcmp(element_name, TAG_PROM_REL) == 0)
|
||||
state = STATE_PROM_REL;
|
||||
else if(strcmp(element_name, TAG_PROM_GAMES) == 0)
|
||||
@ -130,6 +131,8 @@ xml_league_read_start_element (GMarkupParseContext *context,
|
||||
state = STATE_PROM_REL_ELEMENT_RANK_END;
|
||||
else if(strcmp(element_name, TAG_PROM_REL_ELEMENT_DEST_SID) == 0)
|
||||
state = STATE_PROM_REL_ELEMENT_DEST_SID;
|
||||
else if(strcmp(element_name, TAG_PROM_REL_ELEMENT_TYPE) == 0)
|
||||
state = STATE_PROM_REL_ELEMENT_TYPE;
|
||||
else if(strcmp(element_name, TAG_TEAMS) == 0)
|
||||
state = STATE_TEAMS;
|
||||
else if(strcmp(element_name, TAG_TEAM) == 0)
|
||||
@ -168,7 +171,6 @@ xml_league_read_end_element (GMarkupParseContext *context,
|
||||
strcmp(element_name, TAG_WEEK_GAP) == 0 ||
|
||||
strcmp(element_name, TAG_YELLOW_RED) == 0 ||
|
||||
strcmp(element_name, TAG_AVERAGE_SKILL) == 0 ||
|
||||
strcmp(element_name, TAG_AVERAGE_STADIUM_CAPACITY) == 0 ||
|
||||
strcmp(element_name, TAG_PROM_REL) == 0 ||
|
||||
strcmp(element_name, TAG_TEAMS) == 0)
|
||||
state = STATE_LEAGUE;
|
||||
@ -180,7 +182,8 @@ xml_league_read_end_element (GMarkupParseContext *context,
|
||||
state = STATE_PROM_GAMES;
|
||||
else if(strcmp(element_name, TAG_PROM_REL_ELEMENT_RANK_START) == 0 ||
|
||||
strcmp(element_name, TAG_PROM_REL_ELEMENT_RANK_END) == 0 ||
|
||||
strcmp(element_name, TAG_PROM_REL_ELEMENT_DEST_SID) == 0)
|
||||
strcmp(element_name, TAG_PROM_REL_ELEMENT_DEST_SID) == 0 ||
|
||||
strcmp(element_name, TAG_PROM_REL_ELEMENT_TYPE) == 0)
|
||||
state = STATE_PROM_REL_ELEMENT;
|
||||
else if(strcmp(element_name, TAG_TEAM) == 0)
|
||||
state = STATE_TEAMS;
|
||||
@ -206,6 +209,7 @@ xml_league_read_text (GMarkupParseContext *context,
|
||||
{
|
||||
gchar buf[text_len + 1];
|
||||
gint value;
|
||||
GArray *temp_cups = NULL;
|
||||
|
||||
strncpy(buf, text, text_len);
|
||||
buf[text_len] = '\0';
|
||||
@ -231,14 +235,16 @@ xml_league_read_text (GMarkupParseContext *context,
|
||||
new_league.yellow_red = value;
|
||||
else if(state == STATE_AVERAGE_SKILL)
|
||||
new_league.average_skill = value;
|
||||
else if(state == STATE_AVERAGE_STADIUM_CAPACITY)
|
||||
new_league.average_capacity = value;
|
||||
else if(state == STATE_PROM_GAMES_DEST_SID)
|
||||
new_league.prom_rel.prom_games_dest_sid =
|
||||
g_string_assign(new_league.prom_rel.prom_games_dest_sid, buf);
|
||||
g_string_printf(new_league.prom_rel.prom_games_dest_sid, "%s", buf);
|
||||
else if(state == STATE_PROM_GAMES_CUP)
|
||||
new_league.prom_rel.prom_games_cup_sid =
|
||||
g_string_assign(new_league.prom_rel.prom_games_cup_sid, buf);
|
||||
{
|
||||
strcat(buf, ".xml");
|
||||
temp_cups = g_array_new(FALSE, FALSE, sizeof(Cup));
|
||||
xml_cup_read(buf, temp_cups);
|
||||
new_league.prom_rel.prom_games_cup = g_array_index(temp_cups, Cup, 0);
|
||||
free_g_array(&temp_cups);
|
||||
}
|
||||
else if(state == STATE_PROM_REL_ELEMENT_RANK_START)
|
||||
g_array_index(new_league.prom_rel.elements,
|
||||
PromRelElement,
|
||||
@ -247,13 +253,24 @@ xml_league_read_text (GMarkupParseContext *context,
|
||||
g_array_index(new_league.prom_rel.elements,
|
||||
PromRelElement,
|
||||
new_league.prom_rel.elements->len - 1).ranks[1] = value;
|
||||
else if(state == STATE_TEAM_NAME)
|
||||
else if(state == STATE_PROM_REL_ELEMENT_DEST_SID)
|
||||
g_string_printf(g_array_index(new_league.prom_rel.elements,
|
||||
PromRelElement,
|
||||
new_league.prom_rel.elements->len - 1).dest_sid, "%s", buf);
|
||||
else if(state == STATE_PROM_REL_ELEMENT_TYPE)
|
||||
{
|
||||
g_array_index(new_league.teams, Team,
|
||||
new_league.teams->len - 1).name =
|
||||
g_string_assign(g_array_index(new_league.teams, Team,
|
||||
new_league.teams->len - 1).name, buf);
|
||||
}
|
||||
if(strcmp(buf, "promotion") == 0)
|
||||
g_array_index(new_league.prom_rel.elements,
|
||||
PromRelElement,
|
||||
new_league.prom_rel.elements->len - 1).type = PROM_REL_PROMOTION;
|
||||
else if(strcmp(buf, "relegation") == 0)
|
||||
g_array_index(new_league.prom_rel.elements,
|
||||
PromRelElement,
|
||||
new_league.prom_rel.elements->len - 1).type = PROM_REL_RELEGATION;
|
||||
}
|
||||
else if(state == STATE_TEAM_NAME)
|
||||
g_string_printf(g_array_index(new_league.teams, Team,
|
||||
new_league.teams->len - 1).name, "%s", buf);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -307,13 +324,15 @@ xml_league_read(const gchar *league_name, GArray *leagues)
|
||||
g_markup_parse_context_end_parse(context, NULL);
|
||||
g_markup_parse_context_free(context);
|
||||
g_free(file_contents);
|
||||
|
||||
|
||||
g_array_append_val(leagues, new_league);
|
||||
for(i=0;i<lig(ligs->len - 1).teams->len;i++)
|
||||
for(i=0;i<g_array_index(leagues, League, leagues->len - 1).teams->len;i++)
|
||||
{
|
||||
new_table_element =
|
||||
table_element_new(&g_array_index(lig(ligs->len - 1).teams, Team, i));
|
||||
g_array_append_val(lig(ligs->len - 1).table.elements, new_table_element);
|
||||
table_element_new(&g_array_index(
|
||||
g_array_index(leagues, League, leagues->len - 1).teams, Team, i));
|
||||
g_array_append_val(g_array_index(leagues, League, leagues->len - 1).
|
||||
table.elements, new_table_element);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -45,6 +45,18 @@ float_player_contract_upper 40000
|
||||
float_player_lsu_lower 20000
|
||||
float_player_lsu_upper 100000
|
||||
|
||||
# stadium safety bounds at generation
|
||||
float_team_stadium_safety_lower 8000
|
||||
float_team_stadium_safety_upper 10000
|
||||
|
||||
# ticket price; this determines together with
|
||||
# the player wages the size of the stadium at
|
||||
# generation
|
||||
int_team_stadium_ticket_price 30
|
||||
|
||||
# factor for stadium size
|
||||
float_team_stadium_size_wage_factor 24000
|
||||
|
||||
# lsu addition for injured players who are older
|
||||
# than their peak age
|
||||
float_player_lsu_injured_old 15000
|
||||
@ -444,7 +456,7 @@ float_player_team_weight_forward_midfield 6000
|
||||
float_player_team_weight_forward_attack 13000
|
||||
|
||||
|
||||
#### string constants
|
||||
#### colours and icons
|
||||
|
||||
# live game scale configuration
|
||||
string_game_gui_live_game_scale_color_defend lightblue
|
||||
@ -465,6 +477,33 @@ string_game_gui_boost_on_icon boost_on.png
|
||||
string_game_gui_boost_off_icon boost_off.png
|
||||
string_game_gui_boost_anti_icon boost_anti.png
|
||||
|
||||
# icons used in live games
|
||||
string_live_game_event_start_match_icon whistle.png
|
||||
string_live_game_event_lost_possession_icon
|
||||
string_live_game_event_penalty_icon scoring_chance.png
|
||||
string_live_game_event_scoring_chance_icon scoring_chance.png
|
||||
string_live_game_event_goal_icon goal.png
|
||||
string_live_game_event_own_goal_icon own_goal.png
|
||||
string_live_game_event_post_icon
|
||||
string_live_game_event_save_icon save.png
|
||||
string_live_game_event_missed_icon miss.png
|
||||
string_live_game_event_foul_icon
|
||||
string_live_game_event_foul_yellow_icon yellow.png
|
||||
string_live_game_event_send_off_icon red.png
|
||||
string_live_game_event_injury_icon injury.png
|
||||
string_live_game_event_temp_injury_icon injury_temp.png
|
||||
string_live_game_event_stadium_breakdown_icon
|
||||
string_live_game_event_stadium_fire_icon
|
||||
string_live_game_event_stadium_riots_icon
|
||||
string_live_game_event_substitution_icon sub.png
|
||||
string_live_game_event_structure_change_icon structure_change.png
|
||||
|
||||
# font attributes for the live game window result.
|
||||
string_treeview_cell_live_game_result_attributes weight='bold' size='large'
|
||||
|
||||
# colour indicating ball possession during a live game
|
||||
string_live_game_possession_color darkblue
|
||||
|
||||
# default background and foreground in treeviews
|
||||
string_treeview_cell_color_default_background white
|
||||
string_treeview_cell_color_default_foreground black
|
||||
@ -504,36 +543,19 @@ string_treeview_fixture_header_bg lightgrey
|
||||
string_treeview_fixture_header_fg black
|
||||
|
||||
# team of current user
|
||||
string_treeview_fixture_current_user_bg darkblue
|
||||
string_treeview_fixture_current_user_fg white
|
||||
string_treeview_current_user_bg darkblue
|
||||
string_treeview_current_user_fg white
|
||||
|
||||
# teams of other users
|
||||
string_treeview_fixture_user_bg lightsteelblue
|
||||
string_treeview_fixture_user_fg black
|
||||
string_treeview_user_bg wheat
|
||||
string_treeview_user_fg black
|
||||
|
||||
# font attributes for the live game window result.
|
||||
string_treeview_cell_live_game_result_attributes weight='bold' size='large'
|
||||
# background of the team and league/cup symbols
|
||||
string_treeview_symbol_bg lightgrey
|
||||
|
||||
# colour indicating ball possession during a live game
|
||||
string_live_game_possession_color darkblue
|
||||
|
||||
# icons used in live games
|
||||
string_live_game_event_start_match_icon whistle.png
|
||||
string_live_game_event_lost_possession_icon
|
||||
string_live_game_event_penalty_icon scoring_chance.png
|
||||
string_live_game_event_scoring_chance_icon scoring_chance.png
|
||||
string_live_game_event_goal_icon goal.png
|
||||
string_live_game_event_own_goal_icon own_goal.png
|
||||
string_live_game_event_post_icon
|
||||
string_live_game_event_save_icon save.png
|
||||
string_live_game_event_missed_icon miss.png
|
||||
string_live_game_event_foul_icon
|
||||
string_live_game_event_foul_yellow_icon yellow.png
|
||||
string_live_game_event_send_off_icon red.png
|
||||
string_live_game_event_injury_icon injury.png
|
||||
string_live_game_event_temp_injury_icon injury_temp.png
|
||||
string_live_game_event_stadium_breakdown_icon
|
||||
string_live_game_event_stadium_fire_icon
|
||||
string_live_game_event_stadium_riots_icon
|
||||
string_live_game_event_substitution_icon sub.png
|
||||
string_live_game_event_structure_change_icon structure_change.png
|
||||
# background for the teams in a table
|
||||
string_treeview_table_first tomato
|
||||
string_treeview_table_promotion lightblue
|
||||
string_treeview_table_relegation lightgreen
|
||||
string_treeview_table_promgames khaki
|
||||
string_treeview_table_best_advance khaki
|
||||
|
@ -6,10 +6,9 @@
|
||||
<sid>champ_league</sid>
|
||||
<type>international</type>
|
||||
<yellow_red>3</yellow_red>
|
||||
<skill_diff>8</skill_diff>
|
||||
<skill_diff>1100</skill_diff>
|
||||
<last_week>46</last_week>
|
||||
<week_gap>4</week_gap>
|
||||
<average_stadium_capacity>50000</average_stadium_capacity>
|
||||
|
||||
<cup_rounds>
|
||||
<cup_round>
|
||||
|
@ -6,10 +6,9 @@
|
||||
<sid>cwc</sid>
|
||||
<type>international</type>
|
||||
<yellow_red>3</yellow_red>
|
||||
<skill_diff>5</skill_diff>
|
||||
<skill_diff>1075</skill_diff>
|
||||
<last_week>45</last_week>
|
||||
<week_gap>4</week_gap>
|
||||
<average_stadium_capacity>45000</average_stadium_capacity>
|
||||
|
||||
<cup_rounds>
|
||||
<cup_round>
|
||||
|
@ -5,5 +5,22 @@
|
||||
<symbol>flag_en.png</symbol>
|
||||
<sid>england_prom_games</sid>
|
||||
<type>national</type>
|
||||
<home_away>1</home_away>
|
||||
|
||||
<cup_rounds>
|
||||
<cup_round>
|
||||
<home_away>1</home_away>
|
||||
</cup_round>
|
||||
<cup_round>
|
||||
<home_away>0</home_away>
|
||||
</cup_round>
|
||||
</cup_rounds>
|
||||
|
||||
<choose_teams>
|
||||
<choose_team>
|
||||
<number_of_teams>4</number_of_teams>
|
||||
<start_idx>3</start_idx>
|
||||
<end_idx>6</end_idx>
|
||||
</choose_team>
|
||||
</choose_teams>
|
||||
|
||||
</cup>
|
||||
|
@ -6,10 +6,9 @@
|
||||
<sid>uefa</sid>
|
||||
<type>international</type>
|
||||
<yellow_red>3</yellow_red>
|
||||
<skill_diff>2</skill_diff>
|
||||
<skill_diff>1050</skill_diff>
|
||||
<last_week>44</last_week>
|
||||
<week_gap>4</week_gap>
|
||||
<average_stadium_capacity>40000</average_stadium_capacity>
|
||||
|
||||
<cup_rounds>
|
||||
<cup_round>
|
||||
|
@ -7,14 +7,14 @@
|
||||
<symbol>flag_en.png</symbol>
|
||||
<first_week>1</first_week>
|
||||
<week_gap>1</week_gap>
|
||||
<average_skill>80</average_skill>
|
||||
<average_stadium_capacity>40000</average_stadium_capacity>
|
||||
<average_skill>800</average_skill>
|
||||
|
||||
<prom_rel>
|
||||
<prom_rel_element>
|
||||
<rank_start>18</rank_start>
|
||||
<rank_end>20</rank_end>
|
||||
<dest_sid>england2</dest_sid>
|
||||
<prom_rel_type>relegation</prom_rel_type>
|
||||
</prom_rel_element>
|
||||
</prom_rel>
|
||||
|
||||
|
@ -7,8 +7,7 @@
|
||||
<symbol>flag_en.png</symbol>
|
||||
<first_week>1</first_week>
|
||||
<week_gap>1</week_gap>
|
||||
<average_skill>70</average_skill>
|
||||
<average_stadium_capacity>30000</average_stadium_capacity>
|
||||
<average_skill>700</average_skill>
|
||||
|
||||
<prom_rel>
|
||||
|
||||
@ -21,12 +20,14 @@
|
||||
<rank_start>1</rank_start>
|
||||
<rank_end>2</rank_end>
|
||||
<dest_sid>england1</dest_sid>
|
||||
<prom_rel_type>promotion</prom_rel_type>
|
||||
</prom_rel_element>
|
||||
|
||||
<prom_rel_element>
|
||||
<rank_start>22</rank_start>
|
||||
<rank_end>24</rank_end>
|
||||
<dest_sid>england3</dest_sid>
|
||||
<prom_rel_type>relegation</prom_rel_type>
|
||||
</prom_rel_element>
|
||||
|
||||
</prom_rel>
|
||||
|
@ -7,8 +7,7 @@
|
||||
<symbol>flag_en.png</symbol>
|
||||
<first_week>1</first_week>
|
||||
<week_gap>1</week_gap>
|
||||
<average_skill>60</average_skill>
|
||||
<average_stadium_capacity>20000</average_stadium_capacity>
|
||||
<average_skill>600</average_skill>
|
||||
|
||||
<prom_rel>
|
||||
|
||||
@ -21,12 +20,14 @@
|
||||
<rank_start>1</rank_start>
|
||||
<rank_end>2</rank_end>
|
||||
<dest_sid>england2</dest_sid>
|
||||
<prom_rel_type>promotion</prom_rel_type>
|
||||
</prom_rel_element>
|
||||
|
||||
<prom_rel_element>
|
||||
<rank_start>21</rank_start>
|
||||
<rank_end>24</rank_end>
|
||||
<dest_sid>england4</dest_sid>
|
||||
<prom_rel_type>relegation</prom_rel_type>
|
||||
</prom_rel_element>
|
||||
|
||||
</prom_rel>
|
||||
|
@ -7,26 +7,27 @@
|
||||
<symbol>flag_en.png</symbol>
|
||||
<first_week>1</first_week>
|
||||
<week_gap>1</week_gap>
|
||||
<average_skill>50</average_skill>
|
||||
<average_stadium_capacity>10000</average_stadium_capacity>
|
||||
<average_skill>500</average_skill>
|
||||
|
||||
<prom_rel>
|
||||
|
||||
<prom_games>
|
||||
<prom_games_dest_sid>england2</prom_games_dest_sid>
|
||||
<cup>cup_england_prom_games</cup>
|
||||
<prom_games_dest_sid>england3</prom_games_dest_sid>
|
||||
<cup>cup_england_prom_games2</cup>
|
||||
</prom_games>
|
||||
|
||||
<prom_rel_element>
|
||||
<rank_start>1</rank_start>
|
||||
<rank_end>2</rank_end>
|
||||
<dest_sid>england2</dest_sid>
|
||||
<rank_end>3</rank_end>
|
||||
<dest_sid>england3</dest_sid>
|
||||
<prom_rel_type>promotion</prom_rel_type>
|
||||
</prom_rel_element>
|
||||
|
||||
<prom_rel_element>
|
||||
<rank_start>21</rank_start>
|
||||
<rank_start>23</rank_start>
|
||||
<rank_end>24</rank_end>
|
||||
<dest_sid>england4</dest_sid>
|
||||
<dest_sid>england5</dest_sid>
|
||||
<prom_rel_type>relegation</prom_rel_type>
|
||||
</prom_rel_element>
|
||||
|
||||
</prom_rel>
|
||||
|
@ -7,20 +7,15 @@
|
||||
<symbol>flag_en.png</symbol>
|
||||
<first_week>1</first_week>
|
||||
<week_gap>1</week_gap>
|
||||
<average_skill>40</average_skill>
|
||||
<average_stadium_capacity>7500</average_stadium_capacity>
|
||||
<average_skill>400</average_skill>
|
||||
|
||||
<prom_rel>
|
||||
|
||||
<prom_games>
|
||||
<prom_games_dest_sid>england4</prom_games_dest_sid>
|
||||
<cup>cup_england_prom_games</cup>
|
||||
</prom_games>
|
||||
|
||||
<prom_rel_element>
|
||||
<rank_start>1</rank_start>
|
||||
<rank_end>1</rank_end>
|
||||
<rank_end>2</rank_end>
|
||||
<dest_sid>england4</dest_sid>
|
||||
<prom_rel_type>promotion</prom_rel_type>
|
||||
</prom_rel_element>
|
||||
|
||||
</prom_rel>
|
||||
|
BIN
support_files/pixmaps/flag_bl.png
Normal file
After Width: | Height: | Size: 97 B |
BIN
support_files/pixmaps/flag_ch.png
Normal file
After Width: | Height: | Size: 352 B |
BIN
support_files/pixmaps/flag_cz.png
Normal file
After Width: | Height: | Size: 386 B |
BIN
support_files/pixmaps/flag_dk.png
Normal file
After Width: | Height: | Size: 353 B |
Before Width: | Height: | Size: 596 B After Width: | Height: | Size: 302 B |
BIN
support_files/pixmaps/flag_gr.png
Normal file
After Width: | Height: | Size: 377 B |
BIN
support_files/pixmaps/flag_nl.png
Normal file
After Width: | Height: | Size: 135 B |
BIN
support_files/pixmaps/flag_pt.png
Normal file
After Width: | Height: | Size: 386 B |
BIN
support_files/pixmaps/flag_ru.png
Normal file
After Width: | Height: | Size: 346 B |
BIN
support_files/pixmaps/flag_sco.png
Normal file
After Width: | Height: | Size: 689 B |
BIN
support_files/pixmaps/flag_tr.png
Normal file
After Width: | Height: | Size: 310 B |
BIN
support_files/pixmaps/flag_uk.png
Normal file
After Width: | Height: | Size: 201 B |