… | |
… | |
2249 | DC::SDL_Init DC::SDL_INIT_AUDIO #| DC::SDL_NOPARACHUTE |
2249 | DC::SDL_Init DC::SDL_INIT_AUDIO #| DC::SDL_NOPARACHUTE |
2250 | and die "SDL::Init failed!\n"; |
2250 | and die "SDL::Init failed!\n"; |
2251 | } |
2251 | } |
2252 | |
2252 | |
2253 | sub video_init { |
2253 | sub video_init { |
|
|
2254 | DC::set_theme $CFG->{theme}; |
|
|
2255 | |
2254 | DC::SDL_InitSubSystem DC::SDL_INIT_VIDEO if $SDL_REINIT; |
2256 | DC::SDL_InitSubSystem DC::SDL_INIT_VIDEO if $SDL_REINIT; |
2255 | $SDL_REINIT = 0; |
2257 | $SDL_REINIT = 0; |
2256 | |
2258 | |
2257 | @SDL_MODES = DC::SDL_ListModes 8, $CFG->{disable_alpha} ? 0 : 8; |
2259 | @SDL_MODES = DC::SDL_ListModes 8, $CFG->{disable_alpha} ? 0 : 8; |
2258 | @SDL_MODES = DC::SDL_ListModes 8, 8 unless @SDL_MODES; |
2260 | @SDL_MODES = DC::SDL_ListModes 8, 8 unless @SDL_MODES; |
… | |
… | |
2262 | @SDL_MODES = sort { $a->[0] * $a->[1] <=> $b->[0] * $b->[1] } @SDL_MODES; |
2264 | @SDL_MODES = sort { $a->[0] * $a->[1] <=> $b->[0] * $b->[1] } @SDL_MODES; |
2263 | |
2265 | |
2264 | if (!defined $CFG->{sdl_mode} or $CFG->{sdl_mode} > $#SDL_MODES) { |
2266 | if (!defined $CFG->{sdl_mode} or $CFG->{sdl_mode} > $#SDL_MODES) { |
2265 | $CFG->{sdl_mode} = 0; # lowest resolution by default |
2267 | $CFG->{sdl_mode} = 0; # lowest resolution by default |
2266 | |
2268 | |
2267 | # now choose biggets mode <= 1024x768 |
2269 | # now choose biggest mode <= 1024x768 |
2268 | for (0 .. $#SDL_MODES) { |
2270 | for (0 .. $#SDL_MODES) { |
2269 | if ($SDL_MODES[$_][0] * $SDL_MODES[$_][1] <= 1024 * 768) { |
2271 | if ($SDL_MODES[$_][0] * $SDL_MODES[$_][1] <= 1024 * 768) { |
2270 | $CFG->{sdl_mode} = $_; |
2272 | $CFG->{sdl_mode} = $_; |
2271 | } |
2273 | } |
2272 | } |
2274 | } |
… | |
… | |
2464 | $BUTTONBAR->show; |
2466 | $BUTTONBAR->show; |
2465 | $SETUP_DIALOG->show; |
2467 | $SETUP_DIALOG->show; |
2466 | $MESSAGE_WINDOW->show; |
2468 | $MESSAGE_WINDOW->show; |
2467 | } |
2469 | } |
2468 | |
2470 | |
2469 | $MODE_SLIDER->set_range ([$CFG->{sdl_mode}, 0, $#SDL_MODES, 1, 1]); |
2471 | $MODE_SLIDER->set_range ([$CFG->{sdl_mode}, 0, scalar @SDL_MODES, 1, 1]); |
2470 | $MODE_SLIDER->emit (changed => $CFG->{sdl_mode}); |
2472 | $MODE_SLIDER->emit (changed => $CFG->{sdl_mode}); |
2471 | |
2473 | |
2472 | $CAVEAT_LABEL->set_text ("None :)"); |
2474 | $CAVEAT_LABEL->set_text ("None :)"); |
2473 | $CAVEAT_LABEL->set_text ("Software Rendering (very slow)") |
2475 | $CAVEAT_LABEL->set_text ("Software Rendering (very slow)") |
2474 | unless DC::SDL_GL_GetAttribute DC::SDL_GL_ACCELERATED_VISUAL; |
2476 | unless DC::SDL_GL_GetAttribute DC::SDL_GL_ACCELERATED_VISUAL; |
… | |
… | |
2639 | inv_sort => "mtime", |
2641 | inv_sort => "mtime", |
2640 | default => "profile", # default profile |
2642 | default => "profile", # default profile |
2641 | show_tips => 1, |
2643 | show_tips => 1, |
2642 | logview_max_par => 1000, |
2644 | logview_max_par => 1000, |
2643 | shift_fire_stop => 0, |
2645 | shift_fire_stop => 0, |
|
|
2646 | theme => "wood", |
2644 | ); |
2647 | ); |
2645 | |
2648 | |
2646 | while (my ($k, $v) = each %DEF_CFG) { |
2649 | while (my ($k, $v) = each %DEF_CFG) { |
2647 | $CFG->{$k} = $v unless exists $CFG->{$k}; |
2650 | $CFG->{$k} = $v unless exists $CFG->{$k}; |
2648 | } |
2651 | } |