Commit Graph

140 Commits (3e04847d4d82c27ad5a9cac0ac1341236e15204c)

Author SHA1 Message Date
Giel van Schijndel eef217fc4a * Make some EditWorld documents be valid reStructured Text
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2583 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-22 00:38:08 +00:00
Giel van Schijndel 03629c04ab * Set svn:mime-type to text/x-rst to get Wiki-like markup in Python-powered viewers
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2580 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-21 22:29:03 +00:00
Giel van Schijndel 1dd3e33c2c * Add DirectX -> OpenGL porting tasks to EditWorld's TODO list as well
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2545 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-11 23:04:21 +00:00
Giel van Schijndel 173f093901 * Fix tile_texpage2mipmap_tileset, it now makes imagemagick output zero-padded filenames up to 2 digits (like Warzone expects)
* Bump version numbers of tile_texpage2mipmap_tileset to 1.2

Patch by Kevin Gillette <kage>: http://forums.wz2100.net/index.php?topic=1010.msg9137#msg9137

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2542 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-11 22:47:13 +00:00
Giel van Schijndel 69ad10edc4 * Fix a compile error when attempting to perform a "Release" compile
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2454 4a71c877-e1ca-e34f-864e-861f7616d084
2007-09-08 12:20:22 +00:00
Giel van Schijndel fe265cdc57 * Remove unused bitmap pumpkin16.bmp which is just a 16 colour version of res/bitmap1.bmp
* Remove unused bitmaps res/bitmap2.bmp res/bmp00001.bmp; also remove them from our resource file
 * Don't use a magic number in editworld.rc for means of referring to res/bitmap1.bmp use IDB_BITMAP1 instead

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2453 4a71c877-e1ca-e34f-864e-861f7616d084
2007-09-08 12:12:34 +00:00
Giel van Schijndel b2f95025ed * Remove M$ SourceSafe file (we don't use SourceSafe!! We use Subversion!!!)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2452 4a71c877-e1ca-e34f-864e-861f7616d084
2007-09-08 11:47:29 +00:00
Giel van Schijndel c0c7c6fa51 * Remove the last uses of template class ListNode<T> which was a cheap replacement of std::list<T>
* Remove some commented out functions from heightmap.cpp which where duplicated (i.e. functions with the same name and parameter prototypes existed elsewhere in the file) and used ListNode<T>
 * Replace usage of ListNode<T> with std::list<T> usage; actually I replaced it with std::list<T>::iterator or std::list<T>::const_iterator since all code that still used ListNode<T> was code iterating over an instance of ListNode<T>
 * Remove listtemp.h which contained template class ListNode<T>

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2451 4a71c877-e1ca-e34f-864e-861f7616d084
2007-09-08 11:42:30 +00:00
Giel van Schijndel fa12543c0d * Remove rather empty file stdafx.cpp
* #define VC_EXTRALEAN before including MFC & Windows headers to exclude some unused stuff

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2447 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-26 21:58:15 +00:00
Giel van Schijndel 30a62a1b6c * Add window IDs to TODO file; which is easier to understand (I hope) than filenames
* Remove several unused windows from the resource file: IDD_EDITSTATS, IDD_HEIGHTSCALE, IDD_OBJECTTYPES, IDD_SETSTATSCHOICE, IDD_SETSTATSCOMBO and IDD_SETSTATSVALUE

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2446 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-26 20:46:54 +00:00
Giel van Schijndel c0df2cb97f * Rename CAboutDlg to AboutDialog and move it out of btedit.cpp into aboutdialog.[ch]pp
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2445 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-26 20:26:50 +00:00
Giel van Schijndel 41dada6a26 * Make Limits dialog resizeable and alter the proportions slightly to make this window easier to work with
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2444 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-26 19:21:38 +00:00
Giel van Schijndel 4cf90b9f8c * Remove empty destructors
* Update EditWorld's TODO file (remove limitsdialog.cpp from the list of yet to port windows)
 * Use wxWidgets' precompiled header in numtextval.hpp

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2443 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-26 18:59:10 +00:00
Giel van Schijndel c7efa311fc * Add template class wxListCtrlValidator<Container> which is a specialization of wxGenericValidator that only works on wxListCtrl instances
* This class uses a container of integers instead of wxArrayInt (C++ container as specified in section 23.1 of the ISO C++ standard 1998)
 * Add another ported dialog: LimitsDialog; to directory wxDialogs

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2442 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-26 16:38:55 +00:00
Giel van Schijndel acccbf667e * Rename function names to names similar to what wxSmith produces (wxSmith is a wxWidgets dialog-editor plug-in for Code::Blocks)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2441 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-26 16:23:26 +00:00
Giel van Schijndel e5fdf5e346 * Remove #include directives for unused header files (btedit.h and debugprint.hpp)
* Wrap some strings in _T() macro (deals with unicode/ascii text)
 * Add an header guard to limitsdialog.hpp
 * Use std::deque's constructor to load data into it from two InputIterators (first & last); note: in case of MSVC6 this requires you to fix the flawed STL

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2439 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-26 11:40:19 +00:00
Giel van Schijndel a2ceea149f * Use references for output parameters for function CHeightMap::GetMapSize instead of pointers (also use "unsigned int" instead of "DWORD")
* Change the return value of functions CHeightMap::GetMapWidth and CHeightMap::GetMapHeight from "DWORD" to "unsigned int" (also don't mark these functions as inline anymore)
 * Mark function CHeightMap::GetScrollLimits as const and remove the inline keyword from its declaration
 * Add a template function CHeightMap::SetScrollLimits which uses std::list::assign() to copy a list of CScrollLimits from two input iterators (in MSVC6 I had to fix the STL implementation to get this to compile, GCC works fine though, newer versions of MSVC *should* work as well btw)
Greater ease in porting to wxWidgets:
 * Rename class CLimitsDialog to LimitsDialog
 * Add templated constructor to LimitsDialog
  * This constructor initializes an std::deque<CScrollLimits> (_limitsList) with a list of scrolling limits
  * This constructor depends on InputIterators (as defined by the C++ standard in section 24.1.1) for its initialization
 * Put member data in a private part of LimitsDialog's class declaration
 * Make sure all member functions of LimitsDialog only work on its own private data and not on other classes' data
 * Instead the usercode using LimitsDialog can use the InputIterators provided by LimitsDialog::firstLimit and LimitsDialog::lastLimit to copy data over (e.g. using STL Containers' assign() member function)

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2435 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-25 17:32:02 +00:00
Giel van Schijndel 876c8b3b61 * Fix the Blender import & export scripts such that they're completely compatible with eachother (i.e. import->export->import == import)
* Add two python mini-scripts (find-bad-pies.py and find-poly-nums.py) that are of fairly little general use, but may serve as an example of how to interface with pie.py (pie.py must be in the python path for these scripts to work)
  * find-bad-pies.py when given a list of filenames will find the ones that, as far as the pie parser (pie.py) is concerned, aren't valid
  * find-poly-nums.py was created to find out if there were any pies that contained any polygons with more than 4 sides
Patch by Kevin Gillette <kage> ( http://forums.wz2100.net/index.php?topic=550.msg7829#msg7829 )

 * Update svn:eol-style and svn:mime-type for all trunk/tools/blender/* files

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2420 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-20 15:09:13 +00:00
Giel van Schijndel 3e8cb6ba4c * Add Python script for the conversion of old-style one-texturepage tilesets to mipmapped tilesets
By Kevin Gillette <kage>

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2383 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-16 10:24:52 +00:00
Giel van Schijndel 5285f0a096 * Cleanup CLimitsDialog's code to make it easier to port it to wxWidgets
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2366 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-09 14:18:57 +00:00
Giel van Schijndel ba7d1d5078 * move class CUndoRedo from bteditdoc.cpp to new file undoredo.cpp
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2363 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-08 20:39:07 +00:00
Giel van Schijndel 243bc7ddb8 * Remove unused files model.cpp/h and seedfill.cpp
* remove #include "snapprefs.h" directive
 * remove non-existent file d3dwrap.h from project file

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2362 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-08 20:10:38 +00:00
Giel van Schijndel 0397a75255 * Remove unused window CSnapPrefs or IDD_OBJECTPREFS
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2361 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-08 19:45:37 +00:00
Giel van Schijndel 9d148e7f8b * Remove unused window CInfoDialog or IDD_DEBUGINFO
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2360 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-08 19:37:17 +00:00
Giel van Schijndel 0931065023 * Use dynamic_cast<T*> instead of wxWidgets' own RTTI implementation (t*)->IsKindOf(CLASSINFO(T))
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2267 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-29 16:55:19 +00:00
Giel van Schijndel 0a310fdd5c * Use dynamic_cast<T*> instead of a C-style (T*) cast (dynamic_cast is safer since it walks the inheritance tree to check whether the pointer is actually of type T)
* Also dynamic_cast<T*> (which is compiler supported) should not be slower (if not faster) than wxWidgets' own RTTI implementation (t*)->IsKindOf(CLASSINFO(T))

This _does_ require RTTI to be enabled in wxWidgets' compilation; just enabling RTTI (as a compiler option) will only increase binary size, it should not add runtime overhead

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2264 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-29 16:45:40 +00:00
Giel van Schijndel bab9bd3316 * Add conversion functions for converting wxString <-> std::string (we're assuming UTF-8 encoding for std::string here)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2263 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-29 16:30:25 +00:00
Giel van Schijndel bba2360eef * Add another ported dialog: InitialLimitsDialog; to directory wxDialogs
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2262 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-29 15:56:39 +00:00
Giel van Schijndel c4b9711e46 * Don't return a reference to a temporary; instead return by value
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2261 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-29 15:47:27 +00:00
Giel van Schijndel 32f0b5bb1b * Minor cleanup:
* remove some unnecessary #include directives
  * add header guards
  * declare some member functions const
  * Add "const std::string& InitialLimitsDlg::SelectedString() const" which retrieves the string of the currently selected item

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2260 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-29 15:43:01 +00:00
Giel van Schijndel 087703e801 * Replace usage of ListNode<CScrollLimits> by class CHeightMap by std::list<CScrollLimits>
* Some const correctness: "char*" -> "const char*"
 * Fix a bug "if (a = b);" -> "if (a == b);"
 * Fix a possible error where NULL might be dereferenced in CHeightMap::DrawScrollLimits (actually if that function would be called dereferencing NULL would be inevitable)
 * Use references for output parameters rather than pointers
 * If we use operator new[] then we should use operator delete[]
 * Remove workaround for bad std::advance implementation since we're not using advance with our own iterators anymore

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2259 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-29 14:04:24 +00:00
Giel van Schijndel 8310f9170e * Replace usage of ListNode<GateWay> by class CHeightMap by std::list<GateWay>
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2257 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-29 12:51:49 +00:00
Giel van Schijndel 817e2ace65 * Replace usage of ListNode<C3DObjectInstance> by class CHeightMap by std::list<C3DObjectInstance>
* Make all member functions of CHeightMap that have an argument list declaration of "(void)" use "()" instead
 * Rename std::advance in limitsdialog.cpp to just advance since it otherwise conflicts with MSVC's (flawed) implementation

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2255 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-28 20:00:57 +00:00
Giel van Schijndel cdc92ebfe6 * Apply ListNode<T>::iterator in class CBTEditDoc
* Initialize CHeightMap's member variables using the constructor's initalization list rather than its body

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2254 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-28 17:54:08 +00:00
Giel van Schijndel d50c04ef6b * Replace usage of ListNode<C3DObjectInstance> by class CBTEditDoc by std::list<C3DObjectInstance>
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2251 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-28 14:34:28 +00:00
Giel van Schijndel bca3e1f535 * Some const correctness
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2250 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-28 14:30:05 +00:00
Giel van Schijndel 4ef9247c6a * Move CBTEditDoc's member initialisation from the constructor's body into the initialization list
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2248 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-28 14:05:19 +00:00
Dennis Schridde 0463b3be26 Version 1.1a of Kage's pie_import.py: fixed a bug that prevented team colors from ever importing correctly.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2239 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-28 10:42:33 +00:00
Giel van Schijndel 7abcb85aa2 * Fix compile error caused by not #including <cassert>
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2237 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-28 00:13:18 +00:00
Giel van Schijndel 92d0f946bb * Add a safety assert to ListNode<T>::iterator to make sure null pointers are asserted on
* Update the TODO list since SaveSegmentDialog has been ported from MFC to wxWidgets already
 * Remove some commented out occurances of "ListNode<.*>.*\*" (yes regexp), to decrease the search context for refactoring code to use iterators

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2236 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-28 00:06:12 +00:00
Giel van Schijndel 21e85b4e62 * Add copy constructor to class scrollLimitStringIterator
* Apply ListNode<T>::iterator for some for-loops
 * Make CHeightMap::GetScrollLimits return "ListNode<CSrollLimits>::iterator" instead of "ListNode<CSrollLimits>*" (effectively forcing all clients of this function to work in iterator style)
 * Fix ListNode<T>::iterator::operator=
 * Add function "void goToBegin()" to ListNode<T>::iterator (shouldn't be at the iterator I know, but this is the most intuitive intermediate solution)
 * Add an own implementation of std::advance to limitsdialog.cpp (it is needed there);
  * since apparently MSVC's STL developers can't even write something like: "for(; n ; --n) ++i;" correctly!!!

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2235 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-27 23:53:07 +00:00
Giel van Schijndel 7e2a03a022 Greater ease in porting to wxWidgets:
* Rename class CInitialLimitsDlg to InitialLimitsDlg
 * Add templated constructor to InitialLimitsDlg
  * This constructor initializes an std::deque<std::string> (_stringList) with a list of strings
  * This constructor depends on InputIterators (as defined by the C++ standard in section 24.1.1) for its initialization
 * InitialLimitsDlg::OnInitDialog() now initializes its ComboBox with strings that have been loaded by the constructor from _stringList
 * Add a proxy class that serves as an InputIterator for the initialization of InitialLimitsDlg
  * This class is a proxy to ListNode<CScrollLimits>::iterator such that it extracts CScrollLimits.ScriptName and constructs an std::string from it
 - These changes decouple InitialLimitsDlg from the implementation and interface of CHeightMap and CScrollLimits

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2234 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-27 23:07:17 +00:00
Giel van Schijndel d6ee80ee25 * Remove annoying usage of DEBUG_NEW since it seems to be causing compile errors at seemingly random times (which is _no_ fun)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2233 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-27 22:42:59 +00:00
Giel van Schijndel 84f7676349 * Add class ListNode<T>::iterator so that we can iterator over a linked list of ListNode<T>s (this will ease porting of code that uses class ListNode<T> to std::list<T> instead
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2232 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-27 22:29:46 +00:00
Giel van Schijndel 8010de593a * Put implementation in class declaration of template class ListNode<T> for increased locality and readability
* Enable compilation of RTTI (RunTime Type-Information) compilation (not using any of it, .., yet)

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2231 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-27 21:11:57 +00:00
Giel van Schijndel f73e4e6488 * Remove some spaces which caused problems with svn:keywords
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2221 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-27 15:34:26 +00:00
Giel van Schijndel b4afe5b827 * Use wxStdDialogButtonSizer for the default buttons instead of a wxBoxSizer with some wxButtons in it
* Rename the dialog in savesegmentdialog.xrc from "Dialog" to "Save Map Segment"

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2220 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-27 15:33:15 +00:00
Giel van Schijndel 3c24ae3d6f * Rename AutoFlagDialog::OnDegree to OnRotate
* Give all parameters of AutoFlagDialog a default value
 * Fix typo (used _TogXFlip and _TogYFlip instead of _ToggleXFlip and _ToggleYFlip respectively)
 * Rename buttons ID_OK and ID_CANCEL to wxID_OK and wxID_CANCEL respectively; this causes wxWidgets' default handlers to be used for these

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2218 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-27 14:30:07 +00:00
Giel van Schijndel 4a34916549 * Fix some syntax errors (missing semi-colons, or semi-colons where they shouldn't be)
* Add a default constructor for wxNumericTextValidator
 * class wxNumericTextValidator:
  * add DECLARE_DYNAMIC_CLASS, DECLARE_EVENT_TABLE and IMPLEMENT_DYNAMIC_CLASS
  * fix BEGIN_EVENT_TABLE (use wxNumericTextValidator instead of wxTextValidator)
 * return *this in copy assignment operator
 * Some other minor fixes

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2217 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-27 14:20:34 +00:00
Giel van Schijndel d8b7837c3b * Add another ported dialog: SaveSegmentDialog; to directory wxDialogs
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2214 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-26 22:28:55 +00:00