From: Julian Smart Date: Thu, 13 Jan 2000 10:41:43 +0000 (+0000) Subject: Fixed read-only colour for wxTextCtrl (TODO: wxComboBox) and fixed makeproj X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/d47ebd1e0567a5d4fd60f23eed0439db778fb328 Fixed read-only colour for wxTextCtrl (TODO: wxComboBox) and fixed makeproj in line with recent sample changes git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@5370 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/msw/textctrl.cpp b/src/msw/textctrl.cpp index fa1c2a47c5..162933d4c1 100644 --- a/src/msw/textctrl.cpp +++ b/src/msw/textctrl.cpp @@ -152,9 +152,6 @@ bool wxTextCtrl::Create(wxWindow *parent, wxWindowID id, if ( parent ) parent->AddChild(this); - // set colours - SetupColours(); - // translate wxWin style flags to MSW ones, checking for consistency while // doing it long msStyle = ES_LEFT | WS_VISIBLE | WS_CHILD | WS_TABSTOP; @@ -316,6 +313,9 @@ bool wxTextCtrl::Create(wxWindow *parent, wxWindowID id, } #endif + // set colours + SetupColours(); + SetSize(pos.x, pos.y, size.x, size.y); return TRUE; @@ -354,7 +354,14 @@ void wxTextCtrl::AdoptAttributesFromHWND() void wxTextCtrl::SetupColours() { // FIXME why is bg colour not inherited from parent? - SetBackgroundColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_WINDOW)); + + wxColour bkgndColour; + if (IsEditable()) + bkgndColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_WINDOW); + else + bkgndColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DFACE); + + SetBackgroundColour(bkgndColour); SetForegroundColour(GetParent()->GetForegroundColour()); } @@ -516,8 +523,16 @@ bool wxTextCtrl::CanPaste() const void wxTextCtrl::SetEditable(bool editable) { + bool isEditable = IsEditable(); + HWND hWnd = GetHwnd(); SendMessage(hWnd, EM_SETREADONLY, (WPARAM)!editable, (LPARAM)0L); + + if (editable != isEditable) + { + SetupColours(); + Refresh(); + } } void wxTextCtrl::SetInsertionPoint(long pos) diff --git a/utils/projgen/makeproj.cpp b/utils/projgen/makeproj.cpp index 00f16d9161..4b7fcda40f 100644 --- a/utils/projgen/makeproj.cpp +++ b/utils/projgen/makeproj.cpp @@ -203,8 +203,9 @@ void MyApp::GenerateSamples(const wxString& dir) // Small bug. Because we don't distinguish between Debug/DebugDLL, Release/ReleaseDLL, // we can't yet make a sample that uses other wxWindows static libraries + the wxWindows DLL library. - GenerateSample("BombsVC", "bombs", dir + wxString("/samples/bombs"), - wxStringList("bombs.cpp", "bombs1.cpp", "game.cpp", "bombs.h", "game.h", 0)); + //// Samples + + GenerateSample("CalendarVC", "calendar", dir + wxString("/samples/calendar"), wxStringList("calendar.cpp", 0)); GenerateSample("CaretVC", "caret", dir + wxString("/samples/caret"), wxStringList("caret.cpp", 0)); GenerateSample("CheckLstVC", "checklst", dir + wxString("/samples/checklst"), wxStringList("checklst.cpp", 0)); GenerateSample("ConfigVC", "conftest", dir + wxString("/samples/config"), wxStringList("conftest.cpp", 0)); @@ -220,11 +221,6 @@ void MyApp::GenerateSamples(const wxString& dir) wxStringList("docview.cpp", "doc.cpp", "view.cpp", "docview.h", "doc.h", "view.h", 0)); GenerateSample("DynamicVC", "dynamic", dir + wxString("/samples/dynamic"), wxStringList("dynamic.cpp", 0)); GenerateSample("DrawingVC", "drawing", dir + wxString("/samples/drawing"), wxStringList("drawing.cpp", 0)); - GenerateSample("FortyVC", "forty", dir + wxString("/samples/forty"), - wxStringList("forty.cpp", "canvas.cpp", "card.cpp", "game.cpp", "pile.cpp", "playerdg.cpp", "scoredg.cpp", "scorefil.cpp", - "canvas.h", "forty.h", "card.h", "game.h", "pile.h", "playerdg.h", "scoredg.h", "scorefil.h", - 0)); - GenerateSample("FractalVC", "fractal", dir + wxString("/samples/fractal"), wxStringList("fractal.cpp", 0)); GenerateSample("GridVC", "test", dir + wxString("/samples/grid"), wxStringList("test.cpp", 0)); GenerateSample("NewGridVC", "griddemo", dir + wxString("/samples/newgrid"), wxStringList("griddemo.cpp", 0)); GenerateSample("HelpVC", "demo", dir + wxString("/samples/help"), wxStringList("demo.cpp", 0)); @@ -259,7 +255,7 @@ void MyApp::GenerateSamples(const wxString& dir) GenerateSample("MiniframVC", "test", dir + wxString("/samples/minifram"), wxStringList("test.cpp", "test.h", 0)); GenerateSample("MinimalVC", "minimal", dir + wxString("/samples/minimal"), wxStringList("minimal.cpp", 0)); GenerateSample("NativdlgVC", "nativdlg", dir + wxString("/samples/nativdlg"), wxStringList("nativdlg.cpp", "nativdlg.h", "resource.h", 0)); - GenerateSample("NettestVC", "nettest", dir + wxString("/samples/nettest"), wxStringList("nettest.cpp", 0)); + GenerateSample("DialupVC", "nettest", dir + wxString("/samples/dialup"), wxStringList("nettest.cpp", 0)); GenerateSample("NotebookVC", "test", dir + wxString("/samples/notebook"), wxStringList("test.cpp", "test.h", 0)); GenerateSample("OleautoVC", "oleauto", dir + wxString("/samples/oleauto"), wxStringList("oleauto.cpp", 0)); GenerateSample("OwnerdrwVC", "ownerdrw", dir + wxString("/samples/ownerdrw"), wxStringList("ownerdrw.cpp", 0)); @@ -281,9 +277,8 @@ void MyApp::GenerateSamples(const wxString& dir) GenerateSample("TreectrlVC", "treetest", dir + wxString("/samples/treectrl"), wxStringList("treetest.cpp", "treetest.h", 0)); GenerateSample("TypetestVC", "typetest", dir + wxString("/samples/typetest"), wxStringList("typetest.cpp", "typetest.h", 0)); GenerateSample("ValidateVC", "validate", dir + wxString("/samples/validate"), wxStringList("validate.cpp", "validate.h", 0)); - GenerateSample("ClientVC", "client", dir + wxString("/samples/wxsocket"), wxStringList("client.cpp", 0)); - GenerateSample("ServerVC", "server", dir + wxString("/samples/wxsocket"), wxStringList("server.cpp", 0)); - GenerateSample("PoemVC", "wxpoem", dir + wxString("/samples/wxpoem"), wxStringList("wxpoem.cpp", "wxpoem.h", 0)); + GenerateSample("ClientVC", "client", dir + wxString("/samples/socket"), wxStringList("client.cpp", 0)); + GenerateSample("ServerVC", "server", dir + wxString("/samples/socket"), wxStringList("server.cpp", 0)); GenerateSample("ClientVC", "client", dir + wxString("/samples/dde"), wxStringList("client.cpp", "client.h", "ddesetup.h", 0)); GenerateSample("ServerVC", "server", dir + wxString("/samples/dde"), wxStringList("server.cpp", "server.h", "ddesetup.h", 0)); GenerateSample("CaretVC", "caret", dir + wxString("/samples/caret"), wxStringList("caret.cpp", 0)); @@ -291,6 +286,23 @@ void MyApp::GenerateSamples(const wxString& dir) GenerateSample("ScrollVC", "scroll", dir + wxString("/samples/scroll"), wxStringList("scroll.cpp", 0)); GenerateSample("WizardVC", "wizard", dir + wxString("/samples/wizard"), wxStringList("wiztest.cpp", 0)); + //// Demos + + GenerateSample("BombsVC", "bombs", dir + wxString("/demos/bombs"), + wxStringList("bombs.cpp", "bombs1.cpp", "game.cpp", "bombs.h", "game.h", 0)); + + GenerateSample("FortyVC", "forty", dir + wxString("/demos/forty"), + wxStringList("forty.cpp", "canvas.cpp", "card.cpp", "game.cpp", "pile.cpp", "playerdg.cpp", "scoredg.cpp", "scorefil.cpp", + "canvas.h", "forty.h", "card.h", "game.h", "pile.h", "playerdg.h", "scoredg.h", "scorefil.h", + 0)); + + GenerateSample("FractalVC", "fractal", dir + wxString("/demos/fractal"), wxStringList("fractal.cpp", 0)); + + GenerateSample("LifeVC", "life", dir + wxString("/demos/life"), + wxStringList("life.cpp", "game.cpp", "dialogs.cpp", "life.h", "game.h", "dialogs.h", 0)); + + GenerateSample("PoemVC", "wxpoem", dir + wxString("/demos/poem"), wxStringList("wxpoem.cpp", "wxpoem.h", 0)); + //// Utilities // Dialog Editor