Implemented Checkbox.SetChecked() on Mac OS X and updated the README.
This commit is contained in:
parent
ebbd76716f
commit
20821c26eb
|
@ -5,8 +5,9 @@ Woah, lots of attention! Thanks!
|
||||||
## Updates
|
## Updates
|
||||||
|
|
||||||
- **26 June 2014**
|
- **26 June 2014**
|
||||||
- Controls in Windows can now be spaced apart more naturally. Call `w.SetSpaced(true)` to opt in. **Whether this will remain opt-in or whether the name will change is still unknown at this point.**
|
-- Controls in Windows can now be spaced apart more naturally. Call `w.SetSpaced(true)` to opt in. **Whether this will remain opt-in or whether the name will change is still unknown at this point.**
|
||||||
- There's a new function `Layout()` which provides high-level layout creation. The function was written by [boppreh](https://github.com/boppreh) and details can be found [here](https://github.com/andlabs/ui/pull/19). **Whether this function will stay in the main package or be moved to a subpackage is still unknown.**
|
-- There's a new function `Layout()` which provides high-level layout creation. The function was written by [boppreh](https://github.com/boppreh) and details can be found [here](https://github.com/andlabs/ui/pull/19). **Whether this function will stay in the main package or be moved to a subpackage is still unknown.**
|
||||||
|
-- There is now `Checkbox.SetChecked()` to set the check state of a Checkbox programmatically.
|
||||||
|
|
||||||
- **25 June 2014**<br>Labels by default now align themselves relative to the control they are next to. There is a new function `NewStandaloneLabel()` which returns a label whose text is aligned to the top-left corner of the alloted space regardless.
|
- **25 June 2014**<br>Labels by default now align themselves relative to the control they are next to. There is a new function `NewStandaloneLabel()` which returns a label whose text is aligned to the top-left corner of the alloted space regardless.
|
||||||
|
|
||||||
|
|
|
@ -123,6 +123,7 @@ extern void windowSetContentSize(id, intptr_t, intptr_t);
|
||||||
extern void setProgress(id, intptr_t);
|
extern void setProgress(id, intptr_t);
|
||||||
extern void setAreaSize(id, intptr_t, intptr_t);
|
extern void setAreaSize(id, intptr_t, intptr_t);
|
||||||
extern void center(id);
|
extern void center(id);
|
||||||
|
extern void setCheckboxChecked(id, BOOL);
|
||||||
|
|
||||||
/* combobox_darwin.m */
|
/* combobox_darwin.m */
|
||||||
extern id makeCombobox(BOOL);
|
extern id makeCombobox(BOOL);
|
||||||
|
|
|
@ -422,3 +422,13 @@ func (s *sysData) center() {
|
||||||
}
|
}
|
||||||
<-ret
|
<-ret
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *sysData) setChecked(checked bool) {
|
||||||
|
ret := make(chan struct{})
|
||||||
|
defer close(ret)
|
||||||
|
uitask <- func() {
|
||||||
|
C.setCheckboxChecked(s.id, toBOOL(checked))
|
||||||
|
ret <- struct{}{}
|
||||||
|
}
|
||||||
|
<-ret
|
||||||
|
}
|
||||||
|
|
|
@ -228,3 +228,13 @@ void center(id w)
|
||||||
{
|
{
|
||||||
[toNSWindow(w) center];
|
[toNSWindow(w) center];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void setCheckboxChecked(id checkbox, BOOL check)
|
||||||
|
{
|
||||||
|
// -[NSButton setState:] takes a NSInteger but the state constants are NSCellStateValue which is NSUInteger (despite NSMixedState being -1); let's play it safe here
|
||||||
|
if (check) {
|
||||||
|
[toNSButton(checkbox) setState:NSOnState];
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
[toNSButton(checkbox) setState:NSOffState];
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue