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 bool sync; 59 }; 60 61 62 struct ViewBeginRectTrackingInfo { 63 BRect rect; 64 uint32 style; 65 }; 66 67 68 struct ViewSetLineModeInfo { 69 join_mode lineJoin; 70 cap_mode lineCap; 71 float miterLimit; 72 }; 73 74 75 struct ViewBlendingModeInfo { 76 source_alpha sourceAlpha; 77 alpha_function alphaFunction; 78 }; 79 80 81 struct ViewDrawBitmapInfo { 82 int32 bitmapToken; 83 uint32 options; 84 BRect viewRect; 85 BRect bitmapRect; 86 }; 87 88 89 struct ViewDrawStringInfo { 90 int32 stringLength; 91 BPoint location; 92 escapement_delta delta; 93 }; 94 95 96 struct ViewStrokeLineInfo { 97 BPoint startPoint; 98 BPoint endPoint; 99 }; 100 101 102 struct ViewLineArrayInfo { 103 BPoint startPoint; 104 BPoint endPoint; 105 rgb_color color; 106 }; 107 108 109 #endif // APP_SERVER_PROTOCOL_STRUCTS_H 110