
The New GUI
Moderator: Moderators
All right, here is a test version:
http://www.cybergoon.com/tom/spring/new ... -07-17.zip
backup your spring.exe and extract this in there, it contains:
- spring.exe
- a new folder named 'guis' with a 'standard.tdf' and 'bindings.tdf' file.
standard.tdf describes the gui, you can modify this to modify the layout of the gui OR you can middle-mouse click on the gui elements in game and move them around. If you middle mouse click near the edges of some elements, it resizes them (like mini map). It doesn't remember your settings once you quit tho.
bindings.tdf contains keybindings. uikeys.txt is pretty much ignored that I've seen. One of the problems was the event handling scheme was a bit convoluted. For example, if you hit 'a' for attack, both right mouse and left mouse would attack when you clicked, rather than right mouse cancel. I've tried to fix that by adding the concept of contexts into the bindings.tdf file. It seems to work ok, but I've yet to apply it to all the keys that need it.
Here is a list of previously posted things that were wrong that I've fixed, or that I've discovered were already working:
FIXED:
- in map drawing didn't work
- shift doesn't speed up scrolling (mouse or arrow)
- group creation doesn't work
- speed up via + doesn't work
- move doesn't work
- speed up/down via +/- don't work -- you can add :
+_release=speedup;
-_release=slowdown;
in binding.tdf
- "stockpiling" nukes gives no feedback of how many are in queue, nor shows it how much are already
finished.
- minimap on shoretoshore warped,and no way to correct it.
- on the Keypad the + and - keys don't work
- I wasn't able to get in fps mode ( controling a unit )
- When giving a build que with shift and then releasing shift won't stop the queing, so i hav to pr
ss Esc. Which is dangerous cause Shift+esc = exit. So releasing shift should end the build que..
- alt bound to show healthbar
- shift+1=build menu shift+2=orders menu
UNVERIFIED/STILL BROKEN:
(list of things that are still broken or I have not tried to verify)
- left UI bar gets mashed at resolutions at or below 1024x768?
- speed move hangs a bit when changing directions with arrow keys
- mouse dragging canceling doesn't work
- drag building canceling doesn't work well
- wait command doesn't work
- labels in 'draw on map command' doesn't work
- auto-switch to 'orders' menu for units that can't build'
- keybindings for build/orders menu don't work properly? build/orders reversed?
- ?Mainly with group/groupai, all groups should default to the default ai instead central build like
it do now.
- ?Also it seems impossible to change the ai for a hotkey group (1-9) which makes them useless combi
ned with the above.
- ?The new gui also doesnt seem to render CMDTYPE_ICON_FRONT commands correctly.
- Overlays showing strange stuff on minimap (also shoretoshore, maybe a problem with very-non-square
maps?)
- The new buildmenu is very cool, but it would be nice to also at least show the basic order buttons
, too. At 1280x1024, the building options of even the most verbose factories dont fill half the bar.
..
- even if not, make the list autoselect orders when selecting a non-builder unit. Right now, after b
uilding something, you need to switch back to "orders" per hand when you select a military unit.
- The top right feature of selected units rules! But even better would be selecting units by clickin
g on the that list! (like selecting the whole area where the planes landed, and clicking on the braw
ler in the top right to select the 35 brawlers amoung the bulk, for example)
- shift doesn't accelerate scrolling
- There is a GUI inconsitence when building via the space menue: if you select a unit build ONE buil
ding, and want to deselect the builder, you have to press the left mouse buttom.
But if you queue building via shift, then after positioning the last building, you have to press the
RIGHT button the cancel the still active template. If you press the left button (as you would norma
lly do to deselect), the builder MOVES to the clicked location (although left click doesnt give a mo
ve order)
- F6 shows strength of enemy units
- wreckage/feature tooltips - show WHAT is being ressurected
- When nanostalling, i still can't see the ammount of metal/energy i'm trying to pull, i can only se
e what i'm actually pulling
- Screenshots aren't numbered properly, they are numbered screen1.jpg, screen2.jpg and so on. It sho
uld be like screen001.jpg screen002.jpg.
here is diff:
http://www.cybergoon.com/tom/spring/diff-2006-07-17.out
have fun!
http://www.cybergoon.com/tom/spring/new ... -07-17.zip
backup your spring.exe and extract this in there, it contains:
- spring.exe
- a new folder named 'guis' with a 'standard.tdf' and 'bindings.tdf' file.
standard.tdf describes the gui, you can modify this to modify the layout of the gui OR you can middle-mouse click on the gui elements in game and move them around. If you middle mouse click near the edges of some elements, it resizes them (like mini map). It doesn't remember your settings once you quit tho.
bindings.tdf contains keybindings. uikeys.txt is pretty much ignored that I've seen. One of the problems was the event handling scheme was a bit convoluted. For example, if you hit 'a' for attack, both right mouse and left mouse would attack when you clicked, rather than right mouse cancel. I've tried to fix that by adding the concept of contexts into the bindings.tdf file. It seems to work ok, but I've yet to apply it to all the keys that need it.
Here is a list of previously posted things that were wrong that I've fixed, or that I've discovered were already working:
FIXED:
- in map drawing didn't work
- shift doesn't speed up scrolling (mouse or arrow)
- group creation doesn't work
- speed up via + doesn't work
- move doesn't work
- speed up/down via +/- don't work -- you can add :
+_release=speedup;
-_release=slowdown;
in binding.tdf
- "stockpiling" nukes gives no feedback of how many are in queue, nor shows it how much are already
finished.
- minimap on shoretoshore warped,and no way to correct it.
- on the Keypad the + and - keys don't work
- I wasn't able to get in fps mode ( controling a unit )
- When giving a build que with shift and then releasing shift won't stop the queing, so i hav to pr
ss Esc. Which is dangerous cause Shift+esc = exit. So releasing shift should end the build que..
- alt bound to show healthbar
- shift+1=build menu shift+2=orders menu
UNVERIFIED/STILL BROKEN:
(list of things that are still broken or I have not tried to verify)
- left UI bar gets mashed at resolutions at or below 1024x768?
- speed move hangs a bit when changing directions with arrow keys
- mouse dragging canceling doesn't work
- drag building canceling doesn't work well
- wait command doesn't work
- labels in 'draw on map command' doesn't work
- auto-switch to 'orders' menu for units that can't build'
- keybindings for build/orders menu don't work properly? build/orders reversed?
- ?Mainly with group/groupai, all groups should default to the default ai instead central build like
it do now.
- ?Also it seems impossible to change the ai for a hotkey group (1-9) which makes them useless combi
ned with the above.
- ?The new gui also doesnt seem to render CMDTYPE_ICON_FRONT commands correctly.
- Overlays showing strange stuff on minimap (also shoretoshore, maybe a problem with very-non-square
maps?)
- The new buildmenu is very cool, but it would be nice to also at least show the basic order buttons
, too. At 1280x1024, the building options of even the most verbose factories dont fill half the bar.
..
- even if not, make the list autoselect orders when selecting a non-builder unit. Right now, after b
uilding something, you need to switch back to "orders" per hand when you select a military unit.
- The top right feature of selected units rules! But even better would be selecting units by clickin
g on the that list! (like selecting the whole area where the planes landed, and clicking on the braw
ler in the top right to select the 35 brawlers amoung the bulk, for example)
- shift doesn't accelerate scrolling
- There is a GUI inconsitence when building via the space menue: if you select a unit build ONE buil
ding, and want to deselect the builder, you have to press the left mouse buttom.
But if you queue building via shift, then after positioning the last building, you have to press the
RIGHT button the cancel the still active template. If you press the left button (as you would norma
lly do to deselect), the builder MOVES to the clicked location (although left click doesnt give a mo
ve order)
- F6 shows strength of enemy units
- wreckage/feature tooltips - show WHAT is being ressurected
- When nanostalling, i still can't see the ammount of metal/energy i'm trying to pull, i can only se
e what i'm actually pulling
- Screenshots aren't numbered properly, they are numbered screen1.jpg, screen2.jpg and so on. It sho
uld be like screen001.jpg screen002.jpg.
here is diff:
http://www.cybergoon.com/tom/spring/diff-2006-07-17.out
have fun!

