Midway on #8 : Export button now exports all split tiles into a directory

This commit is contained in:
2014-05-23 23:00:16 -07:00
parent fbf1f77de7
commit ea0cfdcd3d
2 changed files with 32 additions and 1 deletions

View File

@@ -116,8 +116,10 @@ module Tailor
def get_tiles def get_tiles
ret = [] ret = []
@rectlist.each do |rect| @rectlist.each do |rect|
ret << @pristineImage.sub_bitmap(rect) img = @pristineImage.sub_bitmap(rect)
ret << img
end end
ret
end end
def get_selected_tile def get_selected_tile

View File

@@ -110,12 +110,41 @@ module Tailor
end end
def on_ExportClicked(event) def on_ExportClicked(event)
dirfinder = Wx::DirDialog.new(self, message = "Choose an export folder")
if dirfinder.show_modal == Wx::ID_OK
progdialog = Wx::ProgressDialog.new("Exporting...",
"Exporting...",
@tilesetSlicer.get_size - 1,
self,
style = Wx::PD_CAN_ABORT | Wx::PD_SMOOTH | Wx::PD_AUTO_HIDE)
dirname = dirfinder.get_path
tiles = @tilesetSlicer.get_tiles
(0..(tiles.size-1)).each do |i|
tile = tiles[i]
tileName = @tilesetNames[i]
filename = File.join(dirname, tileName) + ".png"
check = progdialog.update_and_check(i, "Exporting #{tileName} ... ")
if not check[0]
next
elsif check[1]
Wx::MessageDialog.new(self,
"Export operation aborted by user!",
style = Wx::ICON_EXCLAMATION).show_modal
return
end
Wx::Image.from_bitmap(tile).save_file(filename)
end
end
end end
def on_SaveClicked(event) def on_SaveClicked(event)
end end
def on_tilepropsChanged(event) def on_tilepropsChanged(event)
return if @tilesetSlicer.get_size < 1
ret = Wx::MessageDialog.new(self, ret = Wx::MessageDialog.new(self,
"Changing tile properties will reset all tile names. Continue?", "Changing tile properties will reset all tile names. Continue?",
"WARNING").show_modal "WARNING").show_modal