mirror of
https://github.com/9fans/plan9port.git
synced 2025-01-12 11:10:07 +00:00
parent
323e7d0193
commit
9f3851871e
3 changed files with 24 additions and 0 deletions
|
@ -351,6 +351,7 @@ extern Image* namedimage(Display*, char*);
|
|||
extern int nameimage(Image*, char*, int);
|
||||
extern Image* allocimagemix(Display*, u32int, u32int);
|
||||
extern int drawsetlabel(char*);
|
||||
extern int scalesize(Display*, int);
|
||||
|
||||
/*
|
||||
* Colors
|
||||
|
|
|
@ -62,6 +62,9 @@ int gengetwindow(Display *d, char *winname,
|
|||
Image **ip, Screen **sp, int ref)
|
||||
.PP
|
||||
.B
|
||||
int scalesize(Display *d, int n)
|
||||
.PP
|
||||
.B
|
||||
void cursorswitch(Cursor *curs)
|
||||
.PP
|
||||
.B
|
||||
|
@ -502,6 +505,19 @@ and
|
|||
.B Screen
|
||||
variables for the new window.
|
||||
.PP
|
||||
Historically, Plan 9 graphics programs have used fixed-size graphics features that assume a narrow range of display densities, around 100 dpi: pixels (or dots) per inch.
|
||||
The new field
|
||||
.B display->dpi
|
||||
contains the display's actual density if known, or else
|
||||
.B DefaultDPI
|
||||
(100).
|
||||
.I Scalesize
|
||||
scales the fixed pixel count
|
||||
.I n
|
||||
by
|
||||
.BR display->dpi / DefaultDPI ,
|
||||
rounding appropriately.
|
||||
.PP
|
||||
The mouse cursor is always displayed.
|
||||
The initial cursor is an arrow.
|
||||
.I Cursorswitch
|
||||
|
|
|
@ -428,3 +428,10 @@ bufimage(Display *d, int n)
|
|||
return p;
|
||||
}
|
||||
|
||||
int
|
||||
scalesize(Display *d, int n)
|
||||
{
|
||||
if(d == nil || d->dpi <= DefaultDPI)
|
||||
return n;
|
||||
return (n*d->dpi+DefaultDPI/2)/DefaultDPI;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue