Fixed event handling for DialogEd

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@647 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
1998-09-02 12:15:35 +00:00
parent f4a8c29f7a
commit 2f2aa6287b
16 changed files with 528 additions and 588 deletions

View File

@@ -23,20 +23,25 @@
#include "wx/dcclient.h"
#include "wx/gtk/win_gtk.h"
//-----------------------------------------------------------------------------
// constants
//-----------------------------------------------------------------------------
const int wxMENU_HEIGHT = 28;
const int wxSTATUS_HEIGHT = 25;
//-----------------------------------------------------------------------------
// data
//-----------------------------------------------------------------------------
extern wxList wxTopLevelWindows;
extern wxList wxPendingDelete;
//-----------------------------------------------------------------------------
// wxFrame
// "size_allocate"
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// set size
void gtk_frame_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* alloc, wxFrame *win )
static void gtk_frame_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* alloc, wxFrame *win )
{
if (!win->HasVMT()) return;
@@ -51,9 +56,10 @@ void gtk_frame_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* alloc,
}
//-----------------------------------------------------------------------------
// delete
// "delete_event"
//-----------------------------------------------------------------------------
bool gtk_frame_delete_callback( GtkWidget *WXUNUSED(widget), GdkEvent *WXUNUSED(event), wxFrame *win )
static gint gtk_frame_delete_callback( GtkWidget *WXUNUSED(widget), GdkEvent *WXUNUSED(event), wxFrame *win )
{
/*
printf( "OnDelete from " );
@@ -68,9 +74,10 @@ bool gtk_frame_delete_callback( GtkWidget *WXUNUSED(widget), GdkEvent *WXUNUSED(
}
//-----------------------------------------------------------------------------
// configure
// "configure_event"
//-----------------------------------------------------------------------------
gint gtk_frame_configure_callback( GtkWidget *WXUNUSED(widget), GdkEventConfigure *event, wxFrame *win )
static gint gtk_frame_configure_callback( GtkWidget *WXUNUSED(widget), GdkEventConfigure *event, wxFrame *win )
{
if (!win->HasVMT()) return FALSE;
@@ -80,6 +87,8 @@ gint gtk_frame_configure_callback( GtkWidget *WXUNUSED(widget), GdkEventConfigur
return FALSE;
}
//-----------------------------------------------------------------------------
// wxFrame
//-----------------------------------------------------------------------------
BEGIN_EVENT_TABLE(wxFrame, wxWindow)
@@ -268,9 +277,12 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height
m_width = width;
m_height = height;
if ((m_minWidth != -1) && (m_width < m_minWidth)) m_width = m_minWidth;
if ((m_minHeight != -1) && (m_height < m_minHeight)) m_height = m_minHeight;
if ((m_maxWidth != -1) && (m_width > m_maxWidth)) m_width = m_minWidth;
if ((m_maxHeight != -1) && (m_height > m_maxHeight)) m_height = m_minHeight;
// VZ: why??
//gtk_widget_set_usize( m_widget, width, height );
gtk_widget_set_usize( m_widget, width, height );
int main_x = 0;
int main_y = 0;
@@ -368,7 +380,7 @@ void wxFrame::AddChild( wxWindow *child )
{
// wxFrame and wxDialog as children aren't placed into the parents
if (IS_KIND_OF(child,wxMDIChildFrame)) printf( "wxFrame::AddChild error.\n" );
if (IS_KIND_OF(child,wxMDIChildFrame)) wxFAIL_MSG( "wxFrame::AddChild error.\n" );
if ( IS_KIND_OF(child,wxFrame) || IS_KIND_OF(child,wxDialog))
{
@@ -515,21 +527,6 @@ void wxFrame::SetTitle( const wxString &title )
gtk_window_set_title( GTK_WINDOW(m_widget), title );
}
void wxFrame::SetSizeHints(int minW, int minH,
int WXUNUSED(maxW), int WXUNUSED(maxH),
int WXUNUSED(incW), int WXUNUSED(incH) )
{
// gdk_window_set_hints alone doesn't really prevent the user from shrinking
// the window to the size smaller than (minW, minH)
gtk_widget_set_usize( GTK_WIDGET(m_widget), minW, minH );
/*
gdk_window_set_hints( m_widget->window, -1, -1,
minW, minH, maxW, maxH,
GDK_HINT_MIN_SIZE | GDK_HINT_MAX_SIZE );
*/
}
void wxFrame::SetIcon( const wxIcon &icon )
{
m_icon = icon;