Subversion Repositories filter_foundry

Rev

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;