On Sat, Oct 07, 2006 at 12:03:15PM +0200, Jens Seidel wrote:
> On Wed, Oct 04, 2006 at 08:56:47AM +0200, Florian Ernst wrote:
> > [ Please CC me on replies as I'm not subscribed. ]
> > 
> > I'm afraid I need help here as I don't know how to proceed.
>  * Split the affected function into two parts so that it even compiles
>    with -O2. See my attached patch. (Because I'm not familar with the code

I forget to attach it ...

Jens
--- blender-2.42a/source/blender/src/interface.c        2006-07-12 
17:28:37.000000000 +0200
+++ blender-2.42a-gcc-4.1/source/blender/src/interface.c        2006-10-07 
11:25:05.000000000 +0200
@@ -3137,6 +3137,7 @@
        ui_block_flush_back(but->block);
 }
 
+void uiBlockPickerButtons_part2(uiBlock **block, float **col, float **hsv, 
short *retval, uiBut **bt, float *offs);
 
 /* color picker, Gimp version. mode: 'f' = floating panel, 'p' =  popup */
 /* col = read/write to, hsv/old/hexcol = memory for temporal use */
@@ -3187,23 +3188,27 @@
        
        bt= uiDefBut(block, TEX, retval, "Hex: ", offs, 140, 140, 20, hexcol, 
0, 8, 0, 0, "Hex triplet for colour (#RRGGBB)");
        uiButSetFunc(bt, do_palette_hex_cb, bt, hexcol);
+        uiBlockPickerButtons_part2(&block, &col, &hsv, &retval, &bt, &offs);
+}
 
-       uiBlockBeginAlign(block);
-       bt= uiDefButF(block, NUMSLI, retval, "R ",      offs, 110, 140,20, col, 
0.0, 1.0, 10, 3, "");
-       uiButSetFunc(bt, do_palette1_cb, bt, hsv);
-       bt= uiDefButF(block, NUMSLI, retval, "G ",      offs, 90, 140,20, 
col+1, 0.0, 1.0, 10, 3, "");
-       uiButSetFunc(bt, do_palette1_cb, bt, hsv);
-       bt= uiDefButF(block, NUMSLI, retval, "B ",      offs, 70, 140,20, 
col+2, 0.0, 1.0, 10, 3, "");
-       uiButSetFunc(bt, do_palette1_cb, bt, hsv);
-       
-       uiBlockBeginAlign(block);
-       bt= uiDefButF(block, NUMSLI, retval, "H ",      offs, 40, 140,20, hsv, 
0.0, 1.0, 10, 3, "");
-       uiButSetFunc(bt, do_palette2_cb, bt, col);
-       bt= uiDefButF(block, NUMSLI, retval, "S ",      offs, 20, 140,20, 
hsv+1, 0.0, 1.0, 10, 3, "");
-       uiButSetFunc(bt, do_palette2_cb, bt, col);
-       bt= uiDefButF(block, NUMSLI, retval, "V ",      offs, 0, 140,20, hsv+2, 
0.0, 1.0, 10, 3, "");
-       uiButSetFunc(bt, do_palette2_cb, bt, col);
-       uiBlockEndAlign(block);
+void uiBlockPickerButtons_part2(uiBlock **block, float **col, float **hsv, 
short *retval, uiBut **bt, float *offs)
+{
+       uiBlockBeginAlign(*block);
+       *bt= uiDefButF(*block, NUMSLI, *retval, "R ",   *offs, 110, 140,20, 
*col, 0.0, 1.0, 10, 3, "");
+       uiButSetFunc(*bt, do_palette1_cb, *bt, hsv);
+       *bt= uiDefButF(*block, NUMSLI, *retval, "G ",   *offs, 90, 140,20, 
*col+1, 0.0, 1.0, 10, 3, "");
+       uiButSetFunc(*bt, do_palette1_cb, *bt, hsv);
+       *bt= uiDefButF(*block, NUMSLI, *retval, "B ",   *offs, 70, 140,20, 
*col+2, 0.0, 1.0, 10, 3, "");
+       uiButSetFunc(*bt, do_palette1_cb, *bt, hsv);
+       
+       uiBlockBeginAlign(*block);
+       *bt= uiDefButF(*block, NUMSLI, *retval, "H ",   *offs, 40, 140,20, 
*hsv, 0.0, 1.0, 10, 3, "");
+       uiButSetFunc(*bt, do_palette2_cb, *bt, *col);
+       *bt= uiDefButF(*block, NUMSLI, *retval, "S ",   *offs, 20, 140,20, 
*hsv+1, 0.0, 1.0, 10, 3, "");
+       uiButSetFunc(*bt, do_palette2_cb, *bt, *col);
+       *bt= uiDefButF(*block, NUMSLI, *retval, "V ",   *offs, 0, 140,20, 
*hsv+2, 0.0, 1.0, 10, 3, "");
+       uiButSetFunc(*bt, do_palette2_cb, *bt, *col);
+       uiBlockEndAlign(*block);
 }
 
 static int ui_do_but_COL(uiBut *but)

Reply via email to