Commit graph

127 commits

Author SHA1 Message Date
Bill Currie
36ec375893 Support resizing the window.
The resized layout isn't perfect, but at least the usable real estate for
the xy window grows nicely.
2011-04-10 14:34:34 +09:00
Bill Currie
9e15e2cd76 Remove a debug print. 2011-04-10 09:14:28 +09:00
Bill Currie
6cb3d18fc4 Use a hash table for finding entities.
This gives a major speed boost :)
2011-04-09 18:32:29 +09:00
Bill Currie
32f3f5c06b Use a hash table for epair lookup.
This gives a very minor speedup to drawing large maps.
2011-04-09 14:47:36 +09:00
Bill Currie
2bddcefafe Allow up to 64 faces on a brush.
This is temporary until unlimited faces can be supported, but it's
sufficient to load mappi.map.
2011-03-29 12:46:49 +09:00
Bill Currie
7946fec523 More cString cleanups.
I don't know that fileSystemRepresentation is any better than cString for
general usage (due to wchar on windows).
2010-12-28 07:42:08 +09:00
Bill Currie
d29e8deb0a Use Qprintf for writing maps, and fileSystemRepresentation to get the path. 2010-12-27 23:18:43 +09:00
Bill Currie
97e8ab7f3a A bunch more NSString and NSFileManager usage.
It does make for cleaner could, though it would have been nice if NSData
was null terminated :P
2010-12-26 22:33:04 +09:00
Bill Currie
8e13a8327d Use NSFileManager methods instead of access().
This even fixes a bug where an inaccessible bspSound was being opened.
2010-12-26 21:07:55 +09:00
Bill Currie
f105fbd6a0 Use NS* classes for QUAKED directory scanning.
The scanning of actual files is still done using normal C strings, but now
everything up to (but not including) opening the file is handled by *step.
2010-12-26 20:45:01 +09:00
Bill Currie
232c67640c Get the QUAKED text for nullclass right.
? is not a character that's lexed out by the script class.
This fixes the segfault when loading a map when no entities are defined
(ie, the mod's source code could not be found for QUAKED).
2010-12-26 19:06:39 +09:00
Bill Currie
478ef21de0 Add some view opacity. 2010-11-28 15:31:40 +09:00
Bill Currie
83dc8c2a7a Remove some unused files. 2010-11-28 15:31:40 +09:00
Bill Currie
0e8d6d896f Do a bit of comment cleanup. 2010-11-28 15:31:40 +09:00
Bill Currie
ff41feb76e Allow entity copying too. 2010-11-28 15:31:40 +09:00
Bill Currie
cb970bddce Can now copy brushes.
Implement SetBrush's copyWithZone:
2010-11-28 15:31:40 +09:00
Jeff Teunissen
74d959ec64 Cope gracefully with wadfiles we can't handle
This is a weird little diff. We're doing a lot of gymnastics here so that
we don't have to crash (killing any loaded unsaved work!) when we find a
wadfile we don't know how to deal with.
2010-11-28 15:31:40 +09:00
Bill Currie
6702f04b46 Fix key resetting.
Make sure we don't add a new key-pair when the key already exists, and if
the existing value has the same pointer as the "new" value, do nothing.
2010-11-28 15:31:40 +09:00
Bill Currie
ff94a0f76a Can now select textures. 2010-11-28 15:31:39 +09:00
Jeff Teunissen
47117f1762 return the actual string
Oops. I returned a text field instead of the string in it. :)
2010-11-28 15:31:39 +09:00
Jeff Teunissen
877067de61 Export the base directory of the open project
Project -baseDirectoryPath returns the absolute path to the directory from
which the .qpr file was loaded.
2010-11-28 15:31:39 +09:00
Bill Currie
22885a48ad Correctly initialize the path variables.
Use the current project file, not the default.
2010-11-28 15:31:39 +09:00
Jeff Teunissen
0d0e7bfe18 TexturePalette.m: microscopic update
remove a bogus comment, clarify a printf call, add parens around a ternary
test.
2010-11-28 15:31:39 +09:00
Jeff Teunissen
ba508fa3e0 TexturePalette: Prevent NULL dereference
Keep the app from crashing on a wad that doesn't have any palette at all.
2010-11-28 15:31:39 +09:00
Bill Currie
d75f5f3f79 Fix brush selection.
The great cleanup caused a few vital returns to disappear (they probably
went to the same place a lot of my lego did).
2010-11-28 15:31:39 +09:00
Bill Currie
946a06b264 Don't crash if the palette entry is not first.
Instead, swap the palette entry and the first entry (only in memory).
2010-11-28 15:31:39 +09:00
Bill Currie
1928780af6 Support Quests' map format.
This is mostly because I have a few maps in this format.
2010-11-28 15:31:39 +09:00
Bill Currie
ae1d5245ad Got the value/key backwards. 2010-11-28 15:31:39 +09:00
Bill Currie
c2644699a4 Even more conversions to NSString 2010-11-28 15:31:39 +09:00
Bill Currie
12d79ba28d More conversions to NSString 2010-11-28 15:31:39 +09:00
Bill Currie
fd000b880d Do a lot of conversions to NSString. 2010-11-28 15:31:38 +09:00
Bill Currie
2ac2f5fab5 Change path_projectinfo to NSString. 2010-11-28 15:31:38 +09:00
Bill Currie
1180a54d67 It seems I forgot to commit this with the plist changes. 2010-11-28 15:31:38 +09:00
Bill Currie
b28ba46448 Fix wad loading when loading the map.
This broke with the fix for the entity inspector.
2010-11-28 15:31:38 +09:00
Bill Currie
da2c87f964 Use QF's property lists for the project file. 2010-11-28 15:31:38 +09:00
Bill Currie
24fad619d1 First step in cleaning up Dict. 2010-11-28 15:31:38 +09:00
Bill Currie
5c0fb3ecd3 Correct an error message. 2010-11-28 15:31:38 +09:00
Bill Currie
6c96402403 Get the button icons set properly.
There are still issues with the way gorm does things, but this works for
now.
2010-11-28 15:31:38 +09:00
Jeff Teunissen
602564075d install images into Resources
Install the button icons into the app when we make it.
2010-11-28 15:31:38 +09:00
Jeff Teunissen
edf5f6e018 find $GNUSTEP_MAKEFILES
Enable locating the GNUstep makefiles using the various schemes available
(in order of reliability), eventually reaching a hardcoded default.
2010-11-28 15:31:38 +09:00
Jeff Teunissen
0e5cd14829 tactical whitespace bomb
Add return-type information to all methods, split up lines properly where
I could find them, and ran the whole thing through uncrustify. Looks purty
now. :)
2010-11-28 15:31:38 +09:00
Jeff Teunissen
a4eec40843 Remove -read:/-write from Storage
Apparently GS doesn't do TypedStream any more...
2010-11-28 15:31:38 +09:00
Jeff Teunissen
cdc79ae6f8 Add type information, don't return self most of the time
Start "modernizing" the code base; old code is based heavily in the
Smalltalk style, where everything that doesn't return a different object
returns self. This can be useful, but it isn't what is usually done these
days. Also, add type information (which didn't exist in "the old days" --
an object was an "id", not a "Foo *") to help with debugging.
2010-11-28 15:31:38 +09:00
Jeff Teunissen
7dc5d26480 SetBrush: signed/unsigned fix 2010-11-28 15:31:37 +09:00
Jeff Teunissen
dbab1545e5 Comment an #if 0
Looks like John Carmack was going to implement "reference" .qpr directories,
where they would contain a reference to the "real" base path, but never got
it finished. Make a note in the source to explain the "dead" code.
2010-11-28 15:31:37 +09:00
Jeff Teunissen
4d63d20663 signed/unsigned and some const-correctness 2010-11-28 15:31:37 +09:00
Bill Currie
646422d683 Get the timing right when setting the wad file in worldspawn. 2010-11-28 15:31:37 +09:00
Bill Currie
939605309f Do error checking when trying to load a wad file. 2010-11-28 15:31:37 +09:00
Bill Currie
997df6c310 Char buffer audit.
Get rid of most static char buffers. The few remaining are either in file
structs or messy code that needs further analysis.
2010-11-28 15:31:37 +09:00
Bill Currie
1b7be81f11 Do a const-correct run. 2010-11-28 15:31:37 +09:00