#endif // wxUSE_THREADS
+//-----------------------------------------------------------------------------
+// Access to the root window global
+//-----------------------------------------------------------------------------
+
+GtkWidget* wxGetRootWindow()
+{
+ if (gs_RootWindow == NULL)
+ {
+ gs_RootWindow = gtk_window_new( GTK_WINDOW_TOPLEVEL );
+ gtk_widget_realize( gs_RootWindow );
+ }
+ return gs_RootWindow;
+}
+
//-----------------------------------------------------------------------------
// wxApp
//-----------------------------------------------------------------------------
// if this is a wxGLApp (derived from wxApp), and we've already
// chosen a specific visual, then derive the GdkVisual from that
- if (m_glVisualInfo != NULL) {
+ if (m_glVisualInfo != NULL)
+ {
#ifdef __WXGTK20__
- /* seems gtk_widget_set_default_visual no longer exists? */
+ // seems gtk_widget_set_default_visual no longer exists?
GdkVisual* vis = gtk_widget_get_default_visual();
#else
GdkVisual* vis = gdkx_visual_get(
visual = vis;
}
- /* on some machines, the default visual is just 256 colours, so
- we make sure we get the best. this can sometimes be wasteful,
- of course, but what do these guys pay $30.000 for? */
+ // On some machines, the default visual is just 256 colours, so
+ // we make sure we get the best. This can sometimes be wasteful.
- else if ((gdk_visual_get_best() != gdk_visual_get_system()) &&
- (m_useBestVisual))
+ else
+ if ((gdk_visual_get_best() != gdk_visual_get_system()) && (m_useBestVisual))
{
#ifdef __WXGTK20__
/* seems gtk_widget_set_default_visual no longer exists? */
visual = vis;
}
- /* Nothing to do for 15, 16, 24, 32 bit displays */
+ // Nothing to do for 15, 16, 24, 32 bit displays
if (visual->depth > 8) return TRUE;
- /* initialize color cube for 8-bit color reduction dithering */
+ // initialize color cube for 8-bit color reduction dithering
GdkColormap *cmap = gtk_widget_get_default_colormap();
}
else
{
-#if (GTK_MINOR_VERSION > 0)
- /* assume 8-bit true or static colors. this really
- exists. */
+ // assume 8-bit true or static colors. this really exists
GdkVisual* vis = gdk_colormap_get_visual( cmap );
index = (r >> (5 - vis->red_prec)) << vis->red_shift;
index |= (g >> (5 - vis->green_prec)) << vis->green_shift;
index |= (b >> (5 - vis->blue_prec)) << vis->blue_shift;
-#else
- wxFAIL_MSG( wxT("Unsupported graphics hardware") );
-#endif
}
m_colorCube[ (r*1024) + (g*32) + b ] = index;
}
return TRUE;
}
+GdkVisual *wxApp::GetGdkVisual()
+{
+ GdkVisual *visual = NULL;
+
+ if (m_glVisualInfo)
+ visual = gdkx_visual_get( ((XVisualInfo *) m_glVisualInfo)->visualid );
+ else
+ visual = gdk_window_get_visual( wxGetRootWindow()->window );
+
+ wxASSERT( visual );
+
+ return visual;
+}
+
bool wxApp::ProcessIdle()
{
wxIdleEvent event;
#endif // wxUSE_LOG
}
-//-----------------------------------------------------------------------------
-// Access to the root window global
-//-----------------------------------------------------------------------------
-
-GtkWidget* wxGetRootWindow()
-{
- if (gs_RootWindow == NULL) {
- gs_RootWindow = gtk_window_new( GTK_WINDOW_TOPLEVEL );
- gtk_widget_realize( gs_RootWindow );
- }
- return gs_RootWindow;
-}
-
//-----------------------------------------------------------------------------
// wxEntry
//-----------------------------------------------------------------------------
int wxEntryStart( int& argc, char *argv[] )
{
#if wxUSE_THREADS
- /* GTK 1.2 up to version 1.2.3 has broken threads */
- if ((gtk_major_version == 1) &&
+ // GTK 1.2 up to version 1.2.3 has broken threads
+ if ((gtk_major_version == 1) &&
(gtk_minor_version == 2) &&
(gtk_micro_version < 4))
{
}
-
int wxEntry( int argc, char *argv[] )
{
#if (defined(__WXDEBUG__) && wxUSE_MEMORY_TRACING) || wxUSE_DEBUG_CONTEXT
#ifndef __WXUNIVERSAL__
+// XPM hack: make the arrays const
+#define static static const
+
#include "wx/gtk/info.xpm"
#include "wx/gtk/error.xpm"
#include "wx/gtk/question.xpm"
#include "wx/gtk/warning.xpm"
+#undef static
+
wxIcon wxApp::GetStdIcon(int which) const
{
switch(which)