/ CoreGraphics / CGSSurface.m
CGSSurface.m
1 /* 2 This file is part of Darling. 3 4 Copyright (C) 2020 Lubos Dolezel 5 6 Darling is free software: you can redistribute it and/or modify 7 it under the terms of the GNU General Public License as published by 8 the Free Software Foundation, either version 3 of the License, or 9 (at your option) any later version. 10 11 Darling is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 GNU General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with Darling. If not, see <http://www.gnu.org/licenses/>. 18 */ 19 #import <CoreGraphics/CGSSurface.h> 20 #import <CoreGraphics/CGSWindow.h> 21 #import <Foundation/NSRaise.h> 22 23 @implementation CGSSurface 24 @synthesize surfaceId = _surfaceId; 25 26 - (instancetype) initWithWindow: (CGSWindow *) window 27 surfaceID: (CGSSurfaceID) surfaceID 28 { 29 _window = window; 30 _surfaceId = surfaceID; 31 return self; 32 } 33 34 - (CGError) setBounds: (CGRect) rect { 35 NSInvalidAbstractInvocation(); 36 } 37 38 - (void *) nativeWindow { 39 NSInvalidAbstractInvocation(); 40 } 41 42 - (void) invalidate { 43 [_window _surfaceInvalidated: _surfaceId]; 44 } 45 @end