Corrected miniframe.

Changed wxTB_HORIZONTAL to be wxHORIZONTAL, not wxVERTICAL..


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@5148 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
1999-12-29 22:12:42 +00:00
parent 54b9688254
commit 5d5b3a40f3
4 changed files with 98 additions and 32 deletions

View File

@@ -885,13 +885,13 @@ enum wxStretch
/* /*
* wxToolBar style flags * wxToolBar style flags
*/ */
#define wxTB_3DBUTTONS 0x8000 #define wxTB_HORIZONTAL wxHORIZONTAL
#define wxTB_HORIZONTAL 0x0002 #define wxTB_VERTICAL wxVERTICAL
#define wxTB_VERTICAL 0x0004 #define wxTB_3DBUTTONS 0x0010
// Flatbar/Coolbar under Win98/ GTK 1.2 // Flatbar/Coolbar under Win98/ GTK 1.2
#define wxTB_FLAT 0x0008 #define wxTB_FLAT 0x0020
// use native docking under GTK // use native docking under GTK
#define wxTB_DOCKABLE 0x0010 #define wxTB_DOCKABLE 0x0040
/* /*
* wxMenuBar style flags * wxMenuBar style flags

View File

@@ -53,17 +53,17 @@ bool MyApp::OnInit(void)
{ {
// Create the mini frame window // Create the mini frame window
mini_frame = new MyMiniFrame((wxFrame *) NULL, -1, "wxMiniFrame sample", mini_frame = new MyMiniFrame((wxFrame *) NULL, -1, "wxMiniFrame sample",
wxPoint(100, 100), wxSize(205, 100)); wxPoint(100, 100), wxSize(220, 100));
mini_frame_exists = TRUE; mini_frame_exists = TRUE;
mini_frame->CreateToolBar(wxNO_BORDER|wxHORIZONTAL|wxTB_FLAT, ID_TOOLBAR); mini_frame->CreateToolBar(wxNO_BORDER|wxTB_HORIZONTAL|wxTB_FLAT, ID_TOOLBAR);
InitToolbar(mini_frame->GetToolBar()); InitToolbar(mini_frame->GetToolBar());
// Create the main frame window // Create the main frame window
main_frame = new MyMainFrame((wxFrame *) NULL, -1, "wxFrame sample", main_frame = new MyMainFrame((wxFrame *) NULL, -1, "wxFrame sample",
wxPoint(100, 100), wxSize(300, 200)); wxPoint(100, 100), wxSize(300, 200));
main_frame->CreateToolBar(wxNO_BORDER|wxHORIZONTAL, ID_TOOLBAR); main_frame->CreateToolBar(wxNO_BORDER|wxTB_VERTICAL, ID_TOOLBAR);
InitToolbar(main_frame->GetToolBar()); InitToolbar(main_frame->GetToolBar());
button = new wxButton( main_frame, ID_REPARENT, "Press to reparent!" ); button = new wxButton( main_frame, ID_REPARENT, "Press to reparent!" );

View File

@@ -87,19 +87,17 @@ static void gtk_window_own_expose_callback( GtkWidget *widget, GdkEventExpose *g
{ {
GdkGC *gc = gdk_gc_new( pizza->bin_window ); GdkGC *gc = gdk_gc_new( pizza->bin_window );
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0); GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
int x = 2;
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 18;
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] ); gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
gdk_draw_rectangle( pizza->bin_window, gc, TRUE, gdk_draw_rectangle( pizza->bin_window, gc, TRUE,
x,
3, 3,
win->m_width - 4 - x, 3,
win->m_width - 7,
font->ascent + font->descent+1 ); font->ascent + font->descent+1 );
gdk_gc_set_foreground( gc, &widget->style->white ); gdk_gc_set_foreground( gc, &widget->style->white );
gdk_draw_string( pizza->bin_window, font, gc, gdk_draw_string( pizza->bin_window, font, gc,
x+2, 6,
3+font->ascent, 3+font->ascent,
win->m_title.mb_str() ); win->m_title.mb_str() );
@@ -133,19 +131,17 @@ static void gtk_window_own_draw_callback( GtkWidget *widget, GdkRectangle *WXUNU
{ {
GdkGC *gc = gdk_gc_new( pizza->bin_window ); GdkGC *gc = gdk_gc_new( pizza->bin_window );
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0); GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
int x = 2;
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 17;
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] ); gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
gdk_draw_rectangle( pizza->bin_window, gc, TRUE, gdk_draw_rectangle( pizza->bin_window, gc, TRUE,
x,
3, 3,
win->m_width - 4 - x, 3,
win->m_width - 7,
font->ascent + font->descent+1 ); font->ascent + font->descent+1 );
gdk_gc_set_foreground( gc, &widget->style->white ); gdk_gc_set_foreground( gc, &widget->style->white );
gdk_draw_string( pizza->bin_window, font, gc, gdk_draw_string( pizza->bin_window, font, gc,
x+2, 6,
3+font->ascent, 3+font->ascent,
win->m_title.mb_str() ); win->m_title.mb_str() );
@@ -273,6 +269,33 @@ static void gtk_button_clicked_callback( GtkWidget *WXUNUSED(widget), wxMiniFram
// wxMiniFrame // wxMiniFrame
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
static char *cross_xpm[] = {
/* columns rows colors chars-per-pixel */
"5 5 16 1",
" c Gray0",
". c #bf0000",
"X c #00bf00",
"o c #bfbf00",
"O c #0000bf",
"+ c #bf00bf",
"@ c #00bfbf",
"# c None",
"$ c #808080",
"% c Red",
"& c Green",
"* c Yellow",
"= c Blue",
"- c Magenta",
"; c Cyan",
": c Gray100",
/* pixels */
" ### ",
"# # #",
"## ##",
"# # #",
" ### ",
};
IMPLEMENT_DYNAMIC_CLASS(wxMiniFrame,wxFrame) IMPLEMENT_DYNAMIC_CLASS(wxMiniFrame,wxFrame)
bool wxMiniFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title, bool wxMiniFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title,
@@ -297,11 +320,21 @@ bool wxMiniFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title
if ((style & wxSYSTEM_MENU) && if ((style & wxSYSTEM_MENU) &&
((style & wxCAPTION) || (style & wxTINY_CAPTION_HORIZ) || (style & wxTINY_CAPTION_VERT))) ((style & wxCAPTION) || (style & wxTINY_CAPTION_HORIZ) || (style & wxTINY_CAPTION_VERT)))
{ {
GtkWidget *close_button = gtk_button_new_with_label( "x" ); GdkBitmap *mask = (GdkBitmap*) NULL;
GdkWindow *parent = (GdkWindow*) &gdk_root_parent;
GdkPixmap *pixmap = gdk_pixmap_create_from_xpm_d( parent, &mask, NULL, cross_xpm );
GtkWidget *pw = gtk_pixmap_new( pixmap, mask );
gdk_bitmap_unref( mask );
gdk_pixmap_unref( pixmap );
gtk_widget_show( pw );
GtkWidget *close_button = gtk_button_new();
gtk_container_add( GTK_CONTAINER(close_button), pw );
gtk_pizza_put( GTK_PIZZA(m_mainWidget), gtk_pizza_put( GTK_PIZZA(m_mainWidget),
close_button, close_button,
4, 4, 12, 11 ); size.x-16, 4, 11, 11 );
gtk_widget_show( close_button ); gtk_widget_show( close_button );

View File

@@ -87,19 +87,17 @@ static void gtk_window_own_expose_callback( GtkWidget *widget, GdkEventExpose *g
{ {
GdkGC *gc = gdk_gc_new( pizza->bin_window ); GdkGC *gc = gdk_gc_new( pizza->bin_window );
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0); GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
int x = 2;
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 18;
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] ); gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
gdk_draw_rectangle( pizza->bin_window, gc, TRUE, gdk_draw_rectangle( pizza->bin_window, gc, TRUE,
x,
3, 3,
win->m_width - 4 - x, 3,
win->m_width - 7,
font->ascent + font->descent+1 ); font->ascent + font->descent+1 );
gdk_gc_set_foreground( gc, &widget->style->white ); gdk_gc_set_foreground( gc, &widget->style->white );
gdk_draw_string( pizza->bin_window, font, gc, gdk_draw_string( pizza->bin_window, font, gc,
x+2, 6,
3+font->ascent, 3+font->ascent,
win->m_title.mb_str() ); win->m_title.mb_str() );
@@ -133,19 +131,17 @@ static void gtk_window_own_draw_callback( GtkWidget *widget, GdkRectangle *WXUNU
{ {
GdkGC *gc = gdk_gc_new( pizza->bin_window ); GdkGC *gc = gdk_gc_new( pizza->bin_window );
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0); GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
int x = 2;
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 17;
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] ); gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
gdk_draw_rectangle( pizza->bin_window, gc, TRUE, gdk_draw_rectangle( pizza->bin_window, gc, TRUE,
x,
3, 3,
win->m_width - 4 - x, 3,
win->m_width - 7,
font->ascent + font->descent+1 ); font->ascent + font->descent+1 );
gdk_gc_set_foreground( gc, &widget->style->white ); gdk_gc_set_foreground( gc, &widget->style->white );
gdk_draw_string( pizza->bin_window, font, gc, gdk_draw_string( pizza->bin_window, font, gc,
x+2, 6,
3+font->ascent, 3+font->ascent,
win->m_title.mb_str() ); win->m_title.mb_str() );
@@ -273,6 +269,33 @@ static void gtk_button_clicked_callback( GtkWidget *WXUNUSED(widget), wxMiniFram
// wxMiniFrame // wxMiniFrame
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
static char *cross_xpm[] = {
/* columns rows colors chars-per-pixel */
"5 5 16 1",
" c Gray0",
". c #bf0000",
"X c #00bf00",
"o c #bfbf00",
"O c #0000bf",
"+ c #bf00bf",
"@ c #00bfbf",
"# c None",
"$ c #808080",
"% c Red",
"& c Green",
"* c Yellow",
"= c Blue",
"- c Magenta",
"; c Cyan",
": c Gray100",
/* pixels */
" ### ",
"# # #",
"## ##",
"# # #",
" ### ",
};
IMPLEMENT_DYNAMIC_CLASS(wxMiniFrame,wxFrame) IMPLEMENT_DYNAMIC_CLASS(wxMiniFrame,wxFrame)
bool wxMiniFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title, bool wxMiniFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title,
@@ -297,11 +320,21 @@ bool wxMiniFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title
if ((style & wxSYSTEM_MENU) && if ((style & wxSYSTEM_MENU) &&
((style & wxCAPTION) || (style & wxTINY_CAPTION_HORIZ) || (style & wxTINY_CAPTION_VERT))) ((style & wxCAPTION) || (style & wxTINY_CAPTION_HORIZ) || (style & wxTINY_CAPTION_VERT)))
{ {
GtkWidget *close_button = gtk_button_new_with_label( "x" ); GdkBitmap *mask = (GdkBitmap*) NULL;
GdkWindow *parent = (GdkWindow*) &gdk_root_parent;
GdkPixmap *pixmap = gdk_pixmap_create_from_xpm_d( parent, &mask, NULL, cross_xpm );
GtkWidget *pw = gtk_pixmap_new( pixmap, mask );
gdk_bitmap_unref( mask );
gdk_pixmap_unref( pixmap );
gtk_widget_show( pw );
GtkWidget *close_button = gtk_button_new();
gtk_container_add( GTK_CONTAINER(close_button), pw );
gtk_pizza_put( GTK_PIZZA(m_mainWidget), gtk_pizza_put( GTK_PIZZA(m_mainWidget),
close_button, close_button,
4, 4, 12, 11 ); size.x-16, 4, 11, 11 );
gtk_widget_show( close_button ); gtk_widget_show( close_button );