]> icculus.org git repositories - divverent/nexuiz.git/blob - TeamNexuiz/menuqc/todo
resized invincible texture to 1x1
[divverent/nexuiz.git] / TeamNexuiz / menuqc / todo
1 // Todo list\r
2 \r
3 -Clean up the Nex_ custom mess a bit\r
4 -Notify Spike that the "effectless statement" warning has a off-by-one bug\r
5 *-Rename Item_Composition and make it not embedded by default\r
6 *-Add support for a MOUSECLIP flag which will make the menu not pass any mouse events to the items under it\r
7 *-Move the normal key function somewhere else perhaps??\r
8 *--Write a test menu ^^\r
9 --Unroll as menu recursive functions as possible\r
10 f-Remove this bloody RUNFLAG_SPAWNED again\r
11 *-Only spawn an item once(even if its tried to spawn it multiple times)\r
12 -Think about the layout alignment and improve it\r
13 *-Calculate the clip sizes and positions only once in PROCESS_RUNFLAG\r
14 --Rewrite *all* controls and the event handler to have the origin change before the current event function\r
15 -Add #enum and #enumflags to the parser\r
16 -Add effect support to all bloody items, use fixed names - if non existent ignore - change Menu_GetItem to a non-erroring version for this\r
17 -Add extended # commands like #add or #and, #complement, etc.\r
18 -Rewrite isframe to allow automation to create a good amount of new items\r
19 *-Clip the Item_DataLink_Value value strings (so it contains e.g. 1.45 instead of 1.450000)\r
20 *-Make all datalinks route all ITEM_DATA events\r
21 -Make FLOATING window clip its movement to the parent window's size so you cant hide it this way\r
22 -Fix orderPos in LinkChildren\r
23 *-Add a slist subsystem to base!\r
24 -Do a big naming check to smooth things out\r
25 -Move the _menu_process stuff somewhere else\r
26 s-Only call the mouse event when the position has been changed - since all changes happens then\r
27 -Perhaps make the RUNFLAGs be reset every frame for all items?\r
28 -Spend some time writing docs for the API - preferably at http://wiki.quakesrc.org :/\r
29 -Write a parser readme file explaining every tiny, little bit of it\r
30 /-Add effects items/classes\r
31 /-Rewrite isframe\r
32 /-Think about when to support ctcalls and when not\r
33 //-Add full support for the template idea or remove it\r
34 ?s-Make altstring and property conform with the new string param rules\r
35 ?s-Make the Data items support runtime changes, too\r
36 ?-Restructurize the controls\r
37 f-Add some kind of overlay control\r
38 f-Remove TokenType\r
39 f-Remove support for cliparea '0 0 0'-'0 0 0' => whole plane\r
40 s-Add a color and alpha stack to mgfx\r
41 s-Add a current namespace global that builds the current namespace from the parent lists\r
42 s-Add the abstract Item Item_Selectable\r
43 s-Remove all ctcall, customizeable events\r
44 \r
45 *-Add ._runflags to system/item.qc - which will be used to determine visibility, etc. of items\r
46 *-Add MENU_PROCESS_KEY to Menu_ProcessEvent\r
47 *-Add MENU_PROCESS_RUNFLAG\r
48 *-Add RUNFLAG_CLIPPED, so we can select items that arent visible (but arent hidden intentionally as well -> scrollwindows)\r
49 *-Add a .userselect event  (Toddd)\r
50 *-Add a multiline label item class\r
51 *-Add a real #include to the parser\r
52 *-Add a scmenu_debug_process_filter cvar (only displays information on a specific process run)\r
53 *-Add a select event instead of userselect\r
54 *-Add a system controlled destruction of items similar to the NG Menu's system\r
55 *-Add direction tokens to Menu_GetItem\r
56 *-Add layout classes\r
57 *-Add more output to the parser (perhaps also a debug mode)\r
58 *-Finish the goddamn design\r
59 *-Finish the structure debug output\r
60 *-Finish this darn #include support!!\r
61 *-Fix the _FLAG_MOUSEINAREA bug: if the flag is set and the item is hidden somehow, it wont be unset\r
62 *-Fix the init function calling the spawn function for templates, too\r
63 *-Fix this strange clipping bug (items plop out of the void instead of shifting slowly in)\r
64 *-Implement an embedded window perhaps\r
65 *-Make FLAG_DRAWONLY and FLAG_DRAWUPDATEONLY only affect the parent item\r
66 *-Merge as many of the debug functions (especially clientarea and parentarea)\r
67 *-Move as many constants as possible to constants.menu\r
68 *-Remove Item_Init - its poison to deriving classes\r
69 *-Rename .refresh to .update and change all constants, too\r
70 *-Rename Spawn_ to _Spawn perhaps??\r
71 *-Rename link to target in the DataUser class\r
72 *-Rewrite _menu_* to use the normal stack instead of an altstring stack\r
73 *-Rewrite all controls\r
74 *-Rewrite all gfx functions to reuse the params for conversions, etc.\r
75 *-Update scmenu_debug_parser to also support tokens instead of pure floats\r