Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Extra libraries, Code snippets, applications etc. » U++ users applications in progress and useful code snippets, including reference examples! » An OpenGL ctrl for Linux / X11
Re: An OpenGL ctrl for Linux / X11 [message #3633 is a reply to message #3632] Fri, 09 June 2006 18:01 Go to previous messageGo to previous message
cyrion is currently offline  cyrion
Messages: 15
Registered: May 2006
Location: Grenoble, France
Promising Member
Mirek, thanks for your quick answers and your patience.

After many hours checking U++ source code as well as my source code, I think there are some bugs into the core:

pb#1: my widget never receive LAYOUTPOS when the position change. However LAYOUTPOS is received when it is resized.

pb#2: when I put my gl ctrl into a TabCtrl, itself contained into another TabCtrl, my function RectInTopWindow
Rect OpenGLCtrl::RectInTopWindow() const
{
	return GetScreenView() - GetTopCtrl()->GetScreenRect().TopLeft();
}
does not return a good value. I suspect that GetTopCtrl() does not return the good top ctrl.

pb#3: My new x subwindow with a special visual generates X errors when Paint() is called, except if I use my IsGLXVisual variable to prevent DoPaint to create a graphics context.
If I use BackPaint(EXCLUDEPAINT), I can get rid of X errors if I don't call the inherited Ctrl::EventProc(w, event),
 void OpenGLCtrl::EventProc(XWindow& w, XEvent *event)
{
	// Flush 'Expose' events
	while( XCheckWindowEvent( Xdisplay, SubWindow, ExposureMask, event )) {};
	
	if( IsMapped )
		OpenGLPaint();
	
	Ctrl::EventProc(w, event );
}
but in this case the frames surrounding my Ctrl (like InsetFrame for instance) are not displayed anymore.

pb#4: When the app window is resized, my ctrl receive a lot of SHOW events, that make my X subwindow swapping to hide/show state. This slows down the resizing process in this case (that is, a X sub window, not a standard ctrl).

If you have time for that, please look at my source code. It would be a great help for me to find if I made a mistake or don't understand something. At this point, I have no more ideas to make my GL Ctrl working without modifying the U++ core.

Sincerely,
Damien.

[Updated on: Fri, 09 June 2006 18:01]

Report message to a moderator

 
Read Message icon1.gif
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Using DOM like XML parser
Next Topic: Windows Service?
Goto Forum:
  


Current Time: Wed Jun 12 04:02:03 CEST 2024

Total time taken to generate the page: 0.01493 seconds