The tools that expected a directory were never detected because the
user could only select a file and not a directory. Now he still needs
to select a file but the directory that contains it is also checked and
the file name is stripped if needed to run the tool.
An alternative would have been to let the user select a directory, but
that would have meant the user needed to know if the tool expect a file
or a directory as input. Also because there is no wxPicker to select either
a file or a directory this would have needed additional radio buttons to
show either a file picker or a directory picker. All in all always asking for
a file here seemed more user friendly.
This involved splitting the extract and pack tool into two separate
tools, rewriting them to use the Common::File (and a few other things
from Common) instead of FILE* and changing the way in handles
input and output files.
*A tool can now either match input perfectly, possibly or awful. So less options are displayed to the user (meaning the ChooseTool page can now be skipped most of the time).
*Improved layout.
*The Line Label at the bottom now show the name of the tool that's 'running'.
svn-id: r43031
*Avoided some nasty use of char ** by converting old parse functions to accept std::vector<std::string> instead. Avoided crash from ugly typecasts as well.
svn-id: r42853
*Added a common 'Tools' class to be used by both the CLI and the GUI, right now it's NOT in use by the GUI, so there is some code clutter.
*Rename gui/tools.h to gui/tools.cpp
*Tools now know their own type.
*Some other small changes.
svn-id: r42670