annotate src/video/uikit/SDL_uikitview.m @ 2359:b70b96e615d2 gsoc2008_iphone

These files are the OpenGL ES render driver. You should be able to use them on any platform that supports OpenGL ES -- not just iPhone. The driver is based off the OpenGL render driver. There are a few differences between OpenGL and OpenGL ES that present difficulties for this driver: - OpenGL ES does NOT support many pixel formats (for example, no GL_BGR). Also, when using texture functions format and internalFormat must be the same -- this means 32 bit packed formats like SDL_PIXELFORMAT_BGR888 cannot be automatically converted to GL_RGB (which is 24bpp). - OpenGL ES doesn't have GL_PACK_ROW_LENGTH, which means data must be reformatted before uploading changes to dirty rects. This change has been added. - OpenGL ES doesn't support paletted textures, though there is an extension. I'm looking into this. Some other notable differences: - OpenGL ES has an extension called GL_OES_draw_texture which allows for quicker 2D sprite-type drawing. I use this in GL_RenderCopy when it is available. The iPhone supports the extension, but the iPhone Simulator does not (presently). - No glBegin() / glEnd() and no GL_QUADS! I'm using glDrawArrays with GL_TRIANGLE_STRIP instead!
author Holmes Futrell <hfutrell@umail.ucsb.edu>
date Thu, 17 Jul 2008 23:31:42 +0000
parents 07acabba25d9
children e9a1eed243c9
rev   line source
2353
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
1 //
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
2 // SDL_uikitview.m
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
3 // iPodSDL
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
4 //
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
5 // Created by Holmes Futrell on 6/23/08.
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
6 // Copyright 2008 __MyCompanyName__. All rights reserved.
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
7 //
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
8
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
9 #import "SDL_uikitview.h"
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
10
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
11 @implementation SDL_uikitview
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
12
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
13 - (void)dealloc {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
14 [super dealloc];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
15 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
16
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
17 - (id)initWithFrame:(CGRect)frame {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
18
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
19 self = [super initWithFrame: frame];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
20
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
21 int i;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
22 for (i=0; i<MAX_SIMULTANEOUS_TOUCHES; i++) {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
23 mice[i].driverdata = NULL;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
24 SDL_AddMouse(&(mice[i]), i);
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
25 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
26 self.multipleTouchEnabled = YES;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
27
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
28 return self;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
29
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
30 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
31
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
32 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
33
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
34 NSEnumerator *enumerator = [touches objectEnumerator];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
35 UITouch *touch=(UITouch*)[enumerator nextObject];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
36
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
37 // associate touches with mice, so long as we have slots
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
38 int i;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
39 int found = 0;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
40 for(i=0; touch && i < MAX_SIMULTANEOUS_TOUCHES; i++) {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
41
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
42 // check if this mouse is already tracking a touch
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
43 if (mice[i].driverdata != NULL) {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
44 continue;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
45 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
46
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
47 found = 1;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
48
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
49 int oldMouse = SDL_SelectMouse(-1);
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
50 SDL_SelectMouse(i);
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
51 CGPoint locationInView = [touch locationInView: self];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
52 mice[i].driverdata = [touch retain];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
53 SDL_SendMouseMotion(i, 0, locationInView.x, locationInView.y);
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
54 SDL_SendMouseButton(i, SDL_PRESSED, SDL_BUTTON_LEFT);
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
55 SDL_GetRelativeMouseState(NULL, NULL);
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
56 touch = (UITouch*)[enumerator nextObject];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
57
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
58 SDL_SelectMouse(oldMouse);
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
59
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
60 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
61 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
62
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
63 - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
64
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
65 NSEnumerator *enumerator = [touches objectEnumerator];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
66 UITouch *touch=nil;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
67
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
68 while(touch = (UITouch *)[enumerator nextObject]) {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
69 int i, found = NO;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
70 for (i=0; i<MAX_SIMULTANEOUS_TOUCHES && !found; i++) {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
71 if (mice[i].driverdata == touch) {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
72 [(UITouch*)(mice[i].driverdata) release];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
73 mice[i].driverdata = NULL;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
74 SDL_SendMouseButton(i, SDL_RELEASED, SDL_BUTTON_LEFT);
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
75
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
76 found = YES;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
77 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
78 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
79 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
80 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
81
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
82 - (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
83 /*
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
84 this can happen if the user puts more than 5 touches on the screen
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
85 at once, or perhaps in other circumstances. Usually all active
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
86 touches are canceled.
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
87 */
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
88 [self touchesEnded: touches withEvent: event];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
89 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
90
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
91 - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
92
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
93 NSEnumerator *enumerator = [touches objectEnumerator];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
94 UITouch *touch=nil;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
95
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
96 while(touch = (UITouch *)[enumerator nextObject]) {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
97 int i, found = NO;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
98 for (i=0; i<MAX_SIMULTANEOUS_TOUCHES && !found; i++) {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
99 if (mice[i].driverdata == touch) {
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
100 CGPoint locationInView = [touch locationInView: self];
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
101 SDL_SendMouseMotion(i, 0, locationInView.x, locationInView.y);
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
102 found = YES;
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
103 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
104 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
105 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
106 }
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
107
07acabba25d9 SDL_uikitview is just a generic view class which SDL_uikitopenglview inherits from. The functionality found in this class relates to (right now) mouse/touch input support. The reason for putting it here is that if someone wanted to write a render driver for iPhone based around CoreGraphics rather than OpenGL ES, they could make their Core Graphics view inherit from this class as well.
Holmes Futrell <hfutrell@umail.ucsb.edu>
parents:
diff changeset
108 @end