tree 46b4d59cbfb1
parent adac5aad395d author Edward Rudd <urkle@outoforder.cc> 1351362890 14400 committer Edward Rudd <urkle@outoforder.cc> 1351362890 14400 revision 6611 branch default add test to show off the new MessageBox API
This commit is contained in:
parent
cec424390e
commit
d44d7c1989
2 changed files with 91 additions and 1 deletions
|
@ -47,6 +47,7 @@ TARGETS = \
|
|||
testwm2$(EXE) \
|
||||
torturethread$(EXE) \
|
||||
testrendercopyex$(EXE) \
|
||||
testmessage$(EXE) \
|
||||
|
||||
all: Makefile $(TARGETS)
|
||||
|
||||
|
@ -189,7 +190,10 @@ torturethread$(EXE): $(srcdir)/torturethread.c
|
|||
|
||||
testrendercopyex$(EXE): $(srcdir)/testrendercopyex.c $(srcdir)/common.c
|
||||
$(CC) -o $@ $^ $(CFLAGS) $(LIBS) @MATHLIB@
|
||||
|
||||
|
||||
testmessage$(EXE): $(srcdir)/testmessage.c
|
||||
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
|
||||
|
||||
clean:
|
||||
rm -f $(TARGETS)
|
||||
|
||||
|
|
86
test/testmessage.c
Normal file
86
test/testmessage.c
Normal file
|
@ -0,0 +1,86 @@
|
|||
/*
|
||||
Copyright (C) 1997-2011 Sam Lantinga <slouken@libsdl.org>
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
arising from the use of this software.
|
||||
|
||||
Permission is granted to anyone to use this software for any purpose,
|
||||
including commercial applications, and to alter it and redistribute it
|
||||
freely.
|
||||
*/
|
||||
|
||||
/* Simple test of the SDL MessageBox API*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <signal.h>
|
||||
|
||||
#include "SDL.h"
|
||||
#include "SDL_thread.h"
|
||||
|
||||
static int alive = 0;
|
||||
|
||||
/* Call this instead of exit(), so we can clean up SDL: atexit() is evil. */
|
||||
static void
|
||||
quit(int rc)
|
||||
{
|
||||
SDL_Quit();
|
||||
exit(rc);
|
||||
}
|
||||
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
int success;
|
||||
|
||||
/* Load the SDL library */
|
||||
if (SDL_Init(0) < 0) {
|
||||
fprintf(stderr, "Couldn't initialize SDL: %s\n", SDL_GetError());
|
||||
return (1);
|
||||
}
|
||||
|
||||
success = SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_ERROR,
|
||||
"Simple MessageBox",
|
||||
"This is a simple error MessageBox",
|
||||
NULL);
|
||||
if (success == -1) {
|
||||
printf("Error Presenting MessageBox: %s\n", SDL_GetError());
|
||||
quit(1);
|
||||
}
|
||||
|
||||
{
|
||||
const SDL_MessageBoxButtonData buttons[] = {
|
||||
{
|
||||
SDL_MESSAGEBOX_BUTTON_RETURNKEY_DEFAULT,
|
||||
0,
|
||||
"OK"
|
||||
},{
|
||||
SDL_MESSAGEBOX_BUTTON_ESCAPEKEY_DEFAULT,
|
||||
1,
|
||||
"Cancel"
|
||||
},
|
||||
};
|
||||
|
||||
SDL_MessageBoxData data = {
|
||||
SDL_MESSAGEBOX_INFORMATION,
|
||||
NULL, // no parent window
|
||||
"Custom MessageBox",
|
||||
"This is a custom messagebox",
|
||||
2,
|
||||
buttons,
|
||||
NULL // Default color scheme
|
||||
};
|
||||
|
||||
int button = -1;
|
||||
success = SDL_ShowMessageBox(&data, &button);
|
||||
if (success == -1) {
|
||||
printf("Error Presenting MessageBox: %s\n", SDL_GetError());
|
||||
quit(2);
|
||||
}
|
||||
printf("Pressed button: %d, %s\n", button, button == 1 ? "Cancel" : "OK");
|
||||
}
|
||||
|
||||
SDL_Quit();
|
||||
return (0);
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue