Commit Graph
83 Commits
Author SHA1 Message Date
Eugene Sandulenko 367dd5ff66 GRAPHICS: MACGUI: More fixed for 32bpp mode 2020-08-16 23:08:33 +02:00
Eugene Sandulenko f05d2f17c2 GRAPHICS: MACGUI: Made MacDrawPixPtr a global typedef 2020-08-16 00:59:05 +02:00
Eugene Sandulenko e604c97607 GRAPHICS: MACGUI: Made MacDrawPixel bpp-aware 2020-08-15 16:09:20 +02:00
Eugene Sandulenko 659e3c72b8 GRAPHICS: MACGUI: Further work on 32bpp blitting 2020-08-14 23:54:16 +02:00
Eugene Sandulenko d61eeb9880 GRAPHICS: MACGUI: Added 32bpp mode form MacWindowManager 2020-08-14 01:10:32 +02:00
Eugene Sandulenko 02b04d3de8 JANITORIAL: Whitespace fixes 2020-08-14 00:52:34 +02:00
Nathanael Gentry 8b7f9d4ab2 GRAPHICS: MACGUI: Handle direct draw window offsets 2020-08-12 16:34:24 -04:00
Nathanael Gentry a639ae4002 GRAPHICS: MACGUI: Add WM direct copy mode
This does not keep the current screen state cached in a surface, but re-creates
the screen from its various components each time something changes. This avoids
an intermediate blitting.

