Commit graph

9648 commits

Author SHA1 Message Date
Gregory John Casamento
e55babb04e Add code to handle Title property on NSTableColumn, add code to NSTableView to set the table view to _viewBased if it responds to tableView:viewForTableColumn:row: 2024-04-22 09:00:53 -04:00
Gregory John Casamento
8895bd0335 Code cleanup 2024-04-22 09:00:53 -04:00
Gregory John Casamento
6ca3708722 Code cleanup, remove duplicates, reorganize some methods so that it is the same as in the header 2024-04-22 09:00:53 -04:00
Gregory John Casamento
f787edfcfb Consolidate and refactor the cellview methods in the theme drawing code, so that there is no repeated code 2024-04-22 09:00:53 -04:00
Gregory John Casamento
8e2df65156 Add GSInternal.h 2024-04-22 09:00:53 -04:00
Gregory John Casamento
110b650a95 Add new class to hold deferred XIB data 2024-04-22 09:00:53 -04:00
Gregory John Casamento
fbb94af67b Add methods to register views 2024-04-22 09:00:53 -04:00
Gregory John Casamento
726485fdc9 Add code to encode/initWithCoder to keys 2024-04-22 09:00:53 -04:00
Gregory John Casamento
d9d4f63c24 Whitespace cleanup 2024-04-22 09:00:53 -04:00
Gregory John Casamento
e51881514c Add headers missing from AppKit.h 2024-04-22 09:00:53 -04:00
Gregory John Casamento
8d9cb6f933 Add logic to get the column / row for a given view 2024-04-22 09:00:53 -04:00
Gregory John Casamento
182427bf97 Add code to support item identifier to NSTableView 2024-04-22 09:00:53 -04:00
Gregory John Casamento
53e040a6bb Changes to support view based NSOutlineView, untested 2024-04-22 09:00:53 -04:00
Gregory John Casamento
f71ee8641b Initial changes for NSOutlineView view-based support 2024-04-22 09:00:53 -04:00
Gregory John Casamento
d99f82896b Remove uneeded checks for _viewBased 2024-04-22 09:00:53 -04:00
Gregory John Casamento
db773ae9ec Don't add the view again if it's one that has already been added, this causes the application to poll unneccessarily 2024-04-22 09:00:53 -04:00
Gregory John Casamento
e19038665b Use an NSMapTable to store which views have been displayed 2024-04-22 09:00:53 -04:00
Gregory John Casamento
a73c3cc876 Add code to track if a view has been rendered, fix issue with duplication of the view, I am not sure if this method of tracking that the view has been rendered is correct, but it works for now 2024-04-22 09:00:53 -04:00
Gregory John Casamento
20f29b2d1d Add code to cause delegate methods which are not used for viewBased tables to be called in viewBased mode, add code to instantiate the prototypeCellView when adding it to the tableView 2024-04-22 09:00:53 -04:00
Gregory John Casamento
5294e2a126 Add private method to return the prototypeCellViews array 2024-04-22 09:00:53 -04:00
Gregory John Casamento
e4c7bb540c Add prototype cell view support, remove code that forces prototypeCellView to be NSView 2024-04-22 09:00:53 -04:00
Gregory John Casamento
b06b23c97c Add code to instnatiate the NSTableCellView if the delegate method does not exist 2024-04-22 09:00:53 -04:00
Gregory John Casamento
74487bcfa5 Remove comment 2024-04-22 09:00:53 -04:00
Gregory John Casamento
d11c7e3dbc Remove unused variables 2024-04-22 09:00:53 -04:00
Gregory John Casamento
a9653a71a2 Draw the view in the confines of the cell frame 2024-04-22 09:00:53 -04:00
Gregory John Casamento
ebdbe0930f Add methods to theme and to NSTableView to get the view from the delegate, this is a partial commit to save my place here... will follow up shortly 2024-04-22 09:00:53 -04:00
Gregory John Casamento
0be95eba5b Update gorm version and add new code to store/retrieve NSViewBased key 2024-04-22 09:00:53 -04:00
Gregory John Casamento
e322757c5f Add NSNibDeclarations, declare image and text views as outlets 2024-04-22 09:00:53 -04:00
Gregory John Casamento
fa6889234a Add NSTableCellView class header and simple implementation 2024-04-22 09:00:53 -04:00
Gregory John Casamento
c9539af267 Add new classes 2024-04-22 09:00:53 -04:00
Gregory John Casamento
0276e307cc Fix compile error, add new class 2024-04-22 09:00:53 -04:00
Gregory John Casamento
20a08a894f Minor updates 2024-04-22 09:00:53 -04:00
Gregory John Casamento
68ce44ee19 Initial skeleton for NSTableCellView 2024-04-22 09:00:53 -04:00
Gregory John Casamento
1b467763bc Rebased to master 2024-04-22 09:00:53 -04:00
Gregory John Casamento
cad79f2e0e Add non-keyed coding 2024-04-22 09:00:53 -04:00
Gregory John Casamento
4856bec185 Add NSNibDeclarations, declare image and text views as outlets 2024-04-22 09:00:53 -04:00
Gregory John Casamento
b895ffe953 Add NSTableCellView class header and simple implementation 2024-04-22 09:00:53 -04:00
Gregory John Casamento
4800a950ef Add new classes 2024-04-22 09:00:53 -04:00
Gregory John Casamento
3acf49a33d Fix compile error, add new class 2024-04-22 09:00:53 -04:00
Gregory John Casamento
a7a7a1e691 Minor updates 2024-04-22 09:00:53 -04:00
Gregory John Casamento
94eecbabc0 Add table row action class 2024-04-22 09:00:53 -04:00
Gregory John Casamento
d939fdfd1e Add objectValue accessors 2024-04-22 09:00:53 -04:00
Gregory John Casamento
e270ab39aa Add NSNibDeclarations as an include 2024-04-22 09:00:53 -04:00
Gregory John Casamento
edb517ceca Initial skeleton for NSTableCellView 2024-04-22 09:00:53 -04:00
Gregory John Casamento
968e78ab34 Add initial versions of NSTableCellView.[hm] and NSTableRowView.[hm] 2024-04-22 09:00:53 -04:00
williameveretteggplant
d1562a37cd
Left shift key equivalent modifier mask in xib unarchiver (#259)
* 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
2024-04-19 18:58:00 +02:00
williameveretteggplant
192c121a9d
Set editable property in NSCell default to false (#257)
Unarchiving a NSCell element from a xib will have the editable property set to false unless explicitly set to true.
2024-04-09 17:26:30 +02:00
williameveretteggplant
7b8c02182e
Fix NSImageView intercepting mouse events when not editable (#256)
* Update NSImageView.m

* Refactor editable condition

* Remove empty line, left over from previous changes

---------

Co-authored-by: Fred Kiefer <fredkiefer@gmx.de>
2024-04-08 20:54:47 +02:00
Frederik Carlier
892ed4877e
NSBox: (re-)implement isOpaque (#254)
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)
2024-04-04 22:23:14 +02:00
Frederik Carlier
95f302442c
NSBox: decode NSBorderColor2 and NSFillColor2 (#255) 2024-04-04 20:34:42 +02:00