rework things a bit.

also remove some useless variables.
This commit is contained in:
StapleButter 2017-10-05 00:13:22 +02:00
parent 5b71ffceee
commit 9d3f13b689
10 changed files with 43 additions and 6 deletions

View File

@ -66,8 +66,7 @@ void uiControlSetMinSize(uiControl *c, int w, int h)
{
c->MinWidth = w;
c->MinHeight = h;
// TODO: resize if needed
(*(c->SetMinSize))(c, w, h);
}
#define uiControlSignature 0x7569436F

View File

@ -73,6 +73,7 @@ struct uiControl {
void (*Enable)(uiControl *);
void (*Disable)(uiControl *);
void (*SetFocus)(uiControl *);
void (*SetMinSize)(uiControl*, int, int);
int MinWidth, MinHeight;
};

View File

@ -107,6 +107,10 @@ _UI_EXTERN void uiWindowsControlChildVisibilityChanged(uiWindowsControl *);
{ \
SetFocus(type(c)->hwnd); \
}
#define uiWindowsControlDefaultSetMinSize(type) \
static void type ## SetMinSize(uiControl *c, int w, int h) \
{ \
}
#define uiWindowsControlDefaultSyncEnableState(type) \
static void type ## SyncEnableState(uiWindowsControl *c, int enabled) \
{ \
@ -158,6 +162,7 @@ _UI_EXTERN void uiWindowsControlChildVisibilityChanged(uiWindowsControl *);
uiWindowsControlDefaultEnable(type) \
uiWindowsControlDefaultDisable(type) \
uiWindowsControlDefaultSetFocus(type) \
uiWindowsControlDefaultSetMinSize(type) \
uiWindowsControlDefaultSyncEnableState(type) \
uiWindowsControlDefaultSetParentHWND(type) \
uiWindowsControlDefaultMinimumSizeChanged(type) \
@ -184,6 +189,7 @@ _UI_EXTERN void uiWindowsControlChildVisibilityChanged(uiWindowsControl *);
uiControl(var)->Enable = type ## Enable; \
uiControl(var)->Disable = type ## Disable; \
uiControl(var)->SetFocus = type ## SetFocus; \
uiControl(var)->SetMinSize = type ## SetMinSize; \
uiWindowsControl(var)->SyncEnableState = type ## SyncEnableState; \
uiWindowsControl(var)->SetParentHWND = type ## SetParentHWND; \
uiWindowsControl(var)->MinimumSize = type ## MinimumSize; \

View File

@ -38,7 +38,6 @@ static void boxRelayout(uiBox *b)
int i;
int minimumWidth, minimumHeight;
int nVisible;
uiWindowsSizing *d;
if (b->controls->size() == 0)
return;
@ -165,10 +164,8 @@ static void uiBoxMinimumSize(uiWindowsControl *c, int *width, int *height)
// these two contain the largest minimum width and height of all stretchy controls in the box
// all stretchy controls will use this value to determine the final minimum size
int maxStretchyWidth, maxStretchyHeight;
int i;
int minimumWidth, minimumHeight;
int nVisible;
uiWindowsSizing sizing;
*width = 0;
*height = 0;
@ -235,6 +232,12 @@ static void uiBoxMinimumSizeChanged(uiWindowsControl *c)
boxRelayout(b);
}
static void uiBoxSetMinSize(uiControl *c, int w, int h)
{
// checkme
uiBoxMinimumSizeChanged(uiWindowsControl(c));
}
uiWindowsControlDefaultLayoutRect(uiBox)
uiWindowsControlDefaultAssignControlIDZOrder(uiBox)

View File

@ -87,7 +87,6 @@ static void hsv2RGB(double h, double s, double v, double *r, double *g, double *
int h60;
double x;
double m;
double c1, c2;
c = v * s;
hPrime = h * 6;

View File

@ -232,6 +232,12 @@ static void uiFormMinimumSizeChanged(uiWindowsControl *c)
formRelayout(f);
}
static void uiFormSetMinSize(uiControl *c, int w, int h)
{
// checkme
uiFormMinimumSizeChanged(uiWindowsControl(c));
}
uiWindowsControlDefaultLayoutRect(uiForm)
uiWindowsControlDefaultAssignControlIDZOrder(uiForm)

View File

@ -516,6 +516,12 @@ static void uiGridMinimumSizeChanged(uiWindowsControl *c)
gridRelayout(g);
}
static void uiGridSetMinSize(uiControl *c, int w, int h)
{
// checkme
uiGridMinimumSizeChanged(uiWindowsControl(c));
}
uiWindowsControlDefaultLayoutRect(uiGrid)
uiWindowsControlDefaultAssignControlIDZOrder(uiGrid)

View File

@ -119,6 +119,12 @@ static void uiGroupMinimumSizeChanged(uiWindowsControl *c)
groupRelayout(g);
}
static void uiGroupSetMinSize(uiControl *c, int w, int h)
{
// checkme
uiGroupMinimumSizeChanged(uiWindowsControl(c));
}
uiWindowsControlDefaultLayoutRect(uiGroup)
uiWindowsControlDefaultAssignControlIDZOrder(uiGroup)

View File

@ -164,6 +164,12 @@ static void uiTabMinimumSizeChanged(uiWindowsControl *c)
tabRelayout(t);
}
static void uiTabSetMinSize(uiControl *c, int w, int h)
{
// checkme
uiTabMinimumSizeChanged(uiWindowsControl(c));
}
uiWindowsControlDefaultLayoutRect(uiTab)
uiWindowsControlDefaultAssignControlIDZOrder(uiTab)

View File

@ -309,6 +309,11 @@ static void uiWindowLayoutRect(uiWindowsControl *c, RECT *r)
uiWindowsEnsureGetClientRect(w->hwnd, r);
}
static void uiWindowSetMinSize(uiControl *c, int w, int h)
{
// TODO: relayout, eventually
}
uiWindowsControlDefaultAssignControlIDZOrder(uiWindow)
static void uiWindowChildVisibilityChanged(uiWindowsControl *c)