/ 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