The mode is enabled just by not providing a surface to the WM, and instead
providing a width and height.
2020-08-12 02:34:45 -04:00
Nathanael Gentry 59dd1716b1 GRAPHICS: MACGUI: Put pause token on heap 2020-08-12 02:34:24 -04:00
djsrv a9346eea42 GRAPHICS: MACGUI: Improve grays naming 2020-08-07 18:55:17 -04:00
djsrv 61cfbdc469 GRAPHICS: MACGUI: Add more colors as properties
Finding the closets color in the current palette is necessary for
transparency in bitmap borders to work.
2020-08-07 16:47:19 -04:00
djsrv 570e33cc8a GRAPHICS: MACGUI: Draw bitmap desktop background 2020-08-06 18:32:08 -04:00
djsrv c29ccaa0bb GRAPHICS: MACGUI: Draw title on ninepatch borders 2020-08-05 19:20:14 -04:00
djsrv 74f0434d42 GRAPHICS: MACGUI: Add _colorOffWhite 2020-08-05 19:20:14 -04:00
djsrv 6189a36d12 GRAPHICS: MACGUI: Add border types 2020-07-31 16:38:37 -04:00
Scott Percival 4bfffc43a7 DIRECTOR: Move widgets from cast members to channels (#2372)
This change is required to support copies of the same cast member running in different channels.

* DIRECTOR: Move widget ownership from cast member to channel

* DIRECTOR: Cache cast dimensions from createWidget

* DIRECTOR: Add null checks for createWidget

* GRAPHICS: MACGUI: Clear active/hover WM references if the widget is destroyed

* DIRECTOR: LINGO: Re-add null check for kTheEditableText

* DIRECTOR: Avoid destroying widgets if the channel isn't dirty

* DIRECTOR: Fix dirty test

* DIRECTOR: Fix text field writeback

* DIRECTOR: Fix null cast check

* DIRECTOR: Add bbox as argument to createWidget

* DIRECTOR: Add setCast method to Channel

* DIRECTOR: Fix use-after-free in Channel::getMask

* DIRECTOR: Fix bounding box for Button sprites

* DIRECTOR: Cache widget dimensions in cast member

* DIRECTOR: Remove widget from channel if nextSprite is empty

* GRAPHICS: MACGUI: Fix MacText::splitString for empty string case

* DIRECTOR: Add null checks for movie and score in processEvents
2020-07-26 04:32:29 +00:00
Nathanael Gentry 79acd63dc0 GRAPHICS: MACGUI: Generalize WM cursor handling 2020-07-18 00:37:57 -04:00
Eugene Sandulenko 0654be0322 GRAPHICS: MACGUI: Implement hashing to findBestColor() 2020-07-17 14:19:22 +02:00
Nathanael Gentry dfd522bbe1 GRAPHICS: MACGUI: Reduce erroneous button activations 2020-07-16 10:31:51 -04:00
Nathanael Gentry e23c264873 GRAPHICS: MACGUI: Remove mouseDownWidget
The functionality I needed here can be implemented in the Director engine instead.
2020-07-16 09:59:05 -04:00
Nathanael Gentry d770b21094 GRAPHICS: MACGUI: Remove macInvertPixel callback
Instead, the addition to macDrawPixel is used instead.
2020-07-15 11:50:57 -04:00
djsrv 94d8c49a84 DIRECTOR: LINGO: Properly init/destroy windows 2020-07-09 00:37:23 -04:00
Nathanael Gentry 2643e2f957 GRAPHICS: MACGUI: MacWindowManager: Optionally set custom patterns
The Director engine, which uses custom patterns, is also updated.
2020-06-29 09:07:05 -04:00
Nathanael Gentry a3f649c10d GRAPHICS: MACGUI: Add colour decomposer 2020-06-23 12:50:58 -04:00
Nathanael Gentry 01b2e97c6e GRAPHICS: MACGUI: Draw zoomBox with pixel inversion
The Director engine, which relies upon zoomBox, is also updated.
2020-06-16 08:48:21 -04:00
Nathanael Gentry 3b795ae07a GRAPHICS: MACGUI: Enable macDrawPixel to invert pixels 2020-06-16 08:48:21 -04:00
djsrv 51b37067ca GRAPHICS: MACGUI: Add removeMenu 2020-06-12 10:49:57 -04:00
Nathanael Gentry 033e025365 GRAPHICS: MACGUI: MacWindowManager: Deactivate widget when mouse leaves 2020-06-10 15:42:49 +02:00
Nathanael Gentry f099b6a073 GRAPHICS: MACGUI: Generalize pixel inversion plotproc 2020-06-10 15:42:49 +02:00
Nathanael Gentry 6cb1c92e23 GRAPHICS: MACGUI: Add fullscreen menu-on-demand mode 2020-06-01 19:00:27 +02:00
Henrik "Henke37" Andersson 8079dc8d72 MACGUI, PINK: Rename setEnginePauseCallback to setEngine 2020-05-10 23:39:31 +02:00
Henrik "Henke37" Andersson d315fc8add MACGUI: Use real Engine and PauseToken classes 2020-05-10 23:39:31 +02:00
Cameron Cawley ef7edf95d1 GRAPHICS: MACGUI: Allow specifying a custom cursor using Graphics::Cursor 2020-05-09 09:40:38 +02:00
Eugene Sandulenko 5ff383d042 GRAPHICS: MACGUI: Pass keyboard event to active widget in editable window 2020-05-01 00:49:58 +02:00
Eugene Sandulenko bfdc650d95 GRAPHICS: MACGUI: Unset previous active widget when setting the new one 2020-05-01 00:49:58 +02:00
Eugene Sandulenko 7a4d5f45e9 GRAPHICS: MACGUI: Renamed clashing methods 2020-04-25 13:44:18 +02:00
Eugene Sandulenko 37f2275f62 GRAPHICS: MACGUI: Draw over optional mask in macDrawPixel() 2020-04-23 22:06:20 +02:00
Eugene Sandulenko f7a223c954 GRAPHICS: MACGUI: Added Manual Widnget draw mode 2020-04-22 01:03:11 +02:00
Eugene Sandulenko 251886124e GRAPHICS: MACGUI: Specify hotspot for custom cursor and fix cursor popping 2020-03-27 02:00:56 +01:00
Eugene Sandulenko 80da619f47 GRAPHICS: MACGUI: Added possibility to specify custom cursor 2020-02-10 15:05:38 +01:00
jepael 567c81905f GRAPHICS: MACGUI: Fix compiler warning 2020-02-01 00:22:47 +01:00
Eugene Sandulenko cdd2d9336b GRAPHICS: MACGUI: Simplified color matching 2020-01-31 00:10:18 +01:00
Eugene Sandulenko 2ec72ea3dd GRAPHICS: MACGUI: Add helper method for color searching 2020-01-31 00:10:18 +01:00
Scott Percival b31d5ac2b9 DIRECTOR: Align fill patterns to global origin 2020-01-11 11:27:21 +08:00
Eugene Sandulenko 2582036ea6 GRAPHICS: MACGUI: Remove flicker when exiting modal menu 2019-12-16 15:26:39 +01:00
Eugene Sandulenko a29f1fdbb4 GRAPHICS: MACGUI: Clear preallocated screen in WM when override is requested 2019-12-16 01:01:22 +01:00
Eugene Sandulenko 3ae526dfed GRAPHICS: MACGUI: Added support for Unicode fonts in menu 2019-10-18 00:20:54 +02:00
Eugene Sandulenko 6100de0b3a GRAPHICS: MACGUI: Add possibility to set WM mode right away
This lets us to not load mac fonts when the built-in mode in enforced
2019-10-17 01:42:44 +02:00
Eugene Sandulenko 5acaaed860 GRAPHICS: MACGUI: Crash-proof window management. 2019-10-14 21:31:25 +02:00
Eugene Sandulenko c17800cfc4 GRAPHICS: MACGUI: Add possibility to setup engine redraw callback 2019-10-04 22:32:24 +02:00