Commit graph

409 commits

Author SHA1 Message Date
Riccardo Mottola
5917f0519b always reset _needsLayout in -layout and not only
-layoutSubtreeIfNeeded via layoutViewAndSubvies.

Apple states for -(void) layout:

Override this method if your custom view needs to perform custom layout not expressible using the constraint-based layout system. In this case you are responsible for setting needsLayout to true when something that impacts your custom layout changes.

Which seems to suggest that layout does the reset of needsLayout, since
setting it is up to programmer.
2025-03-04 23:56:39 +01:00
Gregory John Casamento
9da7bd4502 Add implementation of NSUserInterfaceItemIdentifier to NSView 2024-04-22 09:00:53 -04:00
ethanc8
9202dfeece Implement -appearannce, -setAppearance: and -effectiveApperance for NSView 2024-02-10 12:25:59 -06:00
ethanc8
61c9699021 Re-add layout code that was mistakenly removed 2024-02-05 14:43:31 -06:00
ethanc8
2303052e50 Add NSAppearanceCustomization to NSApplication and NSView 2023-12-31 20:03:21 -06:00
Gregory John Casamento
345b1b4065 Add call to setter as suggested by @fredkiefer 2023-12-27 12:37:33 -05:00
Gregory John Casamento
7be6c722e4 Add RETAIN, per review from @fredkiefer 2023-12-27 12:20:54 -05:00
Gregory John Casamento
874515c5b7 Add RETAIN, per review from @fredkiefer 2023-12-27 12:19:48 -05:00
Gregory John Casamento
cb4987ff47 Minor cleanup in NSView, add code to get NSShadowHoriz, NSShadowVert 2023-12-26 11:43:33 -05:00
Gregory John Casamento
468030a982 Add correct key for the NSShadow object which is NSViewShadow 2023-12-24 16:48:41 -05:00
Gregory John Casamento
70019a695a Add decoding logic for shadow to NSView 2023-12-24 16:16:52 -05:00
Gregory John Casamento
9cb00ba871 Add ivar for shadow 2023-12-24 13:59:12 -05:00
Gregory John Casamento
33d66e0ddc Update NSView with setShadow:/shadow methods 2023-12-24 13:28:08 -05:00
Gregory John Casamento
4b3014922c Move awakeFromNib implementation to NSObject instead of NSView, as discussed in the documentation 2023-11-24 21:32:15 -05:00
rfm
fb358c3b03 Fix missing semicolon 2023-11-14 21:36:12 +00:00
Riccardo Mottola
aa36664153 fix various autogsdoc warnings and issues 2023-11-14 01:29:01 +01:00
Gregory Casamento
629d065b91
Add dummy awakeFromNib dummy method (#195) 2023-08-31 23:41:46 +02:00
Benjamin Johnson
2e98bd5366 Implement layout constraint conversion to internal solver constraints 2023-05-28 18:33:44 +10:00
Benjamin Johnson
2be7334ce2
Implement part of GSAutoLayoutEngine dependency management logic (#178)
* Implement part of GSAutoLayoutEngine dependency management logic

* Fix formatting of GSAutoLayoutEngine, GSCSFloatComparator and GSCSSolution

* Address PR feedback

* Address PR feedback

* Replace assignment with ASSIGN macro and fix makefile

* Add back dealloc in GSAutoLayoutEngine.m and GSCSSolution.m
2023-04-19 09:06:53 +02:00
Benjamin Johnson
f6f1a7ef82 Remove unnecessary check for _layoutEngine 2023-02-27 21:39:14 +00:00
Benjamin Johnson
2a1c0f88b3 Move layoutEngine ownership to NSWindow 2023-02-27 19:56:37 +11:00
Benjamin Johnson
93769f3a52 Implement bootstrapping auto layout 2023-02-27 17:46:39 +11:00
Benjamin Johnson
75fcf49b62 Refactor layout core methods implementation to use ivars 2023-02-20 18:09:23 +11:00
Benjamin Johnson
571ad7a613 Implement supporting core layout methods on NSView 2023-02-19 15:21:13 +11:00
Gregory John Casamento
8fa489282b Fix compilation error. Added cast to (id) for nil when working with GSIArrayItem and GSIArray. This issue wasn't caught by CI since gui was not recompiled after base was altered. 2021-11-15 08:59:36 -05:00
Gregory John Casamento
7734331930 Move NSView private method to NSView.m and their declarations into NSViewPrivate.h 2020-07-25 09:28:01 -04:00
fredkiefer
9d8dc3ba55 * Source/NSView.m (-beginPageInRect:atPlacement): Remove check for
empty rect. This will now use the placement translation all the time.
2018-07-27 10:09:44 +02:00
fredkiefer
85ba90244b * Source/NSView.m (-_rebuildCoordinates): Use simple path only
when both window and superview are nil. Set the visibleRect in
this case to bounds.
2018-01-07 16:47:36 +01:00
Daniel Ferreira
758d524547 NS{Cell,View}: implement stubs for layout direction handling
Implement stubs for the layout direction properties in NSCell and
NSView. Currently, they default to left-to-right layouting.
2017-07-25 22:33:12 +01:00
Daniel Ferreira
bb6805742d NSView: define layer-related properties
Define layer-related properties in NSView for compatibility purposes,
and keep their getters and setters as stubs, since they will not have
any effect before NSView-CALayer integration is implemented.
2017-07-25 22:33:12 +01:00
Gregory John Casamento
564ea8d330 Revert change to NSView.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40017 72102866-910b-0410-8b05-ffd578937521
2016-07-19 14:48:12 +00:00
Riccardo Mottola
c990c0152e fix again\!
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40012 72102866-910b-0410-8b05-ffd578937521
2016-07-19 10:43:12 +00:00
Gregory John Casamento
6541c05a04 Move changes to new branch.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40011 72102866-910b-0410-8b05-ffd578937521
2016-07-18 15:59:44 +00:00
Gregory John Casamento
cd216f8e32 Reverted previous changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40009 72102866-910b-0410-8b05-ffd578937521
2016-07-18 15:47:56 +00:00
Riccardo Mottola
dae84d53ea Use CGFloat as original structures do and double for scale instead of CGFloat -> double -> float
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40006 72102866-910b-0410-8b05-ffd578937521
2016-07-18 09:01:51 +00:00
Riccardo Mottola
d0a064e93c use classic syntax
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40005 72102866-910b-0410-8b05-ffd578937521
2016-07-18 08:56:15 +00:00
Gregory John Casamento
15763766e5 Minor change. Properly initialize float xoff
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40004 72102866-910b-0410-8b05-ffd578937521
2016-07-16 22:47:35 +00:00
Gregory John Casamento
d391a290ff Remove 'margin'
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40003 72102866-910b-0410-8b05-ffd578937521
2016-07-16 22:22:32 +00:00
Gregory John Casamento
dd398ac140 2016-07-16 18:12-EDT Gregory John Casamento <greg.casamento@gmail.com>
* Source/NSPrintInfo.m: Add a comment so it's clear what
	this method is meant for.
	* Source/NSView.m: In beginPage🏷️bBox:fonts: align top level
	view with current page dimensions.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40002 72102866-910b-0410-8b05-ffd578937521
2016-07-16 22:18:43 +00:00
Richard Frith-MacDonald
08910fb913 lintian spelling correctes provided by Eric Heintzmann
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39816 72102866-910b-0410-8b05-ffd578937521
2016-05-28 09:49:15 +00:00
Riccardo Mottola
dbcaec319a Add more (dummy) layer property stuff
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@38940 72102866-910b-0410-8b05-ffd578937521
2015-08-28 20:26:30 +00:00
Fred Kiefer
59fa666263 * Tests/gui/NSView/NSView_autoresize_and_rounding.m: Add tests
for centerScanRect: with flipped view.
        * Source/NSView.m (-centerScanRect:): Change to get the failed
        tests to pass.
        * Source/GSThemeTools.m (-drawRoundBezel:withColor:): Make round
        bezel look a bit nicer.
        * Source/NSButtonCell.m (-drawImage:withFrame:inView:): Use
        centerScanRect: instead of similar code.
        * Source/NSCell.m: Use imageRectForBounds: and
        titleRectForBounds: in drawInteriorWithFrame:inView:.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@38929 72102866-910b-0410-8b05-ffd578937521
2015-08-25 21:33:04 +00:00
Riccardo Mottola
5568c3f60e add alphaValue property... although we don't use it anyway it helps to compile stuff
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@38840 72102866-910b-0410-8b05-ffd578937521
2015-07-26 21:04:57 +00:00
Sebastian Reitenbach
e097f5d773 Remove some extra parameters from debug outputs
OK Fred Kiefer



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@38567 72102866-910b-0410-8b05-ffd578937521
2015-05-26 17:08:41 +00:00
Richard Frith-MacDonald
461dcd25c9 fixes for bug reported by marcus
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36834 72102866-910b-0410-8b05-ffd578937521
2013-07-04 07:54:52 +00:00
Fred Kiefer
b1fc7cb066 Correct coding/decoding after type changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36160 72102866-910b-0410-8b05-ffd578937521
2013-02-17 16:53:48 +00:00
Quentin Mathe
37311e0e04 Fixed -encodeWithCoder: in NSView to encode the superview conditionally as Cocoa
does (Apple discusses  superview encoding as a use case for conditional encoding 
in the Archiving related documentation).

Note: A view can now be archived (or copied) without having to remove the view 
from its hierarchy before archiving it.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36065 72102866-910b-0410-8b05-ffd578937521
2013-02-06 17:28:52 +00:00
Fred Kiefer
d870275b7f * Headers/AppKit/NSCell.h
* Headers/AppKit/NSColor.h
        * Headers/AppKit/NSGraphics.h
        * Headers/AppKit/NSView.h
        * Source/Functions.m
        * Source/GSThemeDrawing.m
        * Source/GSTitleView.m
        * Source/NSApplication.m
        * Source/NSCell.m
        * Source/NSView.m: More NSInteger/NSUInteger/CGFloat cleanup



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36035 72102866-910b-0410-8b05-ffd578937521
2013-01-29 21:57:41 +00:00
Fred Kiefer
30da16dafc * Source/NSView.m (-_rebuildCoordinates): Check if the flipped
state of the view has changed. Call this method all the times
        instead of checking _coordinates_valid.
        This change allows views to dynamically change their flipped
state.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@35928 72102866-910b-0410-8b05-ffd578937521
2012-12-31 18:55:36 +00:00
Wolfgang Lux
be389d2459 Remove incorrect transformation of tracking rectangle coordinates
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@35663 72102866-910b-0410-8b05-ffd578937521
2012-10-10 08:13:56 +00:00