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>2009-05-20 18:32:15 +0400
committerTon Roosendaal <ton@blender.org>2009-05-20 18:32:15 +0400
commit8f620ea5f0881eaf3a88516030037371aa397443 (patch)
treeda99ba3e23dc0fca5b02bd93a98d2e98c42194f3 /source/blender/editors
parent2e91f1b1555b54784eda5d133d8a3b594d0b8797 (diff)
2.5
- Made Normal (Sphere) button draw with nice AA (check in node editor) - Bugfix in alignment code, collumns were not drawing OK - Picker buttons draw swatches again, and made them work.
Diffstat (limited to 'source/blender/editors')
-rw-r--r--source/blender/editors/interface/interface.c6
-rw-r--r--source/blender/editors/interface/interface_draw.c15
-rw-r--r--source/blender/editors/interface/interface_handlers.c6
-rw-r--r--source/blender/editors/interface/interface_regions.c11
-rw-r--r--source/blender/editors/space_node/node_header.c8
5 files changed, 29 insertions, 17 deletions
diff --git a/source/blender/editors/interface/interface.c b/source/blender/editors/interface/interface.c
index 2bcc1a03923..8184e2e1fa9 100644
--- a/source/blender/editors/interface/interface.c
+++ b/source/blender/editors/interface/interface.c
@@ -612,6 +612,7 @@ static void ui_but_to_pixelrect(rcti *rect, const ARegion *ar, uiBlock *block, u
rect->xmax= floor(getsizex*(0.5+ 0.5*(gx*block->winmat[0][0]+ gy*block->winmat[1][0]+ block->winmat[3][0])));
rect->ymax= floor(getsizey*(0.5+ 0.5*(gx*block->winmat[0][1]+ gy*block->winmat[1][1]+ block->winmat[3][1])));
+
}
/* uses local copy of style, to scale things down, and allow widgets to change stuff */
@@ -2041,6 +2042,7 @@ static void ui_block_do_align_but(uiBlock *block, uiBut *first, int nr)
else if(buts_are_horiz(but, next)) {
/* check if this is already second row */
if( prev && buts_are_horiz(prev, but)==0) {
+ flag &= ~UI_BUT_ALIGN_LEFT;
flag |= UI_BUT_ALIGN_TOP;
/* exception case: bottom row */
if(rows>0) {
@@ -2059,6 +2061,10 @@ static void ui_block_do_align_but(uiBlock *block, uiBut *first, int nr)
flag |= UI_BUT_ALIGN_TOP;
}
else { /* next button switches to new row */
+
+ if(prev && buts_are_horiz(prev, but))
+ flag |= UI_BUT_ALIGN_LEFT;
+
if( (flag & UI_BUT_ALIGN_TOP)==0) { /* stil top row */
if(prev)
flag= UI_BUT_ALIGN_DOWN|UI_BUT_ALIGN_LEFT;
diff --git a/source/blender/editors/interface/interface_draw.c b/source/blender/editors/interface/interface_draw.c
index 8be2084ab01..955abe1aecd 100644
--- a/source/blender/editors/interface/interface_draw.c
+++ b/source/blender/editors/interface/interface_draw.c
@@ -819,7 +819,7 @@ void ui_draw_but_NORMAL(uiBut *but, uiWidgetColors *wcol, rcti *rect)
glTranslatef(rect->xmin + 0.5f*(rect->xmax-rect->xmin), rect->ymin+ 0.5f*(rect->ymax-rect->ymin), 0.0f);
size= (rect->xmax-rect->xmin)/200.f;
glScalef(size, size, size);
-
+
if(displist==0) {
GLUquadricObj *qobj;
@@ -838,13 +838,22 @@ void ui_draw_but_NORMAL(uiBut *but, uiWidgetColors *wcol, rcti *rect)
else glCallList(displist);
/* restore */
- glPopMatrix();
glDisable(GL_LIGHTING);
glDisable(GL_CULL_FACE);
glMaterialfv(GL_FRONT, GL_DIFFUSE, diff);
-
glDisable(GL_LIGHT7);
+ /* AA circle */
+ glEnable(GL_BLEND);
+ glEnable(GL_LINE_SMOOTH );
+ glColor3ubv(wcol->inner);
+ glutil_draw_lined_arc(0.0f, M_PI*2.0, 100.0f, 32);
+ glDisable(GL_BLEND);
+ glDisable(GL_LINE_SMOOTH );
+
+ /* matrix after circle */
+ glPopMatrix();
+
/* enable blender light */
for(a=0; a<8; a++) {
if(old[a])
diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index ed126ed870d..65752423dce 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -311,8 +311,10 @@ static void ui_apply_but_BUTM(bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_BLOCK(bContext *C, uiBut *but, uiHandleButtonData *data)
{
- if(but->type == COL)
- ui_set_but_vectorf(but, data->vec);
+ if(but->type == COL) {
+ if(but->a1 != -1) // this is not a color picker (weak!)
+ ui_set_but_vectorf(but, data->vec);
+ }
else if(ELEM3(but->type, MENU, ICONROW, ICONTEXTROW))
ui_set_but_val(but, data->value);
diff --git a/source/blender/editors/interface/interface_regions.c b/source/blender/editors/interface/interface_regions.c
index 57644e5decc..8474ee17ee0 100644
--- a/source/blender/editors/interface/interface_regions.c
+++ b/source/blender/editors/interface/interface_regions.c
@@ -1054,18 +1054,17 @@ static void ui_update_block_buts_hex(uiBlock *block, char *hexcol)
/* callback to copy from/to palette */
static void do_palette_cb(bContext *C, void *bt1, void *col1)
{
+ wmWindow *win= CTX_wm_window(C);
uiBut *but1= (uiBut *)bt1;
float *col= (float *)col1;
float *fp, hsv[3];
fp= (float *)but1->poin;
- /* XXX 2.50 bad access, how to solve?
- *
- if( (get_qual() & LR_CTRLKEY) ) {
+ if(win->eventstate->ctrl) {
VECCOPY(fp, col);
}
- else*/ {
+ else {
VECCOPY(col, fp);
}
@@ -1205,8 +1204,6 @@ void uiBlockPickerButtons(uiBlock *block, float *col, float *hsv, float *old, ch
// palette
- uiBlockSetEmboss(block, UI_EMBOSSP);
-
bt=uiDefButF(block, COL, retval, "", FPICK+DPICK, 0, BPICK,BPICK, old, 0.0, 0.0, -1, 0, "Old color, click to restore");
uiButSetFunc(bt, do_palette_cb, bt, col);
uiDefButF(block, COL, retval, "", FPICK+DPICK, BPICK+DPICK, BPICK,60-BPICK-DPICK, col, 0.0, 0.0, -1, 0, "Active color");
@@ -1221,8 +1218,6 @@ void uiBlockPickerButtons(uiBlock *block, float *col, float *hsv, float *old, ch
}
uiBlockEndAlign(block);
- uiBlockSetEmboss(block, UI_EMBOSS);
-
// buttons
rgb_to_hsv(col[0], col[1], col[2], hsv, hsv+1, hsv+2);
sprintf(hexcol, "%02X%02X%02X", (unsigned int)(col[0]*255.0), (unsigned int)(col[1]*255.0), (unsigned int)(col[2]*255.0));
diff --git a/source/blender/editors/space_node/node_header.c b/source/blender/editors/space_node/node_header.c
index 002e4eea681..8c48d4b54e1 100644
--- a/source/blender/editors/space_node/node_header.c
+++ b/source/blender/editors/space_node/node_header.c
@@ -702,22 +702,22 @@ void node_header_buttons(const bContext *C, ARegion *ar)
xmax= GetButStringLength("View");
uiDefPulldownBut(block, node_viewmenu, NULL,
- "View", xco, yco-2, xmax-3, 24, "");
+ "View", xco, yco, xmax-3, 20, "");
xco+= xmax;
xmax= GetButStringLength("Select");
uiDefPulldownBut(block, node_selectmenu, NULL,
- "Select", xco, yco-2, xmax-3, 24, "");
+ "Select", xco, yco, xmax-3, 20, "");
xco+= xmax;
xmax= GetButStringLength("Add");
uiDefPulldownBut(block, node_addmenu, NULL,
- "Add", xco, yco-2, xmax-3, 24, "");
+ "Add", xco, yco, xmax-3, 20, "");
xco+= xmax;
xmax= GetButStringLength("Node");
uiDefPulldownBut(block, node_nodemenu, NULL,
- "Node", xco, yco-2, xmax-3, 24, "");
+ "Node", xco, yco, xmax-3, 20, "");
xco+= xmax;
}