Commit Graph

1069 Commits

Author SHA1 Message Date
Henry Wilson
7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 2019-04-10 23:22:20 +02:00
Michael Lutz
c7b9987d08 Codechange: Switch DropDownList to directly use std::vector, thus making AutoDeleteSmallVector obsolete.
DropDownListItem are strongly managed using std::unique_ptr to ensure leak-free handling. Appropriate use
of move-semantics make intent a lot clearer than parameter comments and allows the compiler to generate
copy-free code for most situations.
2019-04-09 22:45:15 +02:00
glx22
a1e492d0d8
Fix #7439: don't overwrite CompanyRemoveReason with ClientID (#7465) 2019-04-05 15:11:52 +02:00
Henry Wilson
a0f36a50e6 Codechange: Replaced SmallVector::Append() with std::vector::[push|emplace]_back() 2019-03-26 20:15:57 +00:00
peter1138
317f69c152 Codechange: Use override specifier in Window-derived classes. 2019-03-24 16:10:04 +01:00
Henry Wilson
af7d9020a1 Codechange: Use override specifer for overriding member declarations
This is a C++11 feature that allows the compiler to check that a virtual
member declaration overrides a base-class member with the same signature.

Also src/blitter/32bpp_anim_sse4.hpp +38 is no longer erroneously marked
as virtual despite being a template.
2019-03-24 16:10:04 +01:00
Patric Stout
e3c639a09f Remove: ENABLE_NETWORK switch
This switch has been a pain for years. Often disabling broke
compilation, as no developer compiles OpenTTD without, neither do
any of our official binaries.

Additionaly, it has grown so hugely in our codebase, that it
clearly shows that the current solution was a poor one. 350+
instances of "#ifdef ENABLE_NETWORK" were in the code, of which
only ~30 in the networking code itself. The rest were all around
the code to do the right thing, from GUI to NewGRF.

A more proper solution would be to stub all the functions, and
make sure the rest of the code can simply assume network is
available. This was also partially done, and most variables were
correct if networking was disabled. Despite that, often the #ifdefs
were still used.

With the recent removal of DOS, there is also no platform anymore
which we support where networking isn't working out-of-the-box.

