cocoaTouch/SDL_uikitview.h
author koda
Fri, 08 Jan 2010 03:38:01 +0000
changeset 2687 28b8330b8af1
parent 2683 bad2a30d5d6c
permissions -rw-r--r--
add stub files for other views and prevent useless crashes also changed the tabBar icons
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2678
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
     1
/*
2683
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
     2
 SDL - Simple DirectMedia Layer
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
     3
 Copyright (C) 1997-2009 Sam Lantinga
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
     4
 
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
     5
 This library is free software; you can redistribute it and/or
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
     6
 modify it under the terms of the GNU Lesser General Public
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
     7
 License as published by the Free Software Foundation; either
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
     8
 version 2.1 of the License, or (at your option) any later version.
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
     9
 
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    10
 This library is distributed in the hope that it will be useful,
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    11
 but WITHOUT ANY WARRANTY; without even the implied warranty of
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    12
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    13
 Lesser General Public License for more details.
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    14
 
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    15
 You should have received a copy of the GNU Lesser General Public
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    16
 License along with this library; if not, write to the Free Software
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    17
 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    18
 
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    19
 Sam Lantinga, mods for Hedgewars by Vittorio Giovara
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    20
 slouken@libsdl.org, vittorio.giovara@gmail.com
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    21
 */
2678
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    22
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    23
#import <UIKit/UIKit.h>
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    24
#include "SDL_stdinc.h"
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    25
#include "SDL_mouse.h"
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    26
#include "SDL_mouse_c.h"
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    27
#include "SDL_events.h"
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    28
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    29
#import "CGPointUtils.h"
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    30
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    31
#if SDL_IPHONE_MULTIPLE_MICE
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    32
#define MAX_SIMULTANEOUS_TOUCHES 5
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    33
#else
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    34
#define MAX_SIMULTANEOUS_TOUCHES 1
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    35
#endif
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    36
2682
d4c395f25db2 additional modifications for touch input
koda
parents: 2678
diff changeset
    37
// constants for telling which input has been received
d4c395f25db2 additional modifications for touch input
koda
parents: 2678
diff changeset
    38
#define kMinimumPinchDelta		100
2683
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    39
#define kMinimumGestureLength	20
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    40
#define kMaximumVariance		4
2682
d4c395f25db2 additional modifications for touch input
koda
parents: 2678
diff changeset
    41
2678
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    42
/* *INDENT-OFF* */
2683
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    43
//#if SDL_IPHONE_KEYBOARD
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    44
//@interface SDL_uikitview : UIView<UITextFieldDelegate> {
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    45
//#else
2678
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    46
@interface SDL_uikitview : UIView {
2683
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    47
//#endif
2678
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    48
	SDL_Mouse mice[MAX_SIMULTANEOUS_TOUCHES];
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    49
	CGFloat initialDistance;
2682
d4c395f25db2 additional modifications for touch input
koda
parents: 2678
diff changeset
    50
	CGPoint gestureStartPoint;
2683
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    51
2678
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    52
#if SDL_IPHONE_KEYBOARD
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    53
	UITextField *textField;
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    54
	BOOL keyboardVisible;
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    55
#endif
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    56
}
2682
d4c395f25db2 additional modifications for touch input
koda
parents: 2678
diff changeset
    57
2683
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    58
-(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    59
-(void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    60
-(void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event;
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    61
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    62
// see initWithFrame for why "+"
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    63
+(void) attackButtonPressed;
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    64
+(void) attackButtonReleased;
2678
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    65
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    66
@property CGFloat initialDistance;
2682
d4c395f25db2 additional modifications for touch input
koda
parents: 2678
diff changeset
    67
@property CGPoint gestureStartPoint;
2678
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    68
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    69
#if SDL_IPHONE_KEYBOARD
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    70
- (void)showKeyboard;
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    71
- (void)hideKeyboard;
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    72
- (void)initializeKeyboard;
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    73
@property (readonly) BOOL keyboardVisible;
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    74
#endif 
2683
bad2a30d5d6c touch input: reset zoom, attack button
koda
parents: 2682
diff changeset
    75
2678
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    76
@end
334016e8d895 injection of custom code in SDL for iPhone in order to implement our frontend
koda
parents:
diff changeset
    77
/* *INDENT-ON* */