… | |
… | |
131 | $vbox->add (my $table = new CFClient::UI::Table expand => 1, col_expand => [0, 1]); |
131 | $vbox->add (my $table = new CFClient::UI::Table expand => 1, col_expand => [0, 1]); |
132 | |
132 | |
133 | $table->add (0, 0, new CFClient::UI::Label align => 1, text => "Video Mode"); |
133 | $table->add (0, 0, new CFClient::UI::Label align => 1, text => "Video Mode"); |
134 | $table->add (1, 0, my $hbox = new CFClient::UI::HBox); |
134 | $table->add (1, 0, my $hbox = new CFClient::UI::HBox); |
135 | |
135 | |
136 | $hbox->add (my $mode_slider = new CFClient::UI::Slider req_w => 100, range => [$CFG->{sdl_mode}, 0, scalar @SDL_MODES, 1]); |
136 | $hbox->add (my $mode_slider = new CFClient::UI::Slider expand => 1, req_w => 100, range => [$CFG->{sdl_mode}, 0, scalar @SDL_MODES, 1]); |
137 | $hbox->add (my $mode_label = new CFClient::UI::Label height => $FONTSIZE * 0.8); |
137 | $hbox->add (my $mode_label = new CFClient::UI::Label height => $FONTSIZE * 0.8); |
138 | |
138 | |
139 | $mode_slider->connect (changed => sub { |
139 | $mode_slider->connect (changed => sub { |
140 | my (undef, $value) = @_; |
140 | my ($self, $value) = @_; |
141 | |
141 | |
142 | $CFG->{sdl_mode} = $value = int $value + 0.5; |
142 | $CFG->{sdl_mode} = $self->{range}[0] = $value = int $value; |
143 | $mode_label->set_text (sprintf "%dx%d", @{$SDL_MODES[$value]}); |
143 | $mode_label->set_text (sprintf "%dx%d", @{$SDL_MODES[$value]}); |
144 | }); |
144 | }); |
145 | $mode_slider->emit (changed => $mode_slider->{range}[0]); |
145 | $mode_slider->emit (changed => $mode_slider->{range}[0]); |
146 | |
146 | |
147 | $table->add (0, 1, new CFClient::UI::Label align => 1, text => "Host"); |
147 | $table->add (0, 1, new CFClient::UI::Label align => 1, text => "Host"); |
… | |
… | |
155 | |
155 | |
156 | $table->add (0, 4, new CFClient::UI::Label align => 1, text => "Password"); |
156 | $table->add (0, 4, new CFClient::UI::Label align => 1, text => "Password"); |
157 | $table->add (1, 4, my $pass = new CFClient::UI::Entry text => $CFG->{password}, hidden => 1); |
157 | $table->add (1, 4, my $pass = new CFClient::UI::Entry text => $CFG->{password}, hidden => 1); |
158 | |
158 | |
159 | $table->add (0, 5, new CFClient::UI::Label align => 1, text => "Map Size"); |
159 | $table->add (0, 5, new CFClient::UI::Label align => 1, text => "Map Size"); |
160 | $table->add (1, 5, my $mapsize_slider = new CFClient::UI::Slider req_w => 100, range => [$CFG->{mapsize}, 10, 100 + 1, 1]); |
160 | $table->add (1, 5, new CFClient::UI::Slider |
|
|
161 | req_w => 100, |
|
|
162 | range => [$CFG->{mapsize}, 10, 100 + 1, 1], |
|
|
163 | connect_changed => sub { |
|
|
164 | my ($self, $value) = @_; |
|
|
165 | |
|
|
166 | $CFG->{mapsize} = $self->{range}[0] = $value = int $value; |
|
|
167 | }, |
|
|
168 | ); |
161 | |
169 | |
162 | $vbox->add (my $hbox = new CFClient::UI::HBox); |
170 | $vbox->add (my $hbox = new CFClient::UI::HBox); |
163 | $hbox->add (new CFClient::UI::Button expand => 1, align => 0, text => "Save", connect_activate => sub { |
171 | $hbox->add (new CFClient::UI::Button expand => 1, align => 0, text => "Save", connect_activate => sub { |
164 | warn "save\n"; |
172 | warn "save\n"; |
165 | }); |
173 | }); |