mirror of
https://github.com/SFML/SFML.git
synced 2024-11-28 22:31:09 +08:00
Implemented WindowImplCocoa::GetCursorPosition()
This commit is contained in:
parent
99341c31db
commit
a609a7114e
@ -100,4 +100,10 @@ namespace sf {
|
|||||||
-(void)enableKeyRepeat;
|
-(void)enableKeyRepeat;
|
||||||
-(void)disableKeyRepeat;
|
-(void)disableKeyRepeat;
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////
|
||||||
|
/// Compute the position of the cursor.
|
||||||
|
///
|
||||||
|
////////////////////////////////////////////////////////////
|
||||||
|
-(NSPoint)cursorPositionFromEvent:(NSEvent *)eventOrNil;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
@ -103,12 +103,6 @@ sf::Keyboard::Key NonLocalizedKeys(unsigned short keycode);
|
|||||||
////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
-(void)initModifiersState;
|
-(void)initModifiersState;
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////
|
|
||||||
/// Compute the position of the cursor.
|
|
||||||
///
|
|
||||||
////////////////////////////////////////////////////////////
|
|
||||||
-(NSPoint)cursorPositionFromEvent:(NSEvent *)event;
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
/// Converte the NSEvent mouse button type to SFML type.
|
/// Converte the NSEvent mouse button type to SFML type.
|
||||||
///
|
///
|
||||||
@ -904,9 +898,16 @@ sf::Keyboard::Key NonLocalizedKeys(unsigned short keycode);
|
|||||||
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////
|
||||||
-(NSPoint)cursorPositionFromEvent:(NSEvent *)event
|
-(NSPoint)cursorPositionFromEvent:(NSEvent *)eventOrNil
|
||||||
{
|
{
|
||||||
NSPoint loc = [self convertPoint:[event locationInWindow] fromView:nil];
|
NSPoint loc;
|
||||||
|
// If no event given then get current mouse pos.
|
||||||
|
if (eventOrNil == nil) {
|
||||||
|
NSPoint rawPos = [[self window] mouseLocationOutsideOfEventStream];
|
||||||
|
loc = [self convertPoint:rawPos fromView:nil];
|
||||||
|
} else {
|
||||||
|
loc = [self convertPoint:[eventOrNil locationInWindow] fromView:nil];
|
||||||
|
}
|
||||||
|
|
||||||
// Don't forget to change to SFML coord system.
|
// Don't forget to change to SFML coord system.
|
||||||
float h = [self frame].size.height;
|
float h = [self frame].size.height;
|
||||||
|
@ -195,6 +195,13 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////
|
||||||
|
-(NSPoint)cursorPosition
|
||||||
|
{
|
||||||
|
return [myOGLView cursorPositionFromEvent:nil];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////.
|
////////////////////////////////////////////////////////.
|
||||||
-(void)setWindowPositionToX:(unsigned int)x Y:(unsigned int)y
|
-(void)setWindowPositionToX:(unsigned int)x Y:(unsigned int)y
|
||||||
{
|
{
|
||||||
|
@ -287,6 +287,12 @@
|
|||||||
[myOGLView setCursorPositionToX:x Y:y];
|
[myOGLView setCursorPositionToX:x Y:y];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////
|
||||||
|
-(NSPoint)cursorPosition
|
||||||
|
{
|
||||||
|
return [myOGLView cursorPositionFromEvent:nil];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////.
|
////////////////////////////////////////////////////////.
|
||||||
-(void)setWindowPositionToX:(unsigned int)x Y:(unsigned int)y
|
-(void)setWindowPositionToX:(unsigned int)x Y:(unsigned int)y
|
||||||
|
@ -348,8 +348,8 @@ void WindowImplCocoa::SetCursorPosition(unsigned int x, unsigned int y)
|
|||||||
////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
Vector2i WindowImplCocoa::GetCursorPosition() const
|
Vector2i WindowImplCocoa::GetCursorPosition() const
|
||||||
{
|
{
|
||||||
// @to be implemented
|
NSPoint pos = [myDelegate cursorPosition];
|
||||||
return Vector2i();
|
return Vector2i(pos.x, pos.y);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -89,6 +89,12 @@ namespace sf {
|
|||||||
////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
-(void)setCursorPositionToX:(unsigned int)x Y:(unsigned int)y;
|
-(void)setCursorPositionToX:(unsigned int)x Y:(unsigned int)y;
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////
|
||||||
|
/// Get the mouse cursor position (SFML Coordinates).
|
||||||
|
///
|
||||||
|
////////////////////////////////////////////////////////////
|
||||||
|
-(NSPoint)cursorPosition;
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
/// Move the window (not the view if we handle not a window) (SFML Coordinates).
|
/// Move the window (not the view if we handle not a window) (SFML Coordinates).
|
||||||
///
|
///
|
||||||
|
Loading…
Reference in New Issue
Block a user