All in all, it is time to remove the ENABLE_NETWORK switch. No
replacement is planned, but if you feel we really need this option,
we welcome any Pull Request which implements this in a way that
doesn't crawl through the code like this diff shows we used to.
2019-03-20 19:24:55 +01:00
frosch
a67ee02529
Change: Heading for 1.10 now (#7319) 2019-03-03 20:51:57 +01:00
Niels Martin Hansen
7e1e2756d4 Add: Show performance of AI and GS in framerate window 2019-02-23 14:29:07 +01:00
Samu
66d23e3e86 Fix #7090: Close Query String window after rebuilding AI/GS settings 2019-02-21 01:40:34 +01:00
Samu
19fa960d83 Fix #7091: Close dropdown menu windows after rebuilding AI/GS settings 2019-02-21 00:35:56 +01:00
PeterN
aa737715dd
Fix #7151: AI start date deviation was still applied when not set to a random AI. (#7223) 2019-02-11 18:59:55 +00:00
glx
8e7fe3973f Add: CompanyCtrlAction enum for CMD_COMPANY_CTRL actions 2019-02-04 21:08:36 +01:00
Samu
011257dc88 Change: Allow AI companies to start immediately.
Allow multiple AIs to possibly start in the same tick.
start_date = 0 becomes a special case, where random deviation does not occur.
If start_date was not already 0, then a minimum value of 1 must apply.
2019-02-02 16:37:11 +00:00
Peter Nelson
0355f887d9 Fix #6438: Properly invalidate AI Settings window when max no competitor setting is changed. 2019-02-01 15:20:52 +00:00
glx
b22fbfbe3d Add: allow opening of one TextfileWindow per type 2019-01-28 23:43:18 +00:00
glx22
654b635f6f Fix #7122: OnClick() and DrawWidget() editability was inconsistent in AISettingsWindow (#7123) 2019-01-27 21:01:09 +00:00
PeterN
5ff0c24993 Fix #6780: Some windows didn't get updated from OnTick() (#7048) 2019-01-12 23:23:23 +00:00
glx
c540d72445 Fix: [Win32] WIN32 may not be defined, always prefer the compiler predefined macro _WIN32 2018-12-27 18:09:16 +01:00
frosch
09d4735679 (svn r27993) -Change: Heading for 1.9 now 2018-03-14 19:36:41 +00:00
frosch
b4b98e5165 (svn r27893) -Codechange: Use fallthrough attribute. (LordAro) 2017-08-13 18:38:42 +00:00
peter1138
86eae807be (svn r27787) -Fix: Update scrollbar when rebuilding AI/GS setting list. 2017-03-12 18:19:01 +00:00
peter1138
c55f586df8 (svn r27786) -Fix [FS#6479]: AI configuration changed incorrect parameter when some parameters are hidden. 2017-03-12 16:33:40 +00:00
frosch
afcef7faa6 (svn r27780) -Update: Numbers 2017-03-11 20:50:26 +00:00
frosch
d8b465f556 (svn r27581) -Fix [FS#6461]: Button size computation in script configuration window. (adf88) 2016-05-22 12:00:36 +00:00
frosch
0c7c0ada78 (svn r27518) -Update: Numbers 2016-03-01 20:00:22 +00:00
zuu
aabc46712a (svn r27468) -Fix (r27444): Game Scripts were not displayed in the content download window when opened from the AI/GS settings window. 2015-12-10 18:28:01 +00:00
frosch
8fc86bc5f5 (svn r27193) -Fix (r27192): Incomplete copy/paste. 2015-03-17 20:45:57 +00:00
frosch
6477356dd2 (svn r27192) -Change: heading for 1.6 now 2015-03-17 20:33:44 +00:00
frosch
bed0370ad1 (svn r27187) -Fix: Code style. 2015-03-15 12:19:58 +00:00
peter1138
d4a9b3aced (svn r26954) -Codechange: GUI-scale for AI/GS settings and NewGRF settings windows. 2014-10-04 18:19:22 +00:00
fonsinchen
2128f1e929 (svn r26893) -Feature: ScriptStationList_Cargo for sorting cargo by from and via 2014-09-21 16:20:48 +00:00
rubidium
33ab505567 (svn r26774) -Cleanup [Squirrel]: remove _SC macro 2014-09-06 17:46:56 +00:00
rubidium
6e99a55928 (svn r26583) -Fix [FS#5974]: Game script could be changed in game by double clicking 2014-05-11 18:46:42 +00:00
rubidium
9ed12b0f07 (svn r26509) -Codechange: replace strdup with stredup (the latter ensures the return is not NULL) 2014-04-25 15:40:32 +00:00
rubidium
a5274117bd (svn r26487) -Codechange: use lastof instead of lengthof/sizeof for script names 2014-04-23 21:16:58 +00:00
rubidium
5b82822c12 (svn r26486) -Codechange: replace a number of snprintfs with seprintf 2014-04-23 21:12:09 +00:00
frosch
ef4c2ce031 (svn r26485) -Codechange: Replace ttd_strlcpy and ttd_strlcat with strecpy and strecat. 2014-04-23 20:44:42 +00:00
rubidium
0463dbdc9e (svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values 2014-04-23 20:13:33 +00:00
frosch
db96a109ff (svn r26406) -Change: heading for 1.5 now 2014-03-17 20:02:30 +00:00
rubidium
83eeba28b7 (svn r26086) -Codechange: use AutoDeleteSmallVector instead std::list for dropdowns 2013-11-24 14:46:26 +00:00
rubidium
81ce9ad189 (svn r25592) -Fix [FS#5644]: Changing the script difficulty level in-game would also change the settings using the default even though they were not allowed to change in-game 2013-07-12 18:54:27 +00:00
frosch
43ec0bf0c1 (svn r25537) -Codechange: Optionally make WWT_MATRIX compute the number of rows and columns from the resize step size. 2013-06-30 14:36:31 +00:00
frosch
e184b9799c (svn r25533) -Codechange: Use SetCapacityFromWidget more often. 2013-06-30 14:33:32 +00:00
frosch
5f8f71edf0 (svn r25532) -Fix: Do not make the minimal size of matrix or panel widgets depend on their number of rows, since that changes when resizing the window. 2013-06-30 14:33:15 +00:00
frosch
98fdd20f84 (svn r25531) -Codechange: Use separate function to set data of WWT_MATRIX widgets. 2013-06-30 14:32:31 +00:00
frosch
fef30983e6 (svn r25414) -Codechange: Move handling of global hotkeys to HotkeyList. 2013-06-15 15:31:22 +00:00
frosch
ee4e68bd5e (svn r25413) -Fix-ish: Suppress focussing editboxes which are not visible. 2013-06-15 15:31:04 +00:00
frosch
5cb174c6b8 (svn r25412) -Codechange: Make use of Window::OnHotkey 2013-06-15 15:30:44 +00:00
frosch
1b8b1f3f6c (svn r25410) -Codechange: Put all hotkeys of a window into a static HotkeyList member. 2013-06-15 15:28:09 +00:00
frosch
d9e9710cb3 (svn r25408) -Codechange: Simplify hotkeys by removing unused stuff. 2013-06-15 15:27:33 +00:00
frosch
bb308c5e30 (svn r25401) -Fix-ish: Add missing includes with prototypes to functions declared in the cpp file. 2013-06-15 15:05:54 +00:00
frosch
4e4e635916 (svn r25294) -Feature: Add another button to window title bars to resize the window to its default size. 2013-05-26 19:30:07 +00:00
frosch
8157a8afd8 (svn r25290) -Add: Assign string names to notable windows. 2013-05-26 19:25:01 +00:00
frosch
56e4a8c4d6 (svn r25287) -Codechange: Keep a reference to the WindowDesc in the Window after construction. 2013-05-26 19:23:42 +00:00
rubidium
001fdc3682 (svn r25236) -Fix [FS#5547]: crash when AI is executing a command as it is bankrupted (removed from the game)
The command is placed in a queue for processing before it is bankrupted, after that the command
is executed. This command yields a failure because the company does not exist, but then it still
needs to call the callback. This callback tries to access the AI's virtual machine without any
checks, so it starts to read a just freed pointer and segfaults.
2013-05-12 13:12:55 +00:00
zuu
c6187b5d97 (svn r25104) -Fix [FS#5507]: Allow changing GS settings in-game via the AI/GS config window. 2013-03-17 21:58:18 +00:00
frosch
9b06e79765 (svn r25052) -Fix [FS#5490]: Refactor Script Debug GUI to only set widget states in OnInvalidateData. 2013-02-27 21:23:19 +00:00
rubidium
7ff6598cd2 (svn r25001) -Change: heading for 1.4 now 2013-02-14 18:58:04 +00:00
frosch
a00320c61d (svn r24929) -Fix [FS#5415]: Don't try to pause or unpause crashed scripts. 2013-01-20 18:43:49 +00:00
planetmaker
c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 2013-01-08 22:46:42 +00:00
frosch
812ae4140a (svn r24789) -Add: Separate setting to control the default settings of newly added scripts and random AIs. 2012-12-05 19:36:04 +00:00
frosch
e43bf5dabd (svn r24788) -Change: Detach script settings from difficulty settings. Always allow changing all script settings without setting difficulty to custom. 2012-12-05 19:35:38 +00:00
frosch
a499435351 (svn r24786) -Codechange: Add SettingsProfile enum for difficulty profiles and highscore tables. 2012-12-05 19:34:45 +00:00
frosch
545b6de900 (svn r24747) -Fix: Some editboxes had a different colour than the rest of the window. 2012-11-14 22:50:53 +00:00
frosch
f5d8ba5d7f (svn r24742) -Codechange: Remove QueryStringBaseWindow and store QueryStrings per widget instead. 2012-11-14 22:50:35 +00:00
frosch
6e6d94a2d1 (svn r24740) -Codechange: Remove duplicate members from QueryStringBaseWindow and directly use QueryString. 2012-11-14 22:50:26 +00:00
frosch
f6d4200f86 (svn r24738) -Codechange: Remove Textbuf::Initialize in favour of a constructor. 2012-11-14 22:50:17 +00:00
frosch
f2221e8b89 (svn r24736) -Cleanup: The third parameter of Textbuf::Initialize only makes sense if it is smaller than the second one, also its unit is not pixels. 2012-11-14 22:46:49 +00:00
frosch
2c22fe98dd (svn r24734) -Codechange: Move QueryStringBaseWindow::OnOSKInput to Window::OnEditboxChanged. 2012-11-13 21:47:07 +00:00
frosch
c4d7c8dd42 (svn r24733) -Codechange: Move handling of editbox keys to window class. 2012-11-13 21:47:02 +00:00
frosch
7699a7dc06 (svn r24732) -Codechange: Unify handling of OK and CANCEL actions for editboxes. 2012-11-13 21:46:58 +00:00
frosch
6d1fe626f5 (svn r24729) -Codechange: Unify the handling of HEBR_EDITING. 2012-11-13 21:46:46 +00:00
frosch
1071d51508 (svn r24727) -Fix: In various windows the OSK looked shiny but using it had no effect whatsoever. 2012-11-13 21:46:37 +00:00
frosch
137adb3496 (svn r24726) -Codechange: Move editbox mouseloop handling to Window class. 2012-11-13 21:46:33 +00:00
frosch
17025fa6ea (svn r24724) -Codechange: Move drawing of editboxes to the widget drawing code. 2012-11-13 21:46:19 +00:00
frosch
8cd77b6f6e (svn r24723) -Fix: AI debug GUI crashed when using disabled buttons via hotkeys. 2012-11-13 21:46:14 +00:00
frosch
03736af2ae (svn r24700) -Cleanup: Remove WDF_UNCLICK_BUTTONS and make it the default. 2012-11-11 16:10:43 +00:00
frosch
cd55253865 (svn r24699) -Codechange: Proper usage of push and toggle buttons in mapgen and script debug GUI. 2012-11-11 16:10:11 +00:00
zuu
eff4bbeb53 (svn r24554) -Add: Hotkeys for widgets in AI Debug window 2012-09-23 14:37:59 +00:00
zuu
d219fdb875 (svn r24552) -Fix (r24537): Unpause do no longer continue scripts 2012-09-23 11:30:37 +00:00
zuu
f3f4c562ff (svn r24537) -Feature: Scripts can be suspended even if the game is still progressing, thus break-on-log now works also for Game Scripts. 2012-09-21 19:58:18 +00:00
zuu
468d232ef4 (svn r24505) -Add: Select the GS tab if all AI tabs are unselectable in the AI debug window. 2012-09-01 17:49:26 +00:00
zuu
a97387011d (svn r24489) -Feature [FS#5230]: Display GS dead state in AI debug window. 2012-08-21 17:07:17 +00:00
yexo
fe31aa28c4 (svn r24487) -Codechange [FS#5236]: make several DoesContentExist return the path instead of a boolean (LordAro) 2012-08-20 21:01:40 +00:00
yexo
54aa43c81b (svn r24468) -Add [FS#5219]: API compatibility scripts for Goal Scripts (Hirundo) 2012-08-13 19:22:26 +00:00
yexo
5192155253 (svn r24467) -Codechange [FS#5236]: make textfile window class slightly more general (LordAro) 2012-08-13 18:52:47 +00:00
frosch
bca5ba1d26 (svn r24342) -Feature: Also use the new multi-word filtering for script breakpoints. 2012-06-13 18:58:29 +00:00
frosch
d58eee1e79 (svn r24324) -Codechange: Turn functions dealing with Textbufs into member functions. 2012-06-04 15:30:29 +00:00
frosch
be0b94400d (svn r24317) -Feature: Add dropdowns to AI configurations, if all values have labels. 2012-06-01 15:19:59 +00:00
frosch
625ec041b9 (svn r24315) -Fix: Make the AI settings window behave more like the other settings window by closing the query window whenever selecting a different row. 2012-06-01 15:13:34 +00:00
frosch
65f51240cd (svn r24313) -Fix: Some obiwans wrt. clicking on setting buttons. 2012-06-01 15:08:40 +00:00
frosch
e240f660f0 (svn r24312) -Change: Center the settings buttons in the AI and NewGRF config windows. 2012-06-01 14:42:48 +00:00
frosch
056f779334 (svn r24310) -Codechange: Add named constants for the dimensions of settings buttons, and generally make their usage more consistent. 2012-06-01 14:41:09 +00:00
frosch
198de5397e (svn r24309) -Codechange: Split some functions from gui.h to settings_gui.h 2012-06-01 10:44:45 +00:00
frosch
95d3d6fdef (svn r24291) -Add: [Script] ScriptEventRoadReconstruction. 2012-05-26 14:16:45 +00:00
frosch
8dc553a039 (svn r24290) -Add: [Script] ScriptEventExclusiveTransportRights. 2012-05-26 14:16:38 +00:00
frosch
66a37e28a6 (svn r24289) -Add: [Script] Base class for script events involving a company and a town. 2012-05-26 14:16:32 +00:00
frosch
0332c7e6b3 (svn r24268) -Fix: Use the same colour scheme for the script selection window as in other comparable windows. 2012-05-23 19:07:34 +00:00
frosch
d7d89bc806 (svn r24108) -Fix [FS#5142]: When starting GS or AI, always use the settings of the game, not the new-game settings. 2012-04-09 12:35:01 +00:00