Added new wxFontDialog,
Added PICFLAGS to parser compilation, Implemented COL_CLICK and wxLC_NO_HEADER git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -875,22 +875,37 @@ void wxListHeaderWindow::OnMouse( wxMouseEvent &event )
|
||||
for (int j = 0; j < m_owner->GetColumnCount(); j++)
|
||||
{
|
||||
xpos += m_owner->GetColumnWidth( j );
|
||||
m_column = j;
|
||||
if ((abs(x-xpos) < 3) && (y < 22))
|
||||
{
|
||||
hit_border = TRUE;
|
||||
m_column = j;
|
||||
break;
|
||||
}
|
||||
if (x-xpos < 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
m_minX = xpos;
|
||||
}
|
||||
|
||||
if (event.LeftDown() && hit_border)
|
||||
if (event.LeftDown())
|
||||
{
|
||||
m_isDragging = TRUE;
|
||||
m_currentX = x;
|
||||
DrawCurrent();
|
||||
CaptureMouse();
|
||||
return;
|
||||
if (hit_border)
|
||||
{
|
||||
m_isDragging = TRUE;
|
||||
m_currentX = x;
|
||||
DrawCurrent();
|
||||
CaptureMouse();
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
wxListEvent le( wxEVT_COMMAND_LIST_COL_CLICK, GetParent()->GetId() );
|
||||
le.SetEventObject( GetParent() );
|
||||
le.m_col = m_column;
|
||||
GetParent()->GetEventHandler()->ProcessEvent( le );
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (event.Moving())
|
||||
@@ -2570,16 +2585,21 @@ void wxListCtrl::SetWindowStyleFlag( long flag )
|
||||
{
|
||||
m_headerWin = new wxListHeaderWindow( this, -1, m_mainWin,
|
||||
wxPoint(0,0), wxSize(width,23), wxTAB_TRAVERSAL );
|
||||
if (HasFlag(wxLC_NO_HEADER))
|
||||
m_headerWin->Show( FALSE );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_headerWin->Show( TRUE );
|
||||
if (flag & wxLC_NO_HEADER)
|
||||
m_headerWin->Show( FALSE );
|
||||
else
|
||||
m_headerWin->Show( TRUE );
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (HasFlag(wxLC_REPORT))
|
||||
if (HasFlag(wxLC_REPORT) && !(HasFlag(wxLC_NO_HEADER)))
|
||||
{
|
||||
m_headerWin->Show( FALSE );
|
||||
}
|
||||
@@ -2943,7 +2963,7 @@ void wxListCtrl::OnIdle( wxIdleEvent &WXUNUSED(event) )
|
||||
int w = 0;
|
||||
int h = 0;
|
||||
|
||||
if (HasFlag(wxLC_REPORT))
|
||||
if (HasFlag(wxLC_REPORT) && !HasFlag(wxLC_NO_HEADER))
|
||||
{
|
||||
m_headerWin->GetPosition( &x, &y );
|
||||
m_headerWin->GetSize( &w, &h );
|
||||
|
@@ -15,6 +15,7 @@
|
||||
#include "wx/utils.h"
|
||||
#include "wx/log.h"
|
||||
#include "wx/gdicmn.h"
|
||||
#include "wx/tokenzr.h"
|
||||
#include <strings.h>
|
||||
|
||||
#include "gdk/gdk.h"
|
||||
@@ -99,14 +100,49 @@ wxFont::wxFont()
|
||||
if (wxTheFontList) wxTheFontList->Append( this );
|
||||
}
|
||||
|
||||
wxFont::wxFont( char *xFontName )
|
||||
wxFont::wxFont( GdkFont *font, char *xFontName )
|
||||
{
|
||||
if (!xFontName) return;
|
||||
|
||||
m_refData = new wxFontRefData();
|
||||
|
||||
M_FONTDATA->m_byXFontName = TRUE;
|
||||
M_FONTDATA->m_font = gdk_font_load( xFontName );
|
||||
// M_FONTDATA->m_byXFontName = TRUE;
|
||||
M_FONTDATA->m_font = font;
|
||||
|
||||
wxString tmp;
|
||||
|
||||
wxString fontname( xFontName );
|
||||
wxStringTokenizer tn( fontname, _T("-") );
|
||||
|
||||
tn.GetNextToken(); // foundry
|
||||
|
||||
M_FONTDATA->m_faceName = tn.GetNextToken(); // courier
|
||||
|
||||
tmp = tn.GetNextToken().MakeUpper();
|
||||
if (tmp == _T("BOLD")) M_FONTDATA->m_weight = wxBOLD;
|
||||
|
||||
tmp = tn.GetNextToken().MakeUpper();
|
||||
if (tmp == _T("I")) M_FONTDATA->m_style = wxITALIC;
|
||||
if (tmp == _T("O")) M_FONTDATA->m_style = wxITALIC;
|
||||
|
||||
tn.GetNextToken(); // set width
|
||||
tn.GetNextToken(); // ?
|
||||
tn.GetNextToken(); // pixel size
|
||||
|
||||
tmp = tn.GetNextToken(); // pointsize
|
||||
int num = wxStrtol (tmp.c_str(), (wxChar **) NULL, 10);
|
||||
M_FONTDATA->m_pointSize = num / 10;
|
||||
|
||||
tn.GetNextToken(); // x-res
|
||||
tn.GetNextToken(); // y-res
|
||||
|
||||
tmp = tn.GetNextToken().MakeUpper();
|
||||
if (tmp == _T("M")) M_FONTDATA->m_family = wxMODERN;
|
||||
else if (M_FONTDATA->m_faceName == _T("TIMES")) M_FONTDATA->m_family = wxROMAN;
|
||||
else if (M_FONTDATA->m_faceName == _T("HELVETICA")) M_FONTDATA->m_family = wxSWISS;
|
||||
else if (M_FONTDATA->m_faceName == _T("LUCIDATYPEWRITER")) M_FONTDATA->m_family = wxTELETYPE;
|
||||
else if (M_FONTDATA->m_faceName == _T("LUCIDA")) M_FONTDATA->m_family = wxDECORATIVE;
|
||||
else if (M_FONTDATA->m_faceName == _T("UTOPIA")) M_FONTDATA->m_family = wxSCRIPT;
|
||||
}
|
||||
|
||||
wxFont::wxFont( int pointSize, int family, int style, int weight, bool underlined, const wxString& face )
|
||||
|
@@ -15,6 +15,7 @@
|
||||
#include "wx/utils.h"
|
||||
#include "wx/log.h"
|
||||
#include "wx/gdicmn.h"
|
||||
#include "wx/tokenzr.h"
|
||||
#include <strings.h>
|
||||
|
||||
#include "gdk/gdk.h"
|
||||
@@ -99,14 +100,49 @@ wxFont::wxFont()
|
||||
if (wxTheFontList) wxTheFontList->Append( this );
|
||||
}
|
||||
|
||||
wxFont::wxFont( char *xFontName )
|
||||
wxFont::wxFont( GdkFont *font, char *xFontName )
|
||||
{
|
||||
if (!xFontName) return;
|
||||
|
||||
m_refData = new wxFontRefData();
|
||||
|
||||
M_FONTDATA->m_byXFontName = TRUE;
|
||||
M_FONTDATA->m_font = gdk_font_load( xFontName );
|
||||
// M_FONTDATA->m_byXFontName = TRUE;
|
||||
M_FONTDATA->m_font = font;
|
||||
|
||||
wxString tmp;
|
||||
|
||||
wxString fontname( xFontName );
|
||||
wxStringTokenizer tn( fontname, _T("-") );
|
||||
|
||||
tn.GetNextToken(); // foundry
|
||||
|
||||
M_FONTDATA->m_faceName = tn.GetNextToken(); // courier
|
||||
|
||||
tmp = tn.GetNextToken().MakeUpper();
|
||||
if (tmp == _T("BOLD")) M_FONTDATA->m_weight = wxBOLD;
|
||||
|
||||
tmp = tn.GetNextToken().MakeUpper();
|
||||
if (tmp == _T("I")) M_FONTDATA->m_style = wxITALIC;
|
||||
if (tmp == _T("O")) M_FONTDATA->m_style = wxITALIC;
|
||||
|
||||
tn.GetNextToken(); // set width
|
||||
tn.GetNextToken(); // ?
|
||||
tn.GetNextToken(); // pixel size
|
||||
|
||||
tmp = tn.GetNextToken(); // pointsize
|
||||
int num = wxStrtol (tmp.c_str(), (wxChar **) NULL, 10);
|
||||
M_FONTDATA->m_pointSize = num / 10;
|
||||
|
||||
tn.GetNextToken(); // x-res
|
||||
tn.GetNextToken(); // y-res
|
||||
|
||||
tmp = tn.GetNextToken().MakeUpper();
|
||||
if (tmp == _T("M")) M_FONTDATA->m_family = wxMODERN;
|
||||
else if (M_FONTDATA->m_faceName == _T("TIMES")) M_FONTDATA->m_family = wxROMAN;
|
||||
else if (M_FONTDATA->m_faceName == _T("HELVETICA")) M_FONTDATA->m_family = wxSWISS;
|
||||
else if (M_FONTDATA->m_faceName == _T("LUCIDATYPEWRITER")) M_FONTDATA->m_family = wxTELETYPE;
|
||||
else if (M_FONTDATA->m_faceName == _T("LUCIDA")) M_FONTDATA->m_family = wxDECORATIVE;
|
||||
else if (M_FONTDATA->m_faceName == _T("UTOPIA")) M_FONTDATA->m_family = wxSCRIPT;
|
||||
}
|
||||
|
||||
wxFont::wxFont( int pointSize, int family, int style, int weight, bool underlined, const wxString& face )
|
||||
|
Reference in New Issue
Block a user