Added a fix to taskbar; minor mods to help controllers; added justification

options to wxButton and wxBitmapButton


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_2_BRANCH@7235 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2000-04-21 19:15:49 +00:00
parent 6917fd5dee
commit f9bcbc2e9c
6 changed files with 57 additions and 10 deletions

View File

@@ -75,12 +75,25 @@ bool wxBitmapButton::Create(wxWindow *parent, wxWindowID id, const wxBitmap& bit
if ( height == -1 && bitmap.Ok())
height = bitmap.GetHeight() + 2*m_marginY;
long msStyle = WS_VISIBLE | WS_TABSTOP | WS_CHILD | BS_OWNERDRAW ;
#ifdef __WIN32__
if(m_windowStyle & wxBU_LEFT)
msStyle |= BS_LEFT;
if(m_windowStyle & wxBU_RIGHT)
msStyle |= BS_RIGHT;
if(m_windowStyle & wxBU_TOP)
msStyle |= BS_TOP;
if(m_windowStyle & wxBU_BOTTOM)
msStyle |= BS_BOTTOM;
#endif
m_hWnd = (WXHWND)CreateWindowEx
(
0,
wxT("BUTTON"),
wxT(""),
WS_VISIBLE | WS_TABSTOP | WS_CHILD | BS_OWNERDRAW ,
msStyle,
0, 0, 0, 0,
GetWinHwnd(parent),
(HMENU)m_windowId,
@@ -103,6 +116,9 @@ void wxBitmapButton::SetBitmapLabel(const wxBitmap& bitmap)
m_buttonBitmap = bitmap;
}
// VZ: should be at the very least less than wxDEFAULT_BUTTON_MARGIN
#define FOCUS_MARGIN 3
bool wxBitmapButton::MSWOnDraw(WXDRAWITEMSTRUCT *item)
{
#if defined(__WIN95__)
@@ -144,8 +160,22 @@ bool wxBitmapButton::MSWOnDraw(WXDRAWITEMSTRUCT *item)
int height = lpDIS->rcItem.bottom - y;
int wBmp = bitmap->GetWidth();
int hBmp = bitmap->GetHeight();
int x1 = x + (width - wBmp) / 2;
int y1 = y + (height - hBmp) / 2;
int x1,y1;
if(m_windowStyle & wxBU_LEFT)
x1 = x + (FOCUS_MARGIN+1);
else if(m_windowStyle & wxBU_RIGHT)
x1 = x + (width - wBmp) - (FOCUS_MARGIN+1);
else
x1 = x + (width - wBmp) / 2;
if(m_windowStyle & wxBU_TOP)
y1 = y + (FOCUS_MARGIN+1);
else if(m_windowStyle & wxBU_BOTTOM)
y1 = y + (height - hBmp) - (FOCUS_MARGIN+1);
else
y1 = y + (height - hBmp) / 2;
if ( isSelected && autoDraw )
{
@@ -308,9 +338,6 @@ void wxBitmapButton::DrawFace( WXHDC dc, int left, int top, int right, int botto
#endif // defined(__WIN95__)
// VZ: should be at the very least less than wxDEFAULT_BUTTON_MARGIN
#define FOCUS_MARGIN 3
void wxBitmapButton::DrawButtonFocus( WXHDC dc, int left, int top, int right, int bottom, bool sel )
{
RECT rect;

View File

@@ -74,13 +74,25 @@ bool wxButton::Create(wxWindow *parent,
m_backgroundColour = parent->GetBackgroundColour();
m_foregroundColour = parent->GetForegroundColour();
long msStyle = WS_VISIBLE | WS_TABSTOP | WS_CHILD;
#ifdef __WIN32__
if(m_windowStyle & wxBU_LEFT)
msStyle |= BS_LEFT;
if(m_windowStyle & wxBU_RIGHT)
msStyle |= BS_RIGHT;
if(m_windowStyle & wxBU_TOP)
msStyle |= BS_TOP;
if(m_windowStyle & wxBU_BOTTOM)
msStyle |= BS_BOTTOM;
#endif
m_hWnd = (WXHWND)CreateWindowEx
(
MakeExtendedStyle(m_windowStyle),
wxT("BUTTON"),
label,
WS_VISIBLE | WS_TABSTOP | WS_CHILD,
msStyle,
0, 0, 0, 0,
GetWinHwnd(parent),
(HMENU)m_windowId,

View File

@@ -59,6 +59,7 @@ bool wxCHMHelpController::Initialize(const wxString& filename)
bool wxCHMHelpController::LoadFile(const wxString& file)
{
if (!file.IsEmpty())
m_helpFile = file;
return TRUE;
}

View File

@@ -55,6 +55,7 @@ bool wxWinHelpController::Initialize(const wxString& filename)
bool wxWinHelpController::LoadFile(const wxString& file)
{
if (!file.IsEmpty())
m_helpFile = file;
return TRUE;
}

View File

@@ -615,7 +615,7 @@ rcparser:
nmake -f makefile.vc FINAL=$(FINAL)
cd $(WXDIR)\src\msw
cleanall: clean_png clean_zlib clean_xpm clean_jpeg clean_tiff
cleanall: clean clean_png clean_zlib clean_xpm clean_jpeg clean_tiff
-erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).dll
-erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).lib
-erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).exp

View File

@@ -182,8 +182,14 @@ bool wxTaskBarIcon::PopupMenu(wxMenu *menu) //, int x, int y);
menu->UpdateUI();
// Work around a WIN32 bug
::SetForegroundWindow ((HWND) win->GetHWND ());
rval = win->PopupMenu(menu, 0, 0);
// Work around a WIN32 bug
::PostMessage ((HWND) win->GetHWND(),WM_NULL,0,0L);
win->PopEventHandler(FALSE);
win->Destroy();
delete win;