The R Project SVN R

Rev

Rev 14461 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 14461 Rev 14752
Line 2370... Line 2370...
2370
		privategetpixel, 0, fp) ;
2370
		privategetpixel, 0, fp) ;
2371
    gsetcliprect(xd->bm, r);
2371
    gsetcliprect(xd->bm, r);
2372
    fclose(fp);
2372
    fclose(fp);
2373
}
2373
}
2374
 
2374
 
-
 
2375
#include "Startup.h"
-
 
2376
extern UImode CharacterMode;
-
 
2377
 
2375
SEXP do_bringtotop(SEXP call, SEXP op, SEXP args, SEXP env)
2378
SEXP do_bringtotop(SEXP call, SEXP op, SEXP args, SEXP env)
2376
{
2379
{
2377
    int dev;
2380
    int dev;
2378
    DevDesc *dd;
2381
    DevDesc *dd;
2379
    gadesc *xd;
2382
    gadesc *xd;
2380
 
2383
 
2381
    checkArity(op, args);
2384
    checkArity(op, args);
2382
    dev = asInteger(CAR(args));
2385
    dev = asInteger(CAR(args));
-
 
2386
    if(dev == -1) { /* console */
-
 
2387
	if(CharacterMode == RGui) BringToTop(RConsole);
-
 
2388
    } else {
2383
    if(dev < 1 || dev > NumDevices() || dev == NA_INTEGER)
2389
	if(dev < 1 || dev > NumDevices() || dev == NA_INTEGER)
2384
	errorcall(call, "invalid value of `which'");
2390
	    errorcall(call, "invalid value of `which'");
2385
    dd = GetDevice(dev - 1);
2391
	dd = GetDevice(dev - 1);
2386
    if(!dd) errorcall(call, "invalid device");
2392
	if(!dd) errorcall(call, "invalid device");
2387
    xd = (gadesc *) dd->deviceSpecific;
2393
	xd = (gadesc *) dd->deviceSpecific;
2388
    if(!xd) errorcall(call, "invalid device");
2394
	if(!xd) errorcall(call, "invalid device");
2389
    BringToTop(xd->gawin);
2395
	BringToTop(xd->gawin);
-
 
2396
    }
2390
    return R_NilValue;
2397
    return R_NilValue;
2391
}
2398
}