From acbd13a365fe2bd7ed6bafd19dc26775a256d499 Mon Sep 17 00:00:00 2001
From: Julian Smart <julian@anthemion.co.uk>
Date: Thu, 4 Feb 1999 11:14:41 +0000
Subject: [PATCH] Some warnings removed.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
---
 distrib/msw/generic.rsp       |  1 +
 docs/latex/wx/function.tex    |  2 +-
 docs/motif/install.txt        | 11 +++++++++++
 docs/motif/todo.txt           |  2 ++
 docs/msw/todo.txt             |  5 +++++
 docs/todo.txt                 |  6 +++++-
 include/wx/layout.h           | 10 ++++++++++
 include/wx/motif/checkbox.h   |  3 ++-
 include/wx/motif/mdi.h        |  1 +
 include/wx/msw/checkbox.h     |  2 +-
 include/wx/msw/setup.h        |  4 ++++
 include/wx/stubs/checkbox.h   |  2 +-
 samples/controls/controls.cpp |  6 ++++--
 samples/dnd/dnd.cpp           |  6 +++++-
 samples/docvwmdi/docview.h    |  2 +-
 samples/docvwmdi/view.cpp     |  4 ++--
 samples/docvwmdi/view.h       |  4 ++--
 samples/image/image.cpp       |  2 +-
 samples/nativdlg/nativdlg.cpp |  4 ++++
 src/make.env                  | 17 ++++++++++-------
 src/makeenvs/linux.env        | 19 +++++++++++--------
 src/makeenvs/sgi.env          | 13 ++++++++-----
 src/makeenvs/solaris.env      | 15 +++++++++------
 src/motif/checkbox.cpp        |  2 +-
 src/motif/dcclient.cpp        |  1 +
 src/msw/checkbox.cpp          |  2 +-
 src/msw/makefile.bcc          |  2 +-
 src/msw/makefile.dos          |  2 +-
 src/msw/makefile.vc           |  4 ++--
 src/msw/textctrl.cpp          |  4 ++++
 src/msw/tooltip.cpp           |  2 ++
 src/msw/window.cpp            |  4 ++++
 src/stubs/checkbox.cpp        |  2 +-
 33 files changed, 119 insertions(+), 47 deletions(-)

