32 Commits

Author SHA1 Message Date
Eugene Sandulenko 476bbb3d6e GRAPHICS: MACGUI: Fix compilation 2026-01-02 23:24:30 +01:00
Armaan Singh Sandhu 807a10bb53 GRAPHICS: MACGUI: Fix Beam cursor gets stuck after editable editable widget
If the cursor is moved between the MacWindow and MacTextWindow the
cursor switches to beam and back but when you click in the MacTextWindow
the cursor gets stuck to beam no matter which window or menu you are
hovering over
2026-01-03 01:20:14 +03:00
Eugene Sandulenko 7348fee0b9 GRAPHICS: MACGUI: Allow specifying MacWidget border color instead of hardcode 2025-09-21 22:12:37 +02:00
Pragyansh Chaturvedi 842fe20c5e DIRECTOR: Modify decomposeColor to fix missing text in buttons in 32bpp mode 2022-09-09 02:21:47 +02:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Eugene Sandulenko 8c52f6db12 GRAPHICS: MACGUI: Reset MacWindget dirty flag on blit.
This reduces amount of unnecessary redraws.
2020-08-24 20:53:37 +02:00
Eugene Sandulenko 367dd5ff66 GRAPHICS: MACGUI: More fixed for 32bpp mode 2020-08-16 23:08:33 +02:00
Eugene Sandulenko ee3e1e3af5 GRAPHICS: MACGUI: More 32bpp enhancements 2020-08-14 10:47:33 +02: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
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 91409d2cc1 GRAPHICS: MACGUI: MacWidget: Handle priorities properly 2020-07-16 18:36:33 -04:00
Nathanael Gentry 454be019ff DIRECTOR: Remove maskSurface from MacWidget 2020-07-13 13:29:54 -04:00
Nathanael Gentry 03ddc4dd4d GRAPHICS: MACGUI: Standardize destructors for widget subclasses 2020-07-07 16:41:53 -04:00
Nathanael Gentry 63071473af Revert "GRAPHICS: MACGUI: Remove colour settings from base widget"
This reverts commit 39c4a0f524.
2020-07-06 23:15:56 -04:00
Nathanael Gentry 39c4a0f524 GRAPHICS: MACGUI: Remove colour settings from base widget
The Director engine, for which I introduced this setting, has also been updated.
To account for different ink types, the background colour will be applied in the
blitting step, and each text chunk keeps its own palette information.
2020-07-06 23:06:04 -04:00
Nathanael Gentry 8e2be0ceb3 GRAPHICS: MACGUI: MacWidget: Accept colours in constructor 2020-06-29 08:49:18 -04:00
Nathanael Gentry 335f6f2e3d GRAPHICS: MACGUI: Keep window manager pointer in all widgets 2020-06-23 23:26:49 -04:00
Nathanael Gentry 0e574c6aab GRAPHICS: MACGUI: MacWidget: Clear composeSurface with background colour 2020-06-15 12:04:45 -04:00
Eugene Sandulenko 97a82f212b GRAPHICS: MACGUI: Initialize MacWidget colors to sane values 2020-06-15 12:15:50 +02:00
Nathanael Gentry 9e69ea280e GRAPHICS: MACGUI: Fix text border computation 2020-06-14 10:12:57 -04:00
Nathanael Gentry 20dde1d917 GRAPHICS: MACGUI: Relocate colours to from MacText to MacWidget 2020-06-12 20:29:50 -04:00
Nathanael Gentry 83418686ee GRAPHICS: MACGUI: Implement basic priority handling 2020-06-11 10:20:17 -04:00
Nathanael Gentry 033e025365 GRAPHICS: MACGUI: MacWindowManager: Deactivate widget when mouse leaves 2020-06-10 15:42:49 +02:00
Nathanael Gentry 2eecd518b1 GRAPHICS: MACGUI: MacWidget: Make non-abstract 2020-06-10 15:42:49 +02:00
Nathanael Gentry 9f06150a36 GRAPHICS: MACGUI: MacEditableText: Add text features
Border, gutter, box shadow, text alignment
2020-06-10 15:42:49 +02:00
Eugene Sandulenko bad0e9e169 GRAPHICS: MACGUI: Properly take into account active widget for cursor selection 2020-05-23 16:29:21 +02:00
Eugene Sandulenko 7242a104ab GRAPHICS: MACGUI: Inherit enable/disable methods from MacWidget 2020-04-25 13:44:18 +02:00
Eugene Sandulenko 2fb21ba90a GRAPHICS: MACGUI: Split drawing and blitting operations for widgets 2020-04-14 00:42:39 +02:00
Eugene Sandulenko 37485b9670 GRAPHICS: MACGUI: Implemented event dispatcher for MacWidget 2020-04-06 21:09:13 +02:00
Eugene Sandulenko 7d81e1c14f GRAPHICS: MACGUI: Implemented addWidget() to BaseMacWindow class 2020-02-25 18:23:00 +01:00
Eugene Sandulenko d9f6a0cf4d GRAPHICS: MACGUI: Further work on MacEditableText 2020-01-03 00:50:24 +01:00
Eugene Sandulenko 2d9b3b0b2d GRAPHICS: MACGUI: Initial code for MacEditableText 2020-01-02 18:23:33 +01:00