Jeff Teunissen
6ead583195
Ruamoko: Implement infinity.
...
The special token __INFINITY__, like __FILE__ and friends, will expand to
a floating-point expression containing a value the C compiler considers
infinite. Obviously, this assumes that the system has relatively modern
float hardware -- but if it doesn't, having Ruamoko be able to represent
float infinity is the least of your problems. :)
2011-12-14 12:20:10 -05:00
Jeff Teunissen
361255cf31
Ruamoko: New math constants, some new math functions
...
Also, switch all of the math builtins functions we use from Rua to the
ones that accept and return floats, avoiding conversions to/from double.
2011-12-09 22:36:41 -05:00
Bill Currie
2c85a3ccc0
Make a start on documenting the gui stuff.
2011-07-10 17:33:43 +09:00
Bill Currie
8ac5079ada
Get inputlines mostly working.
...
It should be only behind-the-scenes updates that are still a problem.
2011-07-09 21:16:38 +09:00
Bill Currie
652b434e7b
Rework the inputline wrapper.
...
Use the resource map code for handle management (much safer).
Add support for the enter callback (function or method).
Unfortunately, it still doesn't work due to poor design of the inputline
user data.
2011-07-09 09:44:37 +09:00
Bill Currie
4e66a5b327
Add rua rappers for the cvar alias functions.
2011-07-06 19:17:28 +09:00
Jeff Teunissen
82e934af47
Rualib: nuke some unnecessary classes
...
List, ListNode, and Stack aren't necessary; all three are obviated by the
new, richer Array class.
2011-06-14 13:33:10 -04:00
Jeff Teunissen
21c46b9081
View: add brief description
2011-06-14 13:31:30 -04:00
Jeff Teunissen
cb86e09029
Rualib: documentation updates.
...
Add a layout file for Rua docs and create groups for its library functions.
2011-06-14 13:31:30 -04:00
Bill Currie
896791b209
Correct the spelling of "int" and clean up the mess.
2011-03-25 16:53:04 +09:00
Bill Currie
1822290b1a
Fix the double offset of inputline text.
2011-03-24 08:50:32 +09:00
Bill Currie
e878ace83b
Make input lines mostly work.
...
There is still a problem with the placement of the input line text
relative to the text box caused by vertical movement being excessive.
2011-03-23 21:35:49 +09:00
Bill Currie
7b9d70167f
Fix some missed language changes.
2011-03-10 20:51:04 +09:00
Bill Currie
da3ac388fe
Syntax fixes for ruamoko/gui.
...
Once aggregate initializers are working, ruamoko/gui will "compile"
(no object files, and still the bogus integer constant into ... warning).
2011-02-14 23:10:46 +09:00
Bill Currie
1195df9686
Update for the new syntax.
2011-02-13 21:25:36 +09:00
Bill Currie
d6b10c99aa
Most, if not all, of the fixes needed to get qwaq building.
...
This is pretty much just changing [] to * and moving [N] to the other side
of the variable name.
2011-02-07 22:16:16 +09:00
Bill Currie
6ebee4ad0e
Get the type of Method right.
...
It's a direct structure rather than a pointer.
2011-01-10 12:25:31 +09:00
Bill Currie
75ec6bf244
Clean out some unnecessary types from the progs engine and clean up the mess.
...
This is a nasty commit, sorry, but 99% of the commit is interdependent.
2011-01-10 12:25:31 +09:00
Bill Currie
c5edbf147a
Move ruamoko libs and headers into ${prefix}/lib/qfcc
2010-12-24 19:39:54 +09:00
Jeff Teunissen
b184739f03
Use qfcc's new unsigned constant qualifier for UINT_MAX
2010-12-24 05:09:14 -05:00
Jeff Teunissen
81d927c702
rename Runtime.h -- it's not a class.
2010-12-24 05:03:31 -05:00
Jeff Teunissen
cdb9783d69
Actually commit the new header...
...
@#$@$#^%^
2010-12-16 06:46:59 -05:00
Jeff Teunissen
ff57b96bc6
Add Runtime header for obj* stuff.
...
Also, move lots of stuff out of the Object header.
2010-12-16 06:42:28 -05:00
Jeff Teunissen
7cb2ce3263
whitespace, clean up AutoreleasePool warnings
...
d'oh! How did I forget to include that header?
2010-12-16 06:24:54 -05:00
Jeff Teunissen
061f56ea2d
Add missing methods
...
Array: Implement -indexOfObject: and -indexOfObjectIdenticalTo:
2010-12-16 06:24:54 -05:00
Jeff Teunissen
4968b65b2f
Minor doc updates
...
Reveal more Rua documentation that I had already written years ago, and
clean up Array a little.
2010-12-16 06:24:54 -05:00
Jeff Teunissen
15ba4091bc
Doc fixes.
...
Document some more Array methods, mark the private methods as private in
the docs.
2010-12-12 05:45:12 -05:00
Jeff Teunissen
0371a825b8
Damn, documented wrong method.
2010-12-11 23:49:48 -05:00
Jeff Teunissen
537915f5bc
Ruamoko: Document AutoreleasePool
2010-12-11 23:45:19 -05:00
Jeff Teunissen
180450e785
declare ARP_FreeAllPools() @extern
2010-12-11 23:23:55 -05:00
Jeff Teunissen
505076a98d
rewrite Array, AutoreleasePool
...
This version is a bit more useful, and we should be able to get rid of the
Stack class. Also, the Ruamoko parts of the autorelease system should be
almost ready now.
2010-12-11 20:32:19 -05:00
Jeff Teunissen
4bd37e7b64
Switch to C-style function declarations.
...
Doxygen hates the QuakeC-style function prototypes we use, so switch to the
C-style prototypes.
2010-12-11 20:31:59 -05:00
Bill Currie
addbcaa09c
Add PL_GetFromFile builtin.
...
This is an extension "wrapper" (no such C function). This allows ruamoko
programs to read property lists without worrying about the memory required
to store the string for the property list being read.
2010-11-24 17:01:19 +09:00
Bill Currie
730082a393
Make Group set its position (and those of its subviews) correctly.
2010-11-24 17:01:19 +09:00
Bill Currie
3878b76cc5
Start using autorelease.
...
Much more testing is required (oh, but for qc-valgrind), but there is now
a ~945kB block of free data in the menu progs heap :).
Also, correct the printed size of the memory block to not include the
block header size.
2010-11-24 17:01:18 +09:00
Bill Currie
4518e6af91
First stab at implementing autorelease.
...
It's probably nowhere near right, but probably ok for now (I need to study
the GNUStep code). I'm unhappy with the menu code hook, but it will have
to do for now.
2010-11-24 17:01:18 +09:00
Bill Currie
5fc4ef63f6
Rewrite ruamoko plist support to use handles.
...
The plist code was written long before I thought of resource handles, and
then it was forgotten. This is much nicer and safer than storing C
pointers in progs memory space (*shudder*).
2010-11-24 17:01:18 +09:00
Bill Currie
c460e3c979
Fix setBasePos to get the pos from a view.
...
This fixes Group for the Point/Size/Rect change.
2010-11-24 17:01:18 +09:00
Bill Currie
b0879ba255
Convert Point, Size and Rect to structs.
...
Group and the menu plist parser are currently broken.
2010-11-24 17:01:17 +09:00
Bill Currie
0dfff8fd58
ignore stuff
2010-08-07 10:42:09 +00:00
Bill Currie
8abb9a69aa
remove support for an optional = in struct/union declarations
2010-01-13 06:34:32 +00:00
Bill Currie
ff61dbb329
fix some sillies with QFS_FileList
...
Use dynamic strings instead of temp strings for the list
2010-01-13 06:29:01 +00:00
Bill Currie
128faf773a
give sprintf a real prototype
2010-01-13 06:25:38 +00:00
Bill Currie
d996c364b8
massively speedup savegame scanning (and bump the menu progs memory size again :/)
2007-05-13 03:56:08 +00:00
Bill Currie
72daa2fd2b
add some sounds to the menus (not yet finished)
2007-05-07 12:17:12 +00:00
Bill Currie
eae39106c4
undefine BUILTIN before defining it (boost's preprocessor didn't like that)
2007-04-07 11:31:19 +00:00
Bill Currie
33f08b6a43
add QFS_Open and QFS_WOpen
2006-12-20 12:08:57 +00:00
Bill Currie
68e7b3199d
add finding elements
2006-12-16 13:59:29 +00:00
Bill Currie
70ec9848e7
add PL_RemoveObjectForKey and make PL_D_AddObject take a normal C string for key instead of a pl string.
2006-12-09 06:00:36 +00:00
Bill Currie
eeca330af2
whitespace
2006-12-02 06:51:41 +00:00
Bill Currie
6e0c70cac7
reduce the amount of memory needed to read menu.plist
2005-06-15 01:41:10 +00:00
Bill Currie
73e45cc8ee
working on scripted menus; video works
...
dealloc -> release
This is an imperfect revision of history.
2004-11-18 05:08:00 +00:00
Bill Currie
3a7ecf9f31
enable obj_sendv
...
This is an imperfect revision of history.
2004-11-17 21:27:00 +00:00
Bill Currie
96e20d891c
overload str_mid so it has the same semantics as Python's slice operator
...
This is an imperfect revision of history.
2004-11-14 00:53:00 +00:00
Bill Currie
7a217b81cd
add a PropertyList class hierarchy
...
This is an imperfect revision of history.
2004-11-13 01:55:00 +00:00
Bill Currie
f5b22f50e8
and the ruamoko side of entity parsing :) currently disabled for now (just need to uncomment the line in Entity's +load) due to lack of filtering, but as a proof of concept, it works quite well, though I'm not at all happy about the handling of world.
...
This is an imperfect revision of history.
2004-11-12 11:23:00 +00:00
Bill Currie
53f4d13f43
wrap the plist functions
...
This is an imperfect revision of history.
2004-11-11 22:42:00 +00:00
Bill Currie
5ef382d2a7
Add a rua wrapper for scripts (seems, to work, too:). Also added generic resource handle support based on strref handling in pr_strings.c.
...
This is an imperfect revision of history.
2004-11-11 04:06:00 +00:00
Bill Currie
7b4edb2859
it's "dealloc", not "free" (missed name changes from a while back)
...
This is an imperfect revision of history.
2004-11-11 01:31:00 +00:00
Bill Currie
64cc8c60d2
compile time protocol support seems to be complete now. fortunatly, protocols had never been written out so the corrections to the protocol related stuctures do not need a progs version bump. runtime protocol support hasn't been fully tested yet.
...
+load runtime support seems to be working.
This is an imperfect revision of history.
2004-11-11 00:34:00 +00:00
Jeff Teunissen
2842f4d4f1
Ruamoko builtin declaration/implementation cleanup/simplification. Incomplete,
...
but working.
2004-04-28 00:42:38 +00:00
Bill Currie
204618da66
make dist fix
2004-04-22 02:49:50 +00:00
Bill Currie
804ba76719
add bindings for the qfs functions
2004-04-20 23:01:54 +00:00
Bill Currie
8069becadf
pkgincludedir and pkglibdir patch from
...
"Alexey I. Froloff" <sir_raorn@immo.ru> (raorn)
2004-02-18 06:28:37 +00:00
Bill Currie
103299e7e4
rename Cvar_GetCvarString to Cvar_GetString and add
...
Cvar_Set{String,Float,Integer,Vector} and
Cvar_Get{String,Float,Integer,Vector}. use them in the menus
2004-02-14 02:56:29 +00:00
Bill Currie
0e147a7b61
video options "done"
2004-02-14 02:09:18 +00:00
Bill Currie
8978d1ca55
make an inputline with a text box behind it
2004-02-13 05:36:35 +00:00
Bill Currie
e3a393dd52
add Pic and CenterPic views
2004-02-13 02:52:14 +00:00
Bill Currie
e472364f51
call [self init] rather than [super init] (and variants where possible) to
...
ease derived class initialization (all allocation can be done in -init).
Objective-C rocks :)
2004-02-13 02:51:38 +00:00
Bill Currie
51cd2fc69a
most of the video menu now uses CvarToggle and CvarToggleView (and rename
...
RangeSlider to CvarRangeView)
2004-02-07 00:09:50 +00:00
Bill Currie
f4e0147345
missed Slider.h
2004-02-04 23:26:39 +00:00
Bill Currie
a128d7121b
install the gui headers properly
2004-02-04 05:45:17 +00:00
Bill Currie
237027d1ff
moving towards object-ized menus :)
2004-02-04 02:35:57 +00:00
Bill Currie
ec26083228
start working on a gui lib with a Slider class. use the slider class for
...
the volume settings. doesn't /quite/ work properly yet
2004-02-03 08:31:26 +00:00
Bill Currie
888ff5f571
make the math functions Grievre provided available
2004-02-03 06:24:43 +00:00
Bill Currie
b3f76e1e48
add some string builtins (only the basics for now, but enough to deal with
...
temporary strings) and fix the game load/save menus.
2004-01-07 07:36:17 +00:00
Bill Currie
9c92a916ff
change the dict and array add functions to return true/false and add some
...
more docs
2004-01-07 06:19:11 +00:00
Bill Currie
6f1dd54e99
quick and dirty fix to get menus loading again. libr.a really needs to be
...
cleaned up: most of the stuff in it should /not/ be in the standard library
2004-01-05 09:06:06 +00:00
Brian Koropoff
687a0845b6
Introducing the GIB Object System (TM). This breaks scriptable HUD for now
...
and probably has enough bugs to leave the Orkin man scratching his head,
but it works and allows you to do neat things like write classes in GIB
(amazing!) and subclass builtin classes (which are Object and Thread at the
moment, Hash should be coming soon as a replacement for stem and leaf
variables).
2003-09-11 06:03:13 +00:00
Bill Currie
7ff9f32706
uncomment some functions that may or may not get implemented
2003-08-23 06:12:10 +00:00
Bill Currie
27306a9a2b
correct the prototypes for the hash functions (oops:)
2003-08-19 21:10:19 +00:00
Bill Currie
5a944f4098
add Stack.h
2003-08-03 19:10:12 +00:00
Bill Currie
dd9ab1e050
get unsigned mostly working
2003-08-01 21:20:04 +00:00
Bill Currie
fd15377532
unsigned is partially implemented...
2003-08-01 17:38:52 +00:00
Bill Currie
908a3dab29
fix a bunch of FIXMEs now that qfcc has been fixed for these items
2003-08-01 16:37:44 +00:00
Bill Currie
6ecb707257
revamp the struct system so "struct foo;" does the right thing (ala C)
2003-07-30 04:11:45 +00:00
Jeff Teunissen
d05f17cdae
Re-add -autorelease to the Object protocol.
2003-07-29 18:23:44 +00:00
Jeff Teunissen
7713a539ca
Okay, y'all...the Ruamoko root class, Object, has been replaced with another
...
class with the same name. This will break things. To support it, there are
three new classes, one of which is incomplete (AutoreleasePool). It'll get
finished soonish, but the rest of the class lib will need some updating to
work.
2003-07-29 18:02:03 +00:00
Bill Currie
f2ad4dea7b
add removeItemAtHead and removeItemAtTail
2003-07-29 17:43:42 +00:00
Bill Currie
ef1b68e697
add a List class
2003-07-29 16:01:35 +00:00
Bill Currie
673f6ba643
add itterators and make -free actually free the Array object
2003-07-24 20:50:40 +00:00
Brian Koropoff
c5be2fb501
OK, I think I need caffeine. This time, the Array class is really switched
...
over to using ids.
2003-05-23 04:38:08 +00:00
Brian Koropoff
f9ff908157
Changed the Array class to use object ids instead of null pointers for easy
...
and safe freeing of elements when an Array is disposed.
2003-05-23 04:27:30 +00:00
Bill Currie
dedb2fa6bf
get [super ...] working correctly
2003-05-15 05:58:31 +00:00
Brian Koropoff
fe5a62b75a
Fixed an incorrect builtin definition.
2003-05-14 21:12:18 +00:00
Brian Koropoff
cc3f98e99c
Added a removeItem method to the Array Ruamoko class.
2003-05-14 21:11:23 +00:00
Bill Currie
508fb4fb5c
new view stuff mostly working. just a few visual bugs to iron out
2003-05-06 02:19:13 +00:00
Brian Koropoff
3b703db4d4
Added the beginnings of an interface between Ruamoko and GIB. Although the
...
API is by no means finalized, it's now possible to write GIB builtins in
Ruamoko that can take arguments and return values to GIB.
2003-04-13 20:43:52 +00:00
Bill Currie
13fd0b8533
nuke the string hash api as it's been obsoleted
2003-04-07 22:34:39 +00:00
Bill Currie
84ee27f824
bah, still not used to qc needing @extern on functions :P
2003-04-07 21:15:45 +00:00