Commit Graph

2512 Commits

Author SHA1 Message Date
Stephen Anthony b59cf4f54b Updated VS project file for EventHandler refactoring. 2018-03-24 13:53:24 -02:30
Stephen Anthony 0908a92da1 Continuing with the large refactoring of EventHandler:
- all keyboard-related stuff moved into PhysicalKeyboardHandler class
- all snapshot-related stuff moved directly into PNGLibrary class
- EventHandler class is now ~1300 LOC, which while still large, is much better than 2500 LOC
2018-03-24 12:36:00 -02:30
Stephen Anthony 08ac6b0ff9 Fixed joystick hat not receiving 'CENTER' event (fixes #300). 2018-03-21 18:16:33 -02:30
Stephen Anthony 0cde1ec4b9 Minor refactoring with Controller::isAnalog() usage. 2018-03-18 16:13:28 -02:30
Stephen Anthony 3ce71302b7 Minor updates and commenting for PhysicalJoystickHandler. 2018-03-18 15:58:41 -02:30
Stephen Anthony 9a4b14392b Minor refactoring of Controller class:
- a controller can now answer whether it is intrinsically an analog controller
2018-03-17 20:03:05 -02:30
Stephen Anthony 7eab28b2ef Use smart pointer for joystick in PhysicalJoystickHandler. 2018-03-17 19:44:47 -02:30
Stephen Anthony be23ad7ca7 Updated OSX project file for EventHandler refactoring. 2018-03-17 18:28:40 -02:30
Stephen Anthony 77ba46ec3a Updated VS project file for EventHandler refactoring. 2018-03-17 18:12:31 -02:30
Stephen Anthony 76b6026d30 First pass at reworking EventHandler, splitting it up into more manageable pieces.
For now, joystick-related stuff is moved into its own classes.
No improvements are made yet; just refactoring and moving code around.
This reduces EventHandler from ~2500 lines to ~2000 lines.
2018-03-17 18:00:44 -02:30
Christian Speckner d8178f546b Make sure that the hardware state is up to date before entering the debugger. 2018-03-13 23:38:31 +01:00
Christian Speckner 593ec2fdc9 Make sure that the hardware state is up to date before entering the debugger. 2018-03-13 22:13:35 +01:00
Stephen Anthony 36997d4d7a Final updates for 5.1.1 release. 2018-02-21 15:38:29 -03:30
Stephen Anthony c79d86d6a6 Fixed minor compile warnings with gcc 7. 2018-02-15 19:57:17 -03:30
Stephen Anthony a38b168db8 Updated various files for 5.1.1 release (dates still TBD). 2018-02-15 19:51:57 -03:30
Stephen Anthony 1a4670ca0e Cherry-pick debugger saveOldState() fix from master, and bump to 5.1.1. 2018-02-15 19:40:57 -03:30
Stephen Anthony d07f7771a3 Add missing locks around Debugger::saveOldState() (fixes #298). 2018-02-15 19:39:17 -03:30
Stephen Anthony 162f7b7501 Add missing locks around Debugger::saveOldState() (fixes #298). 2018-02-15 19:25:54 -03:30
Christian Speckner fbbfa222a0 Fix a detail in audio block simulation -> doctor sounds correct 2018-02-13 23:08:20 +01:00
Christian Speckner c25e7a6b35 Compile fix. 2018-02-12 23:55:14 +01:00
Christian Speckner 5c1bd83904 Merge branch 'master' into feature/precise-audio 2018-02-12 23:32:03 +01:00
Christian Speckner 01c78842d6 Serialization fix. 2018-02-12 23:21:02 +01:00
thrust26 2a3bb4329e load and update existing game specific properties file 2018-02-12 16:47:03 +01:00
Christian Speckner d65ac4875f Minor missile starfield fix. 2018-02-09 00:59:17 +01:00
Christian Speckner b8af22cd67 Fix playfield signal during hblank. 2018-02-08 20:53:42 +01:00
Christian Speckner b30fa0df98 And another collision fix. 2018-02-07 23:13:16 +01:00
Christian Speckner 6b6fb9140f More HMOVE collision fixes. 2018-02-07 23:00:58 +01:00
thrust26 5764a73d89 finalized TimeLineWidget for new UI look 2018-02-07 14:55:43 +01:00
Stephen Anthony e01321fbea Refactor Dialog class containing fonts:
- the previous code has a _font pointer in derived classes, and a _font reference in the base class; this causes name collisions
- the Dialog class now takes a font reference, which is used throughout the hierarchy
- this simplifies certain code (setTitle vs. initTitle) and also eliminates clang warnings
2018-02-06 19:26:49 -03:30
Christian Speckner 07f1051be0 Tentative fixes for collisions during HBLANK. 2018-02-06 23:32:02 +01:00
Stephen Anthony 2874a7c504 Fixed some compiler warnings from clang.
Refactored Stack::replace() to use Stack::applyAll() lambda instead.
2018-02-06 15:11:16 -03:30
sa666666 b84d97cd9a And so it begins again ... 2018-02-06 08:54:35 -03:30
thrust26 d24934d010 spelling 2018-02-06 13:14:40 +01:00
thrust26 ad1d37304e aligned button heights and widths 2018-02-06 13:12:21 +01:00
thrust26 564e014620 removed FLAT_UI code from TimeLineWidget
added toggle mode button to TimeMachineDialog
2018-02-06 12:46:27 +01:00
thrust26 1fa00f2372 initial wind when entering TM dialog causes message now
(TODO: try to propagate key into dialog instead)
2018-02-05 19:57:41 +01:00
thrust26 1569ee1c6b minor code cleanup 2018-02-05 13:45:34 +01:00
thrust26 33756b2481 fixed a little merge error 2018-02-05 13:39:13 +01:00
Christian Speckner 7d7ebb8d03 Merge branch 'master' into feature/precise-audio 2018-02-04 23:50:16 +01:00
Christian Speckner f7c445fb7c Merge branch 'release/5.1' 2018-02-04 23:48:45 +01:00
Stephen Anthony db5eb89335 Updated changelog for one last fix for TIA PF collision handling. 2018-02-04 18:58:53 -03:30
Christian Speckner ba549e1d8a Improve PF collision handling during hblank. 2018-02-04 23:18:30 +01:00
Stephen Anthony 2bd0d05d44 Bumped version number for 5.1 release. 2018-02-04 18:37:35 -03:30
thrust26 3ab2ddb870 fixed EventHandler logic 2018-02-04 21:00:10 +01:00
Stephen Anthony 6d16790ce8 Fixed minor warning from Xcode. 2018-02-04 16:14:39 -03:30
Stephen Anthony 997751b64f When TimeLineWidget is empty, it now displays as such. 2018-02-04 12:14:23 -03:30
Stephen Anthony f29dcfece1 Refactored TimeLineWidget to use uInt32 throughout:
- this fixes issues with signed vs. unsigned in some areas
- it also self-documents, in that the slider should never use negative values
2018-02-04 11:15:42 -03:30
Stephen Anthony 9e53641add Time machine rewinds are now triggered at the same time as entering the dialog. 2018-02-04 11:14:59 -03:30
thrust26 99e31ac158 fixed time bar issue with no states 2018-02-04 10:14:58 +01:00
Stephen Anthony de56f9cff5 Merge branch 'release/5.1' of github.com:stella-emu/stella into release/5.1 2018-02-03 20:54:05 -03:30
Stephen Anthony 77f2c478a0 Fixed warnings from Xcode (some pretty big issues were caught here) 2018-02-03 20:44:46 -03:30
Stephen Anthony 974c686366 Fixed compiles warnings in VS 2017. 2018-02-03 19:52:14 -03:30
Stephen Anthony 1f1ced0f01 Bumped minimum state version. 2018-02-03 19:30:52 -03:30
Stephen Anthony 26096fcc47 Fixed some warnings, and updates for 5.1 release. 2018-02-03 19:29:27 -03:30
Stephen Anthony 6c5bddcdf8 Time Machine dialog now resizes correctly:
- in 2x mode, it takes up the maximum amount of space
- in larger modes, it takes up the same relative amount of space: ~80% width
2018-02-03 17:27:52 -03:30
Christian Speckner 803b85343a Tuning. 2018-02-03 01:23:19 +01:00
Christian Speckner cb89d09c7f Refactoring: remove framerate from OSystem and Console. 2018-02-03 01:01:02 +01:00
thrust26 f4db8e4816 fixed zoom settings via hotkey (made persistent again) 2018-02-02 22:51:22 +01:00
thrust26 9d72ae2c4e reordered OptionsDialog to match next release
updated docs accordingly
2018-02-02 15:55:27 +01:00
thrust26 cbeeda6f55 added tickmarks to TimeLineWidget (5 intervals)
replaced 3d box with rect for TimeLineWidget
2018-02-02 13:05:41 +01:00
Stephen Anthony 883a9249b1 Fixed inverted subtraction in the previous commit. 2018-02-01 19:52:32 -03:30
Stephen Anthony c18bcbc39b TimeLineWidget mouse handling is now complete. 2018-02-01 19:03:17 -03:30
thrust26 97a0638845 Added (fixed) tickmark intervals to SliderWidget 2018-02-01 18:21:57 +01:00
thrust26 6d1c5b1301 removed +/-10 buttons for TimeMachineDialog
updated documentation
2018-02-01 11:18:05 +01:00
Christian Speckner 396dd637af Rework dispatch loop. 2018-01-31 20:44:39 +01:00
Christian Speckner 7f83e776b2 Keep book of the number of cycles spent during emulation. 2018-01-31 19:29:37 +01:00
thrust26 1c4345eff3 made sure dialogs fit into 2x zoom and 0.8 aspect ration (=512 pixel) 2018-01-31 15:24:20 +01:00
thrust26 f56286fac9 reordered frame stats to make more sense 2018-01-31 08:52:52 +01:00
thrust26 7970955353 aligned transparency with TimeMachineDialog
move slightly away from corner
2018-01-31 08:37:31 +01:00
Stephen Anthony 86941ad6af Fixed time machine dialog glitches when the state list is empty. 2018-01-30 19:50:29 -03:30
sa666666 1ce528ff99 Fix crash in TimeLineWidget when setStepValues() is passed an empty list. 2018-01-30 08:18:20 -03:30
thrust26 eb96e1ca49 reduced TimeMachineDialog transparency
frame stats now always displays the real frameRate
2018-01-30 09:06:03 +01:00
Christian Speckner d70b0d8c40 Audio state serialization. 2018-01-29 22:44:06 +01:00
Christian Speckner 025adc59aa Merge fallout. 2018-01-29 22:25:23 +01:00
Christian Speckner 89f3f4c9b8 Merge branch 'master' into feature/precise-audio 2018-01-29 21:18:36 +01:00
Christian Speckner 87c59db4e0 Merge branch 'release/5.1' 2018-01-29 21:17:00 +01:00
thrust26 c9bc3601e3 replaced some PopUpWidgets with SliderWidgets 2018-01-29 19:59:46 +01:00
thrust26 9a3516b610 fixed compression factor calculation due to previous commit 2018-01-29 17:13:17 +01:00
thrust26 aa7dd33dc8 removed keeping very 1st state with compression enabled 2018-01-29 16:58:26 +01:00
thrust26 7f23ac00a2 small extra drag area for SliderWidget added 2018-01-29 09:15:54 +01:00
Stephen Anthony b11643881a Intervals on timeline are now graphically proportional to time:
- intervals are only valid when using key shortcuts
 - using the mouse to select/scroll does not show proper proportions yet
2018-01-28 20:11:21 -03:30
Christian Speckner 97a483b124 Update XCode project. 2018-01-29 00:22:43 +01:00
Christian Speckner f87316bfdb Dynamically adjust fragment buffer size based on fragmen size and period. 2018-01-29 00:09:21 +01:00
Christian Speckner 13eefbb542 Make compiler happy. 2018-01-29 00:09:21 +01:00
Christian Speckner c5aad2ae7a Volume adjustment. 2018-01-29 00:09:21 +01:00
Christian Speckner ae88a5b6b6 Fix crash on audio settings change. 2018-01-29 00:09:21 +01:00
thrust26 63acb76911 changed text color (else invisible in Classic mode) 2018-01-28 20:22:04 +01:00
Stephen Anthony db9cd28346 Added rewind/unwind shortcuts from TimeMachine to debugger.
- disabled the old Ctrl-r/y shortcuts, but the code is still there for experimentation
2018-01-28 13:28:17 -03:30
Stephen Anthony de7fd7401b Synchronized shortcuts in TimeMachine to match those from EventHandler. 2018-01-28 12:21:22 -03:30
thrust26 8c4faf122b Updated project files for VS 2018-01-28 16:34:52 +01:00
thrust26 966ba155ed more response to SliderWidget added
units to SliderWidget added
enhanced various dialogs with slider units
2018-01-28 14:37:31 +01:00
thrust26 05d17496ab minor wording fix 2018-01-28 11:35:14 +01:00
thrust26 d7cc2036df some refinements for additional save states creation 2018-01-28 11:21:52 +01:00
thrust26 d2177ea610 added extra save state when starting time machine navigation
(some TODOs left, see EventHandler and TimeMachineDialog)
2018-01-28 10:15:39 +01:00
Christian Speckner 6b984a8563 Avoid race condition in pause, switch to shared_ptr for simpler semantics. 2018-01-28 00:27:25 +01:00
thrust26 a0052e071f minor refactoring of AudioDialog 2018-01-28 00:16:31 +01:00
Stephen Anthony 2c90aaa7c7 Timeline and buttons in TimeMachineDialog are now syncronized. 2018-01-27 19:34:26 -03:30
thrust26 28b31bd3bf updated some dialogs, replaced binary option popups with check boxes and radio buttons
renamed "FAST SC/AR BIOS"
2018-01-27 20:31:03 +01:00
thrust26 8c346a469a reworked VideoDialog: check boxes for binary options, some widget reordering/renaming
TODO: SliderWidget for zoom
2018-01-27 13:00:55 +01:00
thrust26 79cce110f9 minimal refinements to JoystickDialog 2018-01-27 11:51:41 +01:00
thrust26 9c9abc125d refactored VideoDialog using enhanced SliderWidget 2018-01-27 11:47:56 +01:00
thrust26 868df2cb22 enhanced SliderWidget (optionally includes value label now too) 2018-01-27 11:06:34 +01:00
thrust26 2eaa62c87c minor changes to UIDialog and VideoDialog 2018-01-26 22:05:01 +01:00
thrust26 a7308b4c0d fixed toned down dialogs 2018-01-26 20:13:22 +01:00
thrust26 8c0b212207 Overlapped dialogs are (partially) toned down 2018-01-26 12:55:05 +01:00
thrust26 35275b0104 shortened/renamed and slightly reordered OptionsDialog entries 2018-01-26 12:29:25 +01:00
thrust26 67df7caa3b fine tuning for StringListWidget and RomListWidget 2018-01-26 12:01:24 +01:00
thrust26 f58e914729 focus highlighting added to more widgets
added some missing tab keys to debugger
fixed frame colors for CheckboxWidget and RadioButtonWidget
brightened inverted highlight color for "Light"
2018-01-26 11:33:46 +01:00
Christian Speckner 4528b9067a Assorted fixes -> works (module timing glitches). 2018-01-25 22:48:00 +01:00
Christian Speckner 8198f6ccaf Crackling and screeching.... but it is correlated with the TIA :) 2018-01-25 20:48:34 +01:00
thrust26 a20f21f741 fixed ContextMenu height 2018-01-25 17:07:04 +01:00
thrust26 4c39fa3c68 some more focus highlighting added
made most sliders wider by default
2018-01-25 17:00:41 +01:00
thrust26 920b051f02 redesigned SliderWidget
better visual reaction of EditTextWidget and PopUpWidget
improved BrowserDialog
small refinement for ButtonWidget
2018-01-25 15:10:37 +01:00
Christian Speckner 4ec553785f Implement and connect audio emulation. 2018-01-24 22:20:44 +01:00
thrust26 d179b8ebe8 Updated ScrollBarWidget
Refined LauncherDialog
Added missing Ellipsis to StellaFont.hxx
2018-01-24 20:53:00 +01:00
thrust26 97553b9d93 Help dialog closes with ESC again 2018-01-24 15:55:25 +01:00
thrust26 32e9c14b0d removed debug code 2018-01-24 15:20:54 +01:00
thrust26 5bd33885e3 title bar added to all dialogs 2018-01-24 14:37:07 +01:00
thrust26 41827e03de removed some superfluous includes 2018-01-23 19:53:36 +01:00
thrust26 74e5003c8f some small dialog refinements 2018-01-23 19:50:37 +01:00
thrust26 5757eccfcf enabled FLAT_UI code, removed old code 2018-01-23 18:03:00 +01:00
thrust26 5121a73210 some more minor dialog refinements 2018-01-23 17:51:38 +01:00
Christian Speckner f1b5421c17 Introduce and wire audio emulation core. 2018-01-23 13:41:14 +01:00
thrust26 795c84de9d refined some more dialogs 2018-01-23 11:52:53 +01:00
thrust26 d7dd6db9b8 fixed compile errors in VideoDialog 2018-01-23 11:17:59 +01:00
thrust26 d115e3238e enabled FLAT_UI (Windows only, TODO: enable for other OS or remove old code)
refactored Default/OK/Cancel buttons
refined AudioDialog
2018-01-23 11:08:17 +01:00
Stephen Anthony 307e496109 Updated Xcode project file for TimeLineWidget class. 2018-01-21 18:28:15 -03:30
Stephen Anthony 63de71d7f5 Updated VS project file for TimeLineWidget class. 2018-01-21 18:09:01 -03:30
Stephen Anthony 69e41a1434 Initial check-in of Time Machine timeline:
- currently, TimeLineWidget is just a copy of SliderWidget; still have to add a round 'button' to grab the line
 - at some point, we may merge SliderWidget and TimeLineWidget; for now they are separate
 - absolutely no functionality yet; just here for you guys to see how it will look
 - we still need to discuss gridmarks, and how the timeline will change (by state file, by time, etc)
2018-01-21 17:37:07 -03:30
thrust26 a8b3c0d74d reordered frame stats top line (makes more sense this way) 2018-01-21 11:05:00 +01:00
thrust26 a5e7911930 disabled test for "auto" frame rate 2018-01-21 10:19:28 +01:00
Christian Speckner 6fe5f3b197 Merge branch 'release/5.1' 2018-01-21 09:38:42 +01:00
Stephen Anthony 1055a4bd06 Minor cleanup of warnings in FrameBuffer class. 2018-01-20 20:51:46 -03:30
thrust26 2d03a2d059 aligned implementation parameter of handleEvent with definition parameter 2018-01-20 20:49:57 -03:30
thrust26 b67b795642 larger font for frame stats 2018-01-20 20:49:48 -03:30
thrust26 27291dd5d2 small fix for benchmark commit 2018-01-20 20:49:14 -03:30
thrust26 436c380a7e benchmark: frame stats now display real frame rate when 'Auto' is not selected 2018-01-20 20:49:05 -03:30
Stephen Anthony 9441cc43c4 Cherry-picked some commits from master. 2018-01-20 20:45:56 -03:30
thrust26 2e51511c80 message for SaveKey/AtariVox EEPROM access added 2018-01-20 20:41:29 -03:30
sa666666 dc9f92ecdb A fix for the previous fix. 2018-01-20 20:37:36 -03:30
Stephen Anthony 2cb2eed3e7 Add 'override' to method, to eliminate warning in clang. 2018-01-20 20:13:02 -03:30
thrust26 7b8dff8e46 when strings are shortened, ellipsis is added at the END now 2018-01-20 20:12:47 -03:30
thrust26 6f7ff023a6 generic shadowed char/string drawing added
TimeMachineDialog fully transparent now (experimental)
info stats indicates scanline/frame rate changes in red
2018-01-20 20:12:35 -03:30
thrust26 72ff2a40fa developer/player settings added to frame stats overlay 2018-01-20 20:11:54 -03:30
thrust26 a1b54680bd frame stats overlay made transparent 2018-01-20 20:10:39 -03:30
Stephen Anthony 9e403826d2 Fixed compilation when '--disable-debugger' is used. 2018-01-20 18:34:19 -03:30
thrust26 40615be9be Revert "fix repeated ESC from debugger", there is a more fundamental problem
This reverts commit 1b5ac9d3b5.
2018-01-20 21:48:24 +01:00
thrust26 b3e582209f fix the fix 2018-01-20 21:27:05 +01:00
thrust26 1b5ac9d3b5 fix repeated ESC from debugger 2018-01-20 21:22:01 +01:00
thrust26 7d9b7388c9 ESC key exits Debugger too
many keys are enabled now during PAUSE mode too
2018-01-20 18:40:25 +01:00
Stephen Anthony d7bcde29dc A different implementation of testing whether debugger can be exited.
- basically check whether the current dialog is the 'base' one (ie, the debugger window)
 - this solution is more robust, in that we don't have to modify every dialog that can appear in the debugger
2018-01-20 11:45:07 -03:30
thrust26 9263e7c62f refactored ESC key handling
prevent exiting debugger from within Options Dialog (hack)
2018-01-20 10:53:54 +01:00
Stephen Anthony df119ba505 Minor cleanup of warnings in FrameBuffer class. 2018-01-19 18:32:11 -03:30
thrust26 78b807efba ESC allows exiting Pause mode, TimeMachine mode and Command Menu. 2018-01-19 12:44:07 +01:00
thrust26 4c9cfad70b aligned implementation parameter of handleEvent with definition parameter 2018-01-19 10:45:29 +01:00
thrust26 af19f9f2b8 enter debugger from time machine mode option added 2018-01-19 10:35:52 +01:00
thrust26 98fcb51819 larger font for frame stats 2018-01-18 23:06:51 +01:00
thrust26 4e3b26cea9 display of current timer divider to debugger added 2018-01-18 13:03:59 +01:00
Christian Speckner be91e6ff21 Threadsafe fragment queue. 2018-01-17 23:21:25 +01:00
thrust26 a6bea6438f fix #279 2018-01-17 19:29:36 +01:00
thrust26 a6ea393905 small fix for benchmark commit 2018-01-17 19:12:39 +01:00
thrust26 85feed821c Merge branch 'master' of https://github.com/stella-emu/stella 2018-01-17 19:03:39 +01:00
thrust26 b111a8c127 benchmark: frame stats now display real frame rate when 'Auto' is not selected 2018-01-17 19:03:25 +01:00
sa666666 5ea9925c3f A fix for the previous fix. 2018-01-17 13:22:49 -03:30
thrust26 0906997d82 message for SaveKey/AtariVox EEPROM access added 2018-01-17 10:27:18 +01:00
Stephen Anthony f7656cdcd4 Add 'override' to method, to eliminate warning in clang. 2018-01-16 20:58:35 -03:30
thrust26 43be89f124 when strings are shortened, ellipsis is added at the END now 2018-01-16 18:16:56 +01:00
thrust26 802606ce29 Merge branch 'master' of https://github.com/stella-emu/stella 2018-01-16 11:14:47 +01:00
thrust26 a577b0f9c2 generic shadowed char/string drawing added
TimeMachineDialog fully transparent now (experimental)
info stats indicates scanline/frame rate changes in red
2018-01-16 11:14:26 +01:00
Christian Speckner 317f7391c2 Merge branch 'master' into feature/precise-audio 2018-01-15 23:53:35 +01:00
Christian Speckner 6cd7eb3821 Merge branch 'release/5.1' 2018-01-15 23:50:18 +01:00
thrust26 b22c292f3c developer/player settings added to frame stats overlay 2018-01-15 20:25:28 +01:00
thrust26 8583883795 Merge branch 'master' of https://github.com/stella-emu/stella 2018-01-15 14:44:56 +01:00
thrust26 cef50e4368 frame stats overlay made transparent 2018-01-15 14:44:09 +01:00
thrust26 f241dfd7b7 fixed compressStates(), now, with compression enabled, the first element is always kept and the horizon matches
missing "framerate" added, now changes are persisted.
2018-01-10 11:48:06 +01:00
Stephen Anthony 29499775dc Fixed compilation when '--disable-debugger' is used. 2018-01-09 23:16:50 -03:30
thrust26 ce195d71a1 fixed #276
made sure that the rewind buttons always have correct state when entering debugger
2018-01-07 10:56:30 +01:00
Christian Speckner 77158fd845 Always make sure that hardware state is consistent with a full step before dispatching the debugger.
* Allows to revert much of the complexity of my previous fix.
2018-01-07 00:31:24 +01:00
Christian Speckner c0edcaf0c9 Sanitize halt and hardware state handling after CPU dispatch. 2018-01-06 23:33:52 +01:00
Stephen Anthony f9d243e503 Fixed incorrect size in memset; this time I'll sizeof. 2018-01-05 22:03:42 -03:30
thrust26 d7ab2e6177 playing with transparency 2018-01-03 20:17:48 +01:00
thrust26 b553a5fa4d experiments with transparency 2018-01-03 20:16:50 +01:00
thrust26 cf926fdf07 UI partially working now (TODO: timebar) 2017-12-30 21:19:55 +01:00
thrust26 696fc2ab43 work on TimeMachine UI started 2017-12-30 16:43:27 +01:00
thrust26 1213c973dc fixed #275 2017-12-30 00:50:25 +01:00
Stephen Anthony 3d879d0080 Updated copyright date to 2018. A few days early, but nobody will mind ... 2017-12-29 17:10:37 -03:30
Stephen Anthony a15d5d8b06 Properly integrate MouseButton enum into the GUI core:
- The previous code used enumerations for DialogContainer, and constants for everything in src/gui
 - It took me over 3 hours to determine that a '1' in the first didn't mean the same as a '1' in the second
 - If ever there was a reason for strongly named constants (enum class), this was it.
2017-12-29 16:56:09 -03:30
Stephen Anthony 542fed69ed Collapsed MouseButton enum into just buttons, removing state (pressed or released).
- By itself, this first patch doesn't seem to accomplish much, but it leads into patch 2
 - Patch 2 will extend usage of MouseButton enum all throughout the GUI core
2017-12-29 16:05:07 -03:30
Stephen Anthony e6dcce60de Convert raw enum to 'enum class'. 2017-12-22 23:57:40 -03:30
Stephen Anthony 93dcc9807d Integrate 'TIATypes' into 'TIAConstants'; they serve the same purpose. 2017-12-22 23:47:07 -03:30
Stephen Anthony ad69e8900d Time Machine dialog can now be toggled by pressing 'T'.
- Note that the dialog is currently empty
 - See src/gui/CommandDialog for example of how to fill this dialog box
2017-12-22 12:28:06 -03:30
Stephen Anthony cbb494d7ad HiDPI fixes for framebuffer messages. 2017-12-21 23:04:17 -03:30
Stephen Anthony e572bea642 Activate code to dynamically select available renderers. 2017-12-21 20:03:53 -03:30
Stephen Anthony 44c5882920 Use 'enum class' instead of raw enum. 2017-12-21 19:53:54 -03:30
Stephen Anthony 4250f5d102 Refactor EventHandler kbdXXX functions into StellaKeys:
- These functions did not really have anything to do with EventHandler
 - StellaKeys is the proper place, since they're testing against a StellaMod
 - This removes the need to include 'EventHandler.hxx' in many header files, again reducing dependencies
2017-12-21 19:44:18 -03:30
thrust26 e37b5305cf code cleanup 2017-12-21 11:34:08 +01:00
thrust26 65ed71479a no background highlighting of disabled widgets 2017-12-21 08:48:07 +01:00
Stephen Anthony 24fccba025 Updated OSX project file for TimeMachine classes. 2017-12-20 22:39:58 -03:30
Stephen Anthony 6181c3fbe0 Updated VS project files for recent class renames.
- Also fixed several classes in the wrong place compared to their
on-disk location.
2017-12-20 22:27:13 -03:30
Stephen Anthony 7890a94144 Several large infrastructure changes for upcoming Time Machine stuff:
- renamed Rewinder and associated dialog to TimeMachine and friends
 - changed EventHandler state enum to stronger 'enum class' type (and associated changes to the codebase)
 - moved EventHandlerState into separate class, allowing a few files to not need to include EventHandler.hxx (reduce compile dependency)
 - plumbed EventHandlerState::TIMEMACHINE into the codebase; still TODO is activate it and add a usable dialog)
2017-12-20 21:56:22 -03:30