Subversion Repositories freemyipod

Rev

Rev 773 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 773 Rev 820
Line 185... Line 185...
185
                   buf, x + iparams->icon_pos.x, y + iparams->icon_pos.y, stride,
185
                   buf, x + iparams->icon_pos.x, y + iparams->icon_pos.y, stride,
186
                   buf, x + iparams->icon_pos.x, y + iparams->icon_pos.y, stride);
186
                   buf, x + iparams->icon_pos.x, y + iparams->icon_pos.y, stride);
187
        if (iparams->text && iparams->text_color)
187
        if (iparams->text && iparams->text_color)
188
            rendertext(buf, x + iparams->text_pos.x, y + iparams->text_pos.y,
188
            rendertext(buf, x + iparams->text_pos.x, y + iparams->text_pos.y,
189
                       stride, text_color, 0, iparams->text);
189
                       stride, text_color, 0, iparams->text);
-
 
190
        if (iparams->render) iparams->render(data, item, item == selected, x, y);
190
        y += iparams->size.y;
191
        y += iparams->size.y;
191
        item++;
192
        item++;
192
    }
193
    }
193
    if (params->preblit && params->preblit(data)) return CHOOSER_RESULT_OK;
194
    if (params->preblit && params->preblit(data)) return CHOOSER_RESULT_OK;
194
    displaylcd(params->blit_dest.x, params->blit_dest.y, params->blit_src.size.x,
195
    displaylcd(params->blit_dest.x, params->blit_dest.y, params->blit_src.size.x,
Line 223... Line 224...
223
static void chooser_renderer_list_destroy(struct chooser_data* data)
224
static void chooser_renderer_list_destroy(struct chooser_data* data)
224
{
225
{
225
    free(data->rendererdata);
226
    free(data->rendererdata);
226
}
227
}
227
 
228
 
-
 
229
void chooser_renderer_list_render_attached_text(struct chooser_data* data,
-
 
230
                                                const struct chooser_item* item,
-
 
231
                                                bool selected, int x, int y, const char* text)
-
 
232
{
-
 
233
    struct chooser_renderer_list_params* rparams;
-
 
234
    rparams = (struct chooser_renderer_list_params*)data->info->rendererparams;
-
 
235
    struct chooser_renderer_list_itemdata* ritem;
-
 
236
    ritem = (struct chooser_renderer_list_itemdata*)item->renderparams;
-
 
237
    void* buf = rparams->viewport.loc.buf.addr;
-
 
238
    int stride = rparams->viewport.loc.buf.stride;
-
 
239
    x += ritem->size.x - ritem->text_pos.x - strlen(text) * get_font_width();
-
 
240
    y += ritem->text_pos.y;
-
 
241
    uint32_t color = selected ? ritem->text_color_selected : ritem->text_color;
-
 
242
    rendertext(buf, x, y, stride, color, 0, text);
-
 
243
}
-
 
244
 
-
 
245
void chooser_renderer_list_show_arrow_right(struct chooser_data* data,
-
 
246
                                            const struct chooser_item* item,
-
 
247
                                            bool selected, int x, int y)
-
 
248
{
-
 
249
    chooser_renderer_list_render_attached_text(data, item, selected, x, y, ">");
-
 
250
}
-
 
251
 
-
 
252
void chooser_renderer_list_show_arrow_left(struct chooser_data* data,
-
 
253
                                           const struct chooser_item* item,
-
 
254
                                           bool selected, int x, int y)
-
 
255
{
-
 
256
    chooser_renderer_list_render_attached_text(data, item, selected, x, y, "<");
-
 
257
}
-
 
258
 
228
 
259
 
229
const struct chooser_renderer chooser_renderer_list = 
260
const struct chooser_renderer chooser_renderer_list = 
230
{
261
{
231
    .version = CHOOSER_RENDERER_VERSION,
262
    .version = CHOOSER_RENDERER_VERSION,
232
    .init = chooser_renderer_list_init,
263
    .init = chooser_renderer_list_init,