summaryrefslogtreecommitdiff
path: root/depot_gui.c
AgeCommit message (Collapse)Author
2006-10-05(svn r6657) -Change: [depot window] sell all vehicles in depot confirm ↵bjarni
window now opens on top of depot window instead of in the middle of the screen
2006-10-05(svn r6652) -Feature: [depot window] depot lists are now sorted, so vehicle ↵bjarni
1 is always first and so on This should not be a big slowdown as it's only called each time the list is generated and will normally be much faster than the list generation itself (only a small % of the total number of vehicles is in the depot)
2006-10-05(svn r6651) -Coding feature: added the windowevent WE_INVALIDATE_DATAbjarni
This gives the ability to invalidate some window data and recalculate as needed instead of doing it for each WE_PAINT This event is called right away when using InvalidateWindowData(), so it may be a good idea to set a bool or similar in the window or similar and then act on that bool in WE_PAINT instead of doing a lot of stuff in WE_INVALIDATE_DATA as it might be called more than once before WE_PAINT is called InvalidateWindowData() will not automatically repaint the window, so if you want to repaint it as well, you need to mark it dirty as well. Made the depot windows use WE_INVALIDATE_DATA to set when to generate the engine and wagon lists instead of at each redraw It makes no sense to regenerate the list when say using the scrollbar if we know that no vehicle have entered or left the list NOTE: currently there is a piece of code to generate the list when it's not needed and compare it to the stored list and assert if they mismatch This check is somewhat slow and kills the whole idea of WE_INVALIDATE_DATA, so it's a short lived one to verify that InvalidateWindowData() is used everywhere where it's needed
2006-10-05(svn r6645) -Fix(r6631): Forgot two click_state occurencesbelugas
2006-10-03(svn r6631) -Codechange: Use accessors for click_state.belugas
Another step toward merging XTDwidget. The only two files not converted (window.h and widget.c) will be done at the very last commit)
2006-10-03(svn r6619) -Codechange: Use accessors for disabled_state.belugas
Another step toward merging XTDwidget. The only two files not converted (window.h and widget.c) will be done at the very last commit)
2006-10-02(svn r6612) -Codechange: Use accessors for hidden_state.belugas
Another step toward merging XTDwidget. The only two files not converted (window.h and widget.c) will be done at the very last commit)
2006-10-01(svn r6609) - Move the mass stop/start buttons of the depot window to the ↵peter1138
bottom row, to match all other vehicle list windows, and make it look a bit neater, (Suggested by skidd13)
2006-09-30(svn r6595) -Fix r6542: [depot window] clicking sell all in a depot with no ↵bjarni
vehicles will now do nothing at all (instead of opening the confination window) (spotted by glx)
2006-09-30(svn r6593) -Fix: [depot window] added sprites to the buttons, that lacked onebjarni
Also changed the sprites on some of the other buttons to make the buttons consistent Credits for this: Drawing: skidd13 (first sprite copied/heavily inspired by Bot_40) Grfencoding: peter1138 Coding to apply the new sprites: peter1138 (modified by me) Ideas: Born Acorn MeusH ValHallA|SW XeryusTC Sorry if I forgot to mention somebody
2006-09-30(svn r6591) -Codechange: changed strings that used the word "depot" into one ↵bjarni
for each vehicle type This is a request from translators as depot is not valid for all vehicle types in all translations This will cause a lot of warnings when generating the lang files. MiHaMiX will fix them in a moment (hopefully)
2006-09-30(svn r6586) -Feature: [depot window] added a vehicle list window with all ↵bjarni
vehicles having a certain depot in their orders It got one known issue though. The top bar got a plural issue so expect to see stuff like "1 trains" until we figure out why it behaves this way Added the button to the depot windows. Made the autoreplace button bigger while I was moving some widgets anyway Made road vehicle depot windows start with one more row to make room for the buttons
2006-09-29(svn r6567) -Fix r6542: [depot window] solved an issue where the confimation ↵bjarni
window sometimes failed to close (spotted by MacLir) Also changed the colours of the confimation window. Hopefully it looks better now even though I'm still not really happy with it
2006-09-28(svn r6562) -Codechange: merged the vehicle list window widget arraysbjarni
It made no sense to maintain 8 nearly identically arrays when a single one can do the job Also made the two buttons always use half of the bottom width each, even when resizing
2006-09-28(svn r6561) -Fix r6513: [depot window] fixed an off by one error, that ↵bjarni
caused planes and ships to be drawn one pixel lower for each row
2006-09-28(svn r6554) -Fix r6513: [depot window] fixed a bug where moving rail ↵bjarni
vehicles from one line to another could fail under certain conditions
2006-09-28(svn r6552) -Feature: [depot window] added a "autoreplace all vehicles in ↵bjarni
depot" button Like the "sell all" button, this one lacks a sprite as well. We will hopefully get one shortly
2006-09-27(svn r6542) -Feature: [depot window] added a "sell all vehicles in depot" buttonbjarni
It's right below the sell button (sell whole chain button for trains) It's still missing a sprite. That one will be added as soon as anybody draws something we can use To make room for this button, all depots except train depots now opens with an additional row and can't be resized shorter than that
2006-09-27(svn r6530) -Fix r6529: added missing header file (oops)bjarni
2006-09-27(svn r6529) -Fix r6513: [depot window] added missing switch in CcCloneVehicle()bjarni
The result of this missing switch was asserts in some cloning conditions (not all) (spotted by KUDr)
2006-09-27(svn r6528) -Fix r6527: fixed an off by one error in an assertbjarni
2006-09-27(svn r6527) -Codechange: [depot window] added asserts to ensure that widget ↵bjarni
names, widget array and array of resize info stays the same length Really bad stuff will happen if one of them contains a different number of widgets ;) This is meant as a protection against incorrect additions of code rather than verifying that the current code works
2006-09-27(svn r6526) -Codechange: [depot window] the train only widgets are now ↵bjarni
resized depending on the size of other widgets This will ensure that say the horizontal scrollbar is as wide as the matrix even if only the matrix is altered in size This is meant to make it easier to add more widgets without coding a lot of vehicle type specific stuff (you should still check all windows though)
2006-09-27(svn r6525) -Codechange r6513: altered how to control how to move widgets ↵bjarni
around in the window. Hopefully it's a bit easier to understand now
2006-09-27(svn r6522) -Feature: [depot window] the buttons are now "scaled" resizedbjarni
This means that "Build vehicle", "Clone vehicle" and "Location" will always fill the space from the left window border to the resize button and they are equal in size The sell button will also use all the space between the start/stop buttons and the resize button and for trains, the sell button is split into two buttons in equal sizes This will prevent the issue where a small window is resized into a large one and the buttons remains pretty small -Codechange: [depot window] The enum with widget names is now changed into automatic numbering so all lines will not have to be changed each time a new widget is added
2006-09-27(svn r6520) -Fix r6515: "start all" and "stop all" buttons in depot windows ↵bjarni
are now disabled if you do not own the depot
2006-09-27(svn r6516) -Fix r6513: killed warnings about two variables being used ↵bjarni
uninitialized This is not even correct since it's set in if (a) and later used in another if (a), but GCC didn't detect that
2006-09-26(svn r6515) -Feature: added "start all" and "stop all" buttons to the depot ↵bjarni
windows
2006-09-26(svn r6513) -Codechange: unified the code to draw depot windowsbjarni
This change is intended to make it easier to make depot behaviour consistent and faster to code when adding more features in the future The user interface should hopefully not be affected by this