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 <Rect.h> 13 14 15 struct ViewSetStateInfo { 16 BPoint penLocation; 17 float penSize; 18 rgb_color highColor; 19 rgb_color lowColor; 20 ::pattern pattern; 21 drawing_mode drawingMode; 22 BPoint origin; 23 float scale; 24 join_mode lineJoin; 25 cap_mode lineCap; 26 float miterLimit; 27 source_alpha alphaSourceMode; 28 alpha_function alphaFunctionMode; 29 bool fontAntialiasing; 30 }; 31 32 33 struct ViewGetStateInfo { 34 int32 fontID; 35 float fontSize; 36 float fontShear; 37 float fontRotation; 38 float fontFalseBoldWidth; 39 int8 fontSpacing; 40 int8 fontEncoding; 41 int16 fontFace; 42 int32 fontFlags; 43 44 ViewSetStateInfo viewStateInfo; 45 }; 46 47 48 struct ViewDragImageInfo { 49 int32 bitmapToken; 50 int32 dragMode; 51 BPoint offset; 52 int32 bufferSize; 53 }; 54 55 56 struct ViewSetViewCursorInfo { 57 int32 cursorToken; 58 int32 viewToken; 59 bool sync; 60 }; 61 62 63 struct ViewBeginRectTrackingInfo { 64 BRect rect; 65 uint32 style; 66 }; 67 68 69 struct ViewSetLineModeInfo { 70 join_mode lineJoin; 71 cap_mode lineCap; 72 float miterLimit; 73 }; 74 75 76 struct ViewBlendingModeInfo { 77 source_alpha sourceAlpha; 78 alpha_function alphaFunction; 79 }; 80 81 82 struct ViewDrawBitmapInfo { 83 int32 bitmapToken; 84 uint32 options; 85 BRect viewRect; 86 BRect bitmapRect; 87 }; 88 89 90 struct ViewDrawStringInfo { 91 int32 stringLength; 92 BPoint location; 93 escapement_delta delta; 94 }; 95 96 97 struct ViewStrokeLineInfo { 98 BPoint startPoint; 99 BPoint endPoint; 100 }; 101 102 103 struct ViewLineArrayInfo { 104 BPoint startPoint; 105 BPoint endPoint; 106 rgb_color color; 107 }; 108 109 110 #endif // APP_SERVER_PROTOCOL_STRUCTS_H 111