summaryrefslogtreecommitdiff
path: root/atari
diff options
context:
space:
mode:
authorOle Loots <ole@monochrom.net>2011-03-01 19:29:40 +0000
committerOle Loots <ole@monochrom.net>2011-03-01 19:29:40 +0000
commit58ad73bfc8223acef4ad5f0de1c2884d45692a04 (patch)
tree47dac68924e3ed636987ed1a2ef1c12ff1e18a97 /atari
parentca73991ef597d581cdb158816da18ce751e96bed (diff)
downloadnetsurf-58ad73bfc8223acef4ad5f0de1c2884d45692a04.tar.gz
netsurf-58ad73bfc8223acef4ad5f0de1c2884d45692a04.tar.bz2
Adjusted clipping rect changes for atari fronted.
svn path=/trunk/netsurf/; revision=11875
Diffstat (limited to 'atari')
-rwxr-xr-xatari/plot/plotter.c14
-rwxr-xr-xatari/plot/plotter.h16
-rwxr-xr-xatari/plot/plotter_vdi.c18
3 files changed, 24 insertions, 24 deletions
diff --git a/atari/plot/plotter.c b/atari/plot/plotter.c
index f645af483..62fb10918 100755
--- a/atari/plot/plotter.c
+++ b/atari/plot/plotter.c
@@ -683,7 +683,7 @@ short rgb_to_666_index(unsigned char r, unsigned char g, unsigned char b)
}
/* Shared (static in object oriented slang) plotter functions: */
-int plotter_get_clip( GEM_PLOTTER self, struct s_clipping * out )
+int plotter_get_clip( GEM_PLOTTER self, struct rect * out )
{
out->x0 = self->clipping.x0;
out->y0 = self->clipping.y0;
@@ -692,12 +692,12 @@ int plotter_get_clip( GEM_PLOTTER self, struct s_clipping * out )
return( 1 );
}
-int plotter_std_clip(GEM_PLOTTER self,int x0, int y0, int x1, int y1)
+int plotter_std_clip(GEM_PLOTTER self, const struct rect * clip)
{
- self->clipping.x0 = x0;
- self->clipping.y0 = y0;
- self->clipping.x1 = x1;
- self->clipping.y1 = y1;
+ self->clipping.x0 = clip->x0;
+ self->clipping.y0 = clip->y0;
+ self->clipping.x1 = clip->x1;
+ self->clipping.y1 = clip->y1;
return ( 1 );
}
@@ -706,7 +706,7 @@ void plotter_vdi_clip( GEM_PLOTTER self, bool set)
{
return;
if( set == true ) {
- struct s_clipping * c = &self->clipping;
+ struct rect * c = &self->clipping;
short vdiflags[58];
short newclip[4];
vq_extnd( self->vdi_handle, 1, (short*)&vdiflags);
diff --git a/atari/plot/plotter.h b/atari/plot/plotter.h
index 7bca2c200..78f75d7da 100755
--- a/atari/plot/plotter.h
+++ b/atari/plot/plotter.h
@@ -25,6 +25,7 @@
#include <string.h>
#include <windom.h>
+#include "desktop/plotters.h"
#include "desktop/plot_style.h"
#include "image/bitmap.h"
#include "atari/bitmap.h"
@@ -103,12 +104,7 @@ struct s_font_plotter
};
-struct s_clipping {
- short x0;
- short y0;
- short x1;
- short y1;
-};
+struct rect;
struct s_vdi_sysinfo {
short vdi_handle; /* vdi handle */
@@ -162,7 +158,7 @@ typedef int (*_pmf_update_screen_region)( GEM_PLOTTER self, GRECT region );
typedef int (*_pmf_update_screen)(GEM_PLOTTER self);
typedef int (*_pmf_put_pixel)(GEM_PLOTTER self, int x, int y, int color );
typedef int (*_pmf_copy_rect)(GEM_PLOTTER self, GRECT src, GRECT dst );
-typedef int (*_pmf_clip)(GEM_PLOTTER self, int x0, int y0, int x1, int y1);
+typedef int (*_pmf_clip)(GEM_PLOTTER self, const struct rect * clip );
typedef int (*_pmf_arc)(GEM_PLOTTER self, int x, int y, int radius, int angle1, int angle2, const plot_style_t * pstyle);
typedef int (*_pmf_disc)(GEM_PLOTTER self, int x, int y, int radius, const plot_style_t * pstyle);
typedef int (*_pmf_line)(GEM_PLOTTER self, int x0, int y0, int x1, int y1, const plot_style_t * pstyle);
@@ -185,7 +181,7 @@ struct s_gem_plotter
struct s_vdi_sysinfo * scr;
void * priv_data;
int bpp_virt; /* bit depth of framebuffer */
- struct s_clipping clipping;
+ struct rect clipping;
struct s_frame_buf fbuf[MAX_FRAMEBUFS];
int cfbi; /* current framebuffer index */
@@ -296,8 +292,8 @@ void rgb_to_vdi1000( unsigned char * in, unsigned short * out );
short rgb_to_666_index(unsigned char r, unsigned char g, unsigned char b);
/* shared / static methods ... */
-int plotter_get_clip( GEM_PLOTTER self, struct s_clipping * out );
-int plotter_std_clip(GEM_PLOTTER self,int x0, int y0, int x1, int y1);
+int plotter_get_clip( GEM_PLOTTER self, struct rect * out );
+int plotter_std_clip(GEM_PLOTTER self, const struct rect * clip);
void plotter_vdi_clip( GEM_PLOTTER self, bool set);
#define PLOTTER_IS_LOCKED(plotter) ( plotter->private_flags & PLOTTER_FLAG_LOCKED )
diff --git a/atari/plot/plotter_vdi.c b/atari/plot/plotter_vdi.c
index f4cee9559..380584817 100755
--- a/atari/plot/plotter_vdi.c
+++ b/atari/plot/plotter_vdi.c
@@ -122,6 +122,8 @@ int ctor_plotter_vdi(GEM_PLOTTER self )
{
int retval = 0;
int i;
+ struct rect clip;
+
self->dtor = dtor;
self->resize= resize;
self->move = move;
@@ -167,7 +169,12 @@ int ctor_plotter_vdi(GEM_PLOTTER self )
/* offscreen: FIRSTFB(self).mem = malloc( FIRSTFB(self).size ); */
FIRSTFB(self).mem = NULL;
update_visible_rect( self );
- self->clip( self, 0, 0, FIRSTFB(self).w, FIRSTFB(self).h );
+
+ clip.x0 = 0;
+ clip.y0 = 0;
+ clip.x1 = FIRSTFB(self).w;
+ clip.y1 = FIRSTFB(self).h;
+ self->clip( self, &clip );
/* store system palette & setup the new (web) palette: */
i = 0;
if( app.nplanes <= 8 ){
@@ -601,7 +608,7 @@ static int polygon(GEM_PLOTTER self,const int *p, unsigned int n, const plot_st
unsigned int i=0;
short d[4];
if( vdi_sysinfo.maxpolycoords > 0 )
- assert( n < vdi_sysinfo.maxpolycoords );
+ assert( (signed int)n < vdi_sysinfo.maxpolycoords );
/*
Does this double check make sense?
else
@@ -1041,11 +1048,8 @@ static int bitmap( GEM_PLOTTER self, struct bitmap * bmp, int x, int y,
static int text(GEM_PLOTTER self, int x, int y, const char *text, size_t length, const plot_font_style_t *fstyle)
{
- self->font_plotter->text( self->font_plotter,
- x,
- y,
- text, length,
- fstyle
+ self->font_plotter->text( self->font_plotter, x, y,
+ text, length, fstyle
);
return ( 1 );
}