diff options
Diffstat (limited to 'dvi/view.hh')
-rwxr-xr-x | dvi/view.hh | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/dvi/view.hh b/dvi/view.hh new file mode 100755 index 0000000..bdab6df --- /dev/null +++ b/dvi/view.hh @@ -0,0 +1,37 @@ +// notes: +/* + * hold en gdkpixbuf ved lige, og tegn den på en gtkdrawingarea + * ved passende lejligheder + */ + +#include "model.hh" +#include <gtk/gtk.h> +#include "painter.hh" + +enum { + BASE_DPI = 300, + PAPER_WIDTH = 7, // inches + PAPER_HEIGHT = 17 // inches +}; + +class View : public Observer { +private: + Model *model; + GtkWidget *drawing_area; + GdkPixmap *pixmap; +public: + View (Model *model_arg); + + GtkWidget *get_widget (void) { return drawing_area; } + + void create_pixmap (void); + void expose (GdkEventExpose *event); + void notify (void) const; + void redraw (void) const; +}; + +void on_da_realize (GtkDrawingArea *da, + View *v); +int on_da_expose (GtkWidget *widget, + GdkEventExpose *event, + View *v); |