mirror of https://github.com/encounter/SDL.git
winrt: Another attempt at getting this to compile.
IntPtr isn't a POD type like I thought, so hopefully we can just construct one that works out? C++/CX is so weird.
This commit is contained in:
parent
b131661c6d
commit
ea171c0564
|
@ -82,7 +82,7 @@ WINRT_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid)
|
||||||
sdlButton = &messageboxdata->buttons[i];
|
sdlButton = &messageboxdata->buttons[i];
|
||||||
}
|
}
|
||||||
UICommand ^ button = ref new UICommand(WINRT_UTF8ToPlatformString(sdlButton->text));
|
UICommand ^ button = ref new UICommand(WINRT_UTF8ToPlatformString(sdlButton->text));
|
||||||
button->Id = (IntPtr)((size_t)(sdlButton - messageboxdata->buttons));
|
button->Id = IntPtr((int)((size_t)(sdlButton - messageboxdata->buttons)));
|
||||||
dialog->Commands->Append(button);
|
dialog->Commands->Append(button);
|
||||||
if (sdlButton->flags & SDL_MESSAGEBOX_BUTTON_ESCAPEKEY_DEFAULT) {
|
if (sdlButton->flags & SDL_MESSAGEBOX_BUTTON_ESCAPEKEY_DEFAULT) {
|
||||||
dialog->CancelCommandIndex = i;
|
dialog->CancelCommandIndex = i;
|
||||||
|
@ -104,7 +104,7 @@ WINRT_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid)
|
||||||
return SDL_SetError("An unknown error occurred in displaying the WinRT MessageDialog");
|
return SDL_SetError("An unknown error occurred in displaying the WinRT MessageDialog");
|
||||||
}
|
}
|
||||||
if (buttonid) {
|
if (buttonid) {
|
||||||
IntPtr results = (IntPtr)((size_t)(operation->GetResults()->Id));
|
IntPtr results = safe_cast<IntPtr>(operation->GetResults()->Id);
|
||||||
int clicked_index = results.ToInt32();
|
int clicked_index = results.ToInt32();
|
||||||
*buttonid = messageboxdata->buttons[clicked_index].buttonid;
|
*buttonid = messageboxdata->buttons[clicked_index].buttonid;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue