| 204 return toplevel; |
204 return toplevel; |
| 205 } |
205 } |
| 206 |
206 |
| 207 static void imageviewer_reset(UiImageViewer *imgviewer) { |
207 static void imageviewer_reset(UiImageViewer *imgviewer) { |
| 208 imgviewer->isautoscaled = FALSE; |
208 imgviewer->isautoscaled = FALSE; |
| |
209 imgviewer->autoscaled_for_width = 0; |
| |
210 imgviewer->autoscaled_for_height = 0; |
| 209 imgviewer->transx = 0; |
211 imgviewer->transx = 0; |
| 210 imgviewer->transy; |
212 imgviewer->transy; |
| 211 imgviewer->begin_transx = 0; |
213 imgviewer->begin_transx = 0; |
| 212 imgviewer->begin_transy = 0; |
214 imgviewer->begin_transy = 0; |
| 213 imgviewer->scale = 1; |
215 imgviewer->scale = 1; |
| 298 double dheight = height; |
300 double dheight = height; |
| 299 double scale = 1; |
301 double scale = 1; |
| 300 // if autoscale is enabled, scale the image to fill available space |
302 // if autoscale is enabled, scale the image to fill available space |
| 301 // if useradjustable is also enabled, the autoscaling is only done once |
303 // if useradjustable is also enabled, the autoscaling is only done once |
| 302 if(imgviewer->autoscale && imgviewer->scale != 0) { |
304 if(imgviewer->autoscale && imgviewer->scale != 0) { |
| 303 if(!imgviewer->isautoscaled) { |
305 if(!imgviewer->isautoscaled || |
| |
306 width != imgviewer->autoscaled_for_width || |
| |
307 height != imgviewer->autoscaled_for_height) |
| |
308 { |
| 304 scale = dwidth / dpixwidth; |
309 scale = dwidth / dpixwidth; |
| 305 if(dpixheight * scale > dheight) { |
310 if(dpixheight * scale > dheight) { |
| 306 scale = dheight / dpixheight; |
311 scale = dheight / dpixheight; |
| 307 } |
312 } |
| 308 |
313 |