Rev 45 | Rev 89 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 45 | Rev 53 | ||
---|---|---|---|
Line 156... | Line 156... | ||
156 | //dbg("recalc_preview: about to call advanceState()"); |
156 | //dbg("recalc_preview: about to call advanceState()"); |
157 | 157 | ||
158 | if( !needinput || !(e = pb->advanceState()) ){ |
158 | if( !needinput || !(e = pb->advanceState()) ){ |
159 | Ptr outptr = PILOCKHANDLE(preview_handle,false); |
159 | Ptr outptr = PILOCKHANDLE(preview_handle,false); |
160 | int blankrows = (preview_h-imgh)/2, |
160 | int blankrows = (preview_h - imgh)/2, |
161 | blankcols = (preview_w-imgw)/2; |
161 | blankcols = (preview_w - imgw)/2, pmrb = preview_pmap.rowBytes; |
162 | 162 | ||
163 | INITRANDSEED(); |
163 | INITRANDSEED(); |
164 | //dbg("recalc_preview: about to call process()"); |
164 | //dbg("recalc_preview: about to call process()"); |
165 | 165 | ||
166 | SETRECT(outRect,0,0,imgw,imgh); |
166 | SETRECT(outRect,0,0,imgw,imgh); |
167 | 167 | ||
168 | e = process_scaled(pb,false, |
168 | e = process_scaled(pb, false, &r, &outRect, |
169 | &pb->inRect,&r,&outRect, |
- | |
170 | outptr+preview_pmap.rowBytes*blankrows+nplanes*blankcols,preview_pmap.rowBytes, |
169 | outptr + pmrb*blankrows + nplanes*blankcols, pmrb, zoomfactor); |
171 | zoomfactor); |
- | |
172 | if(blankrows){ |
170 | if(blankrows){ |
173 | memset(outptr,0xff,preview_pmap.rowBytes*blankrows); |
171 | memset(outptr, 0xff, pmrb*blankrows); |
174 | n = preview_h - blankrows - imgh; /* blank rows below preview */ |
172 | n = preview_h - blankrows - imgh; /* blank rows below preview */ |
175 | memset(outptr+preview_pmap.rowBytes*(blankrows+imgh),0xff,preview_pmap.rowBytes*n); |
173 | memset(outptr + pmrb*(blankrows+imgh), 0xff, pmrb*n); |
176 | } |
174 | } |
177 | if(blankcols){ |
175 | if(blankcols){ |
178 | n = preview_w - blankcols - imgw; /* blank columns on right side of preview */ |
176 | n = preview_w - blankcols - imgw; /* blank columns on right side of preview */ |
179 | outrow = outptr+preview_pmap.rowBytes*blankrows; |
177 | outrow = outptr + pmrb*blankrows; |
180 | for( j = blankrows ; j < preview_h - blankrows ; ++j ){ |
178 | for( j = blankrows ; j < preview_h - blankrows ; ++j ){ |
181 | memset(outrow,0xff,nplanes*blankcols); |
179 | memset(outrow, 0xff, nplanes*blankcols); |
182 | memset(outrow+nplanes*(blankcols+imgw),0xff,nplanes*n); |
180 | memset(outrow + nplanes*(blankcols+imgw), 0xff, nplanes*n); |
183 | outrow += preview_pmap.rowBytes; |
181 | outrow += pmrb; |
184 | } |
182 | } |
185 | } |
183 | } |
186 | 184 | ||
187 | if(!e){ |
185 | if(!e){ |
188 | preview_complete = true; |
186 | preview_complete = true; |