mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Break picture handling code from C++ to C.
This commit breaks the loading of images that were done in the divelist into smaller bits. A bit of code refactor was done in order to correct the placement of a few methods. ShiftTimesDialog::EpochFromExiv got moved to Exif::epoch dive_add_picture is now used instead of add_event picture_load_exif_data got implemented using the old listview code. dive_set_geodata_from_picture got implemented using the old listview code. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
13e8aba7da
commit
d95d1735b5
9 changed files with 87 additions and 70 deletions
30
dive.c
30
dive.c
|
@ -2260,14 +2260,26 @@ int average_depth(struct diveplan *dive)
|
|||
return integral / last_time;
|
||||
}
|
||||
|
||||
void picture_load_exif_data(struct picture *p)
|
||||
struct picture *alloc_picture()
|
||||
{
|
||||
|
||||
struct picture *pic = malloc(sizeof(struct picture));
|
||||
if (!pic)
|
||||
exit(1);
|
||||
memset(pic, 0, sizeof(struct picture));
|
||||
return pic;
|
||||
}
|
||||
|
||||
struct picture* dive_add_picture(struct dive *d, char *picture)
|
||||
void dive_add_picture(struct dive *d, struct picture *picture)
|
||||
{
|
||||
|
||||
if (d->picture_list == NULL) {
|
||||
d->picture_list = picture;
|
||||
return;
|
||||
}
|
||||
struct picture *last = d->picture_list;
|
||||
while( last->next )
|
||||
last = last->next;
|
||||
last->next = picture;
|
||||
return;
|
||||
}
|
||||
|
||||
uint dive_get_picture_count(struct dive *d)
|
||||
|
@ -2278,7 +2290,15 @@ uint dive_get_picture_count(struct dive *d)
|
|||
return i;
|
||||
}
|
||||
|
||||
void dive_remove_picture(struct dive *d, char *picture)
|
||||
void dive_set_geodata_from_picture(struct dive *d, struct picture *pic)
|
||||
{
|
||||
if (!d->latitude.udeg && pic->latitude.udeg) {
|
||||
d->latitude = pic->latitude;
|
||||
d->longitude = pic->longitude;
|
||||
}
|
||||
}
|
||||
|
||||
void dive_remove_picture(struct dive *d, struct picture *p)
|
||||
{
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue