wxArrayString NewWxArrayString(Slice slice) { wxArrayString array; if(slice == NULL) { return array; // Nil slice to empty array. } GoSlice* pGoSlice = (GoSlice*)slice; for(GoInt i = 0; i < pGoSlice->len; i++) { array.Add(NewWxString(((String*)(pGoSlice->data))[i])); } return array; }
WxObjectPtr wxButton_New(WxObjectPtr parent, int id, String label, Point* pos, Size* size, long style, WxObjectPtr validator, String name) { return new wxButton((wxWindow*)parent, id, NewWxString(label), pos ? *((wxPoint*)pos) : wxDefaultPosition, size ? *((wxSize*)size) : wxDefaultSize, style, validator ? *(wxValidator*)validator : wxDefaultValidator, NewWxString(name)); }
WxObjectPtr wxFileDialog_New(WxWindowPtr parent, String message, String defaultDir, String defaultFile, String wildcard, long style, Point* pos, Size* size, String name) { wxString msg = message ? NewWxString(message) : wxFileSelectorPromptStr; return new wxFileDialog((wxWindow*)parent, msg, NewWxString(defaultDir), NewWxString(defaultFile), NewWxString(wildcard), style, NewWxPoint(pos), NewWxSize(size), NewWxString(name)); }