src/text.c

changeset 194
7985c3b64460
parent 193
ddf690c0b36b
child 196
ac2ade047d5b
equal deleted inserted replaced
193:ddf690c0b36b 194:7985c3b64460
124 asc_text_update(node); 124 asc_text_update(node);
125 125
126 return node; 126 return node;
127 } 127 }
128 128
129 void asc_text_alignment(
130 AscText *node,
131 enum asc_text_alignment alignment
132 ) {
133 asc_ptr_cast(AscSceneNode, snode, node);
134 asc_set_flag_masked(snode->flags, ASC_TEXT_ALIGNMENT_MASK, alignment);
135 asc_node_update(snode);
136 }
137
138 void asc_text_centered(AscText *node, bool centered) {
139 asc_ptr_cast(AscSceneNode, snode, node);
140 if (centered) {
141 asc_clear_flag(snode->flags, ASC_TEXT_ALIGN_CENTERED);
142 } else {
143 asc_set_flag(snode->flags, ASC_TEXT_ALIGN_CENTERED);
144 }
145 asc_node_update(snode);
146 }
147
148 void asc_text_max_width(AscText *node, unsigned max_width) {
149 node->max_width = max_width;
150 asc_node_update((AscSceneNode*)node);
151 }
152
129 void asc_text_printf( 153 void asc_text_printf(
130 AscText *text_node, 154 AscText *node,
131 const char *format, 155 const char *format,
132 ... 156 ...
133 ) { 157 ) {
134 va_list ap; 158 va_list ap;
135 va_start(ap, format); 159 va_start(ap, format);
136 cx_vsprintf( 160 cx_vsprintf(
137 &text_node->text.ptr, 161 &node->text.ptr,
138 &text_node->text.length, 162 &node->text.length,
139 format, 163 format,
140 ap 164 ap
141 ); 165 );
142 va_end(ap); 166 va_end(ap);
143 asc_node_update((AscSceneNode*)text_node); 167 asc_node_update((AscSceneNode*)node);
144 } 168 }
145 169

mercurial