[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Stratagus-CVS] stratagus/src include/menus.h ui/menus.c ui/men...
From: |
Jimmy Salmon |
Subject: |
[Stratagus-CVS] stratagus/src include/menus.h ui/menus.c ui/men... |
Date: |
Fri, 07 Nov 2003 17:41:29 -0500 |
CVSROOT: /cvsroot/stratagus
Module name: stratagus
Branch:
Changes by: Jimmy Salmon <address@hidden> 03/11/07 17:41:29
Modified files:
src/include : menus.h
src/ui : menus.c menu_proc.c
Log message:
Cleaned up horizontal sliders
Patches:
Index: stratagus/src/include/menus.h
diff -u stratagus/src/include/menus.h:1.113 stratagus/src/include/menus.h:1.114
--- stratagus/src/include/menus.h:1.113 Tue Sep 23 03:02:56 2003
+++ stratagus/src/include/menus.h Fri Nov 7 17:41:28 2003
@@ -26,7 +26,7 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: menus.h,v 1.113 2003/09/23 07:02:56 mr-russ Exp $
+// $Id: menus.h,v 1.114 2003/11/07 22:41:28 jsalmon3 Exp $
#ifndef __MENUS_H__
#define __MENUS_H__
@@ -182,7 +182,7 @@
unsigned cflags;
int xsize; // x-size of slider, not including buttons
int ysize; // y-size of slider, not including buttons
- void (*action)(struct _menuitem_ *, int);
+ void (*action)(struct _menuitem_ *);
int defper;
int percent; // percent of the way to right (0 to 100)
int curper; /* used in mouse-move state */
Index: stratagus/src/ui/menu_proc.c
diff -u stratagus/src/ui/menu_proc.c:1.109 stratagus/src/ui/menu_proc.c:1.110
--- stratagus/src/ui/menu_proc.c:1.109 Mon Nov 3 06:09:52 2003
+++ stratagus/src/ui/menu_proc.c Fri Nov 7 17:41:29 2003
@@ -26,7 +26,7 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: menu_proc.c,v 1.109 2003/11/03 11:09:52 pludov Exp $
+// $Id: menu_proc.c,v 1.110 2003/11/07 22:41:29 jsalmon3 Exp $
//@{
@@ -1390,7 +1390,7 @@
mi->d.vslider.cflags |= MI_CFLAGS_UP;
}
if (mi->d.vslider.action) {
- (*mi->d.vslider.action)(mi, 2); // 0
indicates key down
+ (*mi->d.vslider.action)(mi, 2);
}
MustRedraw |= RedrawMenu;
break;
@@ -1400,19 +1400,26 @@
}
}
break;
- case KeyCodeLeft: case KeyCodeRight:
+ case KeyCodeLeft:
+ case KeyCodeRight:
if (MenuButtonCurSel != -1) {
mi = menu->Items + MenuButtonCurSel;
if (!(mi->flags & MenuButtonClicked)) {
switch (mi->mitype) {
case MI_TYPE_HSLIDER:
if (key == KeyCodeLeft) {
- mi->d.hslider.cflags |= MI_CFLAGS_LEFT;
+ mi->d.hslider.percent -= 10;
+ if (mi->d.hslider.percent < 0) {
+ mi->d.hslider.percent = 0;
+ }
} else {
- mi->d.hslider.cflags |= MI_CFLAGS_RIGHT;
+ mi->d.hslider.percent += 10;
+ if (mi->d.hslider.percent > 100) {
+ mi->d.hslider.percent = 100;
+ }
}
if (mi->d.hslider.action) {
- (*mi->d.hslider.action)(mi, 2);
+ (*mi->d.hslider.action)(mi);
}
MustRedraw |= RedrawMenu;
break;
@@ -1423,7 +1430,7 @@
}
break;
case 9: // TAB // FIXME: Add
Shift-TAB
- if (KeyModifiers&ModifierAlt) {
+ if (KeyModifiers & ModifierAlt) {
break;
}
if (MenuButtonCurSel != -1 && !(menu->Items[MenuButtonCurSel].flags
& MenuButtonClicked)) {
@@ -1844,8 +1851,12 @@
mi->d.hslider.curper = 100;
}
}
- if (mi->d.hslider.action) {
- (*mi->d.hslider.action)(mi, 1); // 1
indicates move
+ if ((mi->d.hslider.cflags & MI_CFLAGS_KNOB) &&
(mi->flags & MenuButtonClicked)) {
+ mi->d.hslider.percent = mi->d.hslider.curper;
+ if (mi->d.hslider.action) {
+ (*mi->d.hslider.action)(mi);
+ }
+ MustRedraw |= RedrawMenu;
}
break;
}
@@ -1965,8 +1976,17 @@
break;
case MI_TYPE_HSLIDER:
mi->d.hslider.cflags = mi->d.hslider.cursel;
+ if (mi->d.hslider.cflags & MI_CFLAGS_RIGHT) {
+ mi->d.hslider.percent += 10;
+ if (mi->d.hslider.percent > 100)
+ mi->d.hslider.percent = 100;
+ } else if (mi->d.hslider.cflags & MI_CFLAGS_LEFT) {
+ mi->d.hslider.percent -= 10;
+ if (mi->d.hslider.percent < 0)
+ mi->d.hslider.percent = 0;
+ }
if (mi->d.hslider.action) {
- (*mi->d.hslider.action)(mi, 0); // 0 indicates
down
+ (*mi->d.hslider.action)(mi);
}
break;
case MI_TYPE_PULLDOWN:
@@ -1993,7 +2013,7 @@
}
}
- if (MouseButtons&MiddleButton) {
+ if (MouseButtons & MiddleButton) {
if (MenuButtonUnderCursor != -1) {
mi = menu->Items + MenuButtonUnderCursor;
if (!(mi->flags & MenuButtonClicked)) {
@@ -2012,7 +2032,7 @@
}
// mousewheel up
- if (MouseButtons&UpButton) {
+ if (MouseButtons & UpButton) {
if (MenuButtonUnderCursor != -1) {
mi = menu->Items + MenuButtonUnderCursor;
switch (mi->mitype) {
@@ -2045,9 +2065,12 @@
MustRedraw |= RedrawMenu;
break;
case MI_TYPE_HSLIDER:
- mi->d.hslider.cflags |= MI_CFLAGS_RIGHT;
+ mi->d.hslider.percent -= 10;
+ if (mi->d.hslider.percent < 0) {
+ mi->d.hslider.percent = 0;
+ }
if (mi->d.hslider.action) {
- (*mi->d.hslider.action)(mi, 2);
+ (*mi->d.hslider.action)(mi);
}
MustRedraw |= RedrawMenu;
break;
@@ -2067,7 +2090,7 @@
}
// mousewheel down
- if (MouseButtons&DownButton) {
+ if (MouseButtons & DownButton) {
if (MenuButtonUnderCursor != -1) {
mi = menu->Items + MenuButtonUnderCursor;
switch (mi->mitype) {
@@ -2098,9 +2121,12 @@
MustRedraw |= RedrawMenu;
break;
case MI_TYPE_HSLIDER:
- mi->d.hslider.cflags |= MI_CFLAGS_LEFT;
+ mi->d.hslider.percent += 10;
+ if (mi->d.hslider.percent > 100) {
+ mi->d.hslider.percent = 100;
+ }
if (mi->d.hslider.action) {
- (*mi->d.hslider.action)(mi, 2);
+ (*mi->d.hslider.action)(mi);
}
MustRedraw |= RedrawMenu;
break;
Index: stratagus/src/ui/menus.c
diff -u stratagus/src/ui/menus.c:1.583 stratagus/src/ui/menus.c:1.584
--- stratagus/src/ui/menus.c:1.583 Mon Nov 3 01:29:56 2003
+++ stratagus/src/ui/menus.c Fri Nov 7 17:41:29 2003
@@ -26,7 +26,7 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: menus.c,v 1.583 2003/11/03 06:29:56 jsalmon3 Exp $
+// $Id: menus.c,v 1.584 2003/11/07 22:41:29 jsalmon3 Exp $
//@{
@@ -224,11 +224,11 @@
// Sound options
local void SoundOptionsInit(Menuitem *mi);
local void SoundOptionsExit(Menuitem *mi);
-local void MasterVolumeHSAction(Menuitem *mi, int i);
+local void MasterVolumeHSAction(Menuitem *mi);
local void SetMasterPower(Menuitem *mi);
-local void MusicVolumeHSAction(Menuitem *mi, int i);
+local void MusicVolumeHSAction(Menuitem *mi);
local void SetMusicPower(Menuitem *mi);
-local void CdVolumeHSAction(Menuitem *mi, int i);
+local void CdVolumeHSAction(Menuitem *mi);
local void SetCdPower(Menuitem *mi);
local void SetCdModeDefined(Menuitem *mi);
local void SetCdModeRandom(Menuitem *mi);
@@ -242,9 +242,9 @@
// Speed options
local void SpeedOptionsInit(Menuitem *mi);
local void SpeedOptionsExit(Menuitem *mi);
-local void GameSpeedHSAction(Menuitem *mi, int i);
-local void MouseScrollHSAction(Menuitem *mi, int i);
-local void KeyboardScrollHSAction(Menuitem *mi, int i);
+local void GameSpeedHSAction(Menuitem *mi);
+local void MouseScrollHSAction(Menuitem *mi);
+local void KeyboardScrollHSAction(Menuitem *mi);
// Game options
@@ -3704,281 +3704,65 @@
/**
** Game speed horizontal slider action callback
*/
-local void GameSpeedHSAction(Menuitem *mi, int i)
+local void GameSpeedHSAction(Menuitem *mi)
{
- mi--;
-
- switch (i) {
- case 0: // click - down
- case 2: // key - down
- if (mi[1].d.hslider.cflags & MI_CFLAGS_RIGHT) {
- DebugLevel0Fn("Increasing game speed by 10%s\n" _C_ "%");
- mi[1].d.hslider.percent += 10;
- if (mi[1].d.hslider.percent > 100)
- mi[1].d.hslider.percent = 100;
- } else if (mi[1].d.hslider.cflags & MI_CFLAGS_LEFT) {
- DebugLevel0Fn("Decreasing game speed by 10%s\n" _C_ "%");
- mi[1].d.hslider.percent -= 10;
- if (mi[1].d.hslider.percent < 0)
- mi[1].d.hslider.percent = 0;
- }
- if (i == 2) {
- mi[1].d.hslider.cflags &= ~(MI_CFLAGS_RIGHT|MI_CFLAGS_LEFT);
- }
- VideoSyncSpeed = (mi[1].d.hslider.percent * (MAX_GAME_SPEED -
MIN_GAME_SPEED)) / 100 + MIN_GAME_SPEED;
- SetVideoSync();
- break;
- case 1: // mouse - move
- if (mi[1].d.hslider.cflags & MI_CFLAGS_KNOB && (mi[1].flags &
MenuButtonClicked)) {
- if (mi[1].d.hslider.curper > mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- } else if (mi[1].d.hslider.curper < mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- }
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- VideoSyncSpeed = (mi[1].d.hslider.percent * (MAX_GAME_SPEED -
MIN_GAME_SPEED)) / 100 + MIN_GAME_SPEED;
- SetVideoSync();
- MustRedraw |= RedrawMenu;
- }
- break;
- default:
- break;
- }
+ VideoSyncSpeed = (mi->d.hslider.percent * (MAX_GAME_SPEED -
MIN_GAME_SPEED)) / 100 + MIN_GAME_SPEED;
+ SetVideoSync();
}
/**
** Mouse scroll horizontal slider action callback
*/
-local void MouseScrollHSAction(Menuitem *mi, int i)
+local void MouseScrollHSAction(Menuitem *mi)
{
- mi--;
-
- switch (i) {
- case 0: // click - down
- case 2: // key - down
- if (mi[1].d.hslider.cflags & MI_CFLAGS_RIGHT) {
- DebugLevel0Fn("Increasing mouse speed\n");
- mi[1].d.hslider.percent += 10;
- if (mi[1].d.hslider.percent > 100)
- mi[1].d.hslider.percent = 100;
- } else if (mi[1].d.hslider.cflags & MI_CFLAGS_LEFT) {
- DebugLevel0Fn("Decreasing mouse speed\n");
- mi[1].d.hslider.percent -= 10;
- if (mi[1].d.hslider.percent < 0)
- mi[1].d.hslider.percent = 0;
- }
- if (i == 2) {
- mi[1].d.hslider.cflags &= ~(MI_CFLAGS_RIGHT | MI_CFLAGS_LEFT);
- }
- TheUI.MouseScroll = 1;
- SpeedMouseScroll = 10 - (mi[1].d.hslider.percent * 9) / 100;
- if (mi[1].d.hslider.percent == 0)
- TheUI.MouseScroll = 0;
- break;
- case 1: // mouse - move
- if (mi[1].d.hslider.cflags & MI_CFLAGS_KNOB && (mi[1].flags &
MenuButtonClicked)) {
- if (mi[1].d.hslider.curper > mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- } else if (mi[1].d.hslider.curper < mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- }
- mi[1].d.hslider.percent = (mi[1].d.hslider.curper + 8) / 10 *
10;
- TheUI.MouseScroll = 1;
- SpeedMouseScroll = 10 - (mi[1].d.hslider.percent * 9) / 100;
- if (mi[1].d.hslider.percent == 0)
- TheUI.MouseScroll = 0;
- MustRedraw |= RedrawMenu;
- }
- break;
- default:
- break;
+ TheUI.MouseScroll = 1;
+ SpeedMouseScroll = 10 - (mi->d.hslider.percent * 9) / 100;
+ if (mi->d.hslider.percent == 0) {
+ TheUI.MouseScroll = 0;
}
}
/**
** Keyboard scroll horizontal slider action callback
*/
-local void KeyboardScrollHSAction(Menuitem *mi, int i)
+local void KeyboardScrollHSAction(Menuitem *mi)
{
- mi--;
-
- switch (i) {
- case 0: // click - down
- case 2: // key - down
- if (mi[1].d.hslider.cflags &MI_CFLAGS_RIGHT) {
- DebugLevel0Fn("Increasing keyboard speed\n");
- mi[1].d.hslider.percent += 10;
- if (mi[1].d.hslider.percent > 100)
- mi[1].d.hslider.percent = 100;
- } else if (mi[1].d.hslider.cflags & MI_CFLAGS_LEFT) {
- DebugLevel0Fn("Decreasing keyboard speed\n");
- mi[1].d.hslider.percent -= 10;
- if (mi[1].d.hslider.percent < 0)
- mi[1].d.hslider.percent = 0;
- }
- if (i == 2) {
- mi[1].d.hslider.cflags &= ~(MI_CFLAGS_RIGHT | MI_CFLAGS_LEFT);
- }
- TheUI.KeyScroll = 1;
- SpeedKeyScroll = 10 - (mi[1].d.hslider.percent * 9) / 100;
- if (mi[1].d.hslider.percent == 0)
- TheUI.KeyScroll = 0;
- break;
- case 1: // mouse - move
- if (mi[1].d.hslider.cflags & MI_CFLAGS_KNOB && (mi[1].flags &
MenuButtonClicked)) {
- if (mi[1].d.hslider.curper > mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- } else if (mi[1].d.hslider.curper < mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- }
- mi[1].d.hslider.percent = (mi[1].d.hslider.curper + 8) / 10 *
10;
- TheUI.KeyScroll = 1;
- SpeedKeyScroll = 10 - (mi[1].d.hslider.percent * 9) / 100;
- if (mi[1].d.hslider.percent == 0)
- TheUI.KeyScroll = 0;
- MustRedraw |= RedrawMenu;
- }
- break;
- default:
- break;
+ TheUI.KeyScroll = 1;
+ SpeedKeyScroll = 10 - (mi->d.hslider.percent * 9) / 100;
+ if (mi->d.hslider.percent == 0) {
+ TheUI.KeyScroll = 0;
}
}
/**
** Master volume horizontal slider action callback
*/
-local void MasterVolumeHSAction(Menuitem *mi, int i)
+local void MasterVolumeHSAction(Menuitem *mi)
{
- mi--;
-
- switch (i) {
- case 0: // click - down
- case 2: // key - down
- if (mi[1].d.hslider.cflags & MI_CFLAGS_RIGHT) {
- DebugLevel0Fn("Increasing master volume\n");
- mi[1].d.hslider.percent += 10;
- if (mi[1].d.hslider.percent > 100)
- mi[1].d.hslider.percent = 100;
- } else if (mi[1].d.hslider.cflags & MI_CFLAGS_LEFT) {
- DebugLevel0Fn("Decreasing master volume\n");
- mi[1].d.hslider.percent -= 10;
- if (mi[1].d.hslider.percent < 0)
- mi[1].d.hslider.percent = 0;
- }
- if (i == 2) {
- mi[1].d.hslider.cflags &= ~(MI_CFLAGS_RIGHT | MI_CFLAGS_LEFT);
- }
- SetGlobalVolume((mi[1].d.hslider.percent * 255) / 100);
- break;
- case 1: // mouse - move
- if (mi[1].d.hslider.cflags & MI_CFLAGS_KNOB && (mi[1].flags &
MenuButtonClicked)) {
- if (mi[1].d.hslider.curper > mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- } else if (mi[1].d.hslider.curper < mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- }
- mi[1].d.hslider.percent = (mi[1].d.hslider.curper + 8) / 10 *
10;
- SetGlobalVolume((mi[1].d.hslider.percent * 255) / 100);
- MustRedraw |= RedrawMenu;
- }
- break;
- default:
- break;
- }
+ SetGlobalVolume((mi->d.hslider.percent * 255) / 100);
}
/**
** Music volume horizontal slider action callback
*/
-local void MusicVolumeHSAction(Menuitem *mi, int i)
+local void MusicVolumeHSAction(Menuitem *mi)
{
- mi--;
-
- switch (i) {
- case 0: // click - down
- case 2: // key - down
- if (mi[1].d.hslider.cflags & MI_CFLAGS_RIGHT) {
- DebugLevel0Fn("Increasing music volume\n");
- mi[1].d.hslider.percent += 10;
- if (mi[1].d.hslider.percent > 100)
- mi[1].d.hslider.percent = 100;
- } else if (mi[1].d.hslider.cflags & MI_CFLAGS_LEFT) {
- DebugLevel0Fn("Decreasing music volume\n");
- mi[1].d.hslider.percent -= 10;
- if (mi[1].d.hslider.percent < 0)
- mi[1].d.hslider.percent = 0;
- }
- if (i == 2) {
- mi[1].d.hslider.cflags &= ~(MI_CFLAGS_RIGHT | MI_CFLAGS_LEFT);
- }
- SetMusicVolume((mi[1].d.hslider.percent * 255) / 100);
- break;
- case 1: // mouse - move
- if (mi[1].d.hslider.cflags & MI_CFLAGS_KNOB && (mi[1].flags &
MenuButtonClicked)) {
- if (mi[1].d.hslider.curper > mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- } else if (mi[1].d.hslider.curper < mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- }
- mi[1].d.hslider.percent = (mi[1].d.hslider.curper + 8) / 10 *
10;
- SetMusicVolume((mi[1].d.hslider.percent * 255) / 100);
- MustRedraw |= RedrawMenu;
- }
- break;
- default:
- break;
- }
+ SetMusicVolume((mi->d.hslider.percent * 255) / 100);
}
#ifdef USE_CDAUDIO
/**
** CD volume horizontal slider action callback
*/
-local void CdVolumeHSAction(Menuitem *mi, int i)
+local void CdVolumeHSAction(Menuitem *mi)
{
- mi--;
-
- switch (i) {
- case 0: // click - down
- case 2: // key - down
- if (mi[1].d.hslider.cflags & MI_CFLAGS_RIGHT) {
- DebugLevel0Fn("Increasing cd volume\n");
- mi[1].d.hslider.percent += 10;
- if (mi[1].d.hslider.percent > 100)
- mi[1].d.hslider.percent = 100;
- } else if (mi[1].d.hslider.cflags & MI_CFLAGS_LEFT) {
- DebugLevel0Fn("Decreasing cd volume\n");
- mi[1].d.hslider.percent -= 10;
- if (mi[1].d.hslider.percent < 0)
- mi[1].d.hslider.percent = 0;
- }
- if (i == 2) {
- mi[1].d.hslider.cflags &= ~(MI_CFLAGS_RIGHT | MI_CFLAGS_LEFT);
- }
- SetCDVolume((mi[1].d.hslider.percent * 255) / 100);
- break;
- case 1: // mouse - move
- if (mi[1].d.hslider.cflags & MI_CFLAGS_KNOB && (mi[1].flags &
MenuButtonClicked)) {
- if (mi[1].d.hslider.curper > mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- } else if (mi[1].d.hslider.curper < mi[1].d.hslider.percent) {
- mi[1].d.hslider.percent = mi[1].d.hslider.curper;
- }
- mi[1].d.hslider.percent = (mi[1].d.hslider.curper + 8) / 10 *
10;
- SetCDVolume((mi[1].d.hslider.percent * 255) / 100);
- MustRedraw |= RedrawMenu;
- }
- break;
- default:
- break;
- }
+ SetCDVolume((mi->d.hslider.percent * 255) / 100);
}
#else
/**
** CD volume horizontal slider action callback
*/
-local void CdVolumeHSAction(Menuitem *mi __attribute__((unused)),
- int i __attribute__((unused)))
+local void CdVolumeHSAction(Menuitem *mi __attribute__((unused)))
{
}
#endif
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Stratagus-CVS] stratagus/src include/menus.h ui/menus.c ui/men...,
Jimmy Salmon <=