* Left shift key equivalent modifier mask in xib unarchiver
This is necessary to offset the 8 bit right shift that occurs in the initWithCoder: method in NSButtonCell
* Shift modifier mask in xib unarchiver
This (re-)implements logic where a box is marked
as opaque if it is a custom box which is not
transparent, but moves the logic to `GSTheme`,
allowing themes to override this loggic.
This fixes the rendering of custom boxes with a
custom fill color; the current implementation
would mark them as non-opaque and hence the fill
color would not be rendered.
- The original implementation (from 1999) always
returned `YES`
(53bcb50240)
- A more complete implementation was backported
from the Testplant branch in 2012
(e85b16bc05, by
@fredkiefer, upstream commit
36e77b95f7)
- More recently, the a return value of `NO` was
hardcoded
(02bc49e2d5, by
@ericwa)
The current implementation will attempt to assign a default value for selectionColor if backgroundColor is white. There's two issues with that:
1. `backgroundColor` is likely in the `NSNamedColorSpace`, whereas it is being compared to `[NSColor whiteColor]`, which is in the `NSCalibratedWhiteColorSpace`. That comparision will always return false.
2. Users will probably expect the selected item to be highlighted in a different color even if the background color is not white. For example, the consider a scenario where the default background color is white, and the alternate background color is grey. It makes sense to always highlight the selected row in blue. This aligns with the behavior when `highlightedTableRowBackgroundColor` is defined.
Add a function prototype for:
- `addImp` (`(void)addObject:(ObjectType)anObject`)
- `insImp` (`(void)insertObject:(ObjectType)anObject atIndex:(NSUInteger)index`)
- `remImp` (`(void)removeObject:(ObjectType)anObject`)
- cntImp (`count`)
Fixes warning: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
Cast to `uintptr_t` before casting to `enum` to suppress warning.
```
NSInterfaceStyle.m:134:15: warning: cast to smaller integer type 'NSInterfaceStyle' from 'void *' [-Wvoid-pointer-to-enum-cast]
style = (NSInterfaceStyle)NSMapGet(styleMap, key);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
NSInterfaceStyle.m:234:24: warning: cast to smaller integer type 'NSInterfaceStyle' from 'void *' [-Wvoid-pointer-to-enum-cast]
if (newStyle != ((NSInterfaceStyle)val))
^~~~~~~~~~~~~~~~~~~~~
```