Rev 484 | Rev 486 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 484 | Rev 485 | ||
---|---|---|---|
Line 32... | Line 32... | ||
32 | 32 | ||
33 | extern FilterRecordPtr gpb; |
33 | extern FilterRecordPtr gpb; |
34 | 34 | ||
35 | PSPixelMap preview_pmap; |
35 | PSPixelMap preview_pmap; |
36 | PSPixelMask preview_pmask; |
36 | PSPixelMask preview_pmask; |
37 | BufferID preview_handle; |
37 | FFBuffer preview_handle; |
38 | UIRECT preview_rect; |
38 | UIRECT preview_rect; |
39 | int preview_w,preview_h,previewerr = false,needall = false,needinput = true; |
39 | int preview_w,preview_h,previewerr = false,needall = false,needinput = true; |
40 | Point preview_scroll; |
40 | Point preview_scroll; |
41 | Boolean preview_complete = false; |
41 | Boolean preview_complete = false; |
42 | double zoomfactor,fitzoom; |
42 | double zoomfactor,fitzoom; |
Line 104... | Line 104... | ||
104 | }else |
104 | }else |
105 | preview_pmap.masks = NULL; |
105 | preview_pmap.masks = NULL; |
106 | 106 | ||
107 | preview_handle = newBuffer((long)preview_h * preview_pmap.rowBytes); |
107 | preview_handle = newBuffer((long)preview_h * preview_pmap.rowBytes); |
108 | }else |
108 | }else |
109 | preview_handle = NULL; |
109 | preview_handle.signature = BUFVERSION_NULL; |
110 | return preview_handle != NULL; |
110 | return preview_handle.signature != BUFVERSION_NULL; |
111 | 111 | ||
112 | //--------------------------------------------------------------------------- |
112 | //--------------------------------------------------------------------------- |
113 | // Fields new in version 2: |
113 | // Fields new in version 2: |
114 | //--------------------------------------------------------------------------- |
114 | //--------------------------------------------------------------------------- |
115 | // preview_pmap.pixelOverlays; |
115 | // preview_pmap.pixelOverlays; |
116 | // preview_pmap.colorManagementOptions; |
116 | // preview_pmap.colorManagementOptions; |
117 | } |
117 | } |
118 | 118 | ||
119 | void dispose_preview(){ |
119 | void dispose_preview(){ |
120 | if(preview_handle){ |
- | |
121 | disposeBuffer(preview_handle); |
120 | disposeBuffer(&preview_handle); |
122 | preview_handle = NULL; |
- | |
123 | } |
- | |
124 | } |
121 | } |
125 | 122 | ||
126 | void* memset_bgcolor(void* ptr, size_t num) { |
123 | void* memset_bgcolor(void* ptr, size_t num) { |
127 | int i; |
124 | int i; |
128 | unsigned char* p; |
125 | unsigned char* p; |
Line 218... | Line 215... | ||
218 | Rect r, outRect; |
215 | Rect r, outRect; |
219 | Ptr outrow; |
216 | Ptr outrow; |
220 | 217 | ||
221 | preview_complete = false; |
218 | preview_complete = false; |
222 | 219 | ||
223 | if (preview_handle) { |
220 | if (preview_handle.signature != BUFVERSION_NULL) { |
224 | /* size of previewed area, of source image; but no larger than filtered area (selection) */ |
221 | /* size of previewed area, of source image; but no larger than filtered area (selection) */ |
225 | scaledw = zoomfactor * preview_w; |
222 | scaledw = zoomfactor * preview_w; |
226 | if (scaledw > ((double)FILTER_RECT(pb).right - (double)FILTER_RECT(pb).left)) |
223 | if (scaledw > ((double)FILTER_RECT(pb).right - (double)FILTER_RECT(pb).left)) |
227 | scaledw = (double)FILTER_RECT(pb).right - (double)FILTER_RECT(pb).left; |
224 | scaledw = (double)FILTER_RECT(pb).right - (double)FILTER_RECT(pb).left; |
228 | scaledh = zoomfactor * preview_h; |
225 | scaledh = zoomfactor * preview_h; |
Line 353... | Line 350... | ||
353 | VRect r, outRect; |
350 | VRect r, outRect; |
354 | Ptr outrow; |
351 | Ptr outrow; |
355 | 352 | ||
356 | preview_complete = false; |
353 | preview_complete = false; |
357 | 354 | ||
358 | if (preview_handle) { |
355 | if (preview_handle.signature != BUFVERSION_NULL) { |
359 | /* size of previewed area, of source image; but no larger than filtered area (selection) */ |
356 | /* size of previewed area, of source image; but no larger than filtered area (selection) */ |
360 | scaledw = zoomfactor * preview_w; |
357 | scaledw = zoomfactor * preview_w; |
361 | if (scaledw > ((double)BIGDOC_FILTER_RECT(pb).right - (double)BIGDOC_FILTER_RECT(pb).left)) |
358 | if (scaledw > ((double)BIGDOC_FILTER_RECT(pb).right - (double)BIGDOC_FILTER_RECT(pb).left)) |
362 | scaledw = (double)BIGDOC_FILTER_RECT(pb).right - (double)BIGDOC_FILTER_RECT(pb).left; |
359 | scaledw = (double)BIGDOC_FILTER_RECT(pb).right - (double)BIGDOC_FILTER_RECT(pb).left; |
363 | scaledh = zoomfactor * preview_h; |
360 | scaledh = zoomfactor * preview_h; |
Line 506... | Line 503... | ||
506 | VRect srcRect; |
503 | VRect srcRect; |
507 | UIRECT imagebounds; |
504 | UIRECT imagebounds; |
508 | 505 | ||
509 | UNREFERENCED_PARAMETER(dp); |
506 | UNREFERENCED_PARAMETER(dp); |
510 | 507 | ||
511 | if(preview_handle && preview_complete){ |
508 | if((preview_handle.signature != BUFVERSION_NULL) && preview_complete){ |
512 | 509 | ||
513 | srcRect = preview_pmap.bounds; |
510 | srcRect = preview_pmap.bounds; |
514 | 511 | ||
515 | imagebounds.left = (preview_rect.left + preview_rect.right - preview_w)/2; |
512 | imagebounds.left = (preview_rect.left + preview_rect.right - preview_w)/2; |
516 | imagebounds.top = (preview_rect.top + preview_rect.bottom - preview_h)/2; |
513 | imagebounds.top = (preview_rect.top + preview_rect.bottom - preview_h)/2; |