Wow, nice!
Been doing a bit more work on the cegui stuff. It's a pain. CEGUI has to be one of the worst documented projects ive seen, which is slowing me down somewhat. It is good to see some of the widgets in that new_gui look decent, I may use some of that code in implementing custom cegui ones :)
Been doing a bit more work on the cegui stuff. It's a pain. CEGUI has to be one of the worst documented projects ive seen, which is slowing me down somewhat. It is good to see some of the widgets in that new_gui look decent, I may use some of that code in implementing custom cegui ones :)
Is this just the old new GUI or is there more with this one? It looks like the button I did a year ago still work with this one.
http://taspring.clan-sy.com/phpbb/viewt ... 4639#24639
http://taspring.clan-sy.com/phpbb/viewt ... 4639#24639
Hey peeps,
CEGUI is annoying, period. The documentation sucks, and I am spending more time figuring out how to use cegui than actually putting it into spring, nevertheless, I am making slow steady progress.
I'll have a screen of a resource bar in spring done in cegui tommorow (saturday). I thought it would be a decent starting point. The skin is not Ice's tho I am working on that (*mumbles something about cegui not having good enough skinning info*).
Soz for it taking so long, but yeah I'm not happy about it either :)
CEGUI is annoying, period. The documentation sucks, and I am spending more time figuring out how to use cegui than actually putting it into spring, nevertheless, I am making slow steady progress.
I'll have a screen of a resource bar in spring done in cegui tommorow (saturday). I thought it would be a decent starting point. The skin is not Ice's tho I am working on that (*mumbles something about cegui not having good enough skinning info*).
Soz for it taking so long, but yeah I'm not happy about it either :)
- clericvash
- Posts: 1394
- Joined: 05 Oct 2004, 01:05
in Ice's concept he has the usages and the expendature, but at the end of each bar had a dynamic number, red or green, which you could see easily from whether or not you were 'in the red' as it were resource wise.
Any how, the numbers are all fixed now. It's far from finished dont worry :)

