30#ifndef __ARM_2D_HELPER_LIST_H__
31#define __ARM_2D_HELPER_LIST_H__
35#include "__arm_2d_helper_common.h"
42# pragma clang diagnostic push
43# pragma clang diagnostic ignored "-Wgnu-zero-variadic-macro-arguments"
44# pragma clang diagnostic ignored "-Wunused-function"
45# pragma clang diagnostic ignored "-Wpadded"
51#ifdef __ARM_2D_HELPER_LIST_VIEW_IMPLEMENT__
52# undef __ARM_2D_HELPER_LIST_VIEW_IMPLEMENT__
53# define __ARM_2D_IMPL__
54#elif defined(__ARM_2D_HELPER_LIST_VIEW_INHERIT__)
55# undef __ARM_2D_HELPER_LIST_VIEW_INHERIT__
56# define __ARM_2D_INHERIT__
58#include "arm_2d_utils.h"
65#define ARM_2D_LIST_VIEW_CALCULATOR_MIDDLE_ALIGNED_VERTICAL \
66 ARM_2D_LIST_CALCULATOR_MIDDLE_ALIGNED_VERTICAL
68#define ARM_2D_LIST_VIEW_CALCULATOR_MIDDLE_ALIGNED_HORIZONTAL \
69 ARM_2D_LIST_CALCULATOR_MIDDLE_ALIGNED_HORIZONTAL
122 uint16_t hwAttribute;
124 uint16_t bIsEnabled : 1;
125 uint16_t bIsVisible : 1;
126 uint16_t bIsReadOnly : 1;
128 uint16_t u4Alignment : 4;
152 __ARM_2D_LIST_GET_ITEM_WITH_ID_WITHOUT_MOVE_POINTER = 0,
153 __ARM_2D_LIST_GET_ITEM_AND_MOVE_POINTER,
154 __ARM_2D_LIST_GET_PREVIOUS,
155 __ARM_2D_LIST_GET_NEXT,
157 __ARM_2D_LIST_GET_FIRST_ITEM_WITHOUT_MOVE_POINTER,
158 __ARM_2D_LIST_GET_FIRST_ITEM,
159 __ARM_2D_LIST_GET_CURRENT,
160 __ARM_2D_LIST_GET_LAST_ITEM_WITHOUT_MOVE_POINTER,
161 __ARM_2D_LIST_GET_LAST_ITEM,
179 ARM_2D_LIST_VERTICAL,
180 ARM_2D_LIST_HORIZONTAL,
242 uint8_t bIsRegCalInit;
258 int32_t nStartOffset;
259 int32_t nTargetOffset;
260 uint16_t hwSelection;
262 uint8_t bIsMoving : 1;
263 uint8_t bNeedRedraw : 1;
276 bool bListSizeChanged;
277 int16_t iStartOffset;
283 int16_t iTopVisiableOffset;
284 uint16_t hwTopVisibleItemID;
286 int16_t iBottomVisibleOffset;
287 uint16_t hwBottomVisibleItemID;
383 int32_t nFinishInMs);
445#if defined(__clang__)
446# pragma clang diagnostic pop