tnew draw interface - plan9port - [fork] Plan 9 from user space
 (HTM) git clone git://src.adamsgaard.dk/plan9port
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 76a1b3c9c658061a491b10384118482770fbef71
 (DIR) parent e86ebdce25bab8352e093c84122953ed7daa7ec8
 (HTM) Author: rsc <devnull@localhost>
       Date:   Sun, 25 Jun 2006 23:49:35 +0000
       
       new draw interface
       
       Diffstat:
         M include/draw.h                      |      30 ++++++++++++++++++++++++------
       
       1 file changed, 24 insertions(+), 6 deletions(-)
       ---
 (DIR) diff --git a/include/draw.h b/include/draw.h
       t@@ -23,6 +23,8 @@ typedef struct        RGB RGB;
        typedef struct        Screen Screen;
        typedef struct        Subfont Subfont;
        
       +struct Mux;
       +
        extern        int        Rfmt(Fmt*);
        extern        int        Pfmt(Fmt*);
        
       t@@ -200,6 +202,8 @@ struct Display
                Image                *windows;
                Image                *screenimage;
                int                _isnewdisplay;
       +        struct Mux        *mux;
       +        int                srvfd;
        };
        
        struct Image
       t@@ -535,14 +539,28 @@ void drawtopwindow(void);
        void drawresizewindow(Rectangle);
        extern char *winsize;
        
       +int        mousescrollsize(int);
       +
        /*
       - * Port magic.
       + * RPC interface to draw server.
         */
       -int        _drawmsgread(Display*, void*, int);
       -int        _drawmsgwrite(Display*, void*, int);
       -int        _latin1(Rune*, int);
       -
       -int        mousescrollsize(int);
       +struct Mouse;
       +struct Cursor;
       +int                _displaybouncemouse(Display *d, struct Mouse *m);
       +int                _displayconnect(Display *d);
       +int                _displaycursor(Display *d, struct Cursor *c);
       +int                _displayinit(Display *d, char *label, char *winsize);
       +int                _displaylabel(Display *d, char *label);
       +int                _displaymoveto(Display *d, Point p);
       +int                _displaymux(Display *d);
       +int                _displayrddraw(Display *d, void *v, int n);
       +int                _displayrdkbd(Display *d, Rune *r);
       +int                _displayrdmouse(Display *d, struct Mouse *m, int *resized);
       +char*                _displayrdsnarf(Display *d);
       +int                _displaywrdraw(Display *d, void *v, int n);
       +int                _displaywrsnarf(Display *d, char *snarf);
       +int                _displaytop(Display *d);
       +int                _displayresize(Display *d, Rectangle rect);
        
        #if defined(__cplusplus)
        }