46 if (theBorderSize.x < 0 && theBorderSize.y < 0)
48 drawpic_builtin(theOrigin, pic, theSize, theColor, theAlpha, 0);
51 if (theBorderSize.x == 0 && theBorderSize.y == 0)
54 drawsubpic(theOrigin, theSize, pic,
'0.25 0.25 0',
'0.5 0.5 0', theColor, theAlpha, 0);
62 width =
eX * theSize.x;
64 if (theSize.x <= theBorderSize.x * 2)
67 bW =
eX * (0.25 * theSize.x / (theBorderSize.x * 2));
68 if (theSize.y <= theBorderSize.y * 2)
71 bH =
eY * (0.25 * theSize.y / (theBorderSize.y * 2));
72 drawsubpic(theOrigin, width * 0.5 +
height * 0.5, pic,
'0 0 0', bW + bH, theColor, theAlpha, 0);
73 drawsubpic(theOrigin + width * 0.5, width * 0.5 +
height * 0.5, pic,
eX - bW, bW + bH, theColor, theAlpha, 0);
75 drawsubpic(theOrigin + theSize * 0.5, width * 0.5 +
height * 0.5, pic,
eX +
eY - bW - bH, bW + bH, theColor, theAlpha, 0);
79 dY = theBorderSize.x *
eY;
80 drawsubpic(theOrigin, width * 0.5 + dY, pic,
'0 0 0',
'0 0.25 0' + bW, theColor, theAlpha, 0);
81 drawsubpic(theOrigin + width * 0.5, width * 0.5 + dY, pic,
'0 0 0' +
eX - bW,
'0 0.25 0' + bW, theColor, theAlpha, 0);
82 drawsubpic(theOrigin + dY, width * 0.5 +
height - 2 * dY, pic,
'0 0.25 0',
'0 0.5 0' + bW, theColor, theAlpha, 0);
83 drawsubpic(theOrigin + width * 0.5 + dY, width * 0.5 +
height - 2 * dY, pic,
'0 0.25 0' +
eX - bW,
'0 0.5 0' + bW, theColor, theAlpha, 0);
84 drawsubpic(theOrigin +
height - dY, width * 0.5 + dY, pic,
'0 0.75 0',
'0 0.25 0' + bW, theColor, theAlpha, 0);
85 drawsubpic(theOrigin + width * 0.5 +
height - dY, width * 0.5 + dY, pic,
'0 0.75 0' +
eX - bW,
'0 0.25 0' + bW, theColor, theAlpha, 0);
90 if (theSize.y <= theBorderSize.y * 2)
93 bH =
eY * (0.25 * theSize.y / (theBorderSize.y * 2));
94 dX = theBorderSize.x *
eX;
95 drawsubpic(theOrigin, dX +
height * 0.5, pic,
'0 0 0',
'0.25 0 0' + bH, theColor, theAlpha, 0);
96 drawsubpic(theOrigin + dX, width - 2 * dX +
height * 0.5, pic,
'0.25 0 0',
'0.5 0 0' + bH, theColor, theAlpha, 0);
97 drawsubpic(theOrigin + width - dX, dX +
height * 0.5, pic,
'0.75 0 0',
'0.25 0 0' + bH, theColor, theAlpha, 0);
98 drawsubpic(theOrigin +
height * 0.5, dX +
height * 0.5, pic,
'0 0 0' +
eY - bH,
'0.25 0 0' + bH, theColor, theAlpha, 0);
99 drawsubpic(theOrigin + dX +
height * 0.5, width - 2 * dX +
height * 0.5, pic,
'0.25 0 0' +
eY - bH,
'0.5 0 0' + bH, theColor, theAlpha, 0);
100 drawsubpic(theOrigin + width - dX +
height * 0.5, dX +
height * 0.5, pic,
'0.75 0 0' +
eY - bH,
'0.25 0 0' + bH, theColor, theAlpha, 0);
104 dX = theBorderSize.x *
eX;
105 dY = theBorderSize.x *
eY;
106 drawsubpic(theOrigin, dX + dY, pic,
'0 0 0',
'0.25 0.25 0', theColor, theAlpha, 0);
107 drawsubpic(theOrigin + dX, width - 2 * dX + dY, pic,
'0.25 0 0',
'0.5 0.25 0', theColor, theAlpha, 0);
108 drawsubpic(theOrigin + width - dX, dX + dY, pic,
'0.75 0 0',
'0.25 0.25 0', theColor, theAlpha, 0);
109 drawsubpic(theOrigin + dY, dX +
height - 2 * dY, pic,
'0 0.25 0',
'0.25 0.5 0', theColor, theAlpha, 0);
110 drawsubpic(theOrigin + dY + dX, width - 2 * dX +
height - 2 * dY, pic,
'0.25 0.25 0',
'0.5 0.5 0', theColor, theAlpha, 0);
111 drawsubpic(theOrigin + dY + width - dX, dX +
height - 2 * dY, pic,
'0.75 0.25 0',
'0.25 0.5 0', theColor, theAlpha, 0);
112 drawsubpic(theOrigin +
height - dY, dX + dY, pic,
'0 0.75 0',
'0.25 0.25 0', theColor, theAlpha, 0);
113 drawsubpic(theOrigin +
height - dY + dX, width - 2 * dX + dY, pic,
'0.25 0.75 0',
'0.5 0.25 0', theColor, theAlpha, 0);
114 drawsubpic(theOrigin +
height - dY + width - dX, dX + dY, pic,
'0.75 0.75 0',
'0.25 0.25 0', theColor, theAlpha, 0);