use the same stippled drawing for colorband background as alpha color swatches, with low DPI would look squashed, also use the same colors for both.
This commit is contained in:
		@@ -1120,7 +1120,7 @@ void ui_draw_but_COLORBAND(uiBut *but, uiWidgetColors *UNUSED(wcol), rcti *rect)
 | 
			
		||||
	ColorBand *coba;
 | 
			
		||||
	CBData *cbd;
 | 
			
		||||
	float x1, y1, sizex, sizey;
 | 
			
		||||
	float dx, v3[2], v1[2], v2[2], v1a[2], v2a[2];
 | 
			
		||||
	float v3[2], v1[2], v2[2], v1a[2], v2a[2];
 | 
			
		||||
	int a;
 | 
			
		||||
	float pos, colf[4]= {0,0,0,0}; /* initialize incase the colorband isnt valid */
 | 
			
		||||
		
 | 
			
		||||
@@ -1133,15 +1133,14 @@ void ui_draw_but_COLORBAND(uiBut *but, uiWidgetColors *UNUSED(wcol), rcti *rect)
 | 
			
		||||
	sizey= rect->ymax-y1;
 | 
			
		||||
 | 
			
		||||
	/* first background, to show tranparency */
 | 
			
		||||
	dx= sizex/12.0f;
 | 
			
		||||
	v1[0]= x1;
 | 
			
		||||
	for(a=0; a<12; a++) {
 | 
			
		||||
		if(a & 1) glColor3f(0.3, 0.3, 0.3); else glColor3f(0.8, 0.8, 0.8);
 | 
			
		||||
		glRectf(v1[0], y1, v1[0]+dx, y1+0.5f*sizey);
 | 
			
		||||
		if(a & 1) glColor3f(0.8, 0.8, 0.8); else glColor3f(0.3, 0.3, 0.3);
 | 
			
		||||
		glRectf(v1[0], y1+0.5f*sizey, v1[0]+dx, y1+sizey);
 | 
			
		||||
		v1[0]+= dx;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	glColor4ub(UI_TRANSP_DARK, UI_TRANSP_DARK, UI_TRANSP_DARK, 255);
 | 
			
		||||
	glRectf(x1, y1, x1+sizex, y1+sizey);
 | 
			
		||||
	glEnable(GL_POLYGON_STIPPLE);
 | 
			
		||||
	glColor4ub(UI_TRANSP_LIGHT, UI_TRANSP_LIGHT, UI_TRANSP_LIGHT, 255);
 | 
			
		||||
	glPolygonStipple(checker_stipple_sml);
 | 
			
		||||
	glRectf(x1, y1, x1+sizex, y1+sizey);
 | 
			
		||||
	glDisable(GL_POLYGON_STIPPLE);
 | 
			
		||||
 | 
			
		||||
	glShadeModel(GL_FLAT);
 | 
			
		||||
	glEnable(GL_BLEND);
 | 
			
		||||
 
 | 
			
		||||
@@ -486,6 +486,11 @@ void ui_widget_color_init(struct ThemeUI *tui);
 | 
			
		||||
void ui_draw_menu_item(struct uiFontStyle *fstyle, rcti *rect, const char *name, int iconid, int state);
 | 
			
		||||
void ui_draw_preview_item(struct uiFontStyle *fstyle, rcti *rect, const char *name, int iconid, int state);
 | 
			
		||||
 | 
			
		||||
extern unsigned char checker_stipple_sml[];
 | 
			
		||||
/* used for transp checkers */
 | 
			
		||||
#define UI_TRANSP_DARK 100
 | 
			
		||||
#define UI_TRANSP_LIGHT 160
 | 
			
		||||
 | 
			
		||||
/* interface_style.c */
 | 
			
		||||
void uiStyleInit(void);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -159,6 +159,18 @@ static float check_tria_vert[6][2]= {
 | 
			
		||||
static int check_tria_face[4][3]= {
 | 
			
		||||
{3, 2, 4}, {3, 4, 5}, {1, 0, 3}, {0, 2, 3}};
 | 
			
		||||
 | 
			
		||||
GLubyte checker_stipple_sml[32*32/8] =
 | 
			
		||||
{
 | 
			
		||||
	255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, \
 | 
			
		||||
	255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, \
 | 
			
		||||
	0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, \
 | 
			
		||||
	0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, \
 | 
			
		||||
	255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, \
 | 
			
		||||
	255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, \
 | 
			
		||||
	0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, \
 | 
			
		||||
	0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, \
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* ************************************************* */
 | 
			
		||||
 | 
			
		||||
void ui_draw_anti_tria(float x1, float y1, float x2, float y2, float x3, float y3)
 | 
			
		||||
@@ -614,22 +626,10 @@ static void widgetbase_draw(uiWidgetBase *wtb, uiWidgetColors *wcol)
 | 
			
		||||
	if(wtb->inner) {
 | 
			
		||||
		if(wcol->shaded==0) {
 | 
			
		||||
			if (wcol->alpha_check) {
 | 
			
		||||
				GLubyte checker_stipple_sml[32*32/8] =
 | 
			
		||||
				{
 | 
			
		||||
					255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, \
 | 
			
		||||
					255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, \
 | 
			
		||||
					0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, \
 | 
			
		||||
					0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, \
 | 
			
		||||
					255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, \
 | 
			
		||||
					255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, \
 | 
			
		||||
					0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, \
 | 
			
		||||
					0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, \
 | 
			
		||||
				};
 | 
			
		||||
 | 
			
		||||
				float x_mid= 0.0f; /* used for dumb clamping of values */
 | 
			
		||||
 | 
			
		||||
				/* dark checkers */
 | 
			
		||||
				glColor4ub(100, 100, 100, 255);
 | 
			
		||||
				glColor4ub(UI_TRANSP_DARK, UI_TRANSP_DARK, UI_TRANSP_DARK, 255);
 | 
			
		||||
				glBegin(GL_POLYGON);
 | 
			
		||||
				for(a=0; a<wtb->totvert; a++) {
 | 
			
		||||
					glVertex2fv(wtb->inner_v[a]);
 | 
			
		||||
@@ -638,7 +638,7 @@ static void widgetbase_draw(uiWidgetBase *wtb, uiWidgetColors *wcol)
 | 
			
		||||
 | 
			
		||||
				/* light checkers */
 | 
			
		||||
				glEnable(GL_POLYGON_STIPPLE);
 | 
			
		||||
				glColor4ub(160, 160, 160, 255);
 | 
			
		||||
				glColor4ub(UI_TRANSP_LIGHT, UI_TRANSP_LIGHT, UI_TRANSP_LIGHT, 255);
 | 
			
		||||
				glPolygonStipple(checker_stipple_sml);
 | 
			
		||||
				glBegin(GL_POLYGON);
 | 
			
		||||
				for(a=0; a<wtb->totvert; a++) {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user