static int TextLayer_Text_Insert_NewRow ( LCUI_TextLayer *layer, int row ) /* 在插入新行至指定位置 */ { Text_RowData data; data.pos = Pos(0,0); data.max_size = Size(0,0); data.last_char = NULL; Queue_Init( &data.string, sizeof(LCUI_CharData), NULL ); Queue_Set_DataMode( &data.string, QUEUE_DATA_MODE_LINKED_LIST ); Queue_Using_Pointer( &data.string ); return Queue_Insert( &layer->rows_data, row, &data ); }
static int TextLayer_Text_Add_NewRow ( LCUI_TextLayer *layer ) /* 添加新行 */ { Text_RowData data; /* 单整行最大尺寸改变时,需要移动整行,目前还未支持此功能 */ data.pos = Pos(0,0); data.max_size = Size(0,0); Queue_Init( &data.string, sizeof(LCUI_CharData), NULL ); /* 使用链表模式,方便数据的插入 */ Queue_Set_DataMode( &data.string, QUEUE_DATA_MODE_LINKED_LIST ); /* 队列成员使用指针,主要是引用text_source_data里面的数据 */ Queue_Using_Pointer( &data.string ); return Queue_Add( &layer->rows_data, &data ); }