diff --git a/distrib/msw/generic.rsp b/distrib/msw/generic.rsp
index 16d214d487..6c3d990bef 100644
--- a/distrib/msw/generic.rsp
+++ b/distrib/msw/generic.rsp
@@ -335,6 +335,7 @@ samples/proplist/makefile*
 samples/proplist/*.xbm
 samples/proplist/*.xpm
 samples/proplist/*.ico
+samples/proplist/*.bmp
 samples/proplist/*.rc
 
 samples/layout/*.cpp
diff --git a/docs/latex/wx/function.tex b/docs/latex/wx/function.tex
index 80a8dce7ca..6062e1acb7 100644
--- a/docs/latex/wx/function.tex
+++ b/docs/latex/wx/function.tex
@@ -839,7 +839,7 @@ If execution is asynchronous, the return value is the process id,
 otherwise it is a status value.  A zero value indicates that the command could not
 be executed.
 
-If callback isn't NULL and if execution is asynchronous,
+If callback isn't NULL and if execution is asynchronous, 
 \helpref{wxProcess::OnTerminate}{wxprocessonterminate} will be called when
 the process finishes.
 
diff --git a/docs/motif/install.txt b/docs/motif/install.txt
index 740a726ea9..d6b5d2a62f 100644
--- a/docs/motif/install.txt
+++ b/docs/motif/install.txt
@@ -13,7 +13,17 @@ wxWindows 2.0 for Motif installation
   files to Unix format. Don't worry about files being
   overwritten: they should be identical anyway.
 
+- It is recommended that you install bison and flex; using yacc
+  and lex may require tweaking of the makefiles. You also need
+  Xpm (see comments in the Notes section below).
+
+- You now have the option of using the configure-based system,
+  or the simple makefile system. Configure is more hard to debug
+  if things go wrong, but may be easier to use if they go OK :-)
+  Makefiles are easier to tweak.
+
 COMPILING USING CONFIGURE
+=========================
 
 - You can use the wxGTK configure system to make wxMotif, or
   you can follow the following steps to use the simpler (but
@@ -54,6 +64,7 @@ COMPILING USING CONFIGURE
   where it will be found by the makefile.
 
 COMPILING USING MAKEFILES
+=========================
 
 - Choose a .env file from src/makeenvs that matches your
   environment, and copy it to src/make.env. These are the
diff --git a/docs/motif/todo.txt b/docs/motif/todo.txt
index 76d1ebd74b..1be398bf41 100644
--- a/docs/motif/todo.txt
+++ b/docs/motif/todo.txt
@@ -46,6 +46,8 @@ High Priority
 
 - Use wxImage to load other formats into wxBitmaps, such as PNG, BMP.
 
+- Implement scaled Blit as per John Price's impementation for 1.68.
+
 Low Priority
 ------------
 
diff --git a/docs/msw/todo.txt b/docs/msw/todo.txt
index 0fa40eff7d..89dbba57a5 100644
--- a/docs/msw/todo.txt
+++ b/docs/msw/todo.txt
@@ -40,6 +40,11 @@ Implement wxToolTip
 LOW PRIORITY (MEDIUM TERM)
 --------------------------
 
+Get wxMSW's wxGLCanvas working with non-VC++ compilers.
+
+Generate VC++ lib project files and supply VC++ project
+generator utility.
+
 Convert remaining utilities e.g. wxGraphLayout.
 
 More wxSystemSettings (see comment in settings.cpp).
diff --git a/docs/todo.txt b/docs/todo.txt
index 7af174dec8..2dc4bd4957 100644
--- a/docs/todo.txt
+++ b/docs/todo.txt
@@ -20,10 +20,11 @@ Please see also:
 
 - Fix TCP/IP mode in dde sample (how to use; why does it crash).
 
-- Get Karsten to remove trashed CVS files:
+- Remove trashed CVS files:
 
   include/wx/msw/magnif1.cur
   src/msw/ctl3d/*
+  utils/glcanvas/samples/isosurf/isosurf.dat.gz
 
   and re-add them.
 
@@ -32,5 +33,8 @@ Please see also:
   PostgreSQL. Find out what Remstar uses and document
   problems/restrictions.
 
+- In doc/view file selector, document type is selected by
+  extension, not the type selected in the (Windows) file selector.
+
 - Complete this ToDo list :-)
 
diff --git a/include/wx/layout.h b/include/wx/layout.h
index 04ae4f1401..44a00d57b6 100644
--- a/include/wx/layout.h
+++ b/include/wx/layout.h
@@ -230,11 +230,21 @@ class WXDLLEXPORT wxSizer: public wxWindow
   ~wxSizer();
 
   bool Create(wxWindow *parent, wxSizerBehaviour behav = wxSizerNone);
+
   virtual void SetSize(int x, int y, int w, int h, int flags = wxSIZE_AUTO);
+  virtual void SetSize(const wxRect& rect, int sizeFlags = wxSIZE_AUTO)
+    { wxWindow::SetSize(rect, sizeFlags); }
+  virtual void SetSize(const wxSize& size) { wxWindow::SetSize(size); }
+  virtual void SetSize(int width, int height) { SetSize(-1, -1, width, height, wxSIZE_USE_EXISTING); }
+
   virtual void GetSize(int *w, int *h) const;
+  wxSize GetSize() const { return wxWindow::GetSize(); }
 
   virtual void GetClientSize(int *w, int *h) const { GetSize(w, h); }
+  wxSize GetClientSize() const { return wxWindow::GetClientSize(); }
+
   virtual void GetPosition(int *x, int *y) const;
+  wxPoint GetPosition() const { return wxWindow::GetPosition(); }
 
   inline void SizerSetSize(int x, int y, int w, int h)
     { SetSize(x, y, w, h); }
diff --git a/include/wx/motif/checkbox.h b/include/wx/motif/checkbox.h
index 187cd9aa91..ec6bd6ccea 100644
--- a/include/wx/motif/checkbox.h
+++ b/include/wx/motif/checkbox.h
@@ -85,7 +85,8 @@ class WXDLLEXPORT wxBitmapCheckBox: public wxCheckBox
   virtual void SetSize(const wxSize& size) { wxWindow::SetSize(size); }
   virtual void SetSize(int width, int height) { SetSize(-1, -1, width, height, wxSIZE_USE_EXISTING); }
 
-  virtual void SetLabel(const wxBitmap *bitmap);
+  virtual void SetLabel(const wxBitmap& bitmap);
+  virtual void SetLabel(const wxString& label) { wxControl::SetLabel(label); };
 };
 #endif
     // _WX_CHECKBOX_H_
diff --git a/include/wx/motif/mdi.h b/include/wx/motif/mdi.h
index a45aa1e434..7abbbe9ca9 100644
--- a/include/wx/motif/mdi.h
+++ b/include/wx/motif/mdi.h
@@ -175,6 +175,7 @@ public:
 
   // MDI operations
   virtual void Maximize();
+  virtual void Maximize(bool WXUNUSED(maximize)) { };
   inline void Minimize() { Iconize(TRUE); };
   virtual void Iconize(bool iconize);
   virtual void Restore();
diff --git a/include/wx/msw/checkbox.h b/include/wx/msw/checkbox.h
index f693730f5c..1234ccc432 100644
--- a/include/wx/msw/checkbox.h
+++ b/include/wx/msw/checkbox.h
@@ -86,7 +86,7 @@ class WXDLLEXPORT wxBitmapCheckBox: public wxCheckBox
     { wxWindow::SetSize(rect, sizeFlags); }
   void SetSize(const wxSize& size) { wxWindow::SetSize(size); }
 
-  virtual void SetLabel(const wxBitmap *bitmap);
+  virtual void SetLabel(const wxBitmap& bitmap);
 };
 #endif
     // _WX_CHECKBOX_H_
diff --git a/include/wx/msw/setup.h b/include/wx/msw/setup.h
index f4dcb9dfd0..9e91bbdfa2 100644
--- a/include/wx/msw/setup.h
+++ b/include/wx/msw/setup.h
@@ -276,11 +276,15 @@
 
 #endif
 
+// Things that don't work for 16-bit compilation
 #if defined(__WXMSW__) && !defined(__WIN32__)
 
 #undef wxUSE_THREADS
 #define wxUSE_THREADS 0
 
+#undef wxUSE_TOOLTIPS
+#define wxUSE_TOOLTIPS 0
+
 #endif
 
 #endif
diff --git a/include/wx/stubs/checkbox.h b/include/wx/stubs/checkbox.h
index 8bf41d9958..cfc102058a 100644
--- a/include/wx/stubs/checkbox.h
+++ b/include/wx/stubs/checkbox.h
@@ -75,7 +75,7 @@ class WXDLLEXPORT wxBitmapCheckBox: public wxCheckBox
   virtual void SetValue(bool);
   virtual bool GetValue() const ;
   virtual void SetSize(int x, int y, int width, int height, int sizeFlags = wxSIZE_AUTO);
-  virtual void SetLabel(const wxBitmap *bitmap);
+  virtual void SetLabel(const wxBitmap& bitmap);
 };
 #endif
     // _WX_CHECKBOX_H_
diff --git a/samples/controls/controls.cpp b/samples/controls/controls.cpp
index 12cc3c414c..a465b9e83a 100644
--- a/samples/controls/controls.cpp
+++ b/samples/controls/controls.cpp
@@ -407,7 +407,7 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h )
   m_checkbox = new wxCheckBox( panel, ID_LISTBOX_ENABLE, "Disable", wxPoint(20,130), wxSize(140,30) );
   m_checkbox->SetValue(FALSE);
   m_checkbox->SetToolTip( "Click here to disable the listbox" );
-  m_notebook->AddPage(panel, "wxList", TRUE, Image_List);
+  m_notebook->AddPage(panel, "wxListBox", TRUE, Image_List);
 
   panel = new wxPanel(m_notebook);
   m_choice = new wxChoice( panel, ID_CHOICE, wxPoint(10,10), wxSize(120,-1), 5, choices );
@@ -433,7 +433,9 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h )
 
   panel = new wxPanel(m_notebook);
   m_textentry = new MyTextCtrl( panel, -1, "Write text here.", wxPoint(10,10), wxSize(320,28),
-                                wxTE_PROCESS_ENTER);
+//                                wxTE_PROCESS_ENTER);
+0);
+
   (*m_textentry) << " More text.";          // this text is appended
   m_textentry->SetInsertionPoint(0);
   m_textentry->WriteText("Less text.");     // this text is prepended
diff --git a/samples/dnd/dnd.cpp b/samples/dnd/dnd.cpp
index 208f397e25..d2983beb5a 100644
--- a/samples/dnd/dnd.cpp
+++ b/samples/dnd/dnd.cpp
@@ -24,7 +24,11 @@
 
 #include  "wx/dnd.h"
 
-#ifdef __WXGTK__
+#ifdef __WXMOTIF__
+#error Sorry, drag and drop is not yet implemented on wxMotif.
+#endif
+
+#if defined(__WXGTK__) || defined(__WXMOTIF__)
 #include "mondrian.xpm"
 #endif
 
diff --git a/samples/docvwmdi/docview.h b/samples/docvwmdi/docview.h
index 9f9b695300..937c6f0e54 100644
--- a/samples/docvwmdi/docview.h
+++ b/samples/docvwmdi/docview.h
@@ -45,7 +45,7 @@ class MyFrame: public wxDocMDIParentFrame
   wxMenu *editMenu;
   
   MyFrame(wxDocManager *manager, wxFrame *frame, const wxString& title, const wxPoint& pos, const wxSize& size,
-    const long type);
+    long type);
 
   void OnAbout(wxCommandEvent& event);
   MyCanvas *CreateCanvas(wxView *view, wxFrame *parent);
diff --git a/samples/docvwmdi/view.cpp b/samples/docvwmdi/view.cpp
index ea08110776..56afdce5df 100644
--- a/samples/docvwmdi/view.cpp
+++ b/samples/docvwmdi/view.cpp
@@ -188,7 +188,7 @@ BEGIN_EVENT_TABLE(MyCanvas, wxScrolledWindow)
 END_EVENT_TABLE()
 
 // Define a constructor for my canvas
-MyCanvas::MyCanvas(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style):
+MyCanvas::MyCanvas(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, long style):
  wxScrolledWindow(frame, -1, pos, size, style)
 {
   view = v;
@@ -255,7 +255,7 @@ void MyCanvas::OnMouseEvent(wxMouseEvent& event)
 }
 
 // Define a constructor for my text subwindow
-MyTextWindow::MyTextWindow(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style):
+MyTextWindow::MyTextWindow(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, long style):
  wxTextCtrl(frame, -1, "", pos, size, style)
 {
   view = v;
diff --git a/samples/docvwmdi/view.h b/samples/docvwmdi/view.h
index 2f068c7c04..e851caf6fe 100644
--- a/samples/docvwmdi/view.h
+++ b/samples/docvwmdi/view.h
@@ -23,7 +23,7 @@ class MyCanvas: public wxScrolledWindow
   public:
     wxView *view;
     
-    MyCanvas(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style);
+    MyCanvas(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, long style);
     virtual void OnDraw(wxDC& dc);
     void OnMouseEvent(wxMouseEvent& event);
 
@@ -35,7 +35,7 @@ class MyTextWindow: public wxTextCtrl
   public:
     wxView *view;
     
-    MyTextWindow(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style);
+    MyTextWindow(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, long style);
 };
 
 class DrawingView: public wxView
diff --git a/samples/image/image.cpp b/samples/image/image.cpp
index ecb6b59ad9..74cb31a6c7 100644
--- a/samples/image/image.cpp
+++ b/samples/image/image.cpp
@@ -80,7 +80,7 @@ BEGIN_EVENT_TABLE(MyCanvas, wxScrolledWindow)
   EVT_PAINT(MyCanvas::OnPaint)
 END_EVENT_TABLE()
 
-MyCanvas::MyCanvas( wxWindow *parent, const wxWindowID id,
+MyCanvas::MyCanvas( wxWindow *parent, wxWindowID id,
                     const wxPoint &pos, const wxSize &size )
         : wxScrolledWindow( parent, id, pos, size, wxSUNKEN_BORDER )
 {
diff --git a/samples/nativdlg/nativdlg.cpp b/samples/nativdlg/nativdlg.cpp
index 17b37c668d..82151d75c7 100644
--- a/samples/nativdlg/nativdlg.cpp
+++ b/samples/nativdlg/nativdlg.cpp
@@ -24,6 +24,10 @@
 #include "wx/wx.h"
 #endif
 
+#ifndef __WXMSW__
+#error Sorry, this sample is only appropriate under Windows.
+#endif
+
 #include "wx/resource.h"
 
 #include <ctype.h>
diff --git a/src/make.env b/src/make.env
index 4e72c8d2d2..1ad49be955 100644
--- a/src/make.env
+++ b/src/make.env
@@ -30,13 +30,13 @@ RANLIB      = ranlib
 
 # Debug/trace mode. 1 or more for debugging.
 DEBUG       = 1
-GUI         = -D__WXSTUBS__ -D__LINUX__ -D__UNIX__
+GUI         = -D__WXSTUBS__ -D__UNIX__
 GUISUFFIX   = _stubs
 
 ########################## Compiler flags #############################
 
 # Misc options
-OPTIONS     = -D__WXDEBUG__
+OPTIONS     = -D__LINUX__ -D__WXDEBUG__
 COPTIONS    =
 DEBUGFLAGS  = -ggdb
 INCLUDE     =
@@ -98,19 +98,22 @@ dummy:
 	echo Use a target: one of motif, stubs
 
 stubs:
-	make -f makefile.unx all GUI='-D__WXSTUBS__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx all GUI='-D__WXSTUBS__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
 
 motif:
-	make -f makefile.unx all GUI='-D__WXMOTIF__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lpng -lzlib -lXm -lXmu -lXt -lXpm -lX11 -lm'
+	make -f makefile.unx all GUI='-D__WXMOTIF__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lpng -lzlib -lXm -lXmu -lXt -lXpm -lX11 -lm'
 
 gtk:
-	make -f makefile.unx all GUI='-D__WXGTK__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_gtk' GUILDLIBS='-lwx_gtk2 $(COMPLIBS) -ldl -lgtk -lgdk -lglib -lpng -lzlib -lX11 -lm -pthread'
+	make -f makefile.unx all GUI='-D__WXGTK__ -D__UNIX__' GUISUFFIX='_gtk' GUILDLIBS='-lwx_gtk2 $(COMPLIBS) -ldl -lgtk -lgdk -lglib -lpng -lzlib -lX11 -lm -pthread'
 
 cleanstubs:
-	make -f makefile.unx clean GUI='-D__WXSTUBS__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx clean GUI='-D__WXSTUBS__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
 
 cleanmotif:
-	make -f makefile.unx clean GUI='-D__WXMOTIF__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx clean GUI='-D__WXMOTIF__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+
+cleangtk:
+	make -f makefile.unx clean GUI='-D__WXGTK__ -D__UNIX__' GUISUFFIX='_gtk'
 
 $(OBJDIR):
 	mkdir $(OBJDIR)
diff --git a/src/makeenvs/linux.env b/src/makeenvs/linux.env
index 9d4e2aec27..1ad49be955 100644
--- a/src/makeenvs/linux.env
+++ b/src/makeenvs/linux.env
@@ -29,14 +29,14 @@ RANLIB      = ranlib
 ############################ Switches #################################
 
 # Debug/trace mode. 1 or more for debugging.
-DEBUG       = 0
-GUI         = -D__WXSTUBS__ -D__LINUX__ -D__UNIX__
+DEBUG       = 1
+GUI         = -D__WXSTUBS__ -D__UNIX__
 GUISUFFIX   = _stubs
 
 ########################## Compiler flags #############################
 
 # Misc options
-OPTIONS     = -D__WXDEBUG__
+OPTIONS     = -D__LINUX__ -D__WXDEBUG__
 COPTIONS    =
 DEBUGFLAGS  = -ggdb
 INCLUDE     =
@@ -98,19 +98,22 @@ dummy:
 	echo Use a target: one of motif, stubs
 
 stubs:
-	make -f makefile.unx all GUI='-D__WXSTUBS__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx all GUI='-D__WXSTUBS__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
 
 motif:
-	make -f makefile.unx all GUI='-D__WXMOTIF__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lXpm -lX11 -lm'
+	make -f makefile.unx all GUI='-D__WXMOTIF__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lpng -lzlib -lXm -lXmu -lXt -lXpm -lX11 -lm'
 
 gtk:
-	make -f makefile.unx all GUI='-D__WXGTK__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_gtk' GUILDLIBS='-lwx_gtk $(COMPLIBS) -lXm -lXmu -lXpm -lX11 -lm'
+	make -f makefile.unx all GUI='-D__WXGTK__ -D__UNIX__' GUISUFFIX='_gtk' GUILDLIBS='-lwx_gtk2 $(COMPLIBS) -ldl -lgtk -lgdk -lglib -lpng -lzlib -lX11 -lm -pthread'
 
 cleanstubs:
-	make -f makefile.unx clean GUI='-D__WXSTUBS__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx clean GUI='-D__WXSTUBS__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
 
 cleanmotif:
-	make -f makefile.unx clean GUI='-D__WXMOTIF__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx clean GUI='-D__WXMOTIF__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+
+cleangtk:
+	make -f makefile.unx clean GUI='-D__WXGTK__ -D__UNIX__' GUISUFFIX='_gtk'
 
 $(OBJDIR):
 	mkdir $(OBJDIR)
diff --git a/src/makeenvs/sgi.env b/src/makeenvs/sgi.env
index f608bd9263..42c933aa66 100644
--- a/src/makeenvs/sgi.env
+++ b/src/makeenvs/sgi.env
@@ -97,19 +97,22 @@ dummy:
 	echo Use a target: one of motif, stubs
 
 stubs:
-	make -f makefile.unx all GUI='-D__WXSTUBS__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx all GUI='-D__WXSTUBS__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
 
 motif:
-	make -f makefile.unx all GUI='-D__WXMOTIF__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lXpm -lX11 -lm'
+	make -f makefile.unx all GUI='-D__WXMOTIF__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lpng -lzlib -lXm -lXmu -lXt -lXpm -lX11 -lm'
 
 gtk:
-	make -f makefile.unx all GUI='-D__WXGTK__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_gtk' GUILDLIBS='-lwx_gtk $(COMPLIBS) -lXm -lXmu -lXpm -lX11 -lm'
+	make -f makefile.unx all GUI='-D__WXGTK__ -D__UNIX__' GUISUFFIX='_gtk' GUILDLIBS='-lwx_gtk2 $(COMPLIBS) -ldl -lgtk -lgdk -lglib -lpng -lzlib -lX11 -lm -pthread'
 
 cleanstubs:
-	make -f makefile.unx clean GUI='-D__WXSTUBS__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx clean GUI='-D__WXSTUBS__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
 
 cleanmotif:
-	make -f makefile.unx clean GUI='-D__WXMOTIF__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx clean GUI='-D__WXMOTIF__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+
+cleangtk:
+	make -f makefile.unx clean GUI='-D__WXGTK__ -D__UNIX__' GUISUFFIX='_gtk'
 
 $(OBJDIR):
 	mkdir $(OBJDIR)
diff --git a/src/makeenvs/solaris.env b/src/makeenvs/solaris.env
index fe5fe8f13f..fa4a6fde53 100644
--- a/src/makeenvs/solaris.env
+++ b/src/makeenvs/solaris.env
@@ -55,7 +55,7 @@ XLIB        = -L/usr/local/X11/lib -L/usr/openwin/lib -L/usr/X11/lib -L/usr/X11R
 ############################ Libraries ################################
 
 COMPLIBS    =  -lgen -ldl -lsocket -lnsl
-GUILDLIBS   = -lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm
+GUILDLIBS   = -lwx_motif $(COMPLIBS) -lpng -lzlib -lXpm -lXm -lXmu -lXt -lX11 -lm
 
 ############################# Suffixes ################################
 
@@ -98,19 +98,22 @@ dummy:
 	echo Use a target: one of motif, stubs
 
 stubs:
-	make -f makefile.unx all GUI='-D__WXSTUBS__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx all GUI='-D__WXSTUBS__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
 
 motif:
-	make -f makefile.unx all GUI='-D__WXMOTIF__  -D__LINUX__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx all GUI='-D__WXMOTIF__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lpng -lzlib -lXm -lXmu -lXt -lXpm -lX11 -lm'
 
 gtk:
-	make -f makefile.unx all GUI='-D__WXGTK__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_gtk' GUILDLIBS='-lwx_gtk $(COMPLIBS) -lXm -lXmu -lXpm -lX11 -lm'
+	make -f makefile.unx all GUI='-D__WXGTK__ -D__UNIX__' GUISUFFIX='_gtk' GUILDLIBS='-lwx_gtk2 $(COMPLIBS) -ldl -lgtk -lgdk -lglib -lpng -lzlib -lX11 -lm -pthread'
 
 cleanstubs:
-	make -f makefile.unx clean GUI='-D__WXSTUBS__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx clean GUI='-D__WXSTUBS__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
 
 cleanmotif:
-	make -f makefile.unx clean GUI='-D__WXMOTIF__ -D__LINUX__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+	make -f makefile.unx clean GUI='-D__WXMOTIF__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm'
+
+cleangtk:
+	make -f makefile.unx clean GUI='-D__WXGTK__ -D__UNIX__' GUISUFFIX='_gtk'
 
 $(OBJDIR):
 	mkdir $(OBJDIR)
diff --git a/src/motif/checkbox.cpp b/src/motif/checkbox.cpp
index ee43e5def3..1641f1077c 100644
--- a/src/motif/checkbox.cpp
+++ b/src/motif/checkbox.cpp
@@ -118,7 +118,7 @@ bool wxBitmapCheckBox::Create(wxWindow *parent, wxWindowID id, const wxBitmap *l
     return FALSE;
 }
 
-void wxBitmapCheckBox::SetLabel(const wxBitmap *bitmap)
+void wxBitmapCheckBox::SetLabel(const wxBitmap& bitmap)
 {
     // TODO
 }
diff --git a/src/motif/dcclient.cpp b/src/motif/dcclient.cpp
index 3997b771da..d46aa227ff 100644
--- a/src/motif/dcclient.cpp
+++ b/src/motif/dcclient.cpp
@@ -917,6 +917,7 @@ void wxWindowDC::DrawIcon( const wxIcon &icon, long x, long y)
 #endif
 };
 
+// TODO: use scaled Blit e.g. as per John Price's implementation in Contrib/Utilities
 bool wxWindowDC::Blit( long xdest, long ydest, long width, long height,
                       wxDC *source, long xsrc, long ysrc, int rop, bool useMask )
 {
diff --git a/src/msw/checkbox.cpp b/src/msw/checkbox.cpp
index 3d6baa551f..9308744222 100644
--- a/src/msw/checkbox.cpp
+++ b/src/msw/checkbox.cpp
@@ -271,7 +271,7 @@ bool wxBitmapCheckBox::Create(wxWindow *parent, wxWindowID id, const wxBitmap *l
   return TRUE;
 }
 
-void wxBitmapCheckBox::SetLabel(const wxBitmap *bitmap)
+void wxBitmapCheckBox::SetLabel(const wxBitmap& bitmap)
 {
 }
 
diff --git a/src/msw/makefile.bcc b/src/msw/makefile.bcc
index baac105820..240d9ac3c1 100644
--- a/src/msw/makefile.bcc
+++ b/src/msw/makefile.bcc
@@ -228,7 +228,6 @@ MSWOBJS = \
   $(MSWDIR)\tbarmsw.obj \
   $(MSWDIR)\textctrl.obj \
   $(MSWDIR)\timer.obj \
-  $(MSWDIR)\tooltip.obj \
   $(MSWDIR)\utils.obj \
   $(MSWDIR)\utilsexc.obj \
   $(MSWDIR)\wave.obj \
@@ -239,6 +238,7 @@ MSWOBJS = \
 #  $(MSWDIR)\automtn.obj
 
 # Not used for 16-bit compilation
+#  $(MSWDIR)\tooltip.obj \
 #  $(MSWDIR)\gauge95.obj \
 #  $(MSWDIR)\treectrl.obj \
 #  $(MSWDIR)\oleutils.obj \
diff --git a/src/msw/makefile.dos b/src/msw/makefile.dos
index 7c4eae1c5c..1727d1747f 100644
--- a/src/msw/makefile.dos
+++ b/src/msw/makefile.dos
@@ -195,7 +195,6 @@ MSWOBJS = \
   $(MSWDIR)\tbarmsw.obj \
   $(MSWDIR)\textctrl.obj \
   $(MSWDIR)\timer.obj \
-  $(MSWDIR)\tooltip.obj \
   $(MSWDIR)\utils.obj \
   $(MSWDIR)\utilsexc.obj \
   $(MSWDIR)\wave.obj \
@@ -207,6 +206,7 @@ MSWOBJS = \
 #  $(OLEDIR)\dataobj.obj \
 #  $(OLEDIR)\oleutils.obj \
 #  $(OLEDIR)\uuid.obj
+#  $(MSWDIR)\tooltip.obj \
 
 # TODO: Implement XPM and PNG targets in this makefile!
 #  $(OLEDIR)\xpmhand \
diff --git a/src/msw/makefile.vc b/src/msw/makefile.vc
index 36270044ac..8be1b36ec8 100644
--- a/src/msw/makefile.vc
+++ b/src/msw/makefile.vc
@@ -1069,10 +1069,10 @@ $(CPPFLAGS2) /c $*.c -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@
 <<
 
 $(COMMDIR)/y_tab.c:     $(COMMDIR)/dosyacc.c
-        copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c
+        copy "$(COMMDIR)"\dosyacc.c "$(COMMDIR)"\y_tab.c
 
 $(COMMDIR)/lex_yy.c:    $(COMMDIR)/doslex.c
-    copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c
+    copy "$(COMMDIR)"\doslex.c "$(COMMDIR)"\lex_yy.c
 
 ########################################################
 # Generic objects (not always compiled, depending on
diff --git a/src/msw/textctrl.cpp b/src/msw/textctrl.cpp
index 64f4d4314e..dcf18535fb 100644
--- a/src/msw/textctrl.cpp
+++ b/src/msw/textctrl.cpp
@@ -454,6 +454,7 @@ long wxTextCtrl::GetLastPosition() const
 
 void wxTextCtrl::Replace(long from, long to, const wxString& value)
 {
+#if wxUSE_CLIPBOARD
     HWND hWnd = (HWND) GetHWND();
     long fromChar = from;
     long toChar = to;
@@ -471,6 +472,9 @@ void wxTextCtrl::Replace(long from, long to, const wxString& value)
 
     // Paste into edit control
     SendMessage(hWnd, WM_PASTE, (WPARAM)0, (LPARAM)0L);
+#else
+    wxFAIL_MSG("wxTextCtrl::Replace not implemented if wxUSE_CLIPBOARD is 0.");
+#endif
 }
 
 void wxTextCtrl::Remove(long from, long to)
diff --git a/src/msw/tooltip.cpp b/src/msw/tooltip.cpp
index 73c0165697..7fe9056949 100644
--- a/src/msw/tooltip.cpp
+++ b/src/msw/tooltip.cpp
@@ -30,7 +30,9 @@
 #include "wx/tooltip.h"
 #include "wx/msw/private.h"
 
+#if (defined(__WIN95__) && !defined(__GNUWIN32__)) || defined(__TWIN32__)
 #include <commctrl.h>
+#endif
 
 // ----------------------------------------------------------------------------
 // private classes
diff --git a/src/msw/window.cpp b/src/msw/window.cpp
index a003132549..20a40fd957 100644
--- a/src/msw/window.cpp
+++ b/src/msw/window.cpp
@@ -63,7 +63,9 @@
     #include <windowsx.h>
 #endif
 
+#if (defined(__WIN95__) && !defined(__GNUWIN32__)) || defined(__TWIN32__)
 #include <commctrl.h>
+#endif
 
 #ifndef __TWIN32__
     #ifdef __GNUWIN32__
@@ -185,6 +187,7 @@ bool wxWindow::MSWNotify(WXWPARAM WXUNUSED(wParam),
                          WXLPARAM lParam,
                          WXLPARAM* WXUNUSED(result))
 {
+#ifdef __WIN95__
     NMHDR* hdr = (NMHDR *)lParam;
     if ( hdr->code == TTN_NEEDTEXT && m_tooltip )
     {
@@ -194,6 +197,7 @@ bool wxWindow::MSWNotify(WXWPARAM WXUNUSED(wParam),
         // processed
         return TRUE;
     }
+#endif
 
     return FALSE;
 }
diff --git a/src/stubs/checkbox.cpp b/src/stubs/checkbox.cpp
index dd2e2abe7a..258a9cc6c3 100644
--- a/src/stubs/checkbox.cpp
+++ b/src/stubs/checkbox.cpp
@@ -93,7 +93,7 @@ bool wxBitmapCheckBox::Create(wxWindow *parent, wxWindowID id, const wxBitmap *l
     return FALSE;
 }
 
-void wxBitmapCheckBox::SetLabel(const wxBitmap *bitmap)
+void wxBitmapCheckBox::SetLabel(const wxBitmap& bitmap)
 {
     // TODO
 }
-- 
2.50.0

