ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/gde/GCE/MapEditor.pm
(Generate patch)

Comparing deliantra/gde/GCE/MapEditor.pm (file contents):
Revision 1.38 by elmex, Fri Jun 2 13:39:50 2006 UTC vs.
Revision 1.39 by elmex, Thu Jun 29 09:45:17 2006 UTC

76 callback => sub { $self->open_map_prop }, 76 callback => sub { $self->open_map_prop },
77 accelerator => "<ctrl>P" 77 accelerator => "<ctrl>P"
78 }, 78 },
79 "_Map Resize" => { 79 "_Map Resize" => {
80 callback => sub { $self->open_resize_map }, 80 callback => sub { $self->open_resize_map },
81 accelerator => "<ctrl>R"
82 }, 81 },
83 "Close" => { 82 "Close" => {
84 callback => sub { $self->destroy }, 83 callback => sub { $self->destroy },
85 }, 84 },
86 ] 85 ]
149 my $tool = $_->[1]; 148 my $tool = $_->[1];
150 $men->{accel_group}->connect ($Gtk2::Gdk::Keysyms{$_->[0]}, [], 'visible', 149 $men->{accel_group}->connect ($Gtk2::Gdk::Keysyms{$_->[0]}, [], 'visible',
151 sub { $::MAINWIN->set_edit_tool ($tool) }); 150 sub { $::MAINWIN->set_edit_tool ($tool) });
152 } 151 }
153 152
153 $men->{accel_group}->connect ($Gtk2::Gdk::Keysyms{'r'}, ['control-mask'], 'visible',
154 sub { $self->redo });
155
154 $self->add_accel_group ($men->{accel_group}); 156 $self->add_accel_group ($men->{accel_group});
155 157
156 return $men->{widget}; 158 return $men->{widget};
157} 159}
158 160
290 $X++ if $X < $x; 292 $X++ if $X < $x;
291 $X-- if $X > $x; 293 $X-- if $X > $x;
292 $Y++ if $Y < $y; 294 $Y++ if $Y < $y;
293 $Y-- if $Y > $y; 295 $Y-- if $Y > $y;
294 296
297 unless ($ea->only_on_click) {
295 $ea->edit ($map, $X, $Y, $self) 298 $ea->edit ($map, $X, $Y, $self)
296 if $X >= 0 and $Y >= 0 and $X < $map->{map}{width} and $Y < $map->{map}{height}; 299 if $X >= 0 and $Y >= 0 and $X < $map->{map}{width} and $Y < $map->{map}{height};
300 }
297 } 301 }
298 302
299 @{$self->{draw_mode}}[0,1] = ($X, $Y); 303 @{$self->{draw_mode}}[0,1] = ($X, $Y);
300 304
301 1 305 1
417 421
418 $self->{mapkey} = $key; 422 $self->{mapkey} = $key;
419 423
420 if (ref $path) { 424 if (ref $path) {
421 $self->{map}->set_map ($path); 425 $self->{map}->set_map ($path);
426 $self->set_title ('<ram>');
422 427
423 } else { 428 } else {
424 $self->{path} = $path; 429 $self->{path} = $path;
425# print "OPENMAP $path\n"; 430# print "OPENMAP $path\n";
426 $self->{map}->set_map (my $m = new_from_file Crossfire::Map $path); 431 $self->{map}->set_map (my $m = new_from_file Crossfire::Map $path);
432 $self->set_title ("gce - map editor - $self->{path}");
427 require Data::Dumper; 433 require Data::Dumper;
428# print "FOO:" .Data::Dumper::Dumper ($m) . "\n"; 434# print "FOO:" .Data::Dumper::Dumper ($m) . "\n";
429 } 435 }
430} 436}
431 437
433 my ($self) = @_; 439 my ($self) = @_;
434 440
435 if ($self->{path}) { 441 if ($self->{path}) {
436 $self->{map}{map}->write_file ($self->{path}); 442 $self->{map}{map}->write_file ($self->{path});
437 quick_msg ($self, "saved to $self->{path}"); 443 quick_msg ($self, "saved to $self->{path}");
444 $self->set_title ("gce - map editor - $self->{path}");
438 } else { 445 } else {
439 $self->save_map_as; 446 $self->save_map_as;
440 } 447 }
441} 448}
442 449
450 $::MAINWIN->{fc_last_folder} = $fc->get_current_folder; 457 $::MAINWIN->{fc_last_folder} = $fc->get_current_folder;
451 $::MAINWIN->{fc_last_folders}->{$self->{fc_last_folder}}++; 458 $::MAINWIN->{fc_last_folders}->{$self->{fc_last_folder}}++;
452 459
453 $self->{map}{map}->write_file ($self->{path} = $fc->get_filename); 460 $self->{map}{map}->write_file ($self->{path} = $fc->get_filename);
454 quick_msg ($self, "saved to $self->{path}"); 461 quick_msg ($self, "saved to $self->{path}");
462 $self->set_title ("gce - map editor - $self->{path}");
455 } 463 }
456 464
457 $fc->destroy; 465 $fc->destroy;
458} 466}
459 467
590 [qw/tile_path_2 Eastpath string/], 598 [qw/tile_path_2 Eastpath string/],
591 [qw/tile_path_3 Southpath string/], 599 [qw/tile_path_3 Southpath string/],
592 [qw/tile_path_4 Westpath string/], 600 [qw/tile_path_4 Westpath string/],
593 [qw/tile_path_5 Toppath string/], 601 [qw/tile_path_5 Toppath string/],
594 [qw/tile_path_6 Bottompath string/], 602 [qw/tile_path_6 Bottompath string/],
603 [qw/x x sep/],
604 ['x', 'For shop description look in the manual', 'button', sub { $::MAINWIN->show_help_window }],
605 [qw/shopmin Shopmin string/],
606 [qw/shopmax Shopmax string/],
607 [qw/shoprace Shoprace string/],
608 [qw/shopgreed Shopgreed string/],
609 [qw/shopitems Shopitems string/],
595 ) 610 )
596 { 611 {
597 $self->_add_prop_entry ($t, $i++, @$_); 612 $self->_add_prop_entry ($t, $i++, @$_);
598 } 613 }
599 614

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines