Setting of background colours is now correct.
Made virtual declarations depend on BROKEN_COMPILER define. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -69,6 +69,7 @@ IMPLEMENT_DYNAMIC_CLASS( MyFrame, wxFrame )
|
||||
m_lwin = new wxLayoutWindow(this);
|
||||
m_lwin->SetEventId(ID_CLICK);
|
||||
m_lwin->GetLayoutList().SetEditable(true);
|
||||
m_lwin->Clear(wxROMAN,16,wxNORMAL,wxNORMAL, false);
|
||||
m_lwin->SetFocus();
|
||||
};
|
||||
|
||||
@@ -76,8 +77,6 @@ void
|
||||
MyFrame::AddSampleText(wxLayoutList &llist)
|
||||
{
|
||||
|
||||
llist.Clear(wxROMAN,16,wxNORMAL,wxNORMAL, false);
|
||||
|
||||
llist.Insert("The quick brown fox jumps over the lazy dog.");
|
||||
llist.LineBreak();
|
||||
llist.Insert("Hello ");
|
||||
@@ -114,8 +113,8 @@ MyFrame::AddSampleText(wxLayoutList &llist)
|
||||
llist.Insert("blue");
|
||||
llist.SetFont(-1,-1,-1,-1,-1,"black");
|
||||
llist.Insert(" and ");
|
||||
llist.SetFont(-1,-1,-1,-1,-1,"red","black");
|
||||
llist.Insert("red on black");
|
||||
llist.SetFont(-1,-1,-1,-1,-1,"green","black");
|
||||
llist.Insert("green on black");
|
||||
llist.SetFont(-1,-1,-1,-1,-1,"black","white");
|
||||
llist.Insert(" text.");
|
||||
llist.LineBreak();
|
||||
|
@@ -329,17 +329,8 @@ wxLayoutList::Draw(wxDC &dc, bool findObject, wxPoint const &findCoords)
|
||||
|
||||
//FIXME: who frees the brush, how long does it need to exist?
|
||||
if(m_DefaultSetting)
|
||||
{
|
||||
m_DefaultSetting->Draw(dc,wxPoint(0,0),0,true);
|
||||
dc.SetBackground( wxBrush(* m_DefaultSetting->GetBGColour(),wxSOLID));
|
||||
}
|
||||
else
|
||||
dc.SetBackground( wxBrush(wxColour("White"), wxSOLID) );
|
||||
|
||||
dc.Clear();
|
||||
|
||||
|
||||
|
||||
// we calculate everything for drawing a line, then rewind to the
|
||||
// begin of line and actually draw it
|
||||
i = begin();
|
||||
|
@@ -246,6 +246,9 @@ public:
|
||||
void Clear(int family = wxROMAN, int size=12, int style=wxNORMAL, int weight=wxNORMAL,
|
||||
int underline=0, char const *fg="black", char const *bg="white");
|
||||
|
||||
/// return a pointer to the default settings:
|
||||
wxLayoutObjectCmd const *GetDefaults(void) const { return m_DefaultSetting ; }
|
||||
|
||||
//@}
|
||||
protected:
|
||||
/// font parameters:
|
||||
|
@@ -16,6 +16,10 @@
|
||||
|
||||
#include "wxllist.h"
|
||||
|
||||
#ifdef BROKEN_COMPILER
|
||||
# define virtual
|
||||
#endif
|
||||
|
||||
class wxLayoutWindow : public wxScrolledWindow
|
||||
{
|
||||
public:
|
||||
@@ -23,10 +27,19 @@ public:
|
||||
|
||||
wxLayoutList & GetLayoutList(void) { return m_llist; }
|
||||
|
||||
// clears the window and sets default parameters:
|
||||
void Clear(int family = wxROMAN, int size=12, int style=wxNORMAL, int weight=wxNORMAL,
|
||||
int underline=0, char const *fg="black", char const
|
||||
*bg="white")
|
||||
{
|
||||
GetLayoutList().Clear(family,size,style,weight,underline,fg,bg);
|
||||
SetBackgroundColour( *GetLayoutList().GetDefaults()->GetBGColour());
|
||||
}
|
||||
|
||||
//virtual void OnDraw(wxDC &dc);
|
||||
void OnPaint(wxPaintEvent &WXUNUSED(event));
|
||||
/*virtual*/ void OnMouse(wxMouseEvent& event);
|
||||
/*virtual*/ void OnChar(wxKeyEvent& event);
|
||||
virtual void OnMouse(wxMouseEvent& event);
|
||||
virtual void OnChar(wxKeyEvent& event);
|
||||
void UpdateScrollbars(void);
|
||||
void Print(void);
|
||||
void Erase(void)
|
||||
@@ -34,6 +47,7 @@ public:
|
||||
void SetEventId(int id) { m_EventId = id; }
|
||||
wxPoint const &GetClickPosition(void) const { return
|
||||
m_ClickPosition; }
|
||||
virtual ~wxLayoutList() {} ;
|
||||
private:
|
||||
/// for sending events
|
||||
wxWindow *m_Parent;
|
||||
@@ -49,4 +63,8 @@ private:
|
||||
DECLARE_EVENT_TABLE()
|
||||
};
|
||||
|
||||
#ifdef BROKEN_COMPILER
|
||||
#undef virtual
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user