macView.h

Engine/source/windowManager/mac/macView.h

More...

Classes:

class

GGMacView handles displaying content and responding to user input.

Detailed Description

 1
 2//-----------------------------------------------------------------------------
 3// Copyright (c) 2012 GarageGames, LLC
 4//
 5// Permission is hereby granted, free of charge, to any person obtaining a copy
 6// of this software and associated documentation files (the "Software"), to
 7// deal in the Software without restriction, including without limitation the
 8// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 9// sell copies of the Software, and to permit persons to whom the Software is
10// furnished to do so, subject to the following conditions:
11//
12// The above copyright notice and this permission notice shall be included in
13// all copies or substantial portions of the Software.
14//
15// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
21// IN THE SOFTWARE.
22//-----------------------------------------------------------------------------
23
24#ifndef _MACVIEW_H_
25#define _MACVIEW_H_
26
27#import <Cocoa/Cocoa.h>
28#include "windowManager/mac/macWindow.h"
29
30/// GGMacView handles displaying content and responding to user input.
31@interface GGMacView : NSOpenGLView
32{
33   MacWindow* mTorqueWindow;
34   U32 mLastMods;
35   bool mHandledAsCharEvent;
36}
37- (void)setTorqueWindow:(MacWindow*)theWindow;
38- (MacWindow*)torqueWindow;
39
40/// @name Inherited Mouse Input methods
41/// @{
42- (void)mouseDown:(NSEvent *)theEvent;
43- (void)rightMouseDown:(NSEvent *)theEvent;
44- (void)mouseDragged:(NSEvent *)theEvent;
45- (void)rightMouseDragged:(NSEvent *)theEvent;
46- (void)mouseUp:(NSEvent *)theEvent;
47- (void)rightMouseUp:(NSEvent *)theEvent;
48- (void)mouseMoved:(NSEvent *)theEvent;
49- (void)scrollWheel:(NSEvent *)theEvent;
50/// @}
51
52/// @name Inherited Keyboard Input methods
53/// @{
54- (void)keyDown:(NSEvent *)theEvent;
55- (void)keyUp:(NSEvent *)theEvent;
56/// @}
57
58/// @name Keyboard Input Common Code
59/// @{
60- (void)rawKeyUpDown:(NSEvent *)theEvent keyDown:(BOOL)isKeyDown;
61/// @}
62
63/// @name Mouse Input Common Code
64/// @{
65- (void)mouseUpDown:(NSEvent *)theEvent mouseDown:(BOOL)isMouseDown;
66- (void)mouseMotion:(NSEvent *)theEvent;
67/// @}
68
69- (BOOL)acceptsFirstResponder;
70- (BOOL)becomeFirstResponder;
71- (BOOL)resignFirstResponder;
72
73
74@end
75
76#endif
77