#include "wx/list.h"
#include "wx/hash.h"
#include "wx/string.h"
+#include "wx/hashmap.h"
#include "wx/arrstr.h"
#include "wx/intl.h"
#include "wx/log.h"
#include "wx/stream.h"
#include "wx/memory.h"
#include "wx/math.h"
+#include "wx/stopwatch.h"
+#include "wx/timer.h"
+#include "wx/module.h"
+#include "wx/wxcrt.h"
+#include "wx/wxcrtvararg.h"
#if wxUSE_GUI
#include "wx/window.h"
+#include "wx/containr.h"
#include "wx/panel.h"
#include "wx/toplevel.h"
#include "wx/frame.h"
#include "wx/gdicmn.h"
+#include "wx/gdiobj.h"
#include "wx/region.h"
#include "wx/bitmap.h"
+#include "wx/image.h"
#include "wx/colour.h"
#include "wx/font.h"
#include "wx/dc.h"
#include "wx/icon.h"
#include "wx/cursor.h"
#include "wx/dialog.h"
-#include "wx/timer.h"
#include "wx/settings.h"
#include "wx/msgdlg.h"
#include "wx/cmndata.h"
+#include "wx/dataobj.h"
#include "wx/control.h"
#include "wx/ctrlsub.h"
#include "wx/combobox.h"
#include "wx/layout.h"
#include "wx/sizer.h"
-#include "wx/mdi.h"
#include "wx/statusbr.h"
#include "wx/choicdlg.h"
#include "wx/textdlg.h"
#include "wx/filedlg.h"
+// this one is included by exactly one file (mdi.cpp) during wx build so even
+// although we keep it here for the library users, don't include it to avoid
+// bloating the PCH and (worse) rebuilding the entire library when it changes
+// when building the library itself
+#ifndef WXBUILDING
+ #include "wx/mdi.h"
+#endif
+
// always include, even if !wxUSE_VALIDATORS because we need wxDefaultValidator
#include "wx/validate.h"