When I get some more gfx from Ice i will try to get the skinning etc up and running, also, i'll look into fonts, as they are obviously a cause for concern in relation to resolution.
For those who are interested, This stuff is actually just 'on top' of the old gui stuff, in that, the cegui layout is defined in xml files (and so can be easily edited) and then in the old gui classes, instead of doing the opengl drawing etc there, we call into cegui sending it information to some named elements, such as "ResourceBar.Metal.Income".
i.e., all I do now to set the metal income is this:
CEGUI::DefaultWindow* metalIncome = (CEGUI::DefaultWindow*)guiWindowManager.getWindow("ResourceBar.Metal.Income");
metalIncome->setText(FloatToSmallString(gs->Team(gu->myTeam)->oldMetalIncome).c_str());
with guiWindowManager being the CEGUI window management singleton.
Any how, the numbers are all fixed now. It's far from finished dont worry :)

When I get some more gfx from Ice i will try to get the skinning etc up and running, also, i'll look into fonts, as they are obviously a cause for concern in relation to resolution.
For those who are interested, This stuff is actually just 'on top' of the old gui stuff, in that, the cegui layout is defined in xml files (and so can be easily edited) and then in the old gui classes, instead of doing the opengl drawing etc there, we call into cegui sending it information to some named elements, such as "ResourceBar.Metal.Income".
i.e., all I do now to set the metal income is this:
CEGUI::DefaultWindow* metalIncome = (CEGUI::DefaultWindow*)guiWindowManager.getWindow("ResourceBar.Metal.Income");
metalIncome->setText(FloatToSmallString(gs->Team(gu->myTeam)->oldMetalIncome).c_str());
with guiWindowManager being the CEGUI window management singleton.