- Joined
- Mar 28, 2008
- Messages
- 2,669
- Reaction score
- 798
- Points
- 128
Is there any special flags required in order to create a working window for Orbiter add-on. I know there is a special OAPI call to create a dialog but that probably won't work because I need to open an OpenGL rendering context.
staticchar *WNDC_NAME={"IFPlanner\0"};
memset(&wndc, 0, sizeof(wndc));
wndc.lpszClassName = WNDC_NAME;
wndc.style = CS_VREDRAW|CS_HREDRAW|CS_OWNDC;
wndc.lpfnWndProc = WndProc;
wndc.hInstance = hModIns;
wndc.hIcon = NULL;
wndc.hCursor = NULL;
wndc.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);
RegisterClass(&wndc);
hWnd = CreateWindow(WNDC_NAME, "Interplanetary Flight Planner\0",
WS_OVERLAPPEDWINDOW | WS_CLIPSIBLINGS | WS_CLIPCHILDREN,
CW_USEDEFAULT, CW_USEDEFAULT, WindowWidth, WindowHeight, hParentWnd, hMnu, hModIns, NULL);
//
// Create Pixel Format
//
PIXELFORMATDESCRIPTOR pfd;
memset(&pfd, 0, sizeof(pfd));
pfd.nSize = sizeof(PIXELFORMATDESCRIPTOR);
pfd.nVersion = 1;
pfd.dwFlags = PFD_DRAW_TO_WINDOW|PFD_SUPPORT_OPENGL|PFD_GENERIC_ACCELERATED|PFD_DOUBLEBUFFER;
pfd.iPixelType = PFD_TYPE_RGBA;
pfd.cColorBits = 0;
pfd.cDepthBits = 32;
pfd.cStencilBits = 16;
pfd.cAlphaBits = 8;
staticchar *WNDC_NAME={"IFPlanner\0"};
memset(&wndc, 0, sizeof(wndc));
wndc.lpszClassName = WNDC_NAME;
wndc.style = CS_VREDRAW|CS_HREDRAW|CS_OWNDC;
wndc.lpfnWndProc = WndProc;
wndc.hInstance = hModIns;
wndc.hIcon = NULL;
wndc.hCursor = NULL;
wndc.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);
RegisterClass(&wndc);
hWnd = CreateWindow(WNDC_NAME, "Interplanetary Flight Planner\0",
WS_OVERLAPPEDWINDOW | WS_CLIPSIBLINGS | WS_CLIPCHILDREN,
CW_USEDEFAULT, CW_USEDEFAULT, WindowWidth, WindowHeight, hParentWnd, hMnu, hModIns, NULL);
//
// Create Pixel Format
//
PIXELFORMATDESCRIPTOR pfd;
memset(&pfd, 0, sizeof(pfd));
pfd.nSize = sizeof(PIXELFORMATDESCRIPTOR);
pfd.nVersion = 1;
pfd.dwFlags = PFD_DRAW_TO_WINDOW|PFD_SUPPORT_OPENGL|PFD_GENERIC_ACCELERATED|PFD_DOUBLEBUFFER;
pfd.iPixelType = PFD_TYPE_RGBA;
pfd.cColorBits = 0;
pfd.cDepthBits = 32;
pfd.cStencilBits = 16;
pfd.cAlphaBits = 8;
Last edited: