diff --git a/headers/private/interface/ViewAux.h b/headers/private/interface/ViewAux.h new file mode 100644 index 0000000000..eb8e83d415 --- /dev/null +++ b/headers/private/interface/ViewAux.h @@ -0,0 +1,97 @@ +#ifndef _VIEWAUX_H_ +#define _VIEWAUX_H_ + +#include +#include +#include +#include +#include +#include +/* + URGENT: Move this structure in a private header. + This one is copied from Shape.cpp. +*/ +struct shape_data { + uint32 *opList; + int32 opCount; + int32 opSize; + int32 opBlockSize; + BPoint *ptList; + int32 ptCount; + int32 ptSize; + int32 ptBlockSize; +}; + +enum { + B_VIEW_FONT_BIT = 0x00000001, + B_VIEW_COLORS_BIT = 0x00000002, + B_VIEW_DRAW_MODE_BIT = 0x00000004, + B_VIEW_CLIP_REGION_BIT = 0x00000008, + B_VIEW_LINE_MODES_BIT = 0x00000010, + B_VIEW_BLENDING_BIT = 0x00000020, + B_VIEW_SCALE_BIT = 0x00000040, + B_VIEW_FONT_ALIASING_BIT = 0x00000080, + B_VIEW_COORD_BIT = 0x00000100, + B_VIEW_ORIGIN_BIT = 0x00000200, + B_VIEW_PEN_SIZE_BIT = 0x00000400, + B_VIEW_PEN_LOC_BIT = 0x00000800, + + // used for archiving + B_VIEW_RESIZE_BIT = 0x00001000, + B_VIEW_FLAGS_BIT = 0x00002000, + B_VIEW_EVMASK_BIT = 0x00004000 +}; + +struct _view_attr_{ + BFont font; + uint16 fontFlags; + + BPoint penPosition; + float penSize; + + rgb_color highColor; + rgb_color lowColor; + rgb_color viewColor; + + pattern patt; + + drawing_mode drawingMode; + // clipping region for our view + BRegion clippingRegion; + // local coordinate system + BPoint coordSysOrigin; + // line modes + join_mode lineJoin; + cap_mode lineCap; + float miterLimit; + // alpha blending + source_alpha alphaSrcMode; + alpha_function alphaFncMode; + // scale + float scale; + // font aliasing. Used for printing only! + bool fontAliasing; + // flags used for synchronization with app_server + uint16 flags; + // flags used for archiving + uint16 archivingFlags; +}; + +struct _array_hdr_{ + float startX; + float startY; + float endX; + float endY; + rgb_color color; +}; + +struct _array_data_{ + // the max number of points in the array + uint32 maxCount; + // the current number of points in the array + uint32 count; + // the array of points + _array_hdr_* array; +}; + +#endif