Settled uiWindow show/hide differences.
This commit is contained in:
parent
283ae5329e
commit
a390aac089
|
@ -134,9 +134,9 @@ void uiControlDisable(uiControl *c)
|
||||||
void controlUpdateState(uiControl *c)
|
void controlUpdateState(uiControl *c)
|
||||||
{
|
{
|
||||||
if (controlContainerVisible(c))
|
if (controlContainerVisible(c))
|
||||||
osCommitShow(c);
|
(*(c->CommitShow))(c);
|
||||||
else
|
else
|
||||||
osCommitHide(c);
|
(*(c->CommitHide))(c);
|
||||||
if (controlContainerEnabled(c))
|
if (controlContainerEnabled(c))
|
||||||
osCommitEnable(c);
|
osCommitEnable(c);
|
||||||
else
|
else
|
||||||
|
|
|
@ -21,20 +21,15 @@ void uiDarwinControlTriggerRelayout(uiDarwinControl *c)
|
||||||
(*(c->Relayout))(uiDarwinControl(c));
|
(*(c->Relayout))(uiDarwinControl(c));
|
||||||
}
|
}
|
||||||
|
|
||||||
void osCommitShow(uiControl *c)
|
static void defaultCommitShow(uiControl *c)
|
||||||
{
|
{
|
||||||
NSView *view;
|
NSView *view;
|
||||||
|
|
||||||
view = (NSView *) uiControlHandle(c);
|
view = (NSView *) uiControlHandle(c);
|
||||||
// TODO
|
|
||||||
if ([view isKindOfClass:[NSWindow class]]) {
|
|
||||||
[view makeKeyAndOrderFront:view];
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
[view setHidden:NO];
|
[view setHidden:NO];
|
||||||
}
|
}
|
||||||
|
|
||||||
void osCommitHide(uiControl *c)
|
static void defaultCommitHide(uiControl *c)
|
||||||
{
|
{
|
||||||
NSView *view;
|
NSView *view;
|
||||||
|
|
||||||
|
@ -69,6 +64,8 @@ void uiDarwinFinishControl(uiControl *c)
|
||||||
// TODO omit this for uiWindow properly
|
// TODO omit this for uiWindow properly
|
||||||
if ([view respondsToSelector:@selector(setTranslatesAutoresizingMaskIntoConstraints:)])
|
if ([view respondsToSelector:@selector(setTranslatesAutoresizingMaskIntoConstraints:)])
|
||||||
[view setTranslatesAutoresizingMaskIntoConstraints:NO];
|
[view setTranslatesAutoresizingMaskIntoConstraints:NO];
|
||||||
|
c->CommitShow = defaultCommitShow;
|
||||||
|
c->CommitHide = defaultCommitHide;
|
||||||
}
|
}
|
||||||
|
|
||||||
void uiDarwinSetControlFont(NSControl *c, NSControlSize size)
|
void uiDarwinSetControlFont(NSControl *c, NSControlSize size)
|
||||||
|
|
|
@ -216,8 +216,8 @@ uiWindow *uiNewWindow(const char *title, int width, int height, int hasMenubar)
|
||||||
uiWindowOnClosing(w, defaultOnClosing, NULL);
|
uiWindowOnClosing(w, defaultOnClosing, NULL);
|
||||||
|
|
||||||
uiDarwinFinishNewControl(w, uiWindow);
|
uiDarwinFinishNewControl(w, uiWindow);
|
||||||
//TODO uiControl(w)->CommitShow = windowCommitShow;
|
uiControl(w)->CommitShow = windowCommitShow;
|
||||||
//TODO uiControl(w)->CommitHide = windowCommitHide;
|
uiControl(w)->CommitHide = windowCommitHide;
|
||||||
uiControl(w)->ContainerUpdateState = windowContainerUpdateState;
|
uiControl(w)->ContainerUpdateState = windowContainerUpdateState;
|
||||||
uiDarwinControl(w)->Relayout = windowRelayout;
|
uiDarwinControl(w)->Relayout = windowRelayout;
|
||||||
|
|
||||||
|
|
|
@ -55,6 +55,8 @@ struct uiControl {
|
||||||
void *Internal; // for use by libui only
|
void *Internal; // for use by libui only
|
||||||
void (*CommitDestroy)(uiControl *);
|
void (*CommitDestroy)(uiControl *);
|
||||||
uintptr_t (*Handle)(uiControl *);
|
uintptr_t (*Handle)(uiControl *);
|
||||||
|
void (*CommitShow)(uiControl *);
|
||||||
|
void (*CommitHide)(uiControl *);
|
||||||
void (*ContainerUpdateState)(uiControl *);
|
void (*ContainerUpdateState)(uiControl *);
|
||||||
};
|
};
|
||||||
_UI_EXTERN uintmax_t uiControlType(void);
|
_UI_EXTERN uintmax_t uiControlType(void);
|
||||||
|
|
|
@ -19,8 +19,6 @@ extern int isToplevel(uiControl *);
|
||||||
extern uiControl *toplevelOwning(uiControl *);
|
extern uiControl *toplevelOwning(uiControl *);
|
||||||
extern void controlUpdateState(uiControl *);
|
extern void controlUpdateState(uiControl *);
|
||||||
|
|
||||||
extern void osCommitShow(uiControl *);
|
|
||||||
extern void osCommitHide(uiControl *);
|
|
||||||
extern void osCommitEnable(uiControl *);
|
extern void osCommitEnable(uiControl *);
|
||||||
extern void osCommitDisable(uiControl *);
|
extern void osCommitDisable(uiControl *);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue