summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Schwarz <lakitu7@gmail.com>2011-06-19 06:26:15 +0000
committerTim Angus <tim@ngus.net>2013-01-03 00:18:09 +0000
commit789afa4226b385d424988998206bf55d2b3d7fe6 (patch)
treecb273d2c4f4bb66865b642d3e157fefe1631dd27
parentbbcc76687e7f0d87ee9981999b9893822ca03506 (diff)
* (bug 4958) Add a menu to list/play demo files to the main menu (jacklutz54@gmail.com)
-rwxr-xr-xassets/ui/demo.menu108
-rw-r--r--assets/ui/main.menu24
-rw-r--r--assets/ui/menus.txt1
-rw-r--r--src/ui/ui_main.c1
4 files changed, 131 insertions, 3 deletions
diff --git a/assets/ui/demo.menu b/assets/ui/demo.menu
new file mode 100755
index 00000000..bec3a057
--- /dev/null
+++ b/assets/ui/demo.menu
@@ -0,0 +1,108 @@
+#include "ui/menudef.h"
+
+{
+ \\ DEMO \\
+
+#define W 300
+#define H 240
+#define BUTT_W 45
+#define BUTT_H 35
+#define BORDER 10
+
+ menuDef
+ {
+ name "demo"
+ visible MENU_FALSE
+ fullscreen MENU_FALSE
+ rect (320-(W/2)) (240-(H/2)) W H
+ focusColor 1 .75 0 1
+ style WINDOW_STYLE_FILLED
+ border WINDOW_BORDER_FULL
+ popup
+ onEsc
+ {
+ close demo
+ }
+ onOpen
+ {
+ uiScript loadDemos
+ }
+
+ itemDef
+ {
+ name window
+ rect 0 0 W H
+ style WINDOW_STYLE_FILLED
+ backcolor 0 0 0 1
+ visible MENU_TRUE
+ decoration
+
+ border WINDOW_BORDER_FULL
+ borderSize 1.0
+ borderColor 0.5 0.5 0.5 1
+ }
+
+ itemDef
+ {
+ name demolist
+ rect BORDER BORDER (W-(2*BORDER)) (H-(BUTT_H+BORDER))
+ type ITEM_TYPE_LISTBOX
+ style WINDOW_STYLE_EMPTY
+ elementwidth 120
+ elementheight 20
+ textscale .25
+ elementtype LISTBOX_TEXT
+ feeder FEEDER_DEMOS
+ textalign 3
+ textaligny 14
+ border WINDOW_BORDER_FULL
+ bordercolor 0.5 0.5 0.5 0.5
+ forecolor 1 1 1 1
+ backcolor 0.2 0.2 0.2 1
+ outlinecolor 0.1 0.1 0.1 0.5
+ visible MENU_TRUE
+ doubleClick
+ {
+ play "sound/misc/menu1.wav";
+ uiScript RunDemo
+ }
+ }
+
+ itemDef
+ {
+ name play
+ text "Play"
+ type ITEM_TYPE_BUTTON
+ textscale .25
+ rect (W-(2*BUTT_W)) (H-BUTT_H) BUTT_W BUTT_H
+ textalign ALIGN_CENTER
+ textvalign VALIGN_CENTER
+ forecolor 1 1 1 1
+ visible MENU_TRUE
+ action
+ {
+ play "sound/misc/menu1.wav";
+ close demo;
+ uiScript RunDemo
+ }
+ }
+
+ itemDef
+ {
+ name cancel
+ text "Cancel"
+ type ITEM_TYPE_BUTTON
+ textscale .25
+ rect (W-BUTT_W) (H-BUTT_H) BUTT_W BUTT_H
+ textalign ALIGN_CENTER
+ textvalign VALIGN_CENTER
+ forecolor 1 1 1 1
+ visible MENU_TRUE
+ action
+ {
+ play "sound/misc/menu3.wav";
+ close demo
+ }
+ }
+ }
+}
diff --git a/assets/ui/main.menu b/assets/ui/main.menu
index 0c2a4008..daae38a4 100644
--- a/assets/ui/main.menu
+++ b/assets/ui/main.menu
@@ -115,7 +115,7 @@
itemDef
{
name mainmenu
- text "Mods"
+ text "Demos"
type ITEM_TYPE_BUTTON
style WINDOW_STYLE_EMPTY
textstyle ITEM_TEXTSTYLE_NORMAL
@@ -128,6 +128,26 @@
action
{
play "sound/misc/menu1.wav";
+ open demo
+ }
+ }
+
+ itemDef
+ {
+ name mainmenu
+ text "Mods"
+ type ITEM_TYPE_BUTTON
+ style WINDOW_STYLE_EMPTY
+ textstyle ITEM_TEXTSTYLE_NORMAL
+ textscale .416
+ rect X (Y+(4*ELEM_H)) W ELEM_H
+ textalign ALIGN_RIGHT
+ backcolor 0 0 0 0
+ forecolor 1 1 1 1
+ visible MENU_TRUE
+ action
+ {
+ play "sound/misc/menu1.wav";
open mod
}
}
@@ -139,7 +159,7 @@
type ITEM_TYPE_BUTTON
style WINDOW_STYLE_EMPTY
textstyle ITEM_TEXTSTYLE_NORMAL
- rect X (Y+(4*ELEM_H)) W ELEM_H
+ rect X (Y+(5*ELEM_H)) W ELEM_H
textscale .416
textalign ALIGN_RIGHT
forecolor 1 1 1 1
diff --git a/assets/ui/menus.txt b/assets/ui/menus.txt
index 29759985..d0d95379 100644
--- a/assets/ui/menus.txt
+++ b/assets/ui/menus.txt
@@ -7,6 +7,7 @@
loadMenu { "ui/options.menu" }
loadMenu { "ui/createserver.menu" }
loadMenu { "ui/mod.menu" }
+ loadMenu { "ui/demo.menu" }
loadMenu { "ui/connect.menu" }
loadMenu { "ui/password.menu" }
loadMenu { "ui/quit.menu" }
diff --git a/src/ui/ui_main.c b/src/ui/ui_main.c
index 6474288e..4e0df2ce 100644
--- a/src/ui/ui_main.c
+++ b/src/ui/ui_main.c
@@ -2715,7 +2715,6 @@ static void UI_LoadDemos( void )
if( !Q_stricmp( demoname + len - strlen( demoExt ), demoExt ) )
demoname[len-strlen( demoExt )] = '\0';
- Q_strupr( demoname );
uiInfo.demoList[i] = String_Alloc( demoname );
demoname += len + 1;
}