mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 10:22:45 -04:00
support scrn resize
This commit is contained in:
parent
00173a3c50
commit
47358d87bd
@ -291,3 +291,36 @@ get_config_showbase() {
|
||||
return config_showbase;
|
||||
}
|
||||
|
||||
// klunky interface since we cant pass array from python->C++ to use verify_window_sizes directly
|
||||
static unsigned int num_fullscreen_testsizes=0;
|
||||
#define MAX_FULLSCREEN_TESTS 10
|
||||
static unsigned int fullscreen_testsizes[MAX_FULLSCREEN_TESTS*2];
|
||||
|
||||
void add_fullscreen_testsize(unsigned int xsize,unsigned int ysize) {
|
||||
if((xsize==0) && (ysize==0)) {
|
||||
num_fullscreen_testsizes=0;
|
||||
return;
|
||||
}
|
||||
|
||||
// silently fail if maxtests exceeded
|
||||
if(num_fullscreen_testsizes<MAX_FULLSCREEN_TESTS) {
|
||||
fullscreen_testsizes[num_fullscreen_testsizes*2]=xsize;
|
||||
fullscreen_testsizes[num_fullscreen_testsizes*2+1]=ysize;
|
||||
num_fullscreen_testsizes++;
|
||||
}
|
||||
}
|
||||
|
||||
void runtest_fullscreen_sizes(GraphicsWindow *win) {
|
||||
(void) win->verify_window_sizes(num_fullscreen_testsizes,fullscreen_testsizes);
|
||||
}
|
||||
|
||||
bool query_fullscreen_testresult(unsigned int xsize,unsigned int ysize) {
|
||||
// stupid linear search that works ok as long as total tests are small
|
||||
for(int i=0;i<num_fullscreen_testsizes;i++) {
|
||||
if((fullscreen_testsizes[i*2]==xsize) &&
|
||||
(fullscreen_testsizes[i*2+1]==ysize))
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -55,6 +55,11 @@ EXPCL_DIRECT bool toggle_wireframe(NodeRelation *render_arc);
|
||||
EXPCL_DIRECT bool toggle_texture(NodeRelation *render_arc);
|
||||
EXPCL_DIRECT bool toggle_backface(NodeRelation *render_arc);
|
||||
|
||||
// klunky interface since we cant pass array from python->C++
|
||||
EXPCL_DIRECT void add_fullscreen_testsize(unsigned int xsize,unsigned int ysize);
|
||||
EXPCL_DIRECT void runtest_fullscreen_sizes(GraphicsWindow *win);
|
||||
EXPCL_DIRECT bool query_fullscreen_testresult(unsigned int xsize,unsigned int ysize);
|
||||
|
||||
EXPCL_DIRECT void take_snapshot(GraphicsWindow *win, const string &name);
|
||||
|
||||
EXPCL_DIRECT ConfigShowbase &get_config_showbase();
|
||||
|
Loading…
x
Reference in New Issue
Block a user