Commit Graph

247 Commits

Author SHA1 Message Date
Sergii Pylypenko
b067aee235 Fixed music GUI compilation 2019-04-24 20:01:32 +03:00
Sergii Pylypenko
3ba683874b Merge remote-tracking branch 'origin/master' into HEAD 2019-04-23 18:16:24 +03:00
Peter Nelson
6dfe36b5cd Change: Make volume slider widget capture mouse when clicked.
This makes the slider continue to respond even when mouse cursor
is no longer over the widget.
2019-02-21 08:11:35 +00:00
Niels Martin Hansen
c618a7c093 Fix 6298b96: Changing music set did not save new setting 2018-11-25 00:47:56 +01:00
Charles Pigott
52ed3bcbaa Remove: A few bits of dead code 2018-10-31 12:41:49 +01:00
Niels Martin Hansen
336d6cab68 Fix 6298b96: Playlist window not drawing playlist
Copy-paste error in change to remove C++11 usage...
2018-06-25 00:00:56 +02:00
Niels Martin Hansen
6298b96571 Change: Modernise music control logic implementation (#6839)
Rewrite of almost the entire music control logic to a more modern style, hopefully also easier to understand. The old playlist handling made it look like arcane magic, which it doesn't have to be.

- Playlists are now stored in std::vector of objects instead of arrays of bytes with magic sentinel values, that need to be rotated around all the time. Position in playlist is stored as a simple index.
- The theme song is now reserved for the title screen, it doesn't play on any of the standard playlists, but is still available for use on custom playlists.
- When the player enters/leaves the game from the main menu, the music always restarts.
- Playback state (playing or not) is kept even if music becomes unavailable due to an empty playlist (or an empty music set), so it can restart immediately if music becomes available again.
- The shuffle algorithm was changed to a standard Fisher-Yates.
- Possibly better behavior when editing a custom playlist while it's playing.
- Custom playlists should be compatible.
- Framework for supporting custom playlists with songs from multiple music sets.
2018-06-24 20:06:05 +02:00
Niels Martin Hansen
a1b7812c7e Change: Improved looping of title song 2018-06-15 23:09:17 +02:00
Niels Martin Hansen
f946b3da56 Codechange: Pass a MusicSongInfo struct instead of bare filename to music drivers.
Preparation for later extending the info passed to music drivers.
2018-06-05 22:58:35 +02:00
Niels Martin Hansen
19f5a6cbb0 Feature #6090: Change music set during gameplay 2018-04-29 19:26:05 +02:00
Niels Martin Hansen
430e20f7e4 Fix: Clipping issues with volume sliders in Music GUI
Tested with various languages and GUI font sizes, should look good everywhere.

Also clamps near-end values to minimum and maximum so 0 and 127 are possible to achieve even on small GUI sizes (like the default.)
2018-04-29 19:26:05 +02:00
Niels Martin Hansen
bb809e35ce Change: Less intrusive "no music" message from Music window 2018-04-29 19:26:05 +02:00
Niels Martin Hansen
e172794947 Change: Disable music control buttons when there is no music 2018-04-29 19:26:05 +02:00
Niels Martin Hansen
76cccc64c9 Codechange: Music GUI comments and function naming 2018-04-29 19:26:05 +02:00
pelya
3ef1c1baff Merge commit 'a8b575671894ffe1329ef37dca4989c0e60d70f5'
These merges are becoming more awful every time

Conflicts:
	src/ai/ai_gui.cpp
	src/build_vehicle_gui.cpp
	src/cheat_gui.cpp
	src/company_gui.cpp
	src/depot_gui.cpp
	src/dock_gui.cpp
	src/error_gui.cpp
	src/genworld_gui.cpp
	src/misc_gui.cpp
	src/network/network_content_gui.cpp
	src/network/network_gui.cpp
	src/newgrf_gui.cpp
	src/news_gui.cpp
	src/rail_gui.cpp
	src/rev.cpp.in
	src/road_gui.cpp
	src/settings_gui.cpp
	src/settings_gui.h
	src/signs_gui.cpp
	src/station_gui.cpp
	src/table/settings.ini
	src/terraform_gui.cpp
	src/toolbar_gui.cpp
	src/toolbar_gui.h
	src/vehicle_gui.cpp
	src/video/sdl_v.cpp
	src/viewport.cpp
	src/widget.cpp
	src/widgets/settings_widget.h
2016-03-27 22:33:11 +03:00
rubidium
660a95e5d2 (svn r27003) -Cleanup: fix the use of spaces and asterices "around" some comments 2014-10-12 18:41:53 +00:00
rubidium
771dcf3b7b (svn r27003) -Cleanup: fix the use of spaces and asterices "around" some comments 2014-10-12 18:41:53 +00:00
rubidium
18e157fe7a (svn r26809) -Fix: do not dereference the -1 index of the file names array of music files. It definitely breaks on m68k, and might cause failures on other platforms as well 2014-09-10 16:33:42 +00:00
rubidium
4438821b80 (svn r26809) -Fix: do not dereference the -1 index of the file names array of music files. It definitely breaks on m68k, and might cause failures on other platforms as well 2014-09-10 16:33:42 +00:00
Sergii Pylypenko
91ebce1a9c Merge remote-tracking branch 'upstream/master'
Conflicts:
	src/console_gui.cpp
	src/genworld_gui.cpp
	src/group_gui.cpp
	src/misc_gui.cpp
	src/settings_gui.cpp
	src/widgets/settings_widget.h
2014-06-04 17:09:23 +03:00
Sergii Pylypenko
657e563f7c Fixed no sound when playing music, fixed music volume reverted on new track 2014-05-28 15:41:53 +03:00
rubidium
beb540ec55 (svn r26538) -Codechange: remove double accounting of the drivers 2014-04-28 21:06:51 +00:00
rubidium
b476086c39 (svn r26538) -Codechange: remove double accounting of the drivers 2014-04-28 21:06:51 +00:00
rubidium
5c7c2445d8 (svn r26489) -Codechange: properly account for the end of buffers in the file io code instead of assuming MAX_PATH is okay 2014-04-23 21:23:21 +00:00
rubidium
21f991e235 (svn r26489) -Codechange: properly account for the end of buffers in the file io code instead of assuming MAX_PATH is okay 2014-04-23 21:23:21 +00:00
rubidium
2be4215f43 (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
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
pelya
61e8275ebf Fixed vehicle and music dialog size 2014-03-23 18:47:49 +02:00
Juanjo
b69c4bb7a9 Add scrollbars to tracklist window and set min sizing. 2014-03-15 21:56:55 +02:00
planetmaker
adfbda8999 (svn r25776) -Add [FS#5743]: Sticky and shade buttons for jukebox window (retro) 2013-09-15 15:56:46 +00:00
planetmaker
247feca247 (svn r25776) -Add [FS#5743]: Sticky and shade buttons for jukebox window (retro) 2013-09-15 15:56:46 +00:00
frosch
16feb5c4e9 (svn r25290) -Add: Assign string names to notable windows. 2013-05-26 19:25:01 +00:00
frosch
8157a8afd8 (svn r25290) -Add: Assign string names to notable windows. 2013-05-26 19:25:01 +00:00
frosch
25adefca23 (svn r25287) -Codechange: Keep a reference to the WindowDesc in the Window after construction. 2013-05-26 19:23:42 +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
frosch
3b06409153 (svn r24700) -Cleanup: Remove WDF_UNCLICK_BUTTONS and make it the default. 2012-11-11 16:10:43 +00:00
frosch
03736af2ae (svn r24700) -Cleanup: Remove WDF_UNCLICK_BUTTONS and make it the default. 2012-11-11 16:10:43 +00:00
truebrain
4c344a82a9 (svn r23544) -Codechange: document and rename widgets to be consistent and understandable 2011-12-16 18:02:27 +00:00
truebrain
e2d8abeec5 (svn r23544) -Codechange: document and rename widgets to be consistent and understandable 2011-12-16 18:02:27 +00:00
truebrain
49e88dcbf0 (svn r23528) -Codechange: move widget enums to widgets/NNN_type.h 2011-12-15 22:22:55 +00:00
truebrain
2aa774e831 (svn r23528) -Codechange: move widget enums to widgets/NNN_type.h 2011-12-15 22:22:55 +00:00
rubidium
9aab2dc861 (svn r23474) -Codechange: move the declaration error related functions to error.h 2011-12-10 13:54:10 +00:00
rubidium
58423b26d1 (svn r23474) -Codechange: move the declaration error related functions to error.h 2011-12-10 13:54:10 +00:00
glx
a7cde1ebb1 (svn r23430) -Fix (r23219): also consider the old directories when playing a song 2011-12-04 14:17:51 +00:00
glx
634796b860 (svn r23430) -Fix (r23219): also consider the old directories when playing a song 2011-12-04 14:17:51 +00:00
rubidium
5135e2a09e (svn r23219) -Change: different directories for basesets and newgrfs. So data to baseset or newgrf, and gm to baseset 2011-11-14 21:34:27 +00:00
rubidium
2b897b4fa0 (svn r23219) -Change: different directories for basesets and newgrfs. So data to baseset or newgrf, and gm to baseset 2011-11-14 21:34:27 +00:00
rubidium
c3e83edbe5 (svn r23035) -Fix (r23034): compile failure 2011-10-16 19:59:07 +00:00
rubidium
99ed5eb7c5 (svn r23035) -Fix (r23034): compile failure 2011-10-16 19:59:07 +00:00
rubidium
c00b74f7ca (svn r23034) -Fix: make sure the custom playlists are 0 terminated 2011-10-16 19:56:47 +00:00