Bill Currie
a1f36a9944
Make new_function take a def rather than a name.
...
Moves into new_function some code that should have been there in the first
place.
2011-01-03 16:25:29 +09:00
Bill Currie
4c69a97ac7
Allow normal declarations within a class implementation.
...
I had always been under the assumption that such was illegal in
Objective-C, but after working on Forge, I now know otherwise.
2011-01-03 16:25:29 +09:00
Bill Currie
dc5bafb8fb
Minimal error recovery.
...
No more bailing on the first syntax error. While the recovery is not
perfect (things can get right twisted), qfcc will now continue parsing
after a syntax error.
2011-01-03 16:25:29 +09:00
Bill Currie
a4635d79e8
Slightly more informative error locations.
...
Inside a class or protocol definition is not "at top level" ;)
2011-01-03 16:25:29 +09:00
Bill Currie
530e8fae34
Rework class_type_t to be more useful.
...
This allows current_class to refer to procols as well (for error
reporting).
2011-01-03 16:25:29 +09:00
Bill Currie
f738ef5dba
Remove redundant RETURN statement rule.
...
The same effect can be achieved with one rule using opt_expr.
2011-01-03 16:19:28 +09:00
Bill Currie
58042719e5
A little more documentation for expressions.
2011-01-03 16:19:28 +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
Jeff Teunissen
8653f9d9a7
Add a man page for zpak
...
It's lame, but so is zpak :)
2010-12-24 16:23:52 -05:00
Bill Currie
526f132517
Minor tweaks.
2010-12-24 20:08:24 +09:00
Bill Currie
22072ee606
Update for the new qfcc headers/libs location.
2010-12-24 20:07:40 +09:00
Bill Currie
1a767849ab
Sort the options in the switch.
...
Should make finding them a little easier.
2010-12-24 17:35:33 +09:00
Bill Currie
d6b3d4891a
Finally, help output for qfprogs.
...
Nothing great, but better than nothing.
2010-12-24 17:33:57 +09:00
Bill Currie
f4d8b82115
Rearrange the options into alpha order.
2010-12-24 17:08:48 +09:00
Bill Currie
51b98ee758
Correct some errors.
2010-12-24 11:07:47 +09:00
Bill Currie
33e9fbba32
Win32 packaging improvements.
2010-12-24 10:41:09 +09:00
Bill Currie
a57717e2ab
Update my release script.
2010-12-24 09:51:07 +09:00
Bill Currie
28740bb57f
Add unsigned integer constant support.
2010-12-23 19:32:28 +09:00
Bill Currie
7934e29473
Fix up my big build script.
2010-12-23 16:51:02 +09:00
Bill Currie
32f7cd8b22
Get HTTP support (libcurl) working with mingw.
2010-12-23 13:18:43 +09:00
Bill Currie
2229c7557d
Update cross-build scripts.
...
They're hard-coded for my current setup, but easy to fix.
2010-12-23 11:45:08 +09:00
Bill Currie
de04e1b602
Lots of win32 (mingw cross) build fixes.
...
HTTP (curl) support is missing, but everything else builds.
2010-12-23 11:40:16 +09:00
Bill Currie
6c631c6d5d
Start documenting qfcc.
2010-12-19 11:35:18 +09:00
Bill Currie
52e844ee48
Produce slightly better v6 modulo code for complex inputs.
...
I'm having problems with temp defs, but I imagine this code is rarely used
so I won't worry about it for now. It will, however, make a good test case
for when I rework emit.c after I do some reading.
2010-12-19 11:23:33 +09:00
Bill Currie
b90833d86f
v6 modulo test
2010-12-19 11:19:23 +09:00
Bill Currie
fa08e4afb7
Print users info when dumping statements.
2010-12-19 11:16:04 +09:00
Bill Currie
f5706f9c44
Make control of expression dumping less of a hassle.
2010-12-19 11:15:13 +09:00
Bill Currie
d981968208
v6 modulo implementation now produces good code.
...
At least for simple inputs, anyway. That needs to be tested next.
2010-12-18 22:21:55 +09:00
Bill Currie
00e50c0ad3
Rewrite the v6 modulo implementation.
...
While trying to understand bind expressions, I discovered that the v6
modulo code was incorrect. This version is correct but uses one too many
temps. That's next.
2010-12-18 22:21:55 +09:00
Bill Currie
8197d34eda
Objective-C warnings documentation from gcc.
2010-12-16 20:12:24 +09:00
Bill Currie
699799bfc8
Don't warn when adding a new method to an implementation.
...
Methods defined in the implementation but not declared in the interface are
just fine.
2010-12-16 20:04:08 +09:00
Bill Currie
eace5b3c81
Get message checking working properly.
2010-12-16 16:41:16 +09:00
Bill Currie
a87ba3d0ea
Fix qwaq for the recent Array(Private) tweaks.
2010-12-13 19:10:05 +09:00
Bill Currie
4481ba9b0d
Allow explicit references to classes and categories.
...
Use "@reference ClassName;" or "@reference ClassName(CategoryName);" to
create a refence to the class or category, forcing the defining object file
to be linked into the program when the object file is part of a library.
2010-12-12 20:27:56 +09:00
Bill Currie
2c84ae4898
Don't let casting in constfold increment users.
...
This fixes Deek's temp notice. No new notices have shown up, so this should
be the correct fix. The constant folding code no longer calls cast_expr
directly, but rather uses an internal wrapper that decrements users after
cast_expr increments it, resulting in a no-op.
2010-12-12 15:37:26 +09:00
Bill Currie
d470094a55
Flip the nodes when flipping the plane.
2010-12-10 18:13:48 +09:00
Bill Currie
9ba70884c5
Prefer positive Z axis for 45 degree canonical planes.
2010-12-10 17:17:30 +09:00
Bill Currie
ba2a5838fd
Normalize the clip plane before adding it to the bsp.
2010-12-10 17:17:30 +09:00
Bill Currie
a0828ddd06
Clean up bsp limits.
...
Delete all bogus bsp limits, fixing the code that depended on them.
Document those limits that are dictated by the format.
2010-12-07 17:58:09 +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
78a816dbdf
Correct miptex byte-count scaling factor.
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
Bill Currie
62c73b300e
Fix the tangled mess of entity connections.
...
What was the person who wrote valueForQKey thinking? Make the function
const-correct and bubble the changes through the code.
2010-11-28 15:31:37 +09:00
Bill Currie
3574668fe3
Connect the region filtering switch.
...
Region filtering now seems to work. Also added a tool tip.
2010-11-28 15:31:37 +09:00
Bill Currie
d8773fddb1
Get the entity flags switches into the right initial stage.
2010-11-28 15:31:37 +09:00
Bill Currie
68190bd431
Echo the output to stdout as well as the output box.
2010-11-28 15:31:37 +09:00
Bill Currie
1aae3c8174
Get the inspector button displaying properly.
2010-11-28 15:31:37 +09:00
Bill Currie
bb3ea99806
Fix texture names.
2010-11-28 15:31:36 +09:00
Bill Currie
dcc4187a8c
Get the timing write for when to restore the rects.
2010-11-28 15:31:36 +09:00
Bill Currie
9cc66c3de1
A bit more code cleanup.
2010-11-28 15:31:36 +09:00
Bill Currie
1e6cdb4bb8
Replace PS*instance.
...
It's a little flakey (doesn't always do the right thing), but it's a good
start. I'd like to do much smaller rectangles, and get the timing right.
2010-11-28 15:31:36 +09:00
Bill Currie
73a82342db
Get the inspector button mostly working thanks to Deek's help.
2010-11-28 15:31:36 +09:00
Bill Currie
7c3e6b8bdc
Rectirect Sys_Printf's output to the command output box.
2010-11-28 15:31:36 +09:00
Bill Currie
3a6e5ea179
Fix a string comparision mistake.
...
This snuck in with the parser changes.
2010-11-28 15:31:36 +09:00
Bill Currie
4ed7290d9f
Fix an uninitizized variable.
2010-11-28 15:31:36 +09:00
Bill Currie
cfa13f1caa
Work around a method type mismatch in GNUstep.
2010-11-28 15:31:36 +09:00
Bill Currie
c1fac2cc8a
Hopefully fix the flush control and second screen placement.
2010-11-28 15:31:36 +09:00
Bill Currie
ec98bb3b93
Get help working (for what it is worth).
2010-11-28 15:31:36 +09:00