xref: /haiku/headers/private/app/ServerProtocolStructs.h (revision 5e96d7d537fbec23bad4ae9b4c8e7b02e769f0c6)
1 /*
2  * Copyright 2009, Haiku. All rights reserved.
3  * Distributed under the terms of the MIT License.
4  *
5  * Authors:
6  *		Stephan Aßmus, <superstippi@gmx.de>
7  */
8 #ifndef APP_SERVER_PROTOCOL_STRUCTS_H
9 #define APP_SERVER_PROTOCOL_STRUCTS_H
10 
11 
12 #include <AffineTransform.h>
13 #include <Rect.h>
14 
15 
16 struct ViewSetStateInfo {
17 	BPoint						penLocation;
18 	float						penSize;
19 	rgb_color					highColor;
20 	rgb_color					lowColor;
21 	::pattern					pattern;
22 	drawing_mode				drawingMode;
23 	BPoint						origin;
24 	float						scale;
25 	BAffineTransform			transform;
26 	join_mode					lineJoin;
27 	cap_mode					lineCap;
28 	float						miterLimit;
29 	source_alpha				alphaSourceMode;
30 	alpha_function				alphaFunctionMode;
31 	bool						fontAntialiasing;
32 };
33 
34 
35 struct ViewGetStateInfo {
36 	int32						fontID;
37 	float						fontSize;
38 	float						fontShear;
39 	float						fontRotation;
40 	float						fontFalseBoldWidth;
41 	int8						fontSpacing;
42 	int8						fontEncoding;
43 	int16						fontFace;
44 	int32						fontFlags;
45 
46 	ViewSetStateInfo			viewStateInfo;
47 };
48 
49 
50 struct ViewDragImageInfo {
51 	int32						bitmapToken;
52 	int32						dragMode;
53 	BPoint						offset;
54 	int32						bufferSize;
55 };
56 
57 
58 struct ViewSetViewCursorInfo {
59 	int32						cursorToken;
60 	int32						viewToken;
61 	bool						sync;
62 };
63 
64 
65 struct ViewBeginRectTrackingInfo {
66 	BRect						rect;
67 	uint32						style;
68 };
69 
70 
71 struct ViewSetLineModeInfo {
72 	join_mode					lineJoin;
73 	cap_mode					lineCap;
74 	float						miterLimit;
75 };
76 
77 
78 struct ViewBlendingModeInfo {
79 	source_alpha				sourceAlpha;
80 	alpha_function				alphaFunction;
81 };
82 
83 
84 struct ViewDrawBitmapInfo {
85 	int32						bitmapToken;
86 	uint32						options;
87 	BRect						viewRect;
88 	BRect						bitmapRect;
89 };
90 
91 
92 struct ViewDrawStringInfo {
93 	int32						stringLength;
94 	BPoint						location;
95 	escapement_delta			delta;
96 };
97 
98 
99 struct ViewStrokeLineInfo {
100 	BPoint						startPoint;
101 	BPoint						endPoint;
102 };
103 
104 
105 struct ViewLineArrayInfo {
106 	BPoint						startPoint;
107 	BPoint						endPoint;
108 	rgb_color					color;
109 };
110 
111 
112 #endif	// APP_SERVER_PROTOCOL_STRUCTS_H
113