Sun, 09 Nov 2008 20:55:10 +0000
Added menu items to buddy list context menu to start voice and video sessions
After discussing the matter with Maiku, we decided to have two choises.
"Audio call" which will show up if audio sessions is possible with a buddy and
the other item is either "Audio/Video" or "Video" depending on if the buddy
supports both at the same time or not
|
11218
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
1 | #include "righteye10.h" |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
2 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
3 | typedef struct _point{ |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
4 | GLshort x; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
5 | GLshort y; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
6 | } Point; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
7 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
8 | typedef struct Packet{ |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
9 | Point mouthLeft; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
10 | Point mouthRight; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
11 | Point mouthTop; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
12 | Point mouthBottom; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
13 | Point eyeLeft; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
14 | Point eyeRight; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
15 | } Packet; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
16 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
17 | #define NUM_EYE_FRAMES 10 |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
18 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
19 | GLint rightEyes[NUM_EYE_FRAMES]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
20 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
21 | void CalculateMouthPoints(GLshort[][][] ctrlpoints, struct Packet* p) |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
22 | { |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
23 | GLshort points[4][3]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
24 | points[0][0]=p->mouthLeft.x; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
25 | points[0][1]=p->mouthLeft.y; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
26 | points[0][2]=front; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
27 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
28 | points[1][0]=p->mouthBottom.x; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
29 | points[1][1]=p->mouthTop.y; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
30 | points[1][2]=front; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
31 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
32 | points[2][0]=p->mouthRight.x; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
33 | points[2][1]=p->mouthRight.y; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
34 | points[2][2]=front; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
35 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
36 | points[3][0]=p->mouthTop.x; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
37 | points[3][1]=p->mouthTop.y; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
38 | points[3][2]=front; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
39 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
40 | ctrlpoints[0][0][0]=points[0][0]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
41 | ctrlpoints[0][0][1]=points[0][1]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
42 | ctrlpoints[0][0][2]=points[0][2]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
43 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
44 | ctrlpoints[0][1][0]=points[1][0]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
45 | ctrlpoints[0][1][1]=points[1][1]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
46 | ctrlpoints[0][1][2]=points[1][2]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
47 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
48 | ctrlpoints[0][2][0]=points[2][0]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
49 | ctrlpoints[0][2][1]=points[2][1]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
50 | ctrlpoints[0][2][2]=points[2][2]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
51 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
52 | ctrlpoints[1][0][0]=points[0][0]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
53 | ctrlpoints[1][0][1]=points[0][1]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
54 | ctrlpoints[1][0][2]=points[0][2]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
55 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
56 | ctrlpoints[1][1][0]=0; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
57 | ctrlpoints[1][1][1]=0; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
58 | ctrlpoints[1][1][2]=back; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
59 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
60 | ctrlpoints[1][2][0]=points[2][0]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
61 | ctrlpoints[1][2][1]=points[2][1]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
62 | ctrlpoints[1][2][2]=points[2][2]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
63 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
64 | ctrlpoints[2][0][0]=points[0][0]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
65 | ctrlpoints[2][0][1]=points[0][1]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
66 | ctrlpoints[2][0][2]=points[0][2]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
67 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
68 | ctrlpoints[2][1][0]=points[3][0]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
69 | ctrlpoints[2][1][1]=points[3][1]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
70 | ctrlpoints[2][1][2]=points[3][2]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
71 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
72 | ctrlpoints[2][2][0]=points[2][0]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
73 | ctrlpoints[2][2][1]=points[2][1]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
74 | ctrlpoints[2][2][2]=points[2][2]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
75 | } |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
76 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
77 | void drawMouth(struct Packet* p) |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
78 | { |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
79 | GLshort[4][3][3] ctrlpoints; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
80 | CalculateMouthPoints(ctrlpoints, p); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
81 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
82 | glMap2f(GL_MAP2_VERTEX_3, 0, 10, 3, 3, 0.0, 10.0, 9, 3, &ctrlpoints[0][0][0]); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
83 | glEnable(GL_MAP2_VERTEX_3); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
84 | glMapGrid2f(10, 0, 10, 10, 0, 10); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
85 | glEnable(GL_AUTO_NORMAL); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
86 | glEvalMesh2(GL_FILL, 0, 10, 0, 10); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
87 | } |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
88 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
89 | void initEyes(){ |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
90 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
91 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
92 | void drawEyes(struct Packet* p){ |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
93 | GLshort eye[3][3][3]; |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
94 | CalculateEyePoints(eye, p, LEFT); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
95 | glMap2f(GL_MAP2_VERTEX_3, 0, 10, 3, 3, 0.0, 10.0, 9, 3, &eyep[0][0][0]); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
96 | glMapGrid2f(10, 0, 10, 10, 0, 10); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
97 | glEvalMesh2(GL_FILL, 0, 10, 0, 10); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
98 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
99 | CalculateEyePoints(eye, p, RIGHT); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
100 | glMap2f(GL_MAP2_VERTEX_3, 0, 10, 3, 3, 0.0, 10.0, 9, 3, &eyep[0][0][0]); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
101 | glMapGrid2f(10, 0, 10, 10, 0, 10); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
102 | glEvalMesh2(GL_FILL, 0, 10, 0, 10); |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
103 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
104 | } |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
105 | |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
106 | void drawHead(struct Packet* p){ |
|
886e6862af56
[gaim-migrate @ 13350]
Charlie Stockman <chuckleberry@users.sourceforge.net>
parents:
diff
changeset
|
107 | } |