Upstream bug: http://sourceforge.net/p/free-doko/bugs/325/ based on: http://svn.gna.org/viewcvs/freedoko?view=revision&revision=1648 Index: src/ui/gtkmm/gameinfo.cpp =================================================================== --- ui/gtkmm/gameinfo.cpp (revision 1647) +++ ui/gtkmm/gameinfo.cpp (working copy) @@ -60,13 +60,13 @@ GameInfoDialog::Information::Information(Base* const parent, ::Translator::Translation const& title) : Base(parent), - Gtk::VBox(false, 1 ex), + Gtk::VBox(false, 1 EX), title(title), icon(this->ui->icons->new_managed_image()), label(Gtk::manage(new Gtk::Label(""))) { this->ui->translations->add(*this->label, ::translation("")); - this->set_border_width(1 ex); + this->set_border_width(1 EX); return ; } // GameInfoDialog::Information::Information(Base* parent) Index: src/ui/gtkmm/preferences.cpp =================================================================== --- ui/gtkmm/preferences.cpp (revision 1647) +++ ui/gtkmm/preferences.cpp (working copy) @@ -399,7 +399,7 @@ vbox->add(*alignment) #define ADD_ALIGNMENT_HBOX \ ADD_ALIGNMENT; \ - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 ex)); \ + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EX)); \ alignment->add(*hbox) #define ADD_ALIGNMENT_VBOX2 \ ADD_ALIGNMENT; \ @@ -453,6 +453,11 @@ alignment->add(*(this->type_bool[Setting::SAVE_PARTY_CHANGES - Setting::BOOL_FIRST])); } // save party changes + { // save party changes + ADD_ALIGNMENT; + alignment->add(*(this->type_bool[Setting::ADDITIONAL_PARTY_SETTINGS + - Setting::BOOL_FIRST])); + } // save party changes #ifdef USE_SOUND_COMMAND { // play sound command ADD_ALIGNMENT_HBOX; @@ -644,7 +649,7 @@ "theme"); { // cardset - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 ex)); + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EX)); vbox->add(*hbox); hbox->pack_start(*(this->type_string_label[Setting::CARDSET @@ -653,7 +658,7 @@ - Setting::STRING_FIRST]), true, true); } // cardset { // cards back - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 ex)); + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EX)); vbox->add(*hbox); hbox->pack_start(*(this->type_string_label[Setting::CARDS_BACK @@ -662,7 +667,7 @@ - Setting::STRING_FIRST]), true, true); } // cards back { // iconset - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 ex)); + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EX)); vbox->add(*hbox); hbox->pack_start(*(this->type_string_label[Setting::ICONSET @@ -671,7 +676,7 @@ - Setting::STRING_FIRST]), true, true); } // iconset { // background - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 ex)); + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EX)); vbox->add(*hbox); hbox->pack_start(*(this->type_string_label[Setting::BACKGROUND @@ -824,7 +829,7 @@ 0, 0)); this->add_group(name, *alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX)); alignment->add(*vbox); return vbox; @@ -911,7 +916,7 @@ Gtk::PACK_START); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX)); alignment->add(*vbox); return vbox; Index: src/ui/gtkmm/party_settings.cpp =================================================================== --- ui/gtkmm/party_settings.cpp (revision 1647) +++ ui/gtkmm/party_settings.cpp (working copy) @@ -54,6 +54,7 @@ #include "../../network/server.h" #endif #include "../../os/bug_report_replay.h" +#include "../../misc/setting.h" #include "widgets/stock_button.h" #include @@ -85,6 +86,7 @@ load_bug_report_button(NULL), start_party_button(NULL), close_button(NULL), + seed_frame(NULL), seed_value(NULL), seed_random(NULL), rule_number_of_rounds_limited(NULL), @@ -91,8 +93,9 @@ rule_number_of_rounds(NULL), rule_points_limited(NULL), rule_points(NULL), + startplayer_frame(NULL), startplayer(), - startplayer_random(), + startplayer_random(NULL), switch_players_buttons(), configure_players(), configure_rules() @@ -287,8 +290,8 @@ } // the switch buttons } // create the startplayer buttons { // Layout - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 em)); - hbox->set_border_width(1 em); + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EM)); + hbox->set_border_width(1 EM); this->get_vbox()->add(*hbox); { // actions { // configure @@ -298,7 +301,7 @@ 1, 0)); hbox->pack_end(*alignment, false, true); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(true, 1 ex)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(true, 1 EX)); alignment->add(*vbox); vbox->add(*this->configure_rules); @@ -323,18 +326,18 @@ 0, 0)); hbox->pack_start(*alignment, true, true); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX)); alignment->add(*vbox); { // seed - Gtk::Frame* seed_frame = Gtk::manage(new Gtk::Frame("Game seed")); - this->ui->translations->add(*(dynamic_cast(seed_frame->get_label_widget())), + this->seed_frame = Gtk::manage(new Gtk::Frame("Game seed")); + this->ui->translations->add(*(dynamic_cast(this->seed_frame->get_label_widget())), ::translation("game seed")); - vbox->add(*seed_frame); + vbox->add(*this->seed_frame); Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 10)); - seed_frame->add(*vbox2); - vbox2->set_border_width(2 ex); + this->seed_frame->add(*vbox2); + vbox2->set_border_width(2 EX); Gtk::Alignment* alignment2 = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, @@ -364,8 +367,8 @@ Gtk::Table* table = Gtk::manage(new Gtk::Table(2, 2, false)); alignment->add(*table); - table->set_border_width(2 ex); - table->set_spacings(1 ex); + table->set_border_width(2 EX); + table->set_spacings(1 EX); table->attach(*this->rule_number_of_rounds_limited, 0, 1, 0, 1); table->attach(*this->rule_number_of_rounds, 1, 2, 0, 1); @@ -374,17 +377,17 @@ } // duration { // startplayer - Gtk::Frame* startplayer_frame + this->startplayer_frame = Gtk::manage(new Gtk::Frame("~startplayer")); - this->ui->translations->add(*(dynamic_cast(startplayer_frame->get_label_widget())), + this->ui->translations->add(*(dynamic_cast(this->startplayer_frame->get_label_widget())), ::translation("startplayer")); - vbox->add(*startplayer_frame); + vbox->add(*this->startplayer_frame); Gtk::Table* startplayer_table = Gtk::manage(new Gtk::Table(3, 3, true)); - startplayer_frame->add(*startplayer_table); - startplayer_table->set_border_width(2 ex); - startplayer_table->set_spacings(1 ex); + this->startplayer_frame->add(*startplayer_table); + startplayer_table->set_border_width(2 EX); + startplayer_table->set_spacings(1 EX); startplayer_table->attach(*this->startplayer_random, 1, 2, 1, 2); startplayer_table->attach(*this->startplayer[0], 1, 2, 2, 3); startplayer_table->attach(*this->startplayer[1], 0, 1, 1, 2); @@ -463,6 +466,7 @@ } // signals this->show_all_children(); + this->sensitivity_update(); this->update(); return ; @@ -632,6 +636,14 @@ this->load_bug_report_button->set_sensitive(sensitive); this->start_party_button->set_sensitive(sensitive); + if (::setting(Setting::ADDITIONAL_PARTY_SETTINGS)) { + this->seed_frame->show(); + this->startplayer_frame->show(); + } else { + this->seed_frame->hide(); + this->startplayer_frame->hide(); + } + return ; } // void PartySettings::sensitivity_update() Index: src/ui/gtkmm/network.cpp =================================================================== --- ui/gtkmm/network.cpp (revision 1647) +++ ui/gtkmm/network.cpp (working copy) @@ -377,7 +377,7 @@ } // the rule differences { // Layout - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 2 ex)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 2 EX)); #ifndef OUTDATED // will be outdated when the network support is finished, @@ -400,13 +400,13 @@ Gtk::Label* label = Gtk::manage(new Gtk::Label("connections")); this->ui->translations->add(*label, ::translation("connections")); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 2 ex)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 2 EX)); { // connection list Gtk::ScrolledWindow* scrolled_window = Gtk::manage(new Gtk::ScrolledWindow); - scrolled_window->set_border_width(1 ex); + scrolled_window->set_border_width(1 EX); scrolled_window->set_policy(Gtk::POLICY_NEVER, Gtk::POLICY_AUTOMATIC); scrolled_window->add(*this->connection_treeview); @@ -432,9 +432,9 @@ static_cast(this->new_connection_container )->set_label_widget(*label); - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 em)); + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EM)); - hbox->set_border_width(1 ex); + hbox->set_border_width(1 EX); hbox->add(*this->new_connection_address); hbox->add(*this->new_connection_port); @@ -447,7 +447,7 @@ notebook->append_page(*vbox, *label); } // connections { // listeners - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX)); Gtk::Label* label = Gtk::manage(new Gtk::Label("listeners")); this->ui->translations->add(*label, ::translation("listeners")); @@ -455,7 +455,7 @@ Gtk::ScrolledWindow* scrolled_window = Gtk::manage(new Gtk::ScrolledWindow); - scrolled_window->set_border_width(1 ex); + scrolled_window->set_border_width(1 EX); scrolled_window->set_policy(Gtk::POLICY_NEVER, Gtk::POLICY_AUTOMATIC); scrolled_window->add(*this->listeners_treeview); @@ -469,8 +469,8 @@ static_cast(this->new_listener_container )->set_label_widget(*label); - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 em)); - hbox->set_border_width(1 ex); + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EM)); + hbox->set_border_width(1 EX); hbox->add(*this->standard_listener_port); hbox->add(*this->listener_port); @@ -490,7 +490,7 @@ Gtk::ScrolledWindow* scrolled_window = Gtk::manage(new Gtk::ScrolledWindow); - scrolled_window->set_border_width(1 ex); + scrolled_window->set_border_width(1 EX); scrolled_window->set_policy(Gtk::POLICY_NEVER, Gtk::POLICY_AUTOMATIC); scrolled_window->add(*this->local_addresses_treeview); @@ -506,7 +506,7 @@ Gtk::ScrolledWindow* scrolled_window = Gtk::manage(new Gtk::ScrolledWindow); - scrolled_window->set_border_width(1 ex); + scrolled_window->set_border_width(1 EX); scrolled_window->set_policy(Gtk::POLICY_NEVER, Gtk::POLICY_AUTOMATIC); scrolled_window->add(*this->rule_diffs_treeview); @@ -529,7 +529,7 @@ this->ui->translations->add(*this->synchronize_button, ::translation("synchronize network")); dynamic_cast(this->synchronize_button->get_child() - )->set_border_width(1 ex / 2); + )->set_border_width(1 EX / 2); alignment->add(*this->synchronize_button); vbox->pack_end(*alignment, false, true); @@ -545,7 +545,7 @@ this->ui->translations->add(*this->clear_button, ::translation("clear network")); dynamic_cast(this->clear_button->get_child() - )->set_border_width(1 ex / 2); + )->set_border_width(1 EX / 2); alignment->add(*this->clear_button); vbox->pack_end(*alignment, false, true); Index: src/ui/gtkmm/ui.update.cpp =================================================================== --- ui/gtkmm/ui.update.cpp (revision 1647) +++ ui/gtkmm/ui.update.cpp (working copy) @@ -652,6 +652,11 @@ this->table->draw_all(); break; + case Setting::ADDITIONAL_PARTY_SETTINGS: + if (this->party_settings) + this->party_settings->update(); + break; + default: break; } // switch(type) Index: src/ui/gtkmm/last_trick.cpp =================================================================== --- ui/gtkmm/last_trick.cpp (revision 1647) +++ ui/gtkmm/last_trick.cpp (working copy) @@ -132,7 +132,7 @@ close_button->signal_clicked().connect(sigc::mem_fun(*this, &LastTrick::hide)); } // action area - this->get_vbox()->set_spacing(1 ex); + this->get_vbox()->set_spacing(1 EX); this->navigation_container = Gtk::manage(new Gtk::HBox()); this->previous_trick_button = Gtk::manage(new Gtk::Button()); Index: src/ui/gtkmm/party_summary.cpp =================================================================== --- ui/gtkmm/party_summary.cpp (revision 1647) +++ ui/gtkmm/party_summary.cpp (working copy) @@ -124,7 +124,7 @@ this->set_position(Gtk::WIN_POS_CENTER_ON_PARENT); - this->get_vbox()->set_spacing(1 ex); + this->get_vbox()->set_spacing(1 EX); { // action area this->new_party_button Index: src/ui/gtkmm/party_points.cpp =================================================================== --- ui/gtkmm/party_points.cpp (revision 1647) +++ ui/gtkmm/party_points.cpp (working copy) @@ -216,8 +216,8 @@ { // table Gtk::VBox* table_vbox = Gtk::manage(new Gtk::VBox(false)); - table_vbox->set_border_width(1 ex); - table_vbox->set_spacing(1 ex); + table_vbox->set_border_width(1 EX); + table_vbox->set_spacing(1 EX); { // the points table this->party_points_model = new PartyPointsModel(1000 * ::party.playerno()); @@ -430,8 +430,8 @@ 0)); Gtk::Box* box = Gtk::manage(new Gtk::HBox(true)); - box->pack_start(*this->remaining_rounds_label, Gtk::PACK_SHRINK, 1 em); - box->pack_end(*this->remaining_points_label, Gtk::PACK_SHRINK, 1 em); + box->pack_start(*this->remaining_rounds_label, Gtk::PACK_SHRINK, 1 EM); + box->pack_end(*this->remaining_points_label, Gtk::PACK_SHRINK, 1 EM); this->get_vbox()->pack_start(*box, false, true); } // remaining rounds / points @@ -1217,7 +1217,7 @@ : 0) ) ); if ( party.rule()(Rule::NUMBER_OF_ROUNDS_LIMITED) || party.rule()(Rule::POINTS_LIMITED)) - this->remaining_rounds_label->get_parent()->set_border_width(1 ex); + this->remaining_rounds_label->get_parent()->set_border_width(1 EX); else this->remaining_rounds_label->get_parent()->set_border_width(0); Index: src/ui/gtkmm/bug_report_replay.cpp =================================================================== --- ui/gtkmm/bug_report_replay.cpp (revision 1647) +++ ui/gtkmm/bug_report_replay.cpp (working copy) @@ -216,8 +216,8 @@ Gtk::Label* label = Gtk::manage(new Gtk::Label("general")); this->ui->translations->add(*label, ::translation("BugReportReplay::Group::general")); - Gtk::Box* general_box = Gtk::manage(new Gtk::VBox(false, 1 em)); - general_box->set_border_width(1 em); + Gtk::Box* general_box = Gtk::manage(new Gtk::VBox(false, 1 EM)); + general_box->set_border_width(1 EM); { // game box Gtk::Alignment* alignment @@ -224,7 +224,7 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - Gtk::Box* game_box = Gtk::manage(new Gtk::VBox(false, 1 ex)); + Gtk::Box* game_box = Gtk::manage(new Gtk::VBox(false, 1 EX)); game_box->pack_start(*this->version, Gtk::PACK_EXPAND_WIDGET); game_box->pack_start(*this->system, Gtk::PACK_EXPAND_WIDGET); @@ -247,7 +247,7 @@ Gtk::Label* label = Gtk::manage(new Gtk::Label("actions")); this->ui->translations->add(*label, ::translation("BugReportReplay::Group::actions")); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX)); Gtk::ScrolledWindow* scrolled_window = Gtk::manage(new Gtk::ScrolledWindow); Index: src/ui/gtkmm/reservation.cpp =================================================================== --- ui/gtkmm/reservation.cpp (revision 1647) +++ ui/gtkmm/reservation.cpp (working copy) @@ -224,7 +224,7 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 ex); + alignment->set_border_width(1 EX); alignment->add(*this->bock_label); this->get_vbox()->add(*alignment); } // bock information @@ -261,13 +261,13 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(2 ex); + alignment->set_border_width(2 EX); Gtk::Label* label = Gtk::manage(new Gtk::Label("general")); this->ui->translations->add(*label, ::translation("GameType::Group::general")); this->notebook->append_page(*alignment, *label); - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 ex)); + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EX)); alignment->add(*hbox); Gtk::VBox* vbox = NULL; @@ -322,7 +322,7 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(2 ex); + alignment->set_border_width(2 EX); Gtk::Label* label = Gtk::manage(new Gtk::Label("solo")); this->ui->translations->add(*label, ::translation("GameType::Group::solo")); @@ -428,8 +428,8 @@ table2->attach(*this->remaining_points_number, 1, 2, 2, 3); - table2->set_row_spacings(1 ex); - table2->set_col_spacings(static_cast(0.5 em)); + table2->set_row_spacings(1 EX); + table2->set_col_spacings(static_cast(0.5 EM)); table2->set_homogeneous(false); alignment->add(*table2); @@ -482,14 +482,14 @@ table2->attach(*this->duty_picture_soli_number, 1, 2, 2, 3); - table2->set_row_spacings(1 ex); - table2->set_col_spacings(static_cast(0.5 em)); + table2->set_row_spacings(1 EX); + table2->set_col_spacings(static_cast(0.5 EM)); table2->set_homogeneous(false); alignment->add(*table2); table->attach(*alignment, 1, 2, 0, 1); } // duty soli - table->set_border_width(1 ex); + table->set_border_width(1 EX); this->get_vbox()->add(*table); } // tournament info Index: src/ui/gtkmm/game_debug.cpp =================================================================== --- ui/gtkmm/game_debug.cpp (revision 1647) +++ ui/gtkmm/game_debug.cpp (working copy) @@ -533,14 +533,14 @@ } // action area { // content - Gtk::Box* content_box = Gtk::manage(new Gtk::HBox(false, 2 em)); + Gtk::Box* content_box = Gtk::manage(new Gtk::HBox(false, 2 EM)); this->get_vbox()->add(*content_box); - Gtk::Box* left_box = Gtk::manage(new Gtk::VBox(false, 1 ex)); + Gtk::Box* left_box = Gtk::manage(new Gtk::VBox(false, 1 EX)); content_box->pack_start(*left_box, false, false); { // game info - Gtk::Box* box = Gtk::manage(new Gtk::VBox(true, 1 ex)); - box->set_border_width(1 em); + Gtk::Box* box = Gtk::manage(new Gtk::VBox(true, 1 EX)); + box->set_border_width(1 EM); { // seed Gtk::Box* box2 = Gtk::manage(new Gtk::HBox(false, 0)); @@ -580,7 +580,7 @@ this->ui->translations->add(*dynamic_cast(frame->get_label_widget()), ::translation("game info")); frame->add(*box); - frame->set_border_width(1 em); + frame->set_border_width(1 EM); Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, @@ -630,13 +630,13 @@ } Gtk::Alignment* a = Gtk::manage(new Gtk::Alignment); - a->set_border_width(1 em); + a->set_border_width(1 EM); a->add(*this->player_info_treeview); Gtk::Frame* frame = Gtk::manage(new Gtk::Frame("player info")); this->ui->translations->add(*dynamic_cast(frame->get_label_widget()), ::translation("player info")); frame->add(*a); - frame->set_border_width(1 em); + frame->set_border_width(1 EM); Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, @@ -678,13 +678,13 @@ } // for (p) Gtk::Alignment* a = Gtk::manage(new Gtk::Alignment); - a->set_border_width(1 em); + a->set_border_width(1 EM); a->add(*this->team_info_treeview); Gtk::Frame* frame = Gtk::manage(new Gtk::Frame("team info")); this->ui->translations->add(*dynamic_cast(frame->get_label_widget()), ::translation("team info")); frame->add(*a); - frame->set_border_width(1 em); + frame->set_border_width(1 EM); Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, @@ -725,13 +725,13 @@ scrolled_window->set_vadjustment(this->tricks_treeview->get_vadjustment()); Gtk::Alignment* a = Gtk::manage(new Gtk::Alignment); - a->set_border_width(1 em); + a->set_border_width(1 EM); a->add(*scrolled_window); Gtk::Frame* frame = Gtk::manage(new Gtk::Frame("tricks")); this->ui->translations->add(*dynamic_cast(frame->get_label_widget()), ::translation("tricks")); frame->add(*a); - frame->set_border_width(1 em); + frame->set_border_width(1 EM); content_box->pack_end(*frame, true, true); } // tricks Index: src/ui/gtkmm/party_settings.h =================================================================== --- ui/gtkmm/party_settings.h (revision 1647) +++ ui/gtkmm/party_settings.h (working copy) @@ -40,6 +40,7 @@ class SpinButton; class CheckButton; class RadioButton; + class Frame; } // namespace Gtk class Setting; @@ -120,6 +121,7 @@ Gtk::StockButton* start_party_button; Gtk::StockButton* close_button; + Gtk::Frame* seed_frame; Gtk::SpinButton* seed_value; Gtk::CheckButton* seed_random; @@ -128,6 +130,7 @@ Gtk::CheckButton* rule_points_limited; Gtk::SpinButton* rule_points; + Gtk::Frame* startplayer_frame; vector startplayer; Gtk::RadioButton* startplayer_random; vector switch_players_buttons; Index: src/ui/gtkmm/rules.cpp =================================================================== --- ui/gtkmm/rules.cpp (revision 1647) +++ ui/gtkmm/rules.cpp (working copy) @@ -308,7 +308,7 @@ { // Tournament Gtk::VBox* tournament_box = this->add_group("tournament"); - tournament_box->set_spacing(3 ex); + tournament_box->set_spacing(3 EX); { // with nines Gtk::Alignment* alignment @@ -316,7 +316,7 @@ Gtk::ALIGN_CENTER, 0, 0)); tournament_box->add(*alignment); - Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox2); vbox2->add(*this->type_bool[Rule::WITH_NINES - Rule::BOOL_FIRST]); @@ -328,7 +328,7 @@ Gtk::ALIGN_CENTER, 0, 0)); vbox->add(*alignment); - Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox2); vbox2->add(*this->type_unsigned[Rule::NUMBER_OF_PLAYERS - Rule::UNSIGNED_FIRST]); @@ -336,7 +336,7 @@ } // number of players #endif { // lower box - Gtk::Box* hbox = Gtk::manage(new Gtk::HBox(false, 2 em)); + Gtk::Box* hbox = Gtk::manage(new Gtk::HBox(false, 2 EM)); { // limits Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, @@ -343,12 +343,12 @@ Gtk::ALIGN_CENTER, 0, 0)); hbox->add(*alignment); - Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 2 ex)); + Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 2 EX)); alignment->add(*vbox2); { Gtk::VBox* vbox3 - = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); vbox2->add(*vbox3); vbox3->add(*this->type_bool[Rule::NUMBER_OF_ROUNDS_LIMITED - Rule::BOOL_FIRST]); vbox3->add(*this->type_unsigned[Rule::NUMBER_OF_ROUNDS - Rule::UNSIGNED_FIRST]); @@ -355,7 +355,7 @@ } { Gtk::VBox* vbox3 - = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); vbox2->add(*vbox3); vbox3->add(*this->type_bool[Rule::POINTS_LIMITED - Rule::BOOL_FIRST]); vbox3->add(*this->type_unsigned[Rule::POINTS - Rule::UNSIGNED_FIRST]); @@ -366,13 +366,13 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - hbox->pack_end(*alignment, Gtk::PACK_SHRINK, 2 ex); - Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 2 ex)); + hbox->pack_end(*alignment, Gtk::PACK_SHRINK, 2 EX); + Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 2 EX)); alignment->add(*vbox2); { Gtk::VBox* vbox3 - = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); vbox2->add(*vbox3); vbox3->add(*this->type_unsigned[Rule::NUMBER_OF_DUTY_SOLI - Rule::UNSIGNED_FIRST]); vbox3->add(*this->type_unsigned[Rule::NUMBER_OF_DUTY_COLOR_SOLI - Rule::UNSIGNED_FIRST]); @@ -380,7 +380,7 @@ } { Gtk::VBox* vbox3 - = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); vbox2->add(*vbox3); vbox3->add(*this->type_bool[Rule::OFFER_DUTY_SOLO - Rule::BOOL_FIRST]); } @@ -390,25 +390,25 @@ } // Tournament { // counting Gtk::VBox* vbox = this->add_group("counting"); - Gtk::HBox* counting_box = Gtk::manage(new Gtk::HBox(false, 4 em)); + Gtk::HBox* counting_box = Gtk::manage(new Gtk::HBox(false, 4 EM)); { // counting type Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - Gtk::VBox* vbox_count = Gtk::manage(new Gtk::VBox(false, 2 ex)); + Gtk::VBox* vbox_count = Gtk::manage(new Gtk::VBox(false, 2 EX)); { Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - Gtk::Box* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::Box* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); { Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 ex / 2); + alignment->set_border_width(1 EX / 2); Gtk::Label* label = Gtk::manage(new Gtk::Label("counting")); this->ui->translations->add(*label, ::translation(Rule::COUNTING)); @@ -430,7 +430,7 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 ex / 2); + alignment->set_border_width(1 EX / 2); alignment->add(*this->type_bool[Rule::SOLO_ALWAYS_COUNTS_TRIPLE - Rule::BOOL_FIRST]); vbox_count->add(*alignment); } @@ -438,8 +438,8 @@ counting_box->add(*alignment); } // counting type { // Bock - Gtk::VBox* bock_box = Gtk::manage(new Gtk::VBox(false, 0 ex)); - bock_box->set_spacing(2 ex); + Gtk::VBox* bock_box = Gtk::manage(new Gtk::VBox(false, 0 EX)); + bock_box->set_spacing(2 EX); counting_box->add(*bock_box); { @@ -461,7 +461,7 @@ alignment->add(*this->type_bool[Rule::BOCK_APPEND - Rule::BOOL_FIRST]); } { // conditions - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(true, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(true, 1 EX / 2)); bock_box->add(*vbox); vbox->add(*this->type_bool[Rule::BOCK_120 - Rule::BOOL_FIRST]); @@ -489,7 +489,7 @@ Gtk::ALIGN_CENTER, 0, 0)); vbox0->add(*alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox); vbox->add(*this->type_unsigned[Rule::SHOW_TRICKS_NUMBER - Rule::UNSIGNED_FIRST]); @@ -502,7 +502,7 @@ Gtk::ALIGN_CENTER, 0, 0)); vbox0->add(*alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox); vbox->add(*this->type_bool[Rule::SHOW_SOLOPLAYER_IN_GAME - Rule::BOOL_FIRST]); @@ -516,7 +516,7 @@ Gtk::ALIGN_CENTER, 0, 0)); vbox0->add(*alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox); vbox->add(*this->type_bool[Rule::CARD_HINT - Rule::BOOL_FIRST]); @@ -526,10 +526,10 @@ { // Solo Gtk::VBox* solo_box = this->add_group("solo", this->ui->icons->new_managed_image(Icons::SOLO_KOEHLER, ICONSCALING)); - solo_box->set_spacing(2 ex); + solo_box->set_spacing(2 EX); { // solo types - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX)); solo_box->add(*vbox); { Gtk::Alignment* alignment @@ -547,10 +547,10 @@ 0, 0)); vbox->add(*alignment); { - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 em)); + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EM)); alignment->add(*hbox); { - Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(true, 1 ex / 2)); + Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(true, 1 EX / 2)); hbox->add(*vbox2); vbox2->add(*this->type_bool[Rule::SOLO_COLOR - Rule::BOOL_FIRST]); @@ -558,7 +558,7 @@ vbox2->add(*this->type_bool[Rule::SOLO_MEATLESS - Rule::BOOL_FIRST]); } { - Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(true, 1 ex / 2)); + Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(true, 1 EX / 2)); hbox->add(*vbox2); vbox2->add(*this->type_bool[Rule::SOLO_JACK - Rule::BOOL_FIRST]); @@ -566,7 +566,7 @@ vbox2->add(*this->type_bool[Rule::SOLO_KING - Rule::BOOL_FIRST]); } { - Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(true, 1 ex / 2)); + Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(true, 1 EX / 2)); hbox->add(*vbox2); vbox2->add(*this->type_bool[Rule::SOLO_QUEEN_JACK - Rule::BOOL_FIRST]); @@ -581,7 +581,7 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - solo_box->pack_end(*alignment, Gtk::PACK_SHRINK, 0 ex); + solo_box->pack_end(*alignment, Gtk::PACK_SHRINK, 0 EX); alignment->add(*this->type_bool[Rule::THROWING_BEFORE_SOLO - Rule::BOOL_FIRST]); } @@ -590,7 +590,7 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - solo_box->pack_end(*alignment, Gtk::PACK_SHRINK, 2 ex); + solo_box->pack_end(*alignment, Gtk::PACK_SHRINK, 2 EX); alignment->add(*this->type_bool[Rule::LUSTSOLO_PLAYER_LEADS - Rule::BOOL_FIRST]); } @@ -605,7 +605,7 @@ Gtk::ALIGN_CENTER, 0, 0)); poverty_box->add(*alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox); vbox->add(*this->type_bool[Rule::POVERTY - Rule::BOOL_FIRST]); @@ -622,7 +622,7 @@ Gtk::ALIGN_CENTER, 0, 0)); poverty_box->add(*alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox); vbox->add(*this->type_bool[Rule::THROW_WHEN_FOX_HIGHEST_TRUMP - Rule::BOOL_FIRST]); @@ -656,7 +656,7 @@ Gtk::ALIGN_CENTER, 0, 0)); marriage_box->add(*alignment); - Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox2); vbox2->add(*this->type_bool[Rule::MARRIAGE_FIRST_FOREIGN - Rule::BOOL_FIRST]); @@ -688,7 +688,7 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - marriage_box->pack_end(*alignment, Gtk::PACK_SHRINK, 2 ex); + marriage_box->pack_end(*alignment, Gtk::PACK_SHRINK, 2 EX); alignment->add(*this->type_bool[Rule::GENSCHER - Rule::BOOL_FIRST]); } // genscher @@ -704,7 +704,7 @@ 0, 0)); announcements_box->add(*alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox); vbox->pack_start(*this->type_bool[Rule::KNOCKING - Rule::BOOL_FIRST]); @@ -717,7 +717,7 @@ 0, 0)); announcements_box->add(*alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox); { @@ -748,7 +748,7 @@ 0, 0)); announcements_box->add(*alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox); vbox->pack_start(*this->type_bool[Rule::ANNOUNCEMENT_LIMIT_ONLY_FOR_CURRENT - Rule::BOOL_FIRST]); @@ -766,7 +766,7 @@ { // Dollen Gtk::VBox* vbox = this->add_group("dollen", this->ui->icons->new_managed_image(Icons::DOLLEN, ICONSCALING)); - vbox->set_spacing(1 ex / 2); + vbox->set_spacing(1 EX / 2); { vbox->add(*this->type_bool[Rule::DOLLEN - Rule::BOOL_FIRST]); @@ -782,8 +782,8 @@ ICONSCALING) )->add(*table); - table->set_col_spacings(2 em); - table->set_row_spacings(1 ex / 2); + table->set_col_spacings(2 EM); + table->set_row_spacings(1 EX / 2); { table->attach(*this->type_bool[Rule::SWINES - Rule::BOOL_FIRST], @@ -819,8 +819,8 @@ this->ui->icons->new_managed_image(Icons::DOPPELKOPF, ICONSCALING)); { - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 em)); - hbox->set_spacing(2 em); + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EM)); + hbox->set_spacing(2 EM); vbox->add(*hbox); { Gtk::Alignment* alignment @@ -828,7 +828,7 @@ Gtk::ALIGN_CENTER, 0, 0)); hbox->add(*alignment); - Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox2); vbox2->add(*this->type_bool[Rule::EXTRAPOINT_CATCH_FOX - Rule::BOOL_FIRST]); @@ -842,7 +842,7 @@ Gtk::ALIGN_CENTER, 0, 0)); hbox->add(*alignment); - Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox2); vbox2->add(*this->type_bool[Rule::EXTRAPOINT_CHARLIE - Rule::BOOL_FIRST]); @@ -858,7 +858,7 @@ Gtk::ALIGN_CENTER, 0, 0)); vbox->add(*alignment); - Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox2 = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox2); vbox2->add(*this->type_bool[Rule::EXTRAPOINT_DOLLE_JABS_DOLLE - Rule::BOOL_FIRST]); @@ -872,11 +872,11 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_TOP, 0, 0)); - this->get_vbox()->pack_end(*alignment, Gtk::PACK_SHRINK, 1 ex); + this->get_vbox()->pack_end(*alignment, Gtk::PACK_SHRINK, 1 EX); Gtk::Box* file_box = Gtk::manage(new Gtk::HButtonBox()); - file_box->set_border_width(1 ex / 2); - file_box->set_spacing(1 em); + file_box->set_border_width(1 EX / 2); + file_box->set_spacing(1 EM); alignment->add(*file_box); file_box->add(*this->reset_button); @@ -1419,11 +1419,11 @@ Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 2 ex)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 2 EX)); alignment->add(*vbox); - vbox->set_border_width(1 em); + vbox->set_border_width(1 EM); - Gtk::HBox* bookmark = Gtk::manage(new Gtk::HBox(false, 1 em / 2)); + Gtk::HBox* bookmark = Gtk::manage(new Gtk::HBox(false, 1 EM / 2)); if (image) bookmark->add(*image); if (!name.empty()) { Index: src/ui/gtkmm/about.cpp =================================================================== --- ui/gtkmm/about.cpp (revision 1647) +++ ui/gtkmm/about.cpp (working copy) @@ -160,7 +160,7 @@ Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 ex / 2); + alignment->set_border_width(1 EX / 2); alignment->add(*homepage_button); Index: src/ui/gtkmm/widgets/label_type_selector.h =================================================================== --- ui/gtkmm/widgets/label_type_selector.h (revision 1647) +++ ui/gtkmm/widgets/label_type_selector.h (working copy) @@ -90,7 +90,7 @@ // inits the label type selector void init() { - this->set_spacing(1 ex); + this->set_spacing(1 EX); Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_RIGHT, Gtk::ALIGN_CENTER, Index: src/ui/gtkmm/widgets/labelentry.h =================================================================== --- ui/gtkmm/widgets/labelentry.h (revision 1647) +++ ui/gtkmm/widgets/labelentry.h (working copy) @@ -49,7 +49,7 @@ label_(), entry_() { - this->set_spacing(1 ex); + this->set_spacing(1 EX); Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, Index: src/ui/gtkmm/trick_summary.cpp =================================================================== --- ui/gtkmm/trick_summary.cpp (revision 1647) +++ ui/gtkmm/trick_summary.cpp (working copy) @@ -137,13 +137,13 @@ { // info box Gtk::VBox* info_box = Gtk::manage(new Gtk::VBox(true)); - info_box->set_border_width(2 ex); + info_box->set_border_width(2 EX); this->pack_end(*info_box); { // the labels Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_BOTTOM, 0, 0)); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex)); - vbox->set_border_width(2 ex); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX)); + vbox->set_border_width(2 EX); alignment->add(*vbox); this->winner = Gtk::manage(new Gtk::Label("Winner:")); @@ -164,8 +164,8 @@ { // specialpoints Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_TOP, 0, 0)); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex)); - vbox->set_border_width(2 ex); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX)); + vbox->set_border_width(2 EX); alignment->add(*vbox); this->specialpoints_list Index: src/ui/gtkmm/genscher_selection.cpp =================================================================== --- ui/gtkmm/genscher_selection.cpp (revision 1647) +++ ui/gtkmm/genscher_selection.cpp (working copy) @@ -113,11 +113,11 @@ ::translation("~genscher")); Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment()); - alignment->set_border_width(2 ex); + alignment->set_border_width(2 EX); this->get_action_area()->add(*alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex)); - vbox->set_border_width(1 ex); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX)); + vbox->set_border_width(1 EX); alignment->add(*vbox); this->info_label = Gtk::manage(new Gtk::Label("Genscher: Please choose your partner.")); Index: src/ui/gtkmm/aiconfig.cpp =================================================================== --- ui/gtkmm/aiconfig.cpp (revision 1647) +++ ui/gtkmm/aiconfig.cpp (working copy) @@ -394,7 +394,7 @@ Players::Player::AiConfig::create_container() { this->container - = Gtk::manage(new Gtk::VBox(false, 1 ex)); + = Gtk::manage(new Gtk::VBox(false, 1 EX)); { // the difficulty Gtk::Alignment* alignment @@ -424,12 +424,12 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 em); + alignment->set_border_width(1 EM); Gtk::Table* table = Gtk::manage(new Gtk::Table(2, 2, true)); - table->set_col_spacings(2 em); - table->set_row_spacings(1 ex); - table->set_border_width(1 ex); + table->set_col_spacings(2 EM); + table->set_row_spacings(1 EX); + table->set_border_width(1 EX); //table->attach(*this->difficulty_button, 0, 1, 0, 1); // the difficulty selector is put in the 'player' page @@ -452,9 +452,9 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 em); + alignment->set_border_width(1 EM); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 em)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EM)); vbox->add(*(this->type_bool[Aiconfig::TEAMS_KNOWN - Aiconfig::BOOL_FIRST])); vbox->add(*(this->type_bool[Aiconfig::HANDS_KNOWN - Aiconfig::BOOL_FIRST])); @@ -475,7 +475,7 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 em); + alignment->set_border_width(1 EM); // ToDo: table -> ListStore Gtk::Table* table = Gtk::manage(new Gtk::Table(this->ui->party().rule()(Rule::MAX_NUMBER_OF_TRICKS_IN_GAME) + 2, 5)); @@ -597,9 +597,9 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 em); + alignment->set_border_width(1 EM); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 em)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EM)); vbox->add(*this->type_int[Aiconfig::TAKEPOVERTY - Aiconfig::INT_FIRST]); vbox->add(*this->type_int[Aiconfig::SINGLESOLO - Aiconfig::INT_FIRST]); @@ -620,9 +620,9 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 em); + alignment->set_border_width(1 EM); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 em)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EM)); vbox->add(*(this->type_int[Aiconfig::ANNOUNCELIMIT - Aiconfig::INT_FIRST])); vbox->add(*(this->type_int[Aiconfig::ANNOUNCELIMITDEC - Aiconfig::INT_FIRST])); @@ -642,9 +642,9 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 em); + alignment->set_border_width(1 EM); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 em)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EM)); vbox->add(*this->type_bool[Aiconfig::FEHLCREATIONONFIRSTCARD - Aiconfig::BOOL_FIRST]); vbox->add(*this->type_int[Aiconfig::LAST_TRICKS_WITHOUT_HEURISTICS - Aiconfig::INT_FIRST]); @@ -675,9 +675,9 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 em); + alignment->set_border_width(1 EM); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); vbox->add(*this->type_card[Aiconfig::LIMITTHROWING - Aiconfig::CARD_FIRST]); vbox->add(*this->type_card[Aiconfig::TRUMPLIMIT_NORMAL - Aiconfig::CARD_FIRST]); @@ -696,10 +696,10 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(1 em); + alignment->set_border_width(1 EM); Gtk::Table* table = Gtk::manage(new Gtk::Table(1, 3, false)); - table->set_row_spacings(1 ex / 2); - table->set_col_spacings(1 em / 2); + table->set_row_spacings(1 EX / 2); + table->set_col_spacings(1 EM / 2); { // the table Gtk::Label* label; Gtk::Alignment* alignment; @@ -715,7 +715,7 @@ ::translation("AiConfig::CardLimit::Group::lowest trump limit")); table->attach(*label, 2, 3, row, row + 1); row += 1; - table->set_row_spacing(0, 3 ex / 2); + table->set_row_spacing(0, 3 EX / 2); // color solo table->resize(row + 1, 3); label = Gtk::manage(new Gtk::Label("color solo")); @@ -1140,7 +1140,7 @@ Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER)); - alignment->set_border_width(1 ex); + alignment->set_border_width(1 EX); alignment->add(default_button); box->pack_start(*alignment, Gtk::PACK_SHRINK); } // if (key != HeuristicsMap::Key::DEFAULT) @@ -1203,8 +1203,8 @@ } // treeview { // right column Gtk::Box* box3 - = Gtk::manage(new Gtk::VBox(false, 1 ex)); - box3->set_border_width(1 ex); + = Gtk::manage(new Gtk::VBox(false, 1 EX)); + box3->set_border_width(1 EX); { // move up/down buttons Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_LEFT, @@ -1213,7 +1213,7 @@ Gtk::Box* button_box = Gtk::manage(new Gtk::VButtonBox(Gtk::BUTTONBOX_DEFAULT_STYLE, - 1 ex)); + 1 EX)); this->heuristic_up_button[key] = Gtk::manage(new Gtk::StockButton(Gtk::Stock::GO_UP, "up")); Index: src/ui/gtkmm/players.cpp =================================================================== --- ui/gtkmm/players.cpp (revision 1647) +++ ui/gtkmm/players.cpp (working copy) @@ -129,8 +129,8 @@ { // set default size Gdk::Geometry geometry; - geometry.min_width = 70 ex; - geometry.min_height = 10 ex; + geometry.min_width = 70 EX; + geometry.min_height = 10 EX; this->set_geometry_hints(*this, geometry, Gdk::HINT_MIN_SIZE); } // set default size @@ -159,7 +159,7 @@ for (unsigned p = 0; p < ::party.playerno(); ++p) { Players::Player& player = this->player(p); - Gtk::VBox* player_box = Gtk::manage(new Gtk::VBox(false, 3 ex / 2)); + Gtk::VBox* player_box = Gtk::manage(new Gtk::VBox(false, 3 EX / 2)); this->players_notebook->append_page(*player_box, *(player.name_label)); @@ -170,7 +170,7 @@ Gtk::ALIGN_CENTER, 0, 0)); player_box->pack_end(*alignment, false, true); - alignment->set_border_width(1 ex / 2); + alignment->set_border_width(1 EX / 2); Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(true, 0)); alignment->add(*hbox); { // reset button @@ -204,8 +204,8 @@ 0, 0)); player_notebook.back()->append_page(*alignment, *general_label); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 2 ex)); - vbox->set_border_width(1 ex); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 2 EX)); + vbox->set_border_width(1 EX); alignment->add(*vbox); { // the name widgets @@ -250,7 +250,7 @@ 0, 0)); vbox->add(*alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox); for (vector::iterator type @@ -609,11 +609,11 @@ Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_LEFT, Gtk::ALIGN_TOP, 0, 0)); - alignment->set_border_width(1 ex / 2); + alignment->set_border_width(1 EX / 2); table->attach(*alignment, 0, 1, current_row, current_row + 1, Gtk::FILL | Gtk::EXPAND, Gtk::SHRINK, - depth em); + depth EM); Gtk::CheckButton* group_button = Gtk::manage(new Gtk::CheckButton(name)); @@ -680,8 +680,8 @@ true)); table->attach(*table2, 1, 2, current_row, current_row + 1, Gtk::FILL | Gtk::EXPAND, Gtk::SHRINK); - table2->set_col_spacings(1 em / 2); - table2->set_row_spacing(0, 1 ex / 2); + table2->set_col_spacings(1 EM / 2); + table2->set_row_spacing(0, 1 EX / 2); for (unsigned p = 0; p < ::party.playerno(); ++p) { Gtk::Alignment* alignment @@ -689,7 +689,7 @@ 1, 0)); table2->attach(*alignment, p, p + 1, 0, 1, Gtk::FILL | Gtk::EXPAND, Gtk::SHRINK, - 0, 1 ex / 4); + 0, 1 EX / 4); Gtk::Widget* widget = NULL; if ((type >= Aiconfig::BOOL_FIRST) Index: src/ui/gtkmm/card_suggestion.cpp =================================================================== --- ui/gtkmm/card_suggestion.cpp (revision 1647) +++ ui/gtkmm/card_suggestion.cpp (working copy) @@ -154,7 +154,7 @@ this->card_image = this->ui->cards->new_managed_image(); this->card_box->add(*this->card_image); - this->card_image->set_padding(2 em, 2 ex); + this->card_image->set_padding(2 EM, 2 EX); this->rationals_text = Gtk::manage(new Gtk::Label("Thinking, please wait.")); this->ui->translations->add(*this->rationals_text, ::translation("Thinking, please wait.")); Index: src/ui/gtkmm/constants.h =================================================================== --- ui/gtkmm/constants.h (revision 1647) +++ ui/gtkmm/constants.h (working copy) @@ -62,10 +62,10 @@ // used for: // * border in notebooks -#define em * 18 +#define EM * 18 // used for: // * spacing in boxes -#define ex * 12 +#define EX * 12 #endif // #ifdef USE_UI_GTKMM Index: src/ui/gtkmm/changelog.cpp =================================================================== --- ui/gtkmm/changelog.cpp (revision 1647) +++ ui/gtkmm/changelog.cpp (working copy) @@ -151,7 +151,7 @@ Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_border_width(2 ex); + alignment->set_border_width(2 EX); //this->get_vbox()->pack_start(*alignment, false, true); Gtk::TextView* const title_text = Gtk::manage(new Gtk::TextView()); Index: src/ui/gtkmm/full_trick.cpp =================================================================== --- ui/gtkmm/full_trick.cpp (revision 1647) +++ ui/gtkmm/full_trick.cpp (working copy) @@ -127,7 +127,7 @@ } // action area { // vbox - this->get_vbox()->set_spacing(1 ex); + this->get_vbox()->set_spacing(1 EX); this->trick_summary = new TrickSummary(this, false); @@ -134,7 +134,7 @@ this->get_vbox()->add(*this->trick_summary); this->winnercard = this->ui->cards->new_managed_image(); - this->winnercard->set_padding(2 em, 2 ex); + this->winnercard->set_padding(2 EM, 2 EX); this->trick_summary->pack_start(*this->winnercard); } // vbox Index: src/ui/gtkmm/utils.cpp =================================================================== --- ui/gtkmm/utils.cpp (revision 1647) +++ ui/gtkmm/utils.cpp (working copy) @@ -158,7 +158,7 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_LEFT, Gtk::ALIGN_CENTER, 0, 0)); - alignment->set_property("left_padding", level em); + alignment->set_property("left_padding", level EM); alignment->add(widget); return alignment; } // Gtk::Alignment* indent(Gtk::Widget& widget, unsigned level = 1) Index: src/ui/gtkmm/players_db.cpp =================================================================== --- ui/gtkmm/players_db.cpp (revision 1647) +++ ui/gtkmm/players_db.cpp (working copy) @@ -196,15 +196,15 @@ { // vbox - Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 em)); + Gtk::HBox* hbox = Gtk::manage(new Gtk::HBox(false, 1 EM)); this->get_vbox()->add(*hbox); { // statistic type Gtk::Alignment* alignment = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_LEFT, Gtk::ALIGN_TOP, 0, 0)); - alignment->set_border_width(1 ex); + alignment->set_border_width(1 EX); hbox->add(*alignment); - Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 ex / 2)); + Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox(false, 1 EX / 2)); alignment->add(*vbox); Gtk::RadioButton::Group statistic_group; Index: src/ui/gtkmm/preferences.cards_order.cpp =================================================================== --- ui/gtkmm/preferences.cards_order.cpp (revision 1647) +++ ui/gtkmm/preferences.cards_order.cpp (working copy) @@ -63,7 +63,7 @@ Preferences::init_cardsorder() { Gtk::VBox* vbox = this->add_group_vbox("cards order"); - vbox->set_border_width(2 ex); + vbox->set_border_width(2 EX); { // the cards Gtk::Table* table Index: src/misc/setting.cpp =================================================================== --- misc/setting.cpp (revision 1647) +++ misc/setting.cpp (working copy) @@ -223,6 +223,7 @@ this->set(AUTOMATIC_SAVINGS, true); this->set(SAVE_PARTY_CHANGES, true); + this->set(ADDITIONAL_PARTY_SETTINGS, false); this->set(LANGUAGE, ""); @@ -1146,6 +1147,8 @@ return true; case SAVE_PARTY_CHANGES: return (*this)(AUTOMATIC_SAVINGS); + case ADDITIONAL_PARTY_SETTINGS: + return true; case SHOW_SPLASH_SCREEN: return true; case SPLASH_SCREEN_TRANSPARENT: @@ -3200,6 +3203,8 @@ return "automatic savings"; case Setting::SAVE_PARTY_CHANGES: return "save party changes"; + case Setting::ADDITIONAL_PARTY_SETTINGS: + return "additional party settings"; case Setting::SHOW_SPLASH_SCREEN: return "show splash screen"; case Setting::SPLASH_SCREEN_TRANSPARENT: Index: src/misc/setting.h =================================================================== --- misc/setting.h (revision 1647) +++ misc/setting.h (working copy) @@ -63,6 +63,7 @@ // save nothing (automatically) AUTOMATIC_SAVINGS = BOOL_FIRST, SAVE_PARTY_CHANGES, + ADDITIONAL_PARTY_SETTINGS, SHOW_SPLASH_SCREEN, SPLASH_SCREEN_TRANSPARENT, SHOW_BUG_REPORT_BUTTON_IN_GAME_FINISHED_WINDOW, --- ui/gtkmm/dokolounge/lounge.cpp.orig 2013-12-07 14:04:22.000000000 +0100 +++ ui/gtkmm/dokolounge/lounge.cpp 2014-10-01 22:08:18.939094067 +0200 @@ -238,7 +238,7 @@ ::setting(Setting::DOKOLOUNGE_NAME)) + ""); //this->name->set_markup("Name"); - this->get_vbox()->pack_start(*this->name, Gtk::PACK_SHRINK, 2 ex); + this->get_vbox()->pack_start(*this->name, Gtk::PACK_SHRINK, 2 EX); } // name { // buttons Gtk::HBox* box = Gtk::manage(new Gtk::HBox(true, 0)); --- ui/gtkmm/ui.init.cpp.orig 2013-12-07 14:04:22.000000000 +0100 +++ ui/gtkmm/ui.init.cpp 2014-10-01 22:09:32.630089195 +0200 @@ -358,11 +358,11 @@ int const width_hint = static_cast(7 * this->cards->height()); int const height_hint = static_cast(6 * this->cards->height()); int const width = std::min(width_hint, - Gdk::Screen::get_default()->get_width() - 2 em); + Gdk::Screen::get_default()->get_width() - 2 EM); int const height = std::min(height_hint, - Gdk::Screen::get_default()->get_height() - 2 ex); + Gdk::Screen::get_default()->get_height() - 2 EX); this->main_window->set_default_size(width, height); - //this->main_window->set_default_size(width_hint - 1 em, height_hint - 1 ex); + //this->main_window->set_default_size(width_hint - 1 em, height_hint - 1 EX); } // set the size of the main window Gtk::Window::set_auto_startup_notification(true); --- ui/gtkmm/game_summary.cpp.orig 2013-12-07 14:04:22.000000000 +0100 +++ ui/gtkmm/game_summary.cpp 2014-10-01 22:10:09.284076508 +0200 @@ -115,14 +115,14 @@ void GameSummary::init() { - this->set_border_width(1 em); - this->set_spacing(1 em); + this->set_border_width(1 EM); + this->set_spacing(1 EM); { // left column Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox()); - vbox->set_border_width(1 ex); - vbox->set_spacing(1 ex); + vbox->set_border_width(1 EX); + vbox->set_spacing(1 EX); this->add(*vbox); @@ -192,7 +192,7 @@ = Gtk::manage(new Gtk::Alignment(Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER, 0, 1)); - alignment->set_border_width(1 ex); + alignment->set_border_width(1 EX); alignment->add(*this->bock_triggers_treeview); vbox->pack_start(*alignment, false, true); } // bock triggers @@ -201,8 +201,8 @@ { // right column Gtk::VBox* vbox = Gtk::manage(new Gtk::VBox()); - vbox->set_border_width(1 ex); - vbox->set_spacing(1 ex); + vbox->set_border_width(1 EX); + vbox->set_spacing(1 EX); this->add(*vbox);