Nathanael Gentry
d2a1102423
GRAPHICS: MACGUI: Fix screen copying with direct draw
2020-08-19 16:59:18 -04:00
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
695e8349fe
GRAPHICS: MACGUI: BE-safe color creation
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
56fddcb965
GRAPHICS: MACGUI: Tidy up code
2020-08-15 14:50:27 +02:00
Eugene Sandulenko
6d72ebd1e2
GRAPHICS: MACGUI: Made MacButtons and desktop render in 32bpp
2020-08-15 14:50:26 +02:00
Eugene Sandulenko
29533d9c5e
GRAPHICS: MACGUI: Fix typo in findBestColor
2020-08-15 14:50:26 +02:00
Eugene Sandulenko
659e3c72b8
GRAPHICS: MACGUI: Further work on 32bpp blitting
2020-08-14 23:54:16 +02:00
Nathanael Gentry
b4c6ab24b0
GRAPHICS: MACGUI: Restore window border transparency
2020-08-13 21:24:52 -04:00
Eugene Sandulenko
d61eeb9880
GRAPHICS: MACGUI: Added 32bpp mode form MacWindowManager
2020-08-14 01:10:32 +02:00
Nathanael Gentry
8b7f9d4ab2
GRAPHICS: MACGUI: Handle direct draw window offsets
2020-08-12 16:34:24 -04:00
Nathanael Gentry
3a69512fe1
GRAPHICS: MACGUI: Fix menu direct rendering
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
74f0434d42
GRAPHICS: MACGUI: Add _colorOffWhite
2020-08-05 19:20:14 -04:00
Nathanael Gentry
6b2ed3c8ca
GRAPHICS: MACGUI: Properly reset cursor visibility
2020-08-04 18:33:09 -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
4d2da628df
GRAPHICS: MACGUI: Set WM cursor visible on cursor pop
2020-07-20 16:49:11 -04:00
Eugene Sandulenko
540fdb1de6
GRAPHICS: MACGUI: Initialize newly added class variables
2020-07-20 15:05:45 +02: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
Eugene Sandulenko
24695be687
GRAPHICS: MACGUI: Added sanity check
2020-07-13 11:41:54 +02:00
djsrv
a7319b0df5
GRAPHICS: MACGUI: Fix window layering
...
If a window is redrawn, any windows on top of it need to be redrawn.
2020-07-09 16:29:42 -04:00
djsrv
3aaeced035
GRAPHICS: MACGUI: Allow windows to be hidden
2020-07-08 17:10:55 -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
f8fa6ec649
GRAPHICS: MACGUI: Remove redundant conversion
2020-06-17 15:32:18 -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
ecb0df0620
GRAPHICS: MACGUI: Ensure proper cursor change
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
Eugene Sandulenko
37744bc7bf
GRAPHICS: MACGUI: Properly fix double activation of menu
2020-06-10 15:37:51 +02:00
Andrei Prykhodko
bb1ad3f357
MACGUI: don't activate menu if it is active
2020-06-04 23:45:19 +02:00
Nathanael Gentry
6cb1c92e23
GRAPHICS: MACGUI: Add fullscreen menu-on-demand mode
2020-06-01 19:00:27 +02:00
Eugene Sandulenko
bad0e9e169
GRAPHICS: MACGUI: Properly take into account active widget for cursor selection
2020-05-23 16:29:21 +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
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