Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTon Roosendaal <ton@blender.org>2003-10-20 19:40:20 +0400
committerTon Roosendaal <ton@blender.org>2003-10-20 19:40:20 +0400
commit7f5d06d638ff24444da942cf91c130d5393818cb (patch)
tree2b21f227adfb1d7f2004087e60b05c3af230d5ee /source/blender/src/interface_panel.c
parent628b0025836183436ab5b83120497ebe060f89b7 (diff)
Another mega commit... loadsof restructure, and a pretty good one! :)
- changed the BIF_DrawString() function. it used to work different for AA fonts as for default fonts. Now it's identical. Setting color for fonts can just be done with OpenGL, for both font types. Removed: BIF_DrawStringRGB() - added theme color options for Buttons - recoded DefButton, so it automatically chooses the right color. - had to remove a 1000 uiBlockSetCol() calls for that reason... - uiBlockSetCol() still works, to override automatic color - removed entirely the silly old color system (BIFColorID). All color calls can now be done with a BIF_ThemeColor() call, including fonts and buttons and opengl stuff - all buttons in button header have headercolor by default - recoded drawing icons, it was a really bad & old loop doing manually colorshading and blending... which was per pixel a load of code! Now it uses a single OpenGL call to blend or colorize. Quite faster! - (as test, for review) icons don't colorize anymore with button color, but have a different alpha to blend in (when not active) - recoded the entire interface_draw.c file...: - drawing buttons is separated in three parts: 1. main drawing function for text and icons 2. free definable callback for button itself 3. free definable callback for slider - removed a load of redundant code for this! - coded a minimal theme, and adjusted Matt's buttons to match new callback system - adding new drawing themes is piece of cake now - for coders, default 'themes' to be aware of: UI_EMBOSS : the themable drawing style UI_EMBOSSP: the pulldown menu system (apart from color not themable) UI_EMBOSSN: draw nothing, only text and/or icon UI_EMBOSSM: minimal theme, still in use for Logic and Constraintsa this can be set with uiBlockSetEmboss(block) or in the uiNewBlock() call. TODO: make UI API call for button alignment (plus removed another series of warnings from code...) Plus: fixed bug in Matts commit: he used a 'short' button for an 'int'
Diffstat (limited to 'source/blender/src/interface_panel.c')
-rw-r--r--source/blender/src/interface_panel.c60
1 files changed, 5 insertions, 55 deletions
diff --git a/source/blender/src/interface_panel.c b/source/blender/src/interface_panel.c
index 09f30f66944..0ae12e3ab86 100644
--- a/source/blender/src/interface_panel.c
+++ b/source/blender/src/interface_panel.c
@@ -97,56 +97,6 @@ static void stow_unstow(uiBlock *block);
/* --------- generic helper drawng calls ---------------- */
-/* supposes you draw the actual box atop of this. */
-void uiSoftShadow(float minx, float miny, float maxx, float maxy, float rad, int alpha)
-{
-
- glShadeModel(GL_SMOOTH);
- glEnable(GL_BLEND);
- glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA );
-
- /* quads start left-top, clockwise */
-
- /* left */
- glBegin(GL_POLYGON);
- glColor4ub(0, 0, 0, 0);
- glVertex2f( minx-rad, maxy-rad);
- glColor4ub(0, 0, 0, alpha);
- glVertex2f( minx+rad, maxy-rad);
- glColor4ub(0, 0, 0, alpha);
- glVertex2f( minx+rad, miny+rad);
- glColor4ub(0, 0, 0, 0);
- glVertex2f( minx-rad, miny-rad);
- glEnd();
-
- /* bottom */
- glBegin(GL_POLYGON);
- glColor4ub(0, 0, 0, alpha);
- glVertex2f( minx+rad, miny+rad);
- glColor4ub(0, 0, 0, alpha);
- glVertex2f( maxx-rad, miny+rad);
- glColor4ub(0, 0, 0, 0);
- glVertex2f( maxx+rad, miny-rad);
- glColor4ub(0, 0, 0, 0);
- glVertex2f( minx-rad, miny-rad);
- glEnd();
-
- /* right */
- glBegin(GL_POLYGON);
- glColor4ub(0, 0, 0, alpha);
- glVertex2f( maxx-rad, maxy-rad);
- glColor4ub(0, 0, 0, 0);
- glVertex2f( maxx+rad, maxy-rad);
- glColor4ub(0, 0, 0, 0);
- glVertex2f( maxx+rad, miny-rad);
- glColor4ub(0, 0, 0, alpha);
- glVertex2f( maxx-rad, miny+rad);
- glEnd();
-
- glDisable(GL_BLEND);
- glShadeModel(GL_FLAT);
-}
-
#define UI_RB_ALPHA 16
static int roundboxtype= 15;
@@ -764,7 +714,7 @@ static void ui_draw_panel_header(uiBlock *block)
BIF_ThemeColor(TH_TEXT_HI);
glRasterPos2f(4+block->minx+pnl_icons, block->maxy+5);
- BIF_DrawString(block->curfont, block->panel->panelname, (U.transopts & TR_BUTTONS), 1);
+ BIF_DrawString(block->curfont, block->panel->panelname, (U.transopts & TR_BUTTONS));
return;
}
@@ -782,7 +732,7 @@ static void ui_draw_panel_header(uiBlock *block)
BIF_ThemeColor(TH_TEXT);
glRasterPos2f(16+pnl_icons+a*width, panel->sizey+4);
str= ui_block_cut_str(block, pa->panelname, (short)(width-10));
- BIF_DrawString(block->curfont, str, (U.transopts & TR_BUTTONS), 0);
+ BIF_DrawString(block->curfont, str, (U.transopts & TR_BUTTONS));
a++;
}
@@ -795,7 +745,7 @@ static void ui_draw_panel_header(uiBlock *block)
BIF_ThemeColor(TH_TEXT_HI);
glRasterPos2f(16+pnl_icons+a*width, panel->sizey+4);
str= ui_block_cut_str(block, pa->panelname, (short)(width-10));
- BIF_DrawString(block->curfont, str, (U.transopts & TR_BUTTONS), 1);
+ BIF_DrawString(block->curfont, str, (U.transopts & TR_BUTTONS));
a++;
}
@@ -833,7 +783,7 @@ void ui_draw_panel(uiBlock *block)
if(panel->control & UI_PNL_CLOSE) ofsx+= PNL_ICON;
BIF_ThemeColor(TH_TEXT_HI);
glRasterPos2f(4+block->minx+ofsx, block->maxy+5);
- BIF_DrawString(block->curfont, panel->panelname, (U.transopts & TR_BUTTONS), 1);
+ BIF_DrawString(block->curfont, panel->panelname, (U.transopts & TR_BUTTONS));
// border
if(panel->flag & PNL_SELECT) {
@@ -863,7 +813,7 @@ void ui_draw_panel(uiBlock *block)
str[0]= panel->panelname[a];
if( isupper(str[0]) ) {
glRasterPos2f(block->minx+5, block->maxy-ofs);
- BIF_DrawString(block->curfont, str, 0, 1);
+ BIF_DrawString(block->curfont, str, 0);
ofs+= 15;
}
}