ply_frame_buffer_area_t box_area, lock_area;
ply_image_t *lock_image;
ply_image_t *box_image;
+ ply_image_t *corner_image;
ply_window_t *window;
ply_entry_t *entry;
plugin->box_image = ply_image_new (image_path);
free (image_path);
+ asprintf (&image_path, "%s/corner-image.png", image_dir);
+ plugin->corner_image = ply_image_new (image_path);
+ free (image_path);
+
plugin->entry = ply_entry_new (image_dir);
plugin->label = ply_label_new ();
plugin->animation_dir = image_dir;
ply_image_free (plugin->box_image);
ply_image_free (plugin->lock_image);
+
+ if (plugin->corner_image != NULL)
+ ply_image_free (plugin->corner_image);
+
ply_entry_free (plugin->entry);
ply_animation_free (plugin->animation);
ply_progress_animation_free (plugin->progress_animation);
plugin->animation_vertical_alignment * area.height - height / 2.0);
plugin->is_animating = true;
+
+ ply_window_draw_area (plugin->window, 0, 0, area.width, area.height);
}
static void
else
{
ply_progress_animation_draw (plugin->progress_animation);
+
+ if (plugin->corner_image != NULL)
+ {
+ ply_frame_buffer_area_t screen_area;
+ ply_frame_buffer_area_t image_area;
+
+ ply_frame_buffer_get_size (plugin->frame_buffer, &screen_area);
+
+ image_area.width = ply_image_get_width (plugin->corner_image);
+ image_area.height = ply_image_get_height (plugin->corner_image);
+ image_area.x = screen_area.width - image_area.width - 20;
+ image_area.y = screen_area.height - image_area.height - 20;
+
+ ply_frame_buffer_fill_with_argb32_data (plugin->frame_buffer, &image_area, 0, 0, ply_image_get_data (plugin->corner_image));
+
+ }
}
ply_frame_buffer_unpause_updates (plugin->frame_buffer);
}
if (!ply_image_load (plugin->box_image))
return false;
+ if (plugin->corner_image != NULL)
+ {
+ ply_trace ("loading corner image");
+
+ if (!ply_image_load (plugin->corner_image))
+ {
+ ply_image_free (plugin->corner_image);
+ plugin->corner_image = NULL;
+ }
+ }
+
ply_trace ("loading entry");
if (!ply_entry_load (plugin->entry))
return false;