From 223d09f6b523aac674ef9b72a883dfa8d37c5d4e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Karsten=20Ball=C3=BCder?= Date: Fri, 8 Oct 1999 14:35:56 +0000 Subject: [PATCH] replaced T() makro with wxT() due to namespace probs, _T() exists, too fixed compilation problems, mainly in html code compiles and links fine on Solaris, runs with samples and Mahogany git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/arrimpl.cpp | 2 +- include/wx/buffer.h | 4 +- include/wx/dialup.h | 6 +- include/wx/dynarray.h | 8 +- include/wx/event.h | 4 +- include/wx/ffile.h | 2 +- include/wx/fileconf.h | 6 +- include/wx/filefn.h | 12 +- include/wx/fontenum.h | 2 +- include/wx/generic/filedlgg.h | 2 +- include/wx/generic/progdlgg.h | 2 +- include/wx/gtk/frame.h | 2 +- include/wx/gtk1/frame.h | 2 +- include/wx/html/msw/back.bmp | Bin 202 -> 0 bytes include/wx/html/msw/book.ico | Bin 318 -> 0 bytes include/wx/html/msw/folder.ico | Bin 318 -> 0 bytes include/wx/html/msw/forward.bmp | Bin 202 -> 0 bytes include/wx/html/msw/page.ico | Bin 318 -> 0 bytes include/wx/html/msw/panel.bmp | Bin 710 -> 519 bytes include/wx/intl.h | 2 +- include/wx/log.h | 4 +- include/wx/mac/macsock.h | 1 - include/wx/mac/statusbr.h | 1 - include/wx/msw/blank.cur | Bin 326 -> 0 bytes include/wx/msw/bullseye.cur | Bin 326 -> 0 bytes include/wx/msw/child.ico | Bin 766 -> 491 bytes include/wx/msw/clock.cur | Bin 326 -> 0 bytes include/wx/msw/cross.bmp | Bin 198 -> 7 bytes include/wx/msw/disable.bmp | Bin 630 -> 0 bytes include/wx/msw/error.ico | Bin 766 -> 0 bytes include/wx/msw/hand.cur | Bin 326 -> 0 bytes include/wx/msw/heart.cur | Bin 326 -> 0 bytes include/wx/msw/info.ico | Bin 766 -> 0 bytes include/wx/msw/magnif1.cur | Bin 326 -> 5 bytes include/wx/msw/mdi.ico | Bin 766 -> 491 bytes include/wx/msw/noentry.cur | Bin 326 -> 0 bytes include/wx/msw/pbrush.cur | Bin 326 -> 0 bytes include/wx/msw/pencil.cur | Bin 326 -> 0 bytes include/wx/msw/pntleft.cur | Bin 326 -> 0 bytes include/wx/msw/pntright.cur | Bin 326 -> 0 bytes include/wx/msw/private.h | 8 +- include/wx/msw/query.cur | Bin 326 -> 0 bytes include/wx/msw/question.ico | Bin 766 -> 0 bytes include/wx/msw/roller.cur | Bin 326 -> 0 bytes include/wx/msw/size.cur | Bin 326 -> 0 bytes include/wx/msw/statbr95.h | 1 - include/wx/msw/std.ico | Bin 766 -> 491 bytes include/wx/msw/tick.bmp | Bin 198 -> 7 bytes include/wx/msw/tip.ico | Bin 766 -> 0 bytes include/wx/msw/warning.ico | Bin 766 -> 0 bytes include/wx/msw/watch1.cur | Bin 326 -> 0 bytes include/wx/object.h | 10 +- include/wx/os2/statusbr.h | 1 - include/wx/proplist.h | 2 +- include/wx/string.h | 4 +- include/wx/stubs/statusbr.h | 1 - include/wx/wizard.h | 2 +- include/wx/wxchar.h | 4 +- include/wx/wxexpr.h | 4 +- include/wx_cw.pch++ | 1 - include/wx_cw_d.pch++ | 1 - src/common/.cvsignore | 1 - src/common/choiccmn.cpp | 12 +- src/common/cmndata.cpp | 64 +-- src/common/config.cpp | 10 +- src/common/ctrlcmn.cpp | 2 +- src/common/date.cpp | 38 +- src/common/dlgcmn.cpp | 4 +- src/common/docmdi.cpp | 2 +- src/common/docview.cpp | 54 +-- src/common/dynarray.cpp | 6 +- src/common/dynlib.cpp | 2 +- src/common/event.cpp | 12 +- src/common/ffile.cpp | 18 +- src/common/file.cpp | 14 +- src/common/fileconf.cpp | 128 +++--- src/common/filefn.cpp | 278 ++++++------ src/common/filesys.cpp | 48 +- src/common/fontcmn.cpp | 36 +- src/common/fs_inet.cpp | 6 +- src/common/ftp.cpp | 56 +-- src/common/gdicmn.cpp | 152 +++---- src/common/http.cpp | 34 +- src/common/imagbmp.cpp | 16 +- src/common/image.cpp | 102 ++--- src/common/imaggif.cpp | 8 +- src/common/imagpcx.cpp | 12 +- src/common/imagpnm.cpp | 24 +- src/common/init.cpp | 4 +- src/common/intl.cpp | 16 +- src/common/list.cpp | 26 +- src/common/log.cpp | 26 +- src/common/memory.cpp | 94 ++-- src/common/mimetype.cpp | 220 ++++----- src/common/object.cpp | 2 +- src/common/objstrm.cpp | 8 +- src/common/prntbase.cpp | 2 +- src/common/resource.cpp | 680 ++++++++++++++-------------- src/common/sckaddr.cpp | 4 +- src/common/sckfile.cpp | 2 +- src/common/sizer.cpp | 2 +- src/common/socket.cpp | 4 +- src/common/strconv.cpp | 46 +- src/common/string.cpp | 124 ++--- src/common/textcmn.cpp | 10 +- src/common/textfile.cpp | 10 +- src/common/time.cpp | 4 +- src/common/txtstrm.cpp | 76 ++-- src/common/url.cpp | 50 +- src/common/utilscmn.cpp | 32 +- src/common/valtext.cpp | 1 - src/common/variant.cpp | 206 ++++----- src/common/wincmn.cpp | 40 +- src/common/wxchar.cpp | 22 +- src/common/wxexpr.cpp | 30 +- src/common/zstream.cpp | 2 +- src/generic/choicdgg.cpp | 4 +- src/generic/colrdlgg.cpp | 106 ++--- src/generic/dcpsg.cpp | 76 ++-- src/generic/dirdlgg.cpp | 28 +- src/generic/filedlgg.cpp | 108 ++--- src/generic/fontdlgg.cpp | 156 +++---- src/generic/grid.cpp | 2 +- src/generic/helpext.cpp | 10 +- src/generic/helphtml.cpp | 8 +- src/generic/imaglist.cpp | 10 +- src/generic/listctrl.cpp | 8 +- src/generic/logg.cpp | 16 +- src/generic/numdlgg.cpp | 4 +- src/generic/prntdlgg.cpp | 2 +- src/generic/progdlgg.cpp | 14 +- src/generic/prop.cpp | 42 +- src/generic/propform.cpp | 26 +- src/generic/proplist.cpp | 30 +- src/generic/splitter.cpp | 10 +- src/generic/statline.cpp | 2 +- src/generic/tipdlg.cpp | 2 +- src/generic/treectrl.cpp | 70 +-- src/generic/wizard.cpp | 8 +- src/gtk/app.cpp | 12 +- src/gtk/bitmap.cpp | 34 +- src/gtk/bmpbuttn.cpp | 18 +- src/gtk/brush.cpp | 6 +- src/gtk/button.cpp | 4 +- src/gtk/checkbox.cpp | 8 +- src/gtk/checklst.cpp | 16 +- src/gtk/choice.cpp | 40 +- src/gtk/clipbrd.cpp | 24 +- src/gtk/colour.cpp | 14 +- src/gtk/combobox.cpp | 56 +-- src/gtk/control.cpp | 6 +- src/gtk/cursor.cpp | 4 +- src/gtk/data.cpp | 74 +-- src/gtk/dataobj.cpp | 12 +- src/gtk/dcclient.cpp | 68 +-- src/gtk/dialog.cpp | 18 +- src/gtk/dnd.cpp | 12 +- src/gtk/filedlg.cpp | 22 +- src/gtk/font.cpp | 38 +- src/gtk/fontdlg.cpp | 6 +- src/gtk/frame.cpp | 52 +-- src/gtk/gauge.cpp | 2 +- src/gtk/listbox.cpp | 64 +-- src/gtk/mdi.cpp | 6 +- src/gtk/menu.cpp | 138 +++--- src/gtk/notebook.cpp | 42 +- src/gtk/palette.cpp | 6 +- src/gtk/pen.cpp | 10 +- src/gtk/radiobox.cpp | 52 +-- src/gtk/radiobut.cpp | 8 +- src/gtk/scrolbar.cpp | 2 +- src/gtk/settings.cpp | 2 +- src/gtk/slider.cpp | 2 +- src/gtk/spinbutt.cpp | 14 +- src/gtk/statbmp.cpp | 4 +- src/gtk/statbox.cpp | 2 +- src/gtk/statline.cpp | 2 +- src/gtk/stattext.cpp | 2 +- src/gtk/tbargtk.cpp | 36 +- src/gtk/textctrl.cpp | 62 +-- src/gtk/utilsres.cpp | 24 +- src/gtk/window.cpp | 128 +++--- src/gtk1/app.cpp | 12 +- src/gtk1/bitmap.cpp | 34 +- src/gtk1/bmpbuttn.cpp | 18 +- src/gtk1/brush.cpp | 6 +- src/gtk1/button.cpp | 4 +- src/gtk1/checkbox.cpp | 8 +- src/gtk1/checklst.cpp | 16 +- src/gtk1/choice.cpp | 40 +- src/gtk1/clipbrd.cpp | 24 +- src/gtk1/colour.cpp | 14 +- src/gtk1/combobox.cpp | 56 +-- src/gtk1/control.cpp | 6 +- src/gtk1/cursor.cpp | 4 +- src/gtk1/data.cpp | 74 +-- src/gtk1/dataobj.cpp | 12 +- src/gtk1/dcclient.cpp | 68 +-- src/gtk1/dialog.cpp | 18 +- src/gtk1/dnd.cpp | 12 +- src/gtk1/filedlg.cpp | 22 +- src/gtk1/font.cpp | 38 +- src/gtk1/fontdlg.cpp | 6 +- src/gtk1/frame.cpp | 52 +-- src/gtk1/gauge.cpp | 2 +- src/gtk1/listbox.cpp | 64 +-- src/gtk1/mdi.cpp | 6 +- src/gtk1/menu.cpp | 138 +++--- src/gtk1/notebook.cpp | 42 +- src/gtk1/palette.cpp | 6 +- src/gtk1/pen.cpp | 10 +- src/gtk1/radiobox.cpp | 52 +-- src/gtk1/radiobut.cpp | 8 +- src/gtk1/scrolbar.cpp | 2 +- src/gtk1/settings.cpp | 2 +- src/gtk1/slider.cpp | 2 +- src/gtk1/spinbutt.cpp | 14 +- src/gtk1/statbmp.cpp | 4 +- src/gtk1/statbox.cpp | 2 +- src/gtk1/statline.cpp | 2 +- src/gtk1/stattext.cpp | 2 +- src/gtk1/tbargtk.cpp | 36 +- src/gtk1/textctrl.cpp | 62 +-- src/gtk1/utilsres.cpp | 24 +- src/gtk1/window.cpp | 128 +++--- src/html/htmlfilt.cpp | 2 +- src/html/htmlpars.cpp | 2 +- src/html/winpars.cpp | 2 +- src/jpeg/makefile.b32 | 1 - src/mac/apprsrc.r | 1 - src/mac/carbon/apprsrc.r | 1 - src/mac/carbon/corersrc.r | 1 - src/mac/carbon/menuitem.cpp | 1 - src/mac/corersrc.r | 1 - src/mac/macsock/sock_PPC.lib | 1 - src/mac/menuitem.cpp | 1 - src/mac/morefile/FullPath.h | 1 - src/make_cw.mcp | Bin 338358 -> 58219 bytes src/make_cw.old.mcp | Bin 265246 -> 37943 bytes src/motif/dataobj.cpp | 12 +- src/motif/dcclient.cpp | 2 +- src/motif/font.cpp | 4 +- src/motif/fontenum.cpp | 14 +- src/motif/mdi/doc/pics/classes.gif | Bin 4051 -> 3936 bytes src/motif/mdi/doc/pics/mdi.gif | Bin 13227 -> 13105 bytes src/motif/mdi/doc/pics/winclass.gif | Bin 4652 -> 4379 bytes src/motif/window.cpp | 2 +- src/msw/app.cpp | 52 +-- src/msw/bitmap.cpp | 12 +- src/msw/bmpbuttn.cpp | 4 +- src/msw/button.cpp | 2 +- src/msw/caret.cpp | 10 +- src/msw/checkbox.cpp | 10 +- src/msw/checklst.cpp | 8 +- src/msw/choice.cpp | 10 +- src/msw/clipbrd.cpp | 12 +- src/msw/combobox.cpp | 4 +- src/msw/control.cpp | 2 +- src/msw/ctl3d/ctl3d.dll | Bin 255 -> 65 bytes src/msw/ctl3d/ctl3d32.dll | Bin 6510 -> 5002 bytes src/msw/ctl3d/ctl3dv2.dll | Bin 255 -> 65 bytes src/msw/ctl3d/msvc/ctl3d.lib | Bin 338 -> 0 bytes src/msw/ctl3d/msvc/ctl3dv2.lib | Bin 1557 -> 501 bytes src/msw/ctl3d/wat32/import32.zip | Bin 567 -> 366 bytes src/msw/ctl3d/wat386/ctl3d32.obj | Bin 1597 -> 1225 bytes src/msw/curico.cpp | 4 +- src/msw/cursor.cpp | 26 +- src/msw/data.cpp | 78 ++-- src/msw/dc.cpp | 8 +- src/msw/dcclient.cpp | 6 +- src/msw/dcmemory.cpp | 4 +- src/msw/dcprint.cpp | 18 +- src/msw/dde.cpp | 42 +- src/msw/dialog.cpp | 6 +- src/msw/dialup.cpp | 26 +- src/msw/dib.cpp | 4 +- src/msw/dragimag.cpp | 14 +- src/msw/filedlg.cpp | 50 +- src/msw/font.cpp | 18 +- src/msw/frame.cpp | 10 +- src/msw/gaugemsw.cpp | 8 +- src/msw/helpwin.cpp | 22 +- src/msw/listbox.cpp | 42 +- src/msw/listctrl.cpp | 8 +- src/msw/mdi.cpp | 18 +- src/msw/menu.cpp | 76 ++-- src/msw/menuitem.cpp | 6 +- src/msw/metafile.cpp | 8 +- src/msw/minifram.cpp | 16 +- src/msw/nativdlg.cpp | 24 +- src/msw/notebook.cpp | 16 +- src/msw/ole/automtn.cpp | 34 +- src/msw/ole/dataobj.cpp | 34 +- src/msw/ole/dropsrc.cpp | 6 +- src/msw/ole/droptgt.cpp | 8 +- src/msw/ole/uuid.cpp | 2 +- src/msw/ownerdrw.cpp | 2 +- src/msw/printwin.cpp | 2 +- src/msw/radiobox.cpp | 18 +- src/msw/radiobut.cpp | 4 +- src/msw/regconf.cpp | 14 +- src/msw/registry.cpp | 30 +- src/msw/scrolbar.cpp | 2 +- src/msw/slider95.cpp | 18 +- src/msw/slidrmsw.cpp | 18 +- src/msw/spinbutt.cpp | 2 +- src/msw/statbmp.cpp | 8 +- src/msw/statbox.cpp | 2 +- src/msw/statbr95.cpp | 10 +- src/msw/statline.cpp | 6 +- src/msw/stattext.cpp | 8 +- src/msw/tabctrl.cpp | 6 +- src/msw/taskbar.cpp | 8 +- src/msw/tbar95.cpp | 12 +- src/msw/textctrl.cpp | 12 +- src/msw/thread.cpp | 18 +- src/msw/timer.cpp | 4 +- src/msw/treectrl.cpp | 28 +- src/msw/utils.cpp | 110 ++--- src/msw/utilsexc.cpp | 8 +- src/msw/wave.cpp | 6 +- src/msw/window.cpp | 32 +- src/os2/control.cpp | 2 +- src/os2/data.cpp | 80 ++-- src/os2/dcclient.cpp | 6 +- src/os2/dcprint.cpp | 18 +- src/os2/dialog.cpp | 8 +- src/os2/font.cpp | 18 +- src/os2/frame.cpp | 10 +- src/os2/gauge.cpp | 8 +- src/os2/menuitem.cpp | 1 - src/os2/window.cpp | 16 +- src/png/makefile.b32 | 1 - src/stubs/menuitem.cpp | 1 - src/unix/threadpsx.cpp | 32 +- src/unix/utilsunx.cpp | 122 ++--- 336 files changed, 3768 insertions(+), 3789 deletions(-) diff --git a/include/wx/arrimpl.cpp b/include/wx/arrimpl.cpp index 22a1239098..c2888057dd 100644 --- a/include/wx/arrimpl.cpp +++ b/include/wx/arrimpl.cpp @@ -21,7 +21,7 @@ *****************************************************************************/ // needed to resolve the conflict between global T and macro parameter T -#define _WX_ERROR_REMOVE2(x) T("bad index in " #x "::Remove()") +#define _WX_ERROR_REMOVE2(x) wxT("bad index in " #x "::Remove()") // macro implements remaining (not inline) methods of template list // (it's private to this file) diff --git a/include/wx/buffer.h b/include/wx/buffer.h index feb1c3c33f..b91a6cfc78 100644 --- a/include/wx/buffer.h +++ b/include/wx/buffer.h @@ -28,7 +28,7 @@ class wxCharBuffer public: wxCharBuffer(const char *str) { - wxASSERT_MSG( str, T("NULL string in wxCharBuffer") ); + wxASSERT_MSG( str, wxT("NULL string in wxCharBuffer") ); m_str = str ? strdup(str) : (char *)NULL; } @@ -67,7 +67,7 @@ class wxWCharBuffer public: wxWCharBuffer(const wchar_t *wcs) { - wxASSERT_MSG( wcs, T("NULL string in wxWCharBuffer") ); + wxASSERT_MSG( wcs, wxT("NULL string in wxWCharBuffer") ); if (wcs) { size_t siz = (wcslen(wcs)+1)*sizeof(wchar_t); diff --git a/include/wx/dialup.h b/include/wx/dialup.h index e5e4f74281..182374aa15 100644 --- a/include/wx/dialup.h +++ b/include/wx/dialup.h @@ -26,7 +26,7 @@ class WXDLLEXPORT wxArrayString; extern const wxChar *wxEmptyString; -#define WXDIALUP_MANAGER_DEFAULT_BEACONHOST T("www.yahoo.com") +#define WXDIALUP_MANAGER_DEFAULT_BEACONHOST wxT("www.yahoo.com") // ---------------------------------------------------------------------------- // A class which groups functions dealing with connecting to the network from a @@ -148,8 +148,8 @@ public: // Sets the commands to start up the network and to hang up again. Used by // the Unix implementations only. virtual void - SetConnectCommand(const wxString& commandDial = T("/usr/bin/pon"), - const wxString& commandHangup = T("/usr/bin/poff")) = 0; + SetConnectCommand(const wxString& commandDial = wxT("/usr/bin/pon"), + const wxString& commandHangup = wxT("/usr/bin/poff")) = 0; }; // ---------------------------------------------------------------------------- diff --git a/include/wx/dynarray.h b/include/wx/dynarray.h index b5466516d2..8e69a43ee2 100644 --- a/include/wx/dynarray.h +++ b/include/wx/dynarray.h @@ -151,10 +151,10 @@ private: // template classes // ============================================================================ -// resolves the name conflict between the T() macor and T typedef: we can't -// use T() inside WX_DEFINE_ARRAY! -#define _WX_ERROR_SIZEOF T("illegal use of DEFINE_ARRAY") -#define _WX_ERROR_REMOVE T("removing inexisting element in wxArray::Remove") +// resolves the name conflict between the wxT() macor and T typedef: we can't +// use wxT() inside WX_DEFINE_ARRAY! +#define _WX_ERROR_SIZEOF wxT("illegal use of DEFINE_ARRAY") +#define _WX_ERROR_REMOVE wxT("removing inexisting element in wxArray::Remove") // ---------------------------------------------------------------------------- // This macro generates a new array class. It is intended for storage of simple diff --git a/include/wx/event.h b/include/wx/event.h index 77dc0db3ad..3ba1b9258a 100644 --- a/include/wx/event.h +++ b/include/wx/event.h @@ -897,7 +897,7 @@ public: { // GetVeto() will return FALSE anyhow... wxCHECK_RET( m_canVeto, - T("call to Veto() ignored (can't veto this event)") ); + wxT("call to Veto() ignored (can't veto this event)") ); m_veto = veto; } @@ -1319,7 +1319,7 @@ public: virtual void OnCommand(wxWindow& WXUNUSED(win), wxCommandEvent& WXUNUSED(event)) { - wxFAIL_MSG(T("shouldn't be called any more")); + wxFAIL_MSG(wxT("shouldn't be called any more")); } // Called if child control has no callback function diff --git a/include/wx/ffile.h b/include/wx/ffile.h index 640becf4c5..4695dc989b 100644 --- a/include/wx/ffile.h +++ b/include/wx/ffile.h @@ -51,7 +51,7 @@ public: bool Close(); // assign an existing file descriptor and get it back from wxFFile object - void Attach(FILE *fp, const wxString& name = T("")) + void Attach(FILE *fp, const wxString& name = wxT("")) { Close(); m_fp = fp; m_name = name; } void Detach() { m_fp = NULL; } FILE *fp() const { return m_fp; } diff --git a/include/wx/fileconf.h b/include/wx/fileconf.h index 041763ec98..42da068138 100644 --- a/include/wx/fileconf.h +++ b/include/wx/fileconf.h @@ -141,9 +141,9 @@ public: // New constructor: one size fits all. Specify wxCONFIG_USE_LOCAL_FILE or // wxCONFIG_USE_GLOBAL_FILE to say which files should be used. wxFileConfig(const wxString& appName, - const wxString& vendorName = T(""), - const wxString& localFilename = T(""), - const wxString& globalFilename = T(""), + const wxString& vendorName = wxT(""), + const wxString& localFilename = wxT(""), + const wxString& globalFilename = wxT(""), long style = wxCONFIG_USE_LOCAL_FILE); // dtor will save unsaved data diff --git a/include/wx/filefn.h b/include/wx/filefn.h index b0565fdbbf..91bc0c1fa8 100644 --- a/include/wx/filefn.h +++ b/include/wx/filefn.h @@ -159,15 +159,15 @@ WXDLLEXPORT bool wxMkdir(const wxString& dir, int perm = 0777); WXDLLEXPORT bool wxRmdir(const wxString& dir, int flags = 0); // separators in file names -#define wxFILE_SEP_EXT T('.') -#define wxFILE_SEP_DSK T(':') -#define wxFILE_SEP_PATH_DOS T('\\') -#define wxFILE_SEP_PATH_UNIX T('/') +#define wxFILE_SEP_EXT wxT('.') +#define wxFILE_SEP_DSK wxT(':') +#define wxFILE_SEP_PATH_DOS wxT('\\') +#define wxFILE_SEP_PATH_UNIX wxT('/') // separator in the path list (as in PATH environment variable) // NB: these are strings and not characters on purpose! -#define wxPATH_SEP_DOS T(";") -#define wxPATH_SEP_UNIX T(":") +#define wxPATH_SEP_DOS wxT(";") +#define wxPATH_SEP_UNIX wxT(":") // platform independent versions #ifdef __UNIX__ diff --git a/include/wx/fontenum.h b/include/wx/fontenum.h index 02f94a8930..fc4c6626a6 100644 --- a/include/wx/fontenum.h +++ b/include/wx/fontenum.h @@ -32,7 +32,7 @@ public: // enumerate the different encodings either for given font family or for // all font families - will result in OnFontEncoding() being called for // each available (family, encoding) couple - virtual bool EnumerateEncodings(const wxString& family = T("")); + virtual bool EnumerateEncodings(const wxString& family = wxT("")); // callbacks which are called after one of EnumerateXXX() functions from // above is invoked - all of them may return FALSE to stop enumeration or diff --git a/include/wx/generic/filedlgg.h b/include/wx/generic/filedlgg.h index f58d703f33..6724c6bb54 100644 --- a/include/wx/generic/filedlgg.h +++ b/include/wx/generic/filedlgg.h @@ -100,7 +100,7 @@ public: const wxSize &size = wxDefaultSize, long style = wxLC_LIST, const wxValidator &validator = wxDefaultValidator, - const wxString &name = T("filelist") ); + const wxString &name = wxT("filelist") ); void ChangeToListMode(); void ChangeToReportMode(); void ChangeToIconMode(); diff --git a/include/wx/generic/progdlgg.h b/include/wx/generic/progdlgg.h index 0b806f6b0d..73b4191280 100644 --- a/include/wx/generic/progdlgg.h +++ b/include/wx/generic/progdlgg.h @@ -54,7 +54,7 @@ public: @param newmsg if used, new message to display @returns true if ABORT button has not been pressed */ - bool Update(int value = -1, const wxString& newmsg = T("")); + bool Update(int value = -1, const wxString& newmsg = wxT("")); /* Can be called to continue after the cancel button has been pressed, but the program decided to continue the operation (e.g., user didn't diff --git a/include/wx/gtk/frame.h b/include/wx/gtk/frame.h index 19563836cf..497343f54f 100644 --- a/include/wx/gtk/frame.h +++ b/include/wx/gtk/frame.h @@ -64,7 +64,7 @@ public: #if wxUSE_STATUSBAR virtual wxStatusBar* CreateStatusBar(int number=1, long style = wxST_SIZEGRIP, wxWindowID id = 0, - const wxString& name = T("statusBar")); + const wxString& name = wxT("statusBar")); virtual wxStatusBar *OnCreateStatusBar( int number, long style, wxWindowID id, const wxString& name ); virtual wxStatusBar *GetStatusBar() const; diff --git a/include/wx/gtk1/frame.h b/include/wx/gtk1/frame.h index 19563836cf..497343f54f 100644 --- a/include/wx/gtk1/frame.h +++ b/include/wx/gtk1/frame.h @@ -64,7 +64,7 @@ public: #if wxUSE_STATUSBAR virtual wxStatusBar* CreateStatusBar(int number=1, long style = wxST_SIZEGRIP, wxWindowID id = 0, - const wxString& name = T("statusBar")); + const wxString& name = wxT("statusBar")); virtual wxStatusBar *OnCreateStatusBar( int number, long style, wxWindowID id, const wxString& name ); virtual wxStatusBar *GetStatusBar() const; diff --git a/include/wx/html/msw/back.bmp b/include/wx/html/msw/back.bmp index a81d37879afb304478cb1bf15359fb7f2ee74f15..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 202 zcmZ?rJ;eY4UO-9%hy|dSk%0v)(EubFp_mm&gYba^2Y@64!|5jn7$zJkXJ}|>0P|sl z1BAf>r5zzOiy(w{RCIB1abRE(G87aP6kuRfHU`NK^Sb&6L6E6azv3@>YbKS9?Ip+-N+M;-7vLD)dkC`w zMk!0qljSgwfqd{4C4h;Ps*u?t=SUAKu+?qTQ md0c;%sV`h`??2^*i#KoU0P|sl z1C-$cr5&LHjv_z-7Z(>tMWBEn5EuakgpGkf5lSlwFbF9rDH#FzAbB7c1Q>x_Fb&~? J-2)LpkN_gv5l;XB diff --git a/include/wx/html/msw/page.ico b/include/wx/html/msw/page.ico index 46114c9e2a884d19957b5b02c51265857b91a635..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 318 zcmbtMF%E!02rkDj(!^qDCH(~NfK@S@tno>&zp88>v&?0c@|3--Z%F>Z1}90Rd=ez`($Ke1DFPiZU|Letx=GSXEzNUu9)w zU0q$4mXrVg|H#Pn^xWLj)6-E=PJVuVo}Qkkr>9(8T%Mkr|D&V-ySv-l+lz~UUS3{t zg@sG5t}T#|i;IgV|JT?5!^8ilr~jLq*Vor{ba8!sav@iLSAW01kKf;5-`_ibe}6A8 z^RKVx=jZ2_m-B~*!>_M5PfwVbjwDD(3r$UojEpvYeJyl!Q&Ur8V`EHQTuFg}On7)e zcz8g5enx(He}8o$VPQ*$hm6R`w)Xaz)YLF+Y(hdpBb}Xl{r!Lc|380!e0*~_fPi0X zYc+X!Vs36nLyL=zjg3o793z#LbNTs0e}8>_b3>Dp)6-8=Qy3?WjcfJwLz|n=&sSSp z6dr|zL!+aor#oX~XV1@P^YfaTkOxakB|}4#)&ZX*7Z@2D8XFuP9ts~7AR!_n4i69! S5fT#$3KSIz76k?e2nh-l!LM=v delta 564 zcmX|;Ur3W-6vlru&6<^3T4rV~3%e0R=nr^N?4vN|8Zu&rbIW8HD1y0Q(!PE3LI&+m zgP{(G>%xoO>0K9j;b0)Un=r`>1uu6SOa(9G>uiJv9^U61&ilU4c}}QyyG}D(w`-`z z9|JrV)+A^Y7`Rle|E=;$4xj%co6X|)Ys6yT>Fe7e5ctjT@O#{DHy)3N(a}+smJ;Z? zPCkFc(ZK=5Vv(VtchVamolcXOurz9!#wKeq3P4@Tq35SEYTrOr77O#J!!LXVB;4RRyB_O~8kyeZ@33 zhD9EWZt~5Jkl*k`*tKQ>CWNF>)k#+j4|$-C);KxpxuYz*k5a8jBlD{$PWG@+FGL zWBv@oFimeixA%|fb9lLZ9mzS*^UQxzTfXn9IiwE*tquL zbm4eKEbsa#1Fo)~s}l}e@$^Hm8N8f~-H1CFb;8K`WBs2uO)bnuUNsJEjNqn~cx6Fm zGn)>UC_J>`GJ*(JS>jU0Bp56lmBM4*nG`G)_8r9%d!M6xjZs+d(TvfDtnyr5pR_ky bv`KU0eNt&uKLfPX!WUeK8&QSYmQDWxC-ORB literal 766 zcmchUJ#K_B5JqRCNGRTwoGLYCj*%nLZOak1r2%SJ^e*5AzCy~-Slqz-2D7YIiMGrK zV|e~N<3EuDPg%Z;>gPq|gYPF%5?{nYUTG2D-x@`DWgPQ|mS35sN$R@BNb4&p=^w$P zT{JQ4`{=WNbJI3$%>LkgoExMp-Va9~6>m)6oweSOId1unJjf&8$M5yXpPQKHXFjbT z<4kPpVSc#Xnf0OO#$+g?eSd8KsW=nWVq8{AHnS-AlC0H^#S{iEDoE^N7t>eRXJb=1 z2|dO!pr~95uvhLYY!^a0O)I+s+lAE0#%jCN!Gn$`8^7!H#@76^&e^5#c5!R{ijrDC i^O{{4>dU3a*WwHatd*Nyj8M@zy>r#Rzo&=s59SqGV?PG~ diff --git a/include/wx/msw/clock.cur b/include/wx/msw/clock.cur index 6693b04d6b52ad5bcce3fb27f77ca16c88ddcb58..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmZ{fI}XAy5JV@WpbRv$rljNqgqu+0AfZczI08rD27r_zB_$mRN=ZRnAR;~Y0+9kDTRf{z+H~uRU|SqMnJMG$uK0U!a!ytzjWs7-TIffM+-jaAS7o1 diff --git a/include/wx/msw/disable.bmp b/include/wx/msw/disable.bmp index 8859e1b9ae0aae4441e0c2322ee0a5e16f855f36..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 630 zcmZ?rEn{K;gEAng0mKSW%*en3WZ?r13=BZT(9i&(fFzK~aNxiJAPtiE4@M0C|ASaS d41^#dAW?t@*wFx*bOD+)`=~r>2n@CG0RVg#`L zz3Y_{PuJbc?d?u_WPZXs`~^>1Il` zhNcG}%|r8SGXzh#CYzy!@;GQ#bPT{e$QVKNEZ7B3|Anvh$aBBGr3$*N=ie8x=Wcv& zZ1=pM2VL&>`h5I2X;Tb&6l8pG`0KobK38NY<^L7xwS@nfSvyr`Ggo2M>zB0ql(r|S pddC-OgQpoESLbH^YYDb!H)yMQ?Xz9zP0wd~vrgjXZOoRPeFI*AATa;{ diff --git a/include/wx/msw/hand.cur b/include/wx/msw/hand.cur index ce349aa3324a9dee883052b92064b2d63300ede7..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmaLRu?@m75QX92Ae4e49YUfYB_$h>Q5b+7V3Vw3i9tw5o01~R%X5enBm!rB_W3ON z4i*H80@kcJ2G{@xbBWS|*AV0JzD&EM>GCVfYDn@1_AfXkEnH14;bE2Y-DPx!E#F+4 n3(xRBnp{fiOo~hCmIO~8)S0^vy3)0n_&rwA-QRwC&bR3S<|=*2 diff --git a/include/wx/msw/heart.cur b/include/wx/msw/heart.cur index 53811dcc55b75b2a6d25cc0915f81e65ef55a465..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmc)Dy$!=47=+=MP|$@gEiO}L17|Zc8lx}*r3>WCM@SUO3*^wlzjScHu`Cd|@^Eki z?#8Zo8fW93&oU3cSrW#wNyo5CJxP0%+7P7brQ)PK*mu~DY3-19t8Wl0_%gX{)hF}K T5vtFzg_3$|R``u=|J45i+#Y=v diff --git a/include/wx/msw/info.ico b/include/wx/msw/info.ico index 71324fa96a50ea619b61622f43e0d8180a11af6a..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 766 zcmbV~F>-`33`IrAjMLF=yOg=b=16o-hr4YuvsZGL6nhA|q@<+SS>;IvGB8OK!MFXT zFUc5-R6K3_C}v*|A_wMY(1I6GNr?%u-z|yoN=jv7WC@bwoC&DEqG~I^V=fyO3*E9R zbKLP=yxDQx@X%~{jPMwj29&-SpB+J-*h!MOw7fu7CmfzpD30KQ#-lcjE?B8jvy&cv zyJ9Zrf@k9}85M%fCh$4L*9}jx-|+E&-1>W+u`BhRFr=>ZUwDwRzqjj$xhB51x5b=4 z!aZT;ejFw!dJ7|1&u9K)u{frm^R`W#S4s+JKZ{jA3BH>E(CiK-ko}6B?jpyVNW<0w j{px}1m_eem;Sa0uo2CXKlRr?0{1bJ0>T&aG)#0e$aXwTq diff --git a/include/wx/msw/magnif1.cur b/include/wx/msw/magnif1.cur index bb4c8978d6ff06cf471120492e33ef0ec3aa5a9b..91418879d3bef4e43e329b2932d5333f7d64014e 100644 GIT binary patch literal 5 McmZQ#R8Zgo006xJP5=M^ literal 326 zcma)$I}Uj%~Y^Ahh2U5B#=yVarEx8MAFE4>7bUl^2Og?mRSL=Gs&6db^TgQ3<2@rcN diff --git a/include/wx/msw/mdi.ico b/include/wx/msw/mdi.ico index 00c8d8b8a4c243143ecca37973cbc13ea97484a2..83dcc92e06fd8dec32e736579f99819bcf198f64 100644 GIT binary patch literal 491 zcmZXPF>Zt~5Jkl*k`*tKQ>CWNF>)k#+j4|$-C);KxpxuYz*k5a8jBlD{$PWG@+FGL zWBv@oFimeixA%|fb9lLZ9mzS*^UQxzTfXn9IiwE*tquL zbm4eKEbsa#1Fo)~s}l}e@$^Hm8N8f~-H1CFb;8K`WBs2uO)bnuUNsJEjNqn~cx6Fm zGn)>UC_J>`GJ*(JS>jU0Bp56lmBM4*nG`G)_8r9%d!M6xjZs+d(TvfDtnyr5pR_ky bv`KU0eNt&uKLfPX!WUeK8&QSYmQDWxC-ORB literal 766 zcmchUJ#K_B5JqRCNGRTwoGLYCj*%nLZOak1r2%SJ^e*5AzCy~-Slqz-2D7YIiMGrK zV|e~N<3EuDPg%Z;>gPq|gYPF%5?{nYUTG2D-x@`DWgPQ|mS35sN$R@BNb4&p=^w$P zT{JQ4`{=WNbJI3$%>LkgoExMp-Va9~6>m)6oweSOId1unJjf&8$M5yXpPQKHXFjbT z<4kPpVSc#Xnf0OO#$+g?eSd8KsW=nWVq8{AHnS-AlC0H^#S{iEDoE^N7t>eRXJb=1 z2|dO!pr~95uvhLYY!^a0O)I+s+lAE0#%jCN!Gn$`8^7!H#@76^&e^5#c5!R{ijrDC i^O{{4>dU3a*WwHatd*Nyj8M@zy>r#Rzo&=s59SqGV?PG~ diff --git a/include/wx/msw/noentry.cur b/include/wx/msw/noentry.cur index b002e96b36dc2bd4664a6b7ef2d08c5a8f25f5a9..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmZ{eJqp4=5QX1t0Ihnm^@EIRz06DYXET|Fg1|69O~(|V1xBeW zW*M|@-s1`1Zf0Nbs%3_3+#s3Ab-zNTT>hw*hh}g&=`~^V@2WRjG~4x!=b@g%1>swF A?*IS* diff --git a/include/wx/msw/pencil.cur b/include/wx/msw/pencil.cur index 231ed1e79f7bc3c1b4291024697607f58f1c91ba..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmbWxAr8Vo5QX8lG@*{707F<=i9liKq44YtxB^G%5jX-8Sy>X&#}92%f$MC(o!QMy zGSW;zF^X7fAEXskiHHh;^NS(%kMXuWJ|%f`ZD0jM z&XCqP7_gPwi!6@9G@8EU6PB6e5_)c<19k;=r;4FCrkmqDJCX=N@vd|u_N68HkD=IZVP*JAV(X;&%%ld&8MqNW< z!_i;|9E7eo3)A_;SiWM)5iyCy?gG~qd!F#V!(V%RxQQ&1bl}lr@fc|Cnba?CECcc| f8>x$^*vja7#8s^r|EH1u{jyS@T2f@6-CZ8va`9(v diff --git a/include/wx/msw/private.h b/include/wx/msw/private.h index 74adabd04a..f9136f96e3 100644 --- a/include/wx/msw/private.h +++ b/include/wx/msw/private.h @@ -139,17 +139,17 @@ WXDLLEXPORT_DATA(extern HFONT) wxSTATUS_LINE_FONT; * for this combination of CTl3D/FAFA settings */ -#define STATIC_CLASS T("STATIC") +#define STATIC_CLASS wxT("STATIC") #define STATIC_FLAGS (SS_LEFT|WS_CHILD|WS_VISIBLE) -#define CHECK_CLASS T("BUTTON") +#define CHECK_CLASS wxT("BUTTON") #define CHECK_FLAGS (BS_AUTOCHECKBOX|WS_TABSTOP|WS_CHILD) #define CHECK_IS_FAFA FALSE -#define RADIO_CLASS T("BUTTON") +#define RADIO_CLASS wxT("BUTTON") #define RADIO_FLAGS (BS_AUTORADIOBUTTON|WS_CHILD|WS_VISIBLE) #define RADIO_SIZE 20 #define RADIO_IS_FAFA FALSE #define PURE_WINDOWS -#define GROUP_CLASS T("BUTTON") +#define GROUP_CLASS wxT("BUTTON") #define GROUP_FLAGS (BS_GROUPBOX|WS_CHILD|WS_VISIBLE) /* diff --git a/include/wx/msw/query.cur b/include/wx/msw/query.cur index 3578e90fd956ff8ff5288634e9c7a96505910746..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmZY3t#Se}6vgp>Hakt+Mqv|)MAmgtyhc@ZC4%9jHGQm=eGD9SC4%Afrj%iJdNRM9 z+^Yf&j#3(G77k|Cb5l%joSonN)opm(k{-kT6$Xf9s_tq|1AG@;^;PgyEUenZTNBy3 zmfiTlu3b)SZQgtySoaO@rR6n6`j{Xbu|G_6ev!sJWxH!9U86Nwmvr;I$V!HFCpJMm Yc@doO`~N_0@8k!sa183kPWhbm0~DuU7XSbN diff --git a/include/wx/msw/question.ico b/include/wx/msw/question.ico index de35b24017c3f02db28f0584160e5aa492c8a59d..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 766 zcmZ{izixyu48~2Vlx}QYkFjrYeI&NrcGa^*TNw(LxYfVoJ|}GP{!#|$tbUA3G(zaC zKOkc#HXkv=3*V~^`eBV1>kbk7knR?v3I;H85 FegTxbQNI8H diff --git a/include/wx/msw/roller.cur b/include/wx/msw/roller.cur index bb7f16613384321a0a749dd94a669c8412bff613..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmc)Eu?@m75QX7)i4X+^RH-6#B_$=LN1#dXP2v$UN2c%yjKBy?!10G5WdzRpY(MK{ zoz%$WE~?knq>kGKjs#vybS+aqEN+zK*oIOF(~_HU_;mu%^cC^pa4h9U7~#-04& feWKl^v97-qVuIs@9?NtG?26P>rptuN41cW;gqE8j diff --git a/include/wx/msw/size.cur b/include/wx/msw/size.cur index 01a731c1b21b8c373b8f358e7501fd02d9d9ec4b..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmZvWF%p763`O6Xf=)VHC@sAK9&4@OXdHzjP*O0)`~?Sf%uY7>KgmzvM51lsOwBF9 z1-OO>#XUU5E4GIX9KX9C;4`xT)d2Mf%>=@`Cp%$gRAxi%KFXDgQ|;YXqGqKbEzSS2 zxZ&H@fJ^T_ckWZOZ-_0yJ@doYoPEi;pP`$!>l)?aR8voxFPFufG^8a>Y5&*@<;HQ& diff --git a/include/wx/msw/statbr95.h b/include/wx/msw/statbr95.h index ab844a5910..1cbd7b8267 100644 --- a/include/wx/msw/statbr95.h +++ b/include/wx/msw/statbr95.h @@ -52,4 +52,3 @@ protected: #endif // wxUSE_NATIVE_STATUSBAR -#endif //_STATBR95_H \ No newline at end of file diff --git a/include/wx/msw/std.ico b/include/wx/msw/std.ico index 00c8d8b8a4c243143ecca37973cbc13ea97484a2..83dcc92e06fd8dec32e736579f99819bcf198f64 100644 GIT binary patch literal 491 zcmZXPF>Zt~5Jkl*k`*tKQ>CWNF>)k#+j4|$-C);KxpxuYz*k5a8jBlD{$PWG@+FGL zWBv@oFimeixA%|fb9lLZ9mzS*^UQxzTfXn9IiwE*tquL zbm4eKEbsa#1Fo)~s}l}e@$^Hm8N8f~-H1CFb;8K`WBs2uO)bnuUNsJEjNqn~cx6Fm zGn)>UC_J>`GJ*(JS>jU0Bp56lmBM4*nG`G)_8r9%d!M6xjZs+d(TvfDtnyr5pR_ky bv`KU0eNt&uKLfPX!WUeK8&QSYmQDWxC-ORB literal 766 zcmchUJ#K_B5JqRCNGRTwoGLYCj*%nLZOak1r2%SJ^e*5AzCy~-Slqz-2D7YIiMGrK zV|e~N<3EuDPg%Z;>gPq|gYPF%5?{nYUTG2D-x@`DWgPQ|mS35sN$R@BNb4&p=^w$P zT{JQ4`{=WNbJI3$%>LkgoExMp-Va9~6>m)6oweSOId1unJjf&8$M5yXpPQKHXFjbT z<4kPpVSc#Xnf0OO#$+g?eSd8KsW=nWVq8{AHnS-AlC0H^#S{iEDoE^N7t>eRXJb=1 z2|dO!pr~95uvhLYY!^a0O)I+s+lAE0#%jCN!Gn$`8^7!H#@76^&e^5#c5!R{ijrDC i^O{{4>dU3a*WwHatd*Nyj8M@zy>r#Rzo&=s59SqGV?PG~ diff --git a/include/wx/msw/tick.bmp b/include/wx/msw/tick.bmp index 3673eda5de62c1fc3db392cba62bc2e74ad51d90..189738f45975b0a79c4e88f05856e2fd07fd110d 100644 GIT binary patch literal 7 OcmZ?rJyxc{#RUKf?*a$_ literal 198 zcmZvT!3}^g3_|a<9syhMs~1$ShPC0%zsoR vTD4Ar8P!@-DTScB)%%zLZ&*;|h`b>!3_Q05RKP&Jb&bdV!hMoA4IQj8&&ke3Ps!M+@zxB1*rQ}SO4F^9k0NzP zik1yDoPGZU8=nurE7v!oC*Fw$g#)?2M*#RBgtE}mB?4lMBs4!zHILx5Ei-vIzc|a{ z{a9}}e=G3gTnn7F4O9eMt+j}-Ym!?T4XGy2h zGHHF@2in;-y04AT0%v?H2iotPFtNOdyrffkX9`*Y1%(DC(h%v^D{&=uz>% diff --git a/include/wx/msw/warning.ico b/include/wx/msw/warning.ico index d1b64810214c1bb22668312812b22877887549c7..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 766 zcmZuvF;2uV5S$PsBT-yOdnqYTqPzm0l+NY3=QELLBBk+DQc_-d1!9@;+961+GhWZ` zj&~y&=(vXA9GBbgXh59|CRuLNXZ>{9*KmUGZR)mnCV1tDWnY{?u>lL zVjOW|s2NN9WoIeI^Nuca_{*2ZXS|oXFnaxjNAWp~eqZHNg!5XTBH#j5FH0C3Z*sU` zeo&h7%0J3AlDl9+lRHnEhuxJ|=}B#h+&MI#%Zs3JFW-2T7lHCszVRlPK>eEBCurT< z1ix~hVC${|4!4sRzICq`Y~3qQ<=;eP=h=PR`D1Gxgi3q~VR9qe@^c#Y7>X|n8t*m76w1H{s zr7CaR)|{f(J!4c8mx}1ip7d3bc70DoI%77Z4}m_{fk|pv94%{lCdt{O^Kzc--2m~F i8VD>PE5OeIk4fEEM(`)bcU<#fzj9iv$=XvdzJCB`+hyqh diff --git a/include/wx/object.h b/include/wx/object.h index 6dc59bf649..0b72a7243a 100644 --- a/include/wx/object.h +++ b/include/wx/object.h @@ -117,13 +117,13 @@ WXDLLEXPORT wxObject* wxCreateStoredObject( wxInputStream& stream ); #define IMPLEMENT_DYNAMIC_CLASS(name, basename) \ wxObject* WXDLLEXPORT_CTORFN wxConstructorFor##name(void) \ { return new name; }\ - wxClassInfo name::sm_class##name((wxChar *) T(#name), (wxChar *) T(#basename), (wxChar *) NULL, (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name); + wxClassInfo name::sm_class##name((wxChar *) wxT(#name), (wxChar *) wxT(#basename), (wxChar *) NULL, (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name); // Multiple inheritance with two base classes #define IMPLEMENT_DYNAMIC_CLASS2(name, basename1, basename2) \ wxObject* WXDLLEXPORT_CTORFN wxConstructorFor##name(void) \ { return new name; }\ - wxClassInfo name::sm_class##name((wxChar *) T(#name), (wxChar *) T(#basename1), (wxChar *) T(#basename2), (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name); + wxClassInfo name::sm_class##name((wxChar *) wxT(#name), (wxChar *) wxT(#basename1), (wxChar *) wxT(#basename2), (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name); ////// ////// for abstract classes @@ -131,13 +131,13 @@ wxObject* WXDLLEXPORT_CTORFN wxConstructorFor##name(void) \ // Single inheritance with one base class #define IMPLEMENT_ABSTRACT_CLASS(name, basename) \ - wxClassInfo name::sm_class##name((wxChar *) T(#name), (wxChar *) T(#basename), \ + wxClassInfo name::sm_class##name((wxChar *) wxT(#name), (wxChar *) wxT(#basename), \ (wxChar *) NULL, (int) sizeof(name), (wxObjectConstructorFn) NULL); // Multiple inheritance with two base classes #define IMPLEMENT_ABSTRACT_CLASS2(name, basename1, basename2) \ - wxClassInfo name::sm_class##name((wxChar *) T(#name), (wxChar *) T(#basename1), \ - (wxChar *) T(#basename2), (int) sizeof(name), (wxObjectConstructorFn) NULL); + wxClassInfo name::sm_class##name((wxChar *) wxT(#name), (wxChar *) wxT(#basename1), \ + (wxChar *) wxT(#basename2), (int) sizeof(name), (wxObjectConstructorFn) NULL); #define IMPLEMENT_CLASS IMPLEMENT_ABSTRACT_CLASS #define IMPLEMENT_CLASS2 IMPLEMENT_ABSTRACT_CLASS2 diff --git a/include/wx/os2/statusbr.h b/include/wx/os2/statusbr.h index c5dcc0dc7d..28567b19e1 100644 --- a/include/wx/os2/statusbr.h +++ b/include/wx/os2/statusbr.h @@ -51,4 +51,3 @@ protected: }; #endif - // _WX_STATBAR_H_ \ No newline at end of file diff --git a/include/wx/proplist.h b/include/wx/proplist.h index 2a7bc18e83..f5eaa7b0fa 100644 --- a/include/wx/proplist.h +++ b/include/wx/proplist.h @@ -552,7 +552,7 @@ class WXDLLEXPORT wxListOfStringsListValidator: public wxPropertyListValidator // Called when the property is double clicked. bool OnDoubleClick(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool EditStringList(wxWindow *parent, wxStringList *stringList, const wxChar *title = T("String List Editor")); + bool EditStringList(wxWindow *parent, wxStringList *stringList, const wxChar *title = wxT("String List Editor")); // Called when the edit (...) button is pressed. void OnEdit(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); diff --git a/include/wx/string.h b/include/wx/string.h index 535b48f81c..d21eb47a47 100644 --- a/include/wx/string.h +++ b/include/wx/string.h @@ -573,7 +573,7 @@ public: // remove spaces from left or from right (default) side wxString& Trim(bool bFromRight = TRUE); // add nCount copies chPad in the beginning or at the end (default) - wxString& Pad(size_t nCount, wxChar chPad = T(' '), bool bFromRight = TRUE); + wxString& Pad(size_t nCount, wxChar chPad = wxT(' '), bool bFromRight = TRUE); // truncate string to given length wxString& Truncate(size_t uiLen); @@ -685,7 +685,7 @@ public: // return the maximum size of the string size_t max_size() const { return wxSTRING_MAXLEN; } // resize the string, filling the space with c if c != 0 - void resize(size_t nSize, wxChar ch = T('\0')); + void resize(size_t nSize, wxChar ch = wxT('\0')); // delete the contents of the string void clear() { Empty(); } // returns true if the string is empty diff --git a/include/wx/stubs/statusbr.h b/include/wx/stubs/statusbr.h index c5dcc0dc7d..28567b19e1 100644 --- a/include/wx/stubs/statusbr.h +++ b/include/wx/stubs/statusbr.h @@ -51,4 +51,3 @@ protected: }; #endif - // _WX_STATBAR_H_ \ No newline at end of file diff --git a/include/wx/wizard.h b/include/wx/wizard.h index c67c89de87..d51020e07d 100644 --- a/include/wx/wizard.h +++ b/include/wx/wizard.h @@ -81,7 +81,7 @@ public: static void Chain(wxWizardPageSimple *first, wxWizardPageSimple *second) { wxCHECK_RET( first && second, - T("NULL passed to wxWizardPageSimple::Chain") ); + wxT("NULL passed to wxWizardPageSimple::Chain") ); first->SetNext(second); second->SetPrev(first); diff --git a/include/wx/wxchar.h b/include/wx/wxchar.h index f51a494c29..4b7da77b41 100644 --- a/include/wx/wxchar.h +++ b/include/wx/wxchar.h @@ -565,11 +565,11 @@ WXDLLEXPORT size_t wxStrftime(wxChar *s, size_t max, const wxChar *fmt, const // although global macros with such names are really bad, we want to have // another name for _T() which should be used to avoid confusion between _T() // and _() in wxWindows sources -#define T(x) _T(x) +#define wxT(x) _T(x) // a Unicode-friendly __FILE__ analog #ifndef __TFILE__ - #define __XFILE__(x) T(x) + #define __XFILE__(x) wxT(x) #define __TFILE__ __XFILE__(__FILE__) #endif diff --git a/include/wx/wxexpr.h b/include/wx/wxexpr.h index 6450d8aba8..18b53d0679 100644 --- a/include/wx/wxexpr.h +++ b/include/wx/wxexpr.h @@ -112,7 +112,7 @@ class WXDLLEXPORT wxExpr return value.word; else if (type == wxExprString) return wxString(value.string); - else return wxString(T("")); + else return wxString(wxT("")); } inline wxString StringValue(void) const { @@ -120,7 +120,7 @@ class WXDLLEXPORT wxExpr return wxString(value.string); else if (type == wxExprWord) return wxString(value.word); - else return wxString(T("")); + else return wxString(wxT("")); } // Get nth arg of clause (starting from 1) diff --git a/include/wx_cw.pch++ b/include/wx_cw.pch++ index 35b82e4419..8ff1e4604b 100644 --- a/include/wx_cw.pch++ +++ b/include/wx_cw.pch++ @@ -16,4 +16,3 @@ #pragma once on #define WX_PRECOMP #include "wx/wx_cw_cm.h" -#include "wx/wxprec.h" \ No newline at end of file diff --git a/include/wx_cw_d.pch++ b/include/wx_cw_d.pch++ index 849502e79b..4659812a8b 100644 --- a/include/wx_cw_d.pch++ +++ b/include/wx_cw_d.pch++ @@ -17,4 +17,3 @@ #define WX_PRECOMP #define __WXDEBUG__ #include "wx/wx_cw_cm.h" -#include "wx/wxprec.h" \ No newline at end of file diff --git a/src/common/.cvsignore b/src/common/.cvsignore index d48f0c722b..4982619f02 100644 --- a/src/common/.cvsignore +++ b/src/common/.cvsignore @@ -1,2 +1 @@ y_tab.c -lex_yy.c \ No newline at end of file diff --git a/src/common/choiccmn.cpp b/src/common/choiccmn.cpp index e37017f0ee..cf1305605e 100644 --- a/src/common/choiccmn.cpp +++ b/src/common/choiccmn.cpp @@ -55,7 +55,7 @@ wxString wxChoiceBase::GetStringSelection() const { int sel = GetSelection(); wxString str; - wxCHECK_MSG( sel != wxNOT_FOUND, str, T("no selection, hence no string") ); + wxCHECK_MSG( sel != wxNOT_FOUND, str, wxT("no selection, hence no string") ); str = GetString(sel); return str; @@ -65,7 +65,7 @@ bool wxChoiceBase::SetStringSelection(const wxString& sel) { int selIndex = FindString(sel); wxCHECK_MSG( selIndex != wxNOT_FOUND, FALSE, - T("can't set selection to string not in the control") ); + wxT("can't set selection to string not in the control") ); SetSelection(selIndex); @@ -79,7 +79,7 @@ bool wxChoiceBase::SetStringSelection(const wxString& sel) void wxChoiceBase::SetClientObject(int n, wxClientData *data) { wxASSERT_MSG( m_clientDataItemsType != ClientData_Void, - T("can't have both object and void client data") ); + wxT("can't have both object and void client data") ); wxClientData *clientDataOld = DoGetClientObject(n); if ( clientDataOld ) @@ -92,7 +92,7 @@ void wxChoiceBase::SetClientObject(int n, wxClientData *data) wxClientData *wxChoiceBase::GetClientObject(int n) const { wxASSERT_MSG( m_clientDataItemsType == ClientData_Object, - T("this window doesn't have object client data") ); + wxT("this window doesn't have object client data") ); return DoGetClientObject(n); } @@ -100,7 +100,7 @@ wxClientData *wxChoiceBase::GetClientObject(int n) const void wxChoiceBase::SetClientData(int n, void *data) { wxASSERT_MSG( m_clientDataItemsType != ClientData_Object, - T("can't have both object and void client data") ); + wxT("can't have both object and void client data") ); DoSetClientData(n, data); m_clientDataItemsType = ClientData_Void; @@ -109,7 +109,7 @@ void wxChoiceBase::SetClientData(int n, void *data) void *wxChoiceBase::GetClientData(int n) const { wxASSERT_MSG( m_clientDataItemsType == ClientData_Void, - T("this window doesn't have void client data") ); + wxT("this window doesn't have void client data") ); return DoGetClientData(n); } diff --git a/src/common/cmndata.cpp b/src/common/cmndata.cpp index d6d80a7832..7b45f2f1a4 100644 --- a/src/common/cmndata.cpp +++ b/src/common/cmndata.cpp @@ -231,31 +231,31 @@ wxPrintData::~wxPrintData() static wxString wxGetPrintDlgError() { DWORD err = CommDlgExtendedError(); - wxString msg = T("Unknown"); + wxString msg = wxT("Unknown"); switch (err) { - case CDERR_FINDRESFAILURE: msg = T("CDERR_FINDRESFAILURE"); break; - case CDERR_INITIALIZATION: msg = T("CDERR_INITIALIZATION"); break; - case CDERR_LOADRESFAILURE: msg = T("CDERR_LOADRESFAILURE"); break; - case CDERR_LOADSTRFAILURE: msg = T("CDERR_LOADSTRFAILURE"); break; - case CDERR_LOCKRESFAILURE: msg = T("CDERR_LOCKRESFAILURE"); break; - case CDERR_MEMALLOCFAILURE: msg = T("CDERR_MEMALLOCFAILURE"); break; - case CDERR_MEMLOCKFAILURE: msg = T("CDERR_MEMLOCKFAILURE"); break; - case CDERR_NOHINSTANCE: msg = T("CDERR_NOHINSTANCE"); break; - case CDERR_NOHOOK: msg = T("CDERR_NOHOOK"); break; - case CDERR_NOTEMPLATE: msg = T("CDERR_NOTEMPLATE"); break; - case CDERR_STRUCTSIZE: msg = T("CDERR_STRUCTSIZE"); break; - case PDERR_RETDEFFAILURE: msg = T("PDERR_RETDEFFAILURE"); break; - case PDERR_PRINTERNOTFOUND: msg = T("PDERR_PRINTERNOTFOUND"); break; - case PDERR_PARSEFAILURE: msg = T("PDERR_PARSEFAILURE"); break; - case PDERR_NODEVICES: msg = T("PDERR_NODEVICES"); break; - case PDERR_NODEFAULTPRN: msg = T("PDERR_NODEFAULTPRN"); break; - case PDERR_LOADDRVFAILURE: msg = T("PDERR_LOADDRVFAILURE"); break; - case PDERR_INITFAILURE: msg = T("PDERR_INITFAILURE"); break; - case PDERR_GETDEVMODEFAIL: msg = T("PDERR_GETDEVMODEFAIL"); break; - case PDERR_DNDMMISMATCH: msg = T("PDERR_DNDMMISMATCH"); break; - case PDERR_DEFAULTDIFFERENT: msg = T("PDERR_DEFAULTDIFFERENT"); break; - case PDERR_CREATEICFAILURE: msg = T("PDERR_CREATEICFAILURE"); break; + case CDERR_FINDRESFAILURE: msg = wxT("CDERR_FINDRESFAILURE"); break; + case CDERR_INITIALIZATION: msg = wxT("CDERR_INITIALIZATION"); break; + case CDERR_LOADRESFAILURE: msg = wxT("CDERR_LOADRESFAILURE"); break; + case CDERR_LOADSTRFAILURE: msg = wxT("CDERR_LOADSTRFAILURE"); break; + case CDERR_LOCKRESFAILURE: msg = wxT("CDERR_LOCKRESFAILURE"); break; + case CDERR_MEMALLOCFAILURE: msg = wxT("CDERR_MEMALLOCFAILURE"); break; + case CDERR_MEMLOCKFAILURE: msg = wxT("CDERR_MEMLOCKFAILURE"); break; + case CDERR_NOHINSTANCE: msg = wxT("CDERR_NOHINSTANCE"); break; + case CDERR_NOHOOK: msg = wxT("CDERR_NOHOOK"); break; + case CDERR_NOTEMPLATE: msg = wxT("CDERR_NOTEMPLATE"); break; + case CDERR_STRUCTSIZE: msg = wxT("CDERR_STRUCTSIZE"); break; + case PDERR_RETDEFFAILURE: msg = wxT("PDERR_RETDEFFAILURE"); break; + case PDERR_PRINTERNOTFOUND: msg = wxT("PDERR_PRINTERNOTFOUND"); break; + case PDERR_PARSEFAILURE: msg = wxT("PDERR_PARSEFAILURE"); break; + case PDERR_NODEVICES: msg = wxT("PDERR_NODEVICES"); break; + case PDERR_NODEFAULTPRN: msg = wxT("PDERR_NODEFAULTPRN"); break; + case PDERR_LOADDRVFAILURE: msg = wxT("PDERR_LOADDRVFAILURE"); break; + case PDERR_INITFAILURE: msg = wxT("PDERR_INITFAILURE"); break; + case PDERR_GETDEVMODEFAIL: msg = wxT("PDERR_GETDEVMODEFAIL"); break; + case PDERR_DNDMMISMATCH: msg = wxT("PDERR_DNDMMISMATCH"); break; + case PDERR_DEFAULTDIFFERENT: msg = wxT("PDERR_DEFAULTDIFFERENT"); break; + case PDERR_CREATEICFAILURE: msg = wxT("PDERR_CREATEICFAILURE"); break; default: break; } return msg; @@ -299,7 +299,7 @@ void wxPrintData::ConvertToNative() pd->hDevNames = NULL; #if defined(__WXDEBUG__) && defined(__WIN32__) - wxString str(T("Printing error: ")); + wxString str(wxT("Printing error: ")); str += wxGetPrintDlgError(); wxLogDebug(str); #endif @@ -343,7 +343,7 @@ void wxPrintData::ConvertToNative() //// Printer name - if (m_printerName != T("")) + if (m_printerName != wxT("")) { // TODO: make this Unicode compatible int len = wxMin(31, m_printerName.Len()); @@ -516,7 +516,7 @@ void wxPrintData::ConvertFromNative() else { // Shouldn't really get here - wxFAIL_MSG(T("Couldn't find paper size in paper database.")); + wxFAIL_MSG(wxT("Couldn't find paper size in paper database.")); m_paperId = wxPAPER_NONE; m_paperSize.x = 0; @@ -526,7 +526,7 @@ void wxPrintData::ConvertFromNative() else { // Shouldn't really get here - wxFAIL_MSG(T("Paper database wasn't initialized in wxPrintData::ConvertFromNative.")); + wxFAIL_MSG(wxT("Paper database wasn't initialized in wxPrintData::ConvertFromNative.")); m_paperId = wxPAPER_NONE; m_paperSize.x = 0; @@ -542,7 +542,7 @@ void wxPrintData::ConvertFromNative() else { // Shouldn't really get here - wxFAIL_MSG(T("Couldn't find paper size from DEVMODE.")); + wxFAIL_MSG(wxT("Couldn't find paper size from DEVMODE.")); m_paperSize.x = 0; m_paperSize.y = 0; @@ -761,7 +761,7 @@ void wxPrintDialogData::ConvertToNative() m_printData.SetNativeData((void*) NULL); - wxASSERT_MSG( (pd->hDevMode), T("hDevMode must be non-NULL in ConvertToNative!")); + wxASSERT_MSG( (pd->hDevMode), wxT("hDevMode must be non-NULL in ConvertToNative!")); pd->hDC = (HDC) NULL; pd->nFromPage = (UINT)m_printFromPage; @@ -1023,7 +1023,7 @@ void wxPageSetupDialogData::ConvertToNative() m_printData.SetNativeData((void*) NULL); - wxASSERT_MSG( (pd->hDevMode), T("hDevMode must be non-NULL in ConvertToNative!")); + wxASSERT_MSG( (pd->hDevMode), wxT("hDevMode must be non-NULL in ConvertToNative!")); // pd->hDevMode = GlobalAlloc(GMEM_MOVEABLE, sizeof(DEVMODE)); @@ -1163,7 +1163,7 @@ void wxPageSetupDialogData::SetPaperSize(wxPaperSize id) void wxPageSetupDialogData::CalculateIdFromPaperSize() { wxASSERT_MSG( (wxThePrintPaperDatabase != (wxPrintPaperDatabase*) NULL), - T("wxThePrintPaperDatabase should not be NULL. " + wxT("wxThePrintPaperDatabase should not be NULL. " "Do not create global print dialog data objects.") ); wxSize sz = GetPaperSize(); @@ -1179,7 +1179,7 @@ void wxPageSetupDialogData::CalculateIdFromPaperSize() void wxPageSetupDialogData::CalculatePaperSizeFromId() { wxASSERT_MSG( (wxThePrintPaperDatabase != (wxPrintPaperDatabase*) NULL), - T("wxThePrintPaperDatabase should not be NULL. " + wxT("wxThePrintPaperDatabase should not be NULL. " "Do not create global print dialog data objects.") ); wxSize sz = wxThePrintPaperDatabase->GetSize(m_printData.GetPaperId()); diff --git a/src/common/config.cpp b/src/common/config.cpp index cacf6c982c..f93307ed0f 100644 --- a/src/common/config.cpp +++ b/src/common/config.cpp @@ -186,7 +186,7 @@ bool wxConfigBase::Read(const wxString& key, int *pi, int defVal) const bool wxConfigBase::Write(const wxString& key, double val) { wxString str; - str.Printf(T("%f"), val); + str.Printf(wxT("%f"), val); return Write(key, str); } @@ -371,11 +371,11 @@ void wxSplitPath(wxArrayString& aParts, const wxChar *sz) wxString strCurrent; const wxChar *pc = sz; for ( ;; ) { - if ( *pc == T('\0') || *pc == wxCONFIG_PATH_SEPARATOR ) { - if ( strCurrent == T(".") ) { + if ( *pc == wxT('\0') || *pc == wxCONFIG_PATH_SEPARATOR ) { + if ( strCurrent == wxT(".") ) { // ignore } - else if ( strCurrent == T("..") ) { + else if ( strCurrent == wxT("..") ) { // go up one level if ( aParts.IsEmpty() ) wxLogWarning(_("'%s' has extra '..', ignored."), sz); @@ -391,7 +391,7 @@ void wxSplitPath(wxArrayString& aParts, const wxChar *sz) //else: // could log an error here, but we prefer to ignore extra '/' - if ( *pc == T('\0') ) + if ( *pc == wxT('\0') ) return; } else diff --git a/src/common/ctrlcmn.cpp b/src/common/ctrlcmn.cpp index 9cfd4bb2f9..916a4e578d 100644 --- a/src/common/ctrlcmn.cpp +++ b/src/common/ctrlcmn.cpp @@ -48,7 +48,7 @@ bool wxControlBase::CreateControl(wxWindowBase *parent, // even if it's possible to create controls without parents in some port, // it should surely be discouraged because it doesn't work at all under // Windows - wxCHECK_MSG( parent, FALSE, T("all controls must have parents") ); + wxCHECK_MSG( parent, FALSE, wxT("all controls must have parents") ); if ( !CreateBase(parent, id, pos, size, style, validator, name) ) return FALSE; diff --git a/src/common/date.cpp b/src/common/date.cpp index 57392ab994..476310692a 100644 --- a/src/common/date.cpp +++ b/src/common/date.cpp @@ -43,13 +43,13 @@ #define ABBR_LENGTH 3 static const wxChar *dayname[] = { - T("Sunday"), T("Monday"), T("Tuesday"), T("Wednesday"), - T("Thursday"), T("Friday"), T("Saturday") + wxT("Sunday"), wxT("Monday"), wxT("Tuesday"), wxT("Wednesday"), + wxT("Thursday"), wxT("Friday"), wxT("Saturday") }; static const wxChar *mname[] = { - T("January"), T("February"), T("March"), T("April"), T("May"), T("June"), - T("July"), T("August"), T("September"), T("October"), T("November"), T("December") + wxT("January"), wxT("February"), wxT("March"), wxT("April"), wxT("May"), wxT("June"), + wxT("July"), wxT("August"), wxT("September"), wxT("October"), wxT("November"), wxT("December") }; static int GauDays[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; @@ -88,7 +88,7 @@ wxDate::wxDate (const wxString& dat) { DisplayFormat=wxMDY; DisplayOptions='\0'; - if (wxStrcmp(dat, T("TODAY")) == 0 || wxStrcmp(dat, T("today")) == 0) + if (wxStrcmp(dat, wxT("TODAY")) == 0 || wxStrcmp(dat, wxT("today")) == 0) { // Sets the current date Set(); @@ -98,10 +98,10 @@ wxDate::wxDate (const wxString& dat) wxChar buf[100]; wxStrcpy(buf, dat); - wxChar *save_ptr, *token = wxStrtok(buf,T("/-"),&save_ptr); + wxChar *save_ptr, *token = wxStrtok(buf,wxT("/-"),&save_ptr); month = wxAtoi(token); - day = wxAtoi(wxStrtok((wxChar *) NULL,T("/-"),&save_ptr)); - year = wxAtoi(wxStrtok((wxChar *) NULL,T(" "),&save_ptr)); + day = wxAtoi(wxStrtok((wxChar *) NULL,wxT("/-"),&save_ptr)); + year = wxAtoi(wxStrtok((wxChar *) NULL,wxT(" "),&save_ptr)); } mdy_to_julian (); @@ -131,7 +131,7 @@ void wxDate::operator = (const wxString& dat) { DisplayFormat=wxMDY; DisplayOptions='\0'; - if (wxStrcmp(dat, T("TODAY")) == 0 || wxStrcmp(dat, T("today")) == 0) + if (wxStrcmp(dat, wxT("TODAY")) == 0 || wxStrcmp(dat, wxT("today")) == 0) { // Sets the current date Set(); @@ -141,10 +141,10 @@ void wxDate::operator = (const wxString& dat) wxChar buf[100]; wxStrcpy(buf, dat); - wxChar *save_ptr, *token = wxStrtok(buf,T("/-"),&save_ptr); + wxChar *save_ptr, *token = wxStrtok(buf,wxT("/-"),&save_ptr); month = wxAtoi(token); - day = wxAtoi(wxStrtok((wxChar *) NULL,T("/-"),&save_ptr)); - year = wxAtoi(wxStrtok((wxChar *) NULL,T(" "),&save_ptr)); + day = wxAtoi(wxStrtok((wxChar *) NULL,wxT("/-"),&save_ptr)); + year = wxAtoi(wxStrtok((wxChar *) NULL,wxT(" "),&save_ptr)); } mdy_to_julian (); @@ -379,11 +379,11 @@ wxString wxDate::FormatDate (int type) const } wxStrncpy( buf, wxGetTranslation(dayname[day_of_week-1]), (DisplayOptions & wxDATE_ABBR) ? ABBR_LENGTH : 9); - wxStrcat( buf, T(", ")); + wxStrcat( buf, wxT(", ")); wxStrncat( buf, wxGetTranslation(mname[month-1]), (DisplayOptions & wxDATE_ABBR) ? ABBR_LENGTH : 9); - wxStrcat( buf, T(" ")); - wxSprintf( buf+wxStrlen(buf), T("%d, %d"), day, abs(year) ); + wxStrcat( buf, wxT(" ")); + wxSprintf( buf+wxStrlen(buf), wxT("%d, %d"), day, abs(year) ); if (year < 0) wxStrcat(buf,_(" B.C.")); return wxString(buf); @@ -395,10 +395,10 @@ wxString wxDate::FormatDate (int type) const wxStrcpy(buf, _("invalid date")); return wxString(buf); } - wxSprintf(buf,T("%d "), day); + wxSprintf(buf,wxT("%d "), day); wxStrncat(buf, wxGetTranslation(mname[month-1]), (DisplayOptions & wxDATE_ABBR) ? ABBR_LENGTH : 9); - wxSprintf( buf+wxStrlen(buf), T(" %d"), abs(year) ); + wxSprintf( buf+wxStrlen(buf), wxT(" %d"), abs(year) ); if (year < 0) wxStrcat(buf, _(" B.C.")); return wxString(buf); @@ -408,13 +408,13 @@ wxString wxDate::FormatDate (int type) const if (day==0 || month==0 || year==0) wxStrcpy(buf, _("invalid date")); else - wxSprintf( buf+wxStrlen(buf), T("%1d/%1d/%02d"), month, day, + wxSprintf( buf+wxStrlen(buf), wxT("%1d/%1d/%02d"), month, day, (DisplayOptions & wxNO_CENTURY) && (abs(year) > 1899) ? (abs(year) - (abs(year) / 100 * 100)) : (abs(year)) ); return wxString(buf); } - return wxString(T("")); + return wxString(wxT("")); } void wxDate::SetFormat( int format ) diff --git a/src/common/dlgcmn.cpp b/src/common/dlgcmn.cpp index df030412fd..bdae60dffb 100644 --- a/src/common/dlgcmn.cpp +++ b/src/common/dlgcmn.cpp @@ -56,13 +56,13 @@ wxSizer *wxDialogBase::CreateTextSizer( const wxString &message ) wxString line; for (size_t pos = 0; pos < message.Len(); pos++) { - if (message[pos] == T('\n')) + if (message[pos] == wxT('\n')) { if (!line.IsEmpty()) { wxStaticText *s1 = new wxStaticText( this, -1, line ); box->Add( s1 ); - line = T(""); + line = wxT(""); } else { diff --git a/src/common/docmdi.cpp b/src/common/docmdi.cpp index 0e8c9d1c35..dc622fc6f5 100644 --- a/src/common/docmdi.cpp +++ b/src/common/docmdi.cpp @@ -51,7 +51,7 @@ void wxDocMDIParentFrame::OnExit(wxCommandEvent& WXUNUSED(event)) void wxDocMDIParentFrame::OnMRUFile(wxCommandEvent& event) { wxString f(m_docManager->GetHistoryFile(event.GetSelection() - wxID_FILE1)); - if (f != T("")) + if (f != wxT("")) (void)m_docManager->CreateDocument(f, wxDOC_SILENT); } diff --git a/src/common/docview.cpp b/src/common/docview.cpp index 56bbc40550..2c827b697a 100644 --- a/src/common/docview.cpp +++ b/src/common/docview.cpp @@ -103,7 +103,7 @@ static inline wxString FindExtension(const wxChar *path); // local constants // ---------------------------------------------------------------------------- -static const char *s_MRUEntryFormat = T("&%d %s"); +static const char *s_MRUEntryFormat = wxT("&%d %s"); // ============================================================================ // implementation @@ -224,7 +224,7 @@ bool wxDocument::Save() bool ret = FALSE; if (!IsModified()) return TRUE; - if (m_documentFile == T("") || !m_savedYet) + if (m_documentFile == wxT("") || !m_savedYet) ret = SaveAs(); else ret = OnSaveDocument(m_documentFile); @@ -254,7 +254,7 @@ bool wxDocument::SaveAs() wxString path, name, ext; wxSplitPath(fileName, & path, & name, & ext); - if (ext.IsEmpty() || ext == T("")) + if (ext.IsEmpty() || ext == wxT("")) { fileName += "."; fileName += docTemplate->GetDefaultExtension(); @@ -283,7 +283,7 @@ bool wxDocument::OnSaveDocument(const wxString& file) return FALSE; wxString msgTitle; - if (wxTheApp->GetAppName() != T("")) + if (wxTheApp->GetAppName() != wxT("")) msgTitle = wxTheApp->GetAppName(); else msgTitle = wxString(_("File error")); @@ -319,7 +319,7 @@ bool wxDocument::OnOpenDocument(const wxString& file) return FALSE; wxString msgTitle; - if (wxTheApp->GetAppName() != T("")) + if (wxTheApp->GetAppName() != wxT("")) msgTitle = wxTheApp->GetAppName(); else msgTitle = wxString(_("File error")); @@ -378,12 +378,12 @@ bool wxDocument::Revert() // Get title, or filename if no title, else unnamed bool wxDocument::GetPrintableName(wxString& buf) const { - if (m_documentTitle != T("")) + if (m_documentTitle != wxT("")) { buf = m_documentTitle; return TRUE; } - else if (m_documentFile != T("")) + else if (m_documentFile != wxT("")) { buf = wxFileNameFromPath(m_documentFile); return TRUE; @@ -418,7 +418,7 @@ bool wxDocument::OnSaveModified() GetPrintableName(title); wxString msgTitle; - if (wxTheApp->GetAppName() != T("")) + if (wxTheApp->GetAppName() != wxT("")) msgTitle = wxTheApp->GetAppName(); else msgTitle = wxString(_("Warning")); @@ -985,8 +985,8 @@ wxDocument *wxDocManager::CreateDocument(const wxString& path, long flags) // Existing document wxDocTemplate *temp = (wxDocTemplate *) NULL; - wxString path2(T("")); - if (path != T("")) + wxString path2(wxT("")); + if (path != wxT("")) path2 = path; if (flags & wxDOC_SILENT) @@ -1211,21 +1211,21 @@ wxDocTemplate *wxDocManager::SelectDocumentPath(wxDocTemplate **templates, { // add a '|' to separate this filter from the previous one if ( !descrBuf.IsEmpty() ) - descrBuf << T('|'); + descrBuf << wxT('|'); descrBuf << templates[i]->GetDescription() - << T(" (") << templates[i]->GetFileFilter() << T(") |") + << wxT(" (") << templates[i]->GetFileFilter() << wxT(") |") << templates[i]->GetFileFilter(); } } #else - wxString descrBuf = T("*.*"); + wxString descrBuf = wxT("*.*"); #endif int FilterIndex = 0; wxString pathTmp = wxFileSelectorEx(_("Select a file"), - T(""), - T(""), + wxT(""), + wxT(""), &FilterIndex, descrBuf, 0, @@ -1250,7 +1250,7 @@ wxDocTemplate *wxDocManager::SelectDocumentPath(wxDocTemplate **templates, } else { - path = T(""); + path = wxT(""); return (wxDocTemplate *) NULL; } #if 0 @@ -1261,7 +1261,7 @@ wxDocTemplate *wxDocManager::SelectDocumentPath(wxDocTemplate **templates, if (!temp) return (wxDocTemplate *) NULL; - wxChar *pathTmp = wxFileSelector(_("Select a file"), T(""), T(""), + wxChar *pathTmp = wxFileSelector(_("Select a file"), wxT(""), wxT(""), temp->GetDefaultExtension(), temp->GetFileFilter(), 0, wxTheApp->GetTopWindow()); @@ -1322,7 +1322,7 @@ wxDocTemplate *wxDocManager::SelectViewType(wxDocTemplate **templates, int n = 0; for (i = 0; i < noTemplates; i++) { - if (templates[i]->IsVisible() && (templates[i]->GetViewName() != T(""))) + if (templates[i]->IsVisible() && (templates[i]->GetViewName() != wxT(""))) { strings[n] = (wxChar *)templates[i]->m_viewTypeName.c_str(); data[n] = (wxChar *)templates[i]; @@ -1759,7 +1759,7 @@ void wxCommandProcessor::SetMenuStrings() { wxCommand *command = (wxCommand *)m_currentCommand->Data(); wxString commandName(command->GetName()); - if (commandName == T("")) commandName = _("Unnamed command"); + if (commandName == wxT("")) commandName = _("Unnamed command"); bool canUndo = command->CanUndo(); if (canUndo) buf = wxString(_("&Undo ")) + commandName; @@ -1774,7 +1774,7 @@ void wxCommandProcessor::SetMenuStrings() { wxCommand *redoCommand = (wxCommand *)m_currentCommand->Next()->Data(); wxString redoCommandName(redoCommand->GetName()); - if (redoCommandName == T("")) redoCommandName = _("Unnamed command"); + if (redoCommandName == wxT("")) redoCommandName = _("Unnamed command"); buf = wxString(_("&Redo ")) + redoCommandName; m_commandEditMenu->SetLabel(wxID_REDO, buf); m_commandEditMenu->Enable(wxID_REDO, TRUE); @@ -1801,7 +1801,7 @@ void wxCommandProcessor::SetMenuStrings() // we've undone to the start of the list, but can redo the first. wxCommand *redoCommand = (wxCommand *)m_commands.First()->Data(); wxString redoCommandName(redoCommand->GetName()); - if (redoCommandName == T("")) redoCommandName = _("Unnamed command"); + if (redoCommandName == wxT("")) redoCommandName = _("Unnamed command"); buf = wxString(_("&Redo ")) + redoCommandName; m_commandEditMenu->SetLabel(wxID_REDO, buf); m_commandEditMenu->Enable(wxID_REDO, TRUE); @@ -1900,7 +1900,7 @@ void wxFileHistory::AddFileToHistory(const wxString& file) void wxFileHistory::RemoveFileFromHistory(int i) { wxCHECK_RET( i < m_fileHistoryN, - T("invalid index in wxFileHistory::RemoveFileFromHistory") ); + wxT("invalid index in wxFileHistory::RemoveFileFromHistory") ); wxNode* node = m_fileMenus.First(); while ( node ) @@ -1932,7 +1932,7 @@ void wxFileHistory::RemoveFileFromHistory(int i) // to be removed as soon as wxMenu::Delete() is implemented #if 1 - menu->SetLabel(wxID_FILE1 + m_fileHistoryN - 1, T("")); + menu->SetLabel(wxID_FILE1 + m_fileHistoryN - 1, wxT("")); #endif node = node->Next(); @@ -1964,13 +1964,13 @@ void wxFileHistory::Load(wxConfigBase& config) { m_fileHistoryN = 0; wxString buf; - buf.Printf(T("file%d"), m_fileHistoryN+1); + buf.Printf(wxT("file%d"), m_fileHistoryN+1); wxString historyFile; - while ((m_fileHistoryN <= m_fileMaxFiles) && config.Read(buf, &historyFile) && (historyFile != T(""))) + while ((m_fileHistoryN <= m_fileMaxFiles) && config.Read(buf, &historyFile) && (historyFile != wxT(""))) { m_fileHistory[m_fileHistoryN] = copystring((const wxChar*) historyFile); m_fileHistoryN ++; - buf.Printf(T("file%d"), m_fileHistoryN+1); + buf.Printf(wxT("file%d"), m_fileHistoryN+1); historyFile = ""; } AddFilesToMenu(); @@ -1982,7 +1982,7 @@ void wxFileHistory::Save(wxConfigBase& config) for (i = 0; i < m_fileHistoryN; i++) { wxString buf; - buf.Printf(T("file%d"), i+1); + buf.Printf(wxT("file%d"), i+1); config.Write(buf, wxString(m_fileHistory[i])); } } diff --git a/src/common/dynarray.cpp b/src/common/dynarray.cpp index 5abc4b1f5c..c6ad4ae29d 100644 --- a/src/common/dynarray.cpp +++ b/src/common/dynarray.cpp @@ -250,7 +250,7 @@ void wxBaseArray::Add(long lItem, CMPFUNC fnCompare) // add item at the given position void wxBaseArray::Insert(long lItem, size_t nIndex) { - wxCHECK_RET( nIndex <= m_nCount, T("bad index in wxArray::Insert") ); + wxCHECK_RET( nIndex <= m_nCount, wxT("bad index in wxArray::Insert") ); Grow(); @@ -263,7 +263,7 @@ void wxBaseArray::Insert(long lItem, size_t nIndex) // removes item from array (by index) void wxBaseArray::Remove(size_t nIndex) { - wxCHECK_RET( nIndex <= m_nCount, T("bad index in wxArray::Remove") ); + wxCHECK_RET( nIndex <= m_nCount, wxT("bad index in wxArray::Remove") ); memmove(&m_pItems[nIndex], &m_pItems[nIndex + 1], (m_nCount - nIndex - 1)*sizeof(long)); @@ -276,7 +276,7 @@ void wxBaseArray::Remove(long lItem) int iIndex = Index(lItem); wxCHECK_RET( iIndex != wxNOT_FOUND, - T("removing inexistent item in wxArray::Remove") ); + wxT("removing inexistent item in wxArray::Remove") ); Remove((size_t)iIndex); } diff --git a/src/common/dynlib.cpp b/src/common/dynlib.cpp index ab4f28a049..8ad47c2b83 100644 --- a/src/common/dynlib.cpp +++ b/src/common/dynlib.cpp @@ -322,7 +322,7 @@ wxLibrary *wxLibraries::LoadLibrary(const wxString& name) const char *envLibPath = getenv("LD_LIBRARY_PATH"); if ( envLibPath ) libPath << ':' << envLibPath; - wxStringTokenizer tokenizer(libPath, T(':')); + wxStringTokenizer tokenizer(libPath, wxT(':')); while ( tokenizer.HasMoreToken() ) { wxString fullname(tokenizer.NextToken()); diff --git a/src/common/event.cpp b/src/common/event.cpp index 847582748d..c20371c475 100644 --- a/src/common/event.cpp +++ b/src/common/event.cpp @@ -243,7 +243,7 @@ bool wxMouseEvent::ButtonDClick(int but) const case 3: return RightDClick(); default: - wxFAIL_MSG(T("invalid parameter in wxMouseEvent::ButtonDClick")); + wxFAIL_MSG(wxT("invalid parameter in wxMouseEvent::ButtonDClick")); } return FALSE; @@ -264,7 +264,7 @@ bool wxMouseEvent::ButtonDown(int but) const case 3: return RightDown(); default: - wxFAIL_MSG(T("invalid parameter in wxMouseEvent::ButtonDown")); + wxFAIL_MSG(wxT("invalid parameter in wxMouseEvent::ButtonDown")); } return FALSE; @@ -284,7 +284,7 @@ bool wxMouseEvent::ButtonUp(int but) const case 3: return RightUp(); default: - wxFAIL_MSG(T("invalid parameter in wxMouseEvent::ButtonUp")); + wxFAIL_MSG(wxT("invalid parameter in wxMouseEvent::ButtonUp")); } return FALSE; @@ -303,7 +303,7 @@ bool wxMouseEvent::Button(int but) const case 3: return (RightDown() || RightUp() || RightDClick()); default: - wxFAIL_MSG(T("invalid parameter in wxMouseEvent::Button")); + wxFAIL_MSG(wxT("invalid parameter in wxMouseEvent::Button")); } return FALSE; @@ -321,7 +321,7 @@ bool wxMouseEvent::ButtonIsDown(int but) const case 3: return RightIsDown(); default: - wxFAIL_MSG(T("invalid parameter in wxMouseEvent::ButtonIsDown")); + wxFAIL_MSG(wxT("invalid parameter in wxMouseEvent::ButtonIsDown")); } return FALSE; @@ -753,7 +753,7 @@ void wxEvtHandler::Connect( int id, int lastId, bool wxEvtHandler::SearchDynamicEventTable( wxEvent& event ) { wxCHECK_MSG( m_dynamicEvents, FALSE, - T("caller should check that we have dynamic events") ); + wxT("caller should check that we have dynamic events") ); int commandId = event.GetId(); diff --git a/src/common/ffile.cpp b/src/common/ffile.cpp index 4a1be06f8b..afbd6d14ea 100644 --- a/src/common/ffile.cpp +++ b/src/common/ffile.cpp @@ -54,7 +54,7 @@ wxFFile::wxFFile(const wxChar *filename, const char *mode) bool wxFFile::Open(const wxChar *filename, const char *mode) { - wxASSERT_MSG( !m_fp, T("should close or detach the old file first") ); + wxASSERT_MSG( !m_fp, wxT("should close or detach the old file first") ); #if wxUSE_UNICODE char *tmp_fname; @@ -107,8 +107,8 @@ bool wxFFile::Close() bool wxFFile::ReadAll(wxString *str) { - wxCHECK_MSG( str, FALSE, T("invalid parameter") ); - wxCHECK_MSG( IsOpened(), FALSE, T("can't read from closed file") ); + wxCHECK_MSG( str, FALSE, wxT("invalid parameter") ); + wxCHECK_MSG( IsOpened(), FALSE, wxT("can't read from closed file") ); clearerr(m_fp); @@ -137,8 +137,8 @@ bool wxFFile::ReadAll(wxString *str) size_t wxFFile::Read(void *pBuf, size_t nCount) { - wxCHECK_MSG( pBuf, FALSE, T("invalid parameter") ); - wxCHECK_MSG( IsOpened(), FALSE, T("can't read from closed file") ); + wxCHECK_MSG( pBuf, FALSE, wxT("invalid parameter") ); + wxCHECK_MSG( IsOpened(), FALSE, wxT("can't read from closed file") ); size_t nRead = fread(pBuf, 1, nCount, m_fp); if ( (nRead < nCount) && Error() ) @@ -151,8 +151,8 @@ size_t wxFFile::Read(void *pBuf, size_t nCount) size_t wxFFile::Write(const void *pBuf, size_t nCount) { - wxCHECK_MSG( pBuf, FALSE, T("invalid parameter") ); - wxCHECK_MSG( IsOpened(), FALSE, T("can't write to closed file") ); + wxCHECK_MSG( pBuf, FALSE, wxT("invalid parameter") ); + wxCHECK_MSG( IsOpened(), FALSE, wxT("can't write to closed file") ); size_t nWritten = fwrite(pBuf, 1, nCount, m_fp); if ( nWritten < nCount ) @@ -186,13 +186,13 @@ bool wxFFile::Flush() bool wxFFile::Seek(long ofs, wxSeekMode mode) { - wxCHECK_MSG( IsOpened(), FALSE, T("can't seek on closed file") ); + wxCHECK_MSG( IsOpened(), FALSE, wxT("can't seek on closed file") ); int origin; switch ( mode ) { default: - wxFAIL_MSG(T("unknown seek mode")); + wxFAIL_MSG(wxT("unknown seek mode")); // still fall through case wxFromStart: diff --git a/src/common/file.cpp b/src/common/file.cpp index 83d73611a0..4ec2c612ec 100644 --- a/src/common/file.cpp +++ b/src/common/file.cpp @@ -192,7 +192,7 @@ bool wxFile::Access(const wxChar *name, OpenMode mode) break; default: - wxFAIL_MSG(T("bad wxFile::Access mode parameter.")); + wxFAIL_MSG(wxT("bad wxFile::Access mode parameter.")); } return access(wxFNCONV(name), how) == 0; @@ -481,7 +481,7 @@ bool wxTempFile::Open(const wxString& strName) // different partitions for example). Unfortunately, the only standard // (POSIX) temp file creation function tmpnam() can't do it. #if defined(__UNIX__) || defined(__WXSTUBS__)|| defined( __WXMAC__ ) - static const wxChar *szMktempSuffix = T("XXXXXX"); + static const wxChar *szMktempSuffix = wxT("XXXXXX"); m_strTemp << strName << szMktempSuffix; // can use the cast because length doesn't change mktemp(wxMBSTRINGCAST m_strTemp.mb_str()); @@ -489,21 +489,21 @@ bool wxTempFile::Open(const wxString& strName) // for now just create a file // future enhancements can be to set some extended attributes for file systems // OS/2 supports that have them (HPFS, FAT32) and security (HPFS386) - static const wxChar *szMktempSuffix = T("XXX"); + static const wxChar *szMktempSuffix = wxT("XXX"); m_strTemp << strName << szMktempSuffix; mkdir(m_strTemp.GetWriteBuf(MAX_PATH)); #else // Windows wxString strPath; wxSplitPath(strName, &strPath, NULL, NULL); if ( strPath.IsEmpty() ) - strPath = T('.'); // GetTempFileName will fail if we give it empty string + strPath = wxT('.'); // GetTempFileName will fail if we give it empty string #ifdef __WIN32__ - if ( !GetTempFileName(strPath, T("wx_"),0, m_strTemp.GetWriteBuf(MAX_PATH)) ) + if ( !GetTempFileName(strPath, wxT("wx_"),0, m_strTemp.GetWriteBuf(MAX_PATH)) ) #else // Not sure why MSVC++ 1.5 header defines first param as BYTE - bug? - if ( !GetTempFileName((BYTE) (DWORD)(const wxChar*) strPath, T("wx_"),0, m_strTemp.GetWriteBuf(MAX_PATH)) ) + if ( !GetTempFileName((BYTE) (DWORD)(const wxChar*) strPath, wxT("wx_"),0, m_strTemp.GetWriteBuf(MAX_PATH)) ) #endif - wxLogLastError(T("GetTempFileName")); + wxLogLastError(wxT("GetTempFileName")); m_strTemp.UngetWriteBuf(); #endif // Windows/Unix diff --git a/src/common/fileconf.cpp b/src/common/fileconf.cpp index 1ae6beaa4d..6b33a83545 100644 --- a/src/common/fileconf.cpp +++ b/src/common/fileconf.cpp @@ -99,7 +99,7 @@ wxString wxFileConfig::GetGlobalDir() wxString strDir; #ifdef __UNIX__ - strDir = T("/etc/"); + strDir = wxT("/etc/"); #elif defined(__WXPM__) ULONG aulSysInfo[QSV_MAX] = {0}; UINT drive; @@ -192,15 +192,15 @@ wxString wxFileConfig::GetGlobalDir() } } #elif defined(__WXSTUBS__) - wxASSERT_MSG( FALSE, T("TODO") ) ; + wxASSERT_MSG( FALSE, wxT("TODO") ) ; #elif defined(__WXMAC__) - wxASSERT_MSG( FALSE, T("TODO") ) ; + wxASSERT_MSG( FALSE, wxT("TODO") ) ; #else // Windows wxChar szWinDir[MAX_PATH]; ::GetWindowsDirectory(szWinDir, MAX_PATH); strDir = szWinDir; - strDir << T('\\'); + strDir << wxT('\\'); #endif // Unix/Windows return strDir; @@ -213,9 +213,9 @@ wxString wxFileConfig::GetLocalDir() wxGetHomeDir(&strDir); #ifdef __UNIX__ - if (strDir.Last() != T('/')) strDir << T('/'); + if (strDir.Last() != wxT('/')) strDir << wxT('/'); #else - if (strDir.Last() != T('\\')) strDir << T('\\'); + if (strDir.Last() != wxT('\\')) strDir << wxT('\\'); #endif return strDir; @@ -226,11 +226,11 @@ wxString wxFileConfig::GetGlobalFileName(const wxChar *szFile) wxString str = GetGlobalDir(); str << szFile; - if ( wxStrchr(szFile, T('.')) == NULL ) + if ( wxStrchr(szFile, wxT('.')) == NULL ) #ifdef __UNIX__ - str << T(".conf"); + str << wxT(".conf"); #else // Windows - str << T(".ini"); + str << wxT(".ini"); #endif // UNIX/Win return str; @@ -241,14 +241,14 @@ wxString wxFileConfig::GetLocalFileName(const wxChar *szFile) wxString str = GetLocalDir(); #ifdef __UNIX__ - str << T('.'); + str << wxT('.'); #endif str << szFile; #ifdef __WXMSW__ - if ( wxStrchr(szFile, T('.')) == NULL ) - str << T(".ini"); + if ( wxStrchr(szFile, wxT('.')) == NULL ) + str << wxT(".ini"); #endif return str; @@ -385,18 +385,18 @@ void wxFileConfig::Parse(wxTextFile& file, bool bLocal) ; // skip blank/comment lines - if ( *pStart == T('\0')|| *pStart == T(';') || *pStart == T('#') ) + if ( *pStart == wxT('\0')|| *pStart == wxT(';') || *pStart == wxT('#') ) continue; - if ( *pStart == T('[') ) { // a new group + if ( *pStart == wxT('[') ) { // a new group pEnd = pStart; - while ( *++pEnd != T(']') ) { - if ( *pEnd == T('\n') || *pEnd == T('\0') ) + while ( *++pEnd != wxT(']') ) { + if ( *pEnd == wxT('\n') || *pEnd == wxT('\0') ) break; } - if ( *pEnd != T(']') ) { + if ( *pEnd != wxT(']') ) { wxLogError(_("file '%s': unexpected character %c at line %d."), file.GetName(), *pEnd, n + 1); continue; // skip this line @@ -416,15 +416,15 @@ void wxFileConfig::Parse(wxTextFile& file, bool bLocal) // check that there is nothing except comments left on this line bool bCont = TRUE; - while ( *++pEnd != T('\0') && bCont ) { + while ( *++pEnd != wxT('\0') && bCont ) { switch ( *pEnd ) { - case T('#'): - case T(';'): + case wxT('#'): + case wxT(';'): bCont = FALSE; break; - case T(' '): - case T('\t'): + case wxT(' '): + case wxT('\t'): // ignore whitespace ('\n' impossible here) break; @@ -438,8 +438,8 @@ void wxFileConfig::Parse(wxTextFile& file, bool bLocal) } else { // a key const wxChar *pEnd = pStart; - while ( *pEnd != T('=') && !wxIsspace(*pEnd) ) { - if ( *pEnd == T('\\') ) { + while ( *pEnd != wxT('=') && !wxIsspace(*pEnd) ) { + if ( *pEnd == wxT('\\') ) { // next character may be space or not - still take it because it's // quoted pEnd++; @@ -454,7 +454,7 @@ void wxFileConfig::Parse(wxTextFile& file, bool bLocal) while ( isspace(*pEnd) ) pEnd++; - if ( *pEnd++ != T('=') ) { + if ( *pEnd++ != wxT('=') ) { wxLogError(_("file '%s', line %d: '=' expected."), file.GetName(), n + 1); } @@ -692,7 +692,7 @@ bool wxFileConfig::Write(const wxString& key, const wxString& szValue) wxString strName = path.Name(); if ( strName.IsEmpty() ) { // setting the value of a group is an error - wxASSERT_MSG( wxIsEmpty(szValue), T("can't set value of a group!") ); + wxASSERT_MSG( wxIsEmpty(szValue), wxT("can't set value of a group!") ); // ... except if it's empty in which case it's a way to force it's creation m_pCurrentGroup->SetDirty(); @@ -724,7 +724,7 @@ bool wxFileConfig::Write(const wxString& key, long lValue) { // ltoa() is not ANSI :-( wxString buf; - buf.Printf(T("%ld"), lValue); + buf.Printf(wxT("%ld"), lValue); return Write(key, buf); } @@ -809,7 +809,7 @@ bool wxFileConfig::DeleteEntry(const wxString& key, bool bGroupIfEmptyAlso) if ( bGroupIfEmptyAlso && m_pCurrentGroup->IsEmpty() ) { if ( m_pCurrentGroup != m_pRootGroup ) { ConfigGroup *pGroup = m_pCurrentGroup; - SetPath(T("..")); // changes m_pCurrentGroup! + SetPath(wxT("..")); // changes m_pCurrentGroup! m_pCurrentGroup->DeleteSubgroupByName(pGroup->Name()); } //else: never delete the root group @@ -832,7 +832,7 @@ bool wxFileConfig::DeleteAll() if ( remove(m_strLocalFile.fn_str()) == -1 ) wxLogSysError(_("can't delete user configuration file '%s'"), m_strLocalFile.c_str()); - m_strLocalFile = m_strGlobalFile = T(""); + m_strLocalFile = m_strGlobalFile = wxT(""); Init(); return TRUE; @@ -1004,10 +1004,10 @@ LineList *ConfigGroup::GetGroupLine() // this group wasn't present in local config file, add it now if ( pParent != NULL ) { wxString strFullName; - strFullName << T("[") + strFullName << wxT("[") // +1: no '/' << FilterOutEntryName(GetFullName().c_str() + 1) - << T("]"); + << wxT("]"); m_pLine = m_pConfig->LineListInsert(strFullName, pParent->GetLastGroupLine()); pParent->SetLastGroup(this); // we're surely after all the others @@ -1065,7 +1065,7 @@ void ConfigGroup::Rename(const wxString& newName) LineList *line = GetGroupLine(); wxString strFullName; - strFullName << T("[") << (GetFullName().c_str() + 1) << T("]"); // +1: no '/' + strFullName << wxT("[") << (GetFullName().c_str() + 1) << wxT("]"); // +1: no '/' line->SetText(strFullName); SetDirty(); @@ -1076,7 +1076,7 @@ wxString ConfigGroup::GetFullName() const if ( Parent() ) return Parent()->GetFullName() + wxCONFIG_PATH_SEPARATOR + Name(); else - return T(""); + return wxT(""); } // ---------------------------------------------------------------------------- @@ -1374,7 +1374,7 @@ void ConfigEntry::SetValue(const wxString& strValue, bool bUser) if ( bUser ) { wxString strVal = FilterOutValue(strValue); wxString strLine; - strLine << FilterOutEntryName(m_strName) << T('=') << strVal; + strLine << FilterOutEntryName(m_strName) << wxT('=') << strVal; if ( m_pLine != NULL ) { // entry was read from the local config file, just modify the line @@ -1440,31 +1440,31 @@ static wxString FilterInValue(const wxString& str) bool bQuoted = !str.IsEmpty() && str[0] == '"'; for ( size_t n = bQuoted ? 1 : 0; n < str.Len(); n++ ) { - if ( str[n] == T('\\') ) { + if ( str[n] == wxT('\\') ) { switch ( str[++n] ) { - case T('n'): - strResult += T('\n'); + case wxT('n'): + strResult += wxT('\n'); break; - case T('r'): - strResult += T('\r'); + case wxT('r'): + strResult += wxT('\r'); break; - case T('t'): - strResult += T('\t'); + case wxT('t'): + strResult += wxT('\t'); break; - case T('\\'): - strResult += T('\\'); + case wxT('\\'): + strResult += wxT('\\'); break; - case T('"'): - strResult += T('"'); + case wxT('"'): + strResult += wxT('"'); break; } } else { - if ( str[n] != T('"') || !bQuoted ) + if ( str[n] != wxT('"') || !bQuoted ) strResult += str[n]; else if ( n != str.Len() - 1 ) { wxLogWarning(_("unexpected \" at position %d in '%s'."), @@ -1487,33 +1487,33 @@ static wxString FilterOutValue(const wxString& str) strResult.Alloc(str.Len()); // quoting is necessary to preserve spaces in the beginning of the string - bool bQuote = wxIsspace(str[0]) || str[0] == T('"'); + bool bQuote = wxIsspace(str[0]) || str[0] == wxT('"'); if ( bQuote ) - strResult += T('"'); + strResult += wxT('"'); wxChar c; for ( size_t n = 0; n < str.Len(); n++ ) { switch ( str[n] ) { - case T('\n'): - c = T('n'); + case wxT('\n'): + c = wxT('n'); break; - case T('\r'): - c = T('r'); + case wxT('\r'): + c = wxT('r'); break; - case T('\t'): - c = T('t'); + case wxT('\t'): + c = wxT('t'); break; - case T('\\'): - c = T('\\'); + case wxT('\\'): + c = wxT('\\'); break; - case T('"'): + case wxT('"'): if ( bQuote ) { - c = T('"'); + c = wxT('"'); break; } //else: fall through @@ -1524,11 +1524,11 @@ static wxString FilterOutValue(const wxString& str) } // we get here only for special characters - strResult << T('\\') << c; + strResult << wxT('\\') << c; } if ( bQuote ) - strResult += T('"'); + strResult += wxT('"'); return strResult; } @@ -1540,7 +1540,7 @@ static wxString FilterInEntryName(const wxString& str) strResult.Alloc(str.Len()); for ( const wxChar *pc = str.c_str(); *pc != '\0'; pc++ ) { - if ( *pc == T('\\') ) + if ( *pc == wxT('\\') ) pc++; strResult += *pc; @@ -1555,15 +1555,15 @@ static wxString FilterOutEntryName(const wxString& str) wxString strResult; strResult.Alloc(str.Len()); - for ( const wxChar *pc = str.c_str(); *pc != T('\0'); pc++ ) { + for ( const wxChar *pc = str.c_str(); *pc != wxT('\0'); pc++ ) { wxChar c = *pc; // we explicitly allow some of "safe" chars and 8bit ASCII characters // which will probably never have special meaning // NB: note that wxCONFIG_IMMUTABLE_PREFIX and wxCONFIG_PATH_SEPARATOR // should *not* be quoted - if ( !wxIsalnum(c) && !wxStrchr(T("@_/-!.*%"), c) && ((c & 0x80) == 0) ) - strResult += T('\\'); + if ( !wxIsalnum(c) && !wxStrchr(wxT("@_/-!.*%"), c) && ((c & 0x80) == 0) ) + strResult += wxT('\\'); strResult += c; } diff --git a/src/common/filefn.cpp b/src/common/filefn.cpp index d6b6b6d604..65aeab4ae3 100644 --- a/src/common/filefn.cpp +++ b/src/common/filefn.cpp @@ -144,9 +144,9 @@ void wxPathList::AddEnvList (const wxString& envVariable) { static const wxChar PATH_TOKS[] = #ifdef __WINDOWS__ - T(" ;"); // Don't seperate with colon in DOS (used for drive) + wxT(" ;"); // Don't seperate with colon in DOS (used for drive) #else - T(" :;"); + wxT(" :;"); #endif wxChar *val = wxGetenv (WXSTRINGCAST envVariable); @@ -216,8 +216,8 @@ wxString wxPathList::FindValidPath (const wxString& file) wxChar *path = (wxChar *) node->Data (); wxStrcpy (wxFileFunctionsBuffer, path); wxChar ch = wxFileFunctionsBuffer[wxStrlen(wxFileFunctionsBuffer)-1]; - if (ch != T('\\') && ch != T('/')) - wxStrcat (wxFileFunctionsBuffer, T("/")); + if (ch != wxT('\\') && ch != wxT('/')) + wxStrcat (wxFileFunctionsBuffer, wxT("/")); wxStrcat (wxFileFunctionsBuffer, filename); #ifdef __WINDOWS__ Unix2DosFilename (wxFileFunctionsBuffer); @@ -228,7 +228,7 @@ wxString wxPathList::FindValidPath (const wxString& file) } } // for() - return wxString(T("")); // Not found + return wxString(wxT("")); // Not found } wxString wxPathList::FindAbsoluteValidPath (const wxString& file) @@ -272,7 +272,7 @@ wxFileExists (const wxString& filename) struct stat stbuf; #endif - if ((filename != T("")) && stat (wxFNSTRINGCAST filename.fn_str(), &stbuf) == 0) + if ((filename != wxT("")) && stat (wxFNSTRINGCAST filename.fn_str(), &stbuf) == 0) return TRUE; return FALSE; #endif @@ -293,15 +293,15 @@ bool wxFileExists(const char *pszFileName) bool wxIsAbsolutePath (const wxString& filename) { - if (filename != T("")) + if (filename != wxT("")) { - if (filename[0] == T('/') + if (filename[0] == wxT('/') #ifdef __VMS__ - || (filename[0] == T('[') && filename[1] != T('.')) + || (filename[0] == wxT('[') && filename[1] != wxT('.')) #endif #ifdef __WINDOWS__ /* MSDOS */ - || filename[0] == T('\\') || (wxIsalpha (filename[0]) && filename[1] == T(':')) + || filename[0] == wxT('\\') || (wxIsalpha (filename[0]) && filename[1] == wxT(':')) #endif ) return TRUE; @@ -321,7 +321,7 @@ void wxStripExtension(wxChar *buffer) int i = len-1; while (i > 0) { - if (buffer[i] == T('.')) + if (buffer[i] == wxT('.')) { buffer[i] = 0; break; @@ -336,7 +336,7 @@ void wxStripExtension(wxString& buffer) size_t i = len-1; while (i > 0) { - if (buffer.GetChar(i) == T('.')) + if (buffer.GetChar(i) == wxT('.')) { buffer = buffer.Left(i); break; @@ -349,15 +349,15 @@ void wxStripExtension(wxString& buffer) wxChar *wxRealPath (wxChar *path) { #ifdef __WXMSW__ - static const wxChar SEP = T('\\'); + static const wxChar SEP = wxT('\\'); Unix2DosFilename(path); #else - static const wxChar SEP = T('/'); + static const wxChar SEP = wxT('/'); #endif if (path[0] && path[1]) { /* MATTHEW: special case "/./x" */ wxChar *p; - if (path[2] == SEP && path[1] == T('.')) + if (path[2] == SEP && path[1] == wxT('.')) p = &path[0]; else p = &path[2]; @@ -365,31 +365,31 @@ wxChar *wxRealPath (wxChar *path) { if (*p == SEP) { - if (p[1] == T('.') && p[2] == T('.') && (p[3] == SEP || p[3] == T('\0'))) + if (p[1] == wxT('.') && p[2] == wxT('.') && (p[3] == SEP || p[3] == wxT('\0'))) { wxChar *q; for (q = p - 1; q >= path && *q != SEP; q--); - if (q[0] == SEP && (q[1] != T('.') || q[2] != T('.') || q[3] != SEP) + if (q[0] == SEP && (q[1] != wxT('.') || q[2] != wxT('.') || q[3] != SEP) && (q - 1 <= path || q[-1] != SEP)) { wxStrcpy (q, p + 3); - if (path[0] == T('\0')) + if (path[0] == wxT('\0')) { path[0] = SEP; - path[1] = T('\0'); + path[1] = wxT('\0'); } #ifdef __WXMSW__ /* Check that path[2] is NULL! */ - else if (path[1] == T(':') && !path[2]) + else if (path[1] == wxT(':') && !path[2]) { path[2] = SEP; - path[3] = T('\0'); + path[3] = wxT('\0'); } #endif p = q - 1; } } - else if (p[1] == T('.') && (p[2] == SEP || p[2] == T('\0'))) + else if (p[1] == wxT('.') && (p[2] == SEP || p[2] == wxT('\0'))) wxStrcpy (p, p + 2); } } @@ -400,20 +400,20 @@ wxChar *wxRealPath (wxChar *path) // Must be destroyed wxChar *wxCopyAbsolutePath(const wxString& filename) { - if (filename == T("")) + if (filename == wxT("")) return (wxChar *) NULL; if (! IsAbsolutePath(wxExpandPath(wxFileFunctionsBuffer, filename))) { wxChar buf[_MAXPATHLEN]; - buf[0] = T('\0'); + buf[0] = wxT('\0'); wxGetWorkingDirectory(buf, WXSIZEOF(buf)); wxChar ch = buf[wxStrlen(buf) - 1]; #ifdef __WXMSW__ - if (ch != T('\\') && ch != T('/')) - wxStrcat(buf, T("\\")); + if (ch != wxT('\\') && ch != wxT('/')) + wxStrcat(buf, wxT("\\")); #else - if (ch != T('/')) - wxStrcat(buf, T("/")); + if (ch != wxT('/')) + wxStrcat(buf, wxT("/")); #endif wxStrcat(buf, wxFileFunctionsBuffer); return copystring( wxRealPath(buf) ); @@ -451,21 +451,21 @@ wxChar *wxExpandPath(wxChar *buf, const wxChar *name) int q; // Some compilers don't like this line. -// const wxChar trimchars[] = T("\n \t"); +// const wxChar trimchars[] = wxT("\n \t"); wxChar trimchars[4]; - trimchars[0] = T('\n'); - trimchars[1] = T(' '); - trimchars[2] = T('\t'); + trimchars[0] = wxT('\n'); + trimchars[1] = wxT(' '); + trimchars[2] = wxT('\t'); trimchars[3] = 0; #ifdef __WXMSW__ - const wxChar SEP = T('\\'); + const wxChar SEP = wxT('\\'); #else - const wxChar SEP = T('/'); + const wxChar SEP = wxT('/'); #endif - buf[0] = T('\0'); - if (name == NULL || *name == T('\0')) + buf[0] = wxT('\0'); + if (name == NULL || *name == wxT('\0')) return buf; nm = copystring(name); // Make a scratch copy wxChar *nm_tmp = nm; @@ -476,14 +476,14 @@ wxChar *wxExpandPath(wxChar *buf, const wxChar *name) /* And strip off trailing whitespace and cr */ s = nm + (q = wxStrlen(nm)) - 1; while (q-- && wxStrchr((wxChar *)trimchars, *s) != NULL) - *s = T('\0'); + *s = wxT('\0'); s = nm; d = lnm; #ifdef __WXMSW__ q = FALSE; #else - q = nm[0] == T('\\') && nm[1] == T('~'); + q = nm[0] == wxT('\\') && nm[1] == wxT('~'); #endif /* Expand inline environment variables */ @@ -491,7 +491,7 @@ wxChar *wxExpandPath(wxChar *buf, const wxChar *name) while (*d) { *d++ = *s; - if(*s == T('\\')) + if(*s == wxT('\\')) { *(d - 1) = *++s; if (*d) @@ -506,7 +506,7 @@ wxChar *wxExpandPath(wxChar *buf, const wxChar *name) #else while ((*d++ = *s)) { # ifndef __WXMSW__ - if (*s == T('\\')) { + if (*s == wxT('\\')) { if ((*(d - 1) = *++s)) { s++; continue; @@ -516,13 +516,13 @@ wxChar *wxExpandPath(wxChar *buf, const wxChar *name) # endif #endif #ifdef __WXMSW__ - if (*s++ == T('$') && (*s == T('{') || *s == T(')'))) + if (*s++ == wxT('$') && (*s == wxT('{') || *s == wxT(')'))) #else - if (*s++ == T('$')) + if (*s++ == wxT('$')) #endif { register wxChar *start = d; - register int braces = (*s == T('{') || *s == T('(')); + register int braces = (*s == wxT('{') || *s == wxT('(')); register wxChar *value; #ifdef __VISAGECPP__ // VA gives assignment in logical expr warning @@ -531,7 +531,7 @@ wxChar *wxExpandPath(wxChar *buf, const wxChar *name) #else while ((*d++ = *s)) #endif - if (braces ? (*s == T('}') || *s == T(')')) : !(wxIsalnum(*s) || *s == T('_')) ) + if (braces ? (*s == wxT('}') || *s == wxT(')')) : !(wxIsalnum(*s) || *s == wxT('_')) ) break; else s++; @@ -553,14 +553,14 @@ wxChar *wxExpandPath(wxChar *buf, const wxChar *name) /* Expand ~ and ~user */ nm = lnm; - s = T(""); - if (nm[0] == T('~') && !q) + s = wxT(""); + if (nm[0] == wxT('~') && !q) { /* prefix ~ */ if (nm[1] == SEP || nm[1] == 0) { /* ~/filename */ // FIXME: wxGetUserHome could return temporary storage in Unicode mode - if ((s = WXSTRINGCAST wxGetUserHome(T(""))) != NULL) { + if ((s = WXSTRINGCAST wxGetUserHome(wxT(""))) != NULL) { if (*++nm) nm++; } @@ -577,7 +577,7 @@ wxChar *wxExpandPath(wxChar *buf, const wxChar *name) if ((home = WXSTRINGCAST wxGetUserHome(wxString(nm + 1))) == NULL) { if (was_sep) /* replace only if it was there: */ *s = SEP; - s = T(""); + s = wxT(""); } else { nm = nnm; s = home; @@ -588,7 +588,7 @@ wxChar *wxExpandPath(wxChar *buf, const wxChar *name) d = buf; if (s && *s) { /* MATTHEW: s could be NULL if user '~' didn't exist */ /* Copy home dir */ - while (T('\0') != (*d++ = *s++)) + while (wxT('\0') != (*d++ = *s++)) /* loop */; // Handle root home if (d - 1 > buf && *(d - 2) != SEP) @@ -620,7 +620,7 @@ wxContractPath (const wxString& filename, const wxString& envname, const wxStrin { static wxChar dest[_MAXPATHLEN]; - if (filename == T("")) + if (filename == wxT("")) return (wxChar *) NULL; wxStrcpy (dest, WXSTRINGCAST filename); @@ -635,10 +635,10 @@ wxContractPath (const wxString& filename, const wxString& envname, const wxStrin (tcp = wxStrstr (dest, val)) != NULL) { wxStrcpy (wxFileFunctionsBuffer, tcp + wxStrlen (val)); - *tcp++ = T('$'); - *tcp++ = T('{'); + *tcp++ = wxT('$'); + *tcp++ = wxT('{'); wxStrcpy (tcp, WXSTRINGCAST envname); - wxStrcat (tcp, T("}")); + wxStrcat (tcp, wxT("}")); wxStrcat (tcp, wxFileFunctionsBuffer); } @@ -648,8 +648,8 @@ wxContractPath (const wxString& filename, const wxString& envname, const wxStrin (len = wxStrlen(val)) > 2 && wxStrncmp(dest, val, len) == 0) { - wxStrcpy(wxFileFunctionsBuffer, T("~")); - if (user != T("")) + wxStrcpy(wxFileFunctionsBuffer, wxT("~")); + if (user != wxT("")) wxStrcat(wxFileFunctionsBuffer, (const wxChar*) user); #ifdef __WXMSW__ // strcat(wxFileFunctionsBuffer, "\\"); @@ -674,16 +674,16 @@ wxChar *wxFileNameFromPath (wxChar *path) tcp = path + wxStrlen (path); while (--tcp >= path) { - if (*tcp == T('/') || *tcp == T('\\') + if (*tcp == wxT('/') || *tcp == wxT('\\') #ifdef __VMS__ - || *tcp == T(':') || *tcp == T(']')) + || *tcp == wxT(':') || *tcp == wxT(']')) #else ) #endif return tcp + 1; } /* while */ #if defined(__WXMSW__) || defined(__WXPM__) - if (wxIsalpha (*path) && *(path + 1) == T(':')) + if (wxIsalpha (*path) && *(path + 1) == wxT(':')) return path + 2; #endif } @@ -692,7 +692,7 @@ wxChar *wxFileNameFromPath (wxChar *path) wxString wxFileNameFromPath (const wxString& path1) { - if (path1 != T("")) + if (path1 != wxT("")) { wxChar *path = WXSTRINGCAST path1 ; @@ -701,16 +701,16 @@ wxString wxFileNameFromPath (const wxString& path1) tcp = path + wxStrlen (path); while (--tcp >= path) { - if (*tcp == T('/') || *tcp == T('\\') + if (*tcp == wxT('/') || *tcp == wxT('\\') #ifdef __VMS__ - || *tcp == T(':') || *tcp == T(']')) + || *tcp == wxT(':') || *tcp == wxT(']')) #else ) #endif return wxString(tcp + 1); } /* while */ #if defined(__WXMSW__) || defined(__WXPM__) - if (wxIsalpha (*path) && *(path + 1) == T(':')) + if (wxIsalpha (*path) && *(path + 1) == wxT(':')) return wxString(path + 2); #endif } @@ -739,7 +739,7 @@ wxPathOnly (wxChar *path) while (!done && i > -1) { // ] is for VMS - if (path[i] == T('/') || path[i] == T('\\') || path[i] == T(']')) + if (path[i] == wxT('/') || path[i] == wxT('\\') || path[i] == wxT(']')) { done = TRUE; #ifdef __VMS__ @@ -755,11 +755,11 @@ wxPathOnly (wxChar *path) #if defined(__WXMSW__) || defined(__WXPM__) // Try Drive specifier - if (wxIsalpha (buf[0]) && buf[1] == T(':')) + if (wxIsalpha (buf[0]) && buf[1] == wxT(':')) { // A:junk --> A:. (since A:.\junk Not A:\junk) - buf[2] = T('.'); - buf[3] = T('\0'); + buf[2] = wxT('.'); + buf[3] = wxT('\0'); return buf; } #endif @@ -771,7 +771,7 @@ wxPathOnly (wxChar *path) // Return just the directory, or NULL if no directory wxString wxPathOnly (const wxString& path) { - if (path != T("")) + if (path != wxT("")) { wxChar buf[_MAXPATHLEN]; @@ -787,7 +787,7 @@ wxString wxPathOnly (const wxString& path) while (!done && i > -1) { // ] is for VMS - if (path[i] == T('/') || path[i] == T('\\') || path[i] == T(']')) + if (path[i] == wxT('/') || path[i] == wxT('\\') || path[i] == wxT(']')) { done = TRUE; #ifdef __VMS__ @@ -803,17 +803,17 @@ wxString wxPathOnly (const wxString& path) #if defined(__WXMSW__) || defined(__WXPM__) // Try Drive specifier - if (wxIsalpha (buf[0]) && buf[1] == T(':')) + if (wxIsalpha (buf[0]) && buf[1] == wxT(':')) { // A:junk --> A:. (since A:.\junk Not A:\junk) - buf[2] = T('.'); - buf[3] = T('\0'); + buf[2] = wxT('.'); + buf[3] = wxT('\0'); return wxString(buf); } #endif } - return wxString(T("")); + return wxString(wxT("")); } // Utility for converting delimiters in DOS filenames to UNIX style @@ -827,15 +827,15 @@ wxMac2UnixFilename (wxChar *s) if (s) { memmove( s+1 , s ,(strlen( s ) + 1)*sizeof(wxChar)) ; - if ( *s == T(':') ) - *s = T('.') ; + if ( *s == wxT(':') ) + *s = wxT('.') ; else - *s = T('/') ; + *s = wxT('/') ; while (*s) { - if (*s == T(':')) - *s = T('/'); + if (*s == wxT(':')) + *s = wxT('/'); else *s = wxTolower(*s); // Case INDEPENDENT s++; @@ -848,24 +848,24 @@ wxUnix2MacFilename (wxChar *s) { if (s) { - if ( *s == T('.') ) + if ( *s == wxT('.') ) { // relative path , since it goes on with slash which is translated to a : memmove( s , s+1 ,strlen( s )*sizeof(wxChar) ) ; } - else if ( *s == T('/') ) + else if ( *s == wxT('/') ) { // absolute path -> on mac just start with the drive name memmove( s , s+1 ,strlen( s )*sizeof(wxChar) ) ; } else { - wxASSERT_MSG( 1 , T("unknown path beginning") ) ; + wxASSERT_MSG( 1 , wxT("unknown path beginning") ) ; } while (*s) { - if (*s == T('/') || *s == T('\\')) - *s = T(':'); + if (*s == wxT('/') || *s == wxT('\\')) + *s = wxT(':'); s++ ; } @@ -878,8 +878,8 @@ wxDos2UnixFilename (wxChar *s) if (s) while (*s) { - if (*s == T('\\')) - *s = T('/'); + if (*s == wxT('\\')) + *s = wxT('/'); #if defined(__WXMSW__) || defined(__WXPM__) else *s = wxTolower(*s); // Case INDEPENDENT @@ -900,8 +900,8 @@ wxUnix2DosFilename (wxChar *WXUNUSED(s)) if (s) while (*s) { - if (*s == T('/')) - *s = T('\\'); + if (*s == wxT('/')) + *s = wxT('\\'); s++; } #endif @@ -1129,8 +1129,8 @@ bool wxPathExists(const wxChar *pszPathName) /* Windows API returns -1 from stat for "c:\dir\" if "c:\dir" exists * OTOH, we should change "d:" to "d:\" and leave "\" as is. */ wxString strPath(pszPathName); - if ( wxEndsWithPathSeparator(pszPathName) && pszPathName[1] != T('\0') ) - strPath.Last() = T('\0'); + if ( wxEndsWithPathSeparator(pszPathName) && pszPathName[1] != wxT('\0') ) + strPath.Last() = wxT('\0'); #ifdef __SALFORDC__ struct _stat st; @@ -1166,7 +1166,7 @@ wxChar *wxGetTempFileName(const wxString& prefix, wxChar *buf) for (short suffix = last_temp + 1; suffix != last_temp; ++suffix %= 1000) { - wxSprintf (tmp, T("/tmp/%s%d.%03x"), WXSTRINGCAST prefix, (int) getpid (), (int) suffix); + wxSprintf (tmp, wxT("/tmp/%s%d.%03x"), WXSTRINGCAST prefix, (int) getpid (), (int) suffix); if (!wxFileExists( tmp )) { // Touch the file to create it (reserve name) @@ -1217,11 +1217,11 @@ wxString wxFindFirstFile(const wxChar *spec, int flags) wxString path(wxPathOnly(gs_strFileSpec)); // special case: path is really "/" - if ( !path && gs_strFileSpec[0u] == T('/') ) - path = T('/'); + if ( !path && gs_strFileSpec[0u] == wxT('/') ) + path = wxT('/'); // path is empty => Local directory if ( !path ) - path = T('.'); + path = wxT('.'); gs_dirStream = opendir(path.fn_str()); if ( !gs_dirStream ) @@ -1243,7 +1243,7 @@ wxString wxFindNextFile() wxString result; #ifndef __VMS__ - wxCHECK_MSG( gs_dirStream, result, T("must call wxFindFirstFile first") ); + wxCHECK_MSG( gs_dirStream, result, wxT("must call wxFindFirstFile first") ); // Find path only so we can concatenate // found file onto path @@ -1251,8 +1251,8 @@ wxString wxFindNextFile() wxString name(wxFileNameFromPath(gs_strFileSpec)); /* MATTHEW: special case: path is really "/" */ - if ( !path && gs_strFileSpec[0u] == T('/')) - path = T('/'); + if ( !path && gs_strFileSpec[0u] == wxT('/')) + path = wxT('/'); // Do the reading struct dirent *nextDir; @@ -1266,8 +1266,8 @@ wxString wxFindNextFile() if ( !path.IsEmpty() ) { result = path; - if ( path != T('/') ) - result += T('/'); + if ( path != wxT('/') ) + result += wxT('/'); } result += nextDir->d_name; @@ -1330,7 +1330,7 @@ wxString wxFindFirstFile(const wxChar *spec, int flags) // Find path only so we can concatenate found file onto path wxString path(wxPathOnly(gs_strFileSpec)); if ( !path.IsEmpty() ) - result << path << T('\\'); + result << path << wxT('\\'); #ifdef __WIN32__ if ( gs_hFileStruct != INVALID_HANDLE_VALUE ) @@ -1423,7 +1423,7 @@ try_again: goto try_again; if ( !path.IsEmpty() ) - result << path << T('\\'); + result << path << wxT('\\'); result << gs_findDataStruct.cFileName; } @@ -1489,8 +1489,8 @@ wxChar *wxGetWorkingDirectory(wxChar *buf, int sz) if (getcwd(buf, sz) == NULL) { #endif #endif - buf[0] = T('.'); - buf[1] = T('\0'); + buf[0] = wxT('.'); + buf[1] = wxT('\0'); } #if wxUSE_UNICODE else { @@ -1613,7 +1613,7 @@ void WXDLLEXPORT wxSplitPath(const wxChar *pszFileName, wxString *pstrExt) { // it can be empty, but it shouldn't be NULL - wxCHECK_RET( pszFileName, T("NULL file name in wxSplitPath") ); + wxCHECK_RET( pszFileName, wxT("NULL file name in wxSplitPath") ); const wxChar *pDot = wxStrrchr(pszFileName, wxFILE_SEP_EXT); @@ -1673,9 +1673,9 @@ bool wxIsWild( const wxString& pattern ) wxChar *pat = WXSTRINGCAST(tmp); while (*pat) { switch (*pat++) { - case T('?'): case T('*'): case T('['): case T('{'): + case wxT('?'): case wxT('*'): case wxT('['): case wxT('{'): return TRUE; - case T('\\'): + case wxT('\\'): if (!*pat++) return FALSE; } @@ -1709,57 +1709,57 @@ bool wxMatchWild( const wxString& pat, const wxString& text, bool dot_special ) wxChar *cp; bool done = FALSE, ret_code, ok; // Below is for vi fans - const wxChar OB = T('{'), CB = T('}'); + const wxChar OB = wxT('{'), CB = wxT('}'); // dot_special means '.' only matches '.' - if (dot_special && *str == T('.') && *pattern != *str) + if (dot_special && *str == wxT('.') && *pattern != *str) return FALSE; - while ((*pattern != T('\0')) && (!done) - && (((*str==T('\0'))&&((*pattern==OB)||(*pattern==T('*'))))||(*str!=T('\0')))) { + while ((*pattern != wxT('\0')) && (!done) + && (((*str==wxT('\0'))&&((*pattern==OB)||(*pattern==wxT('*'))))||(*str!=wxT('\0')))) { switch (*pattern) { - case T('\\'): + case wxT('\\'): pattern++; - if (*pattern != T('\0')) + if (*pattern != wxT('\0')) pattern++; break; - case T('*'): + case wxT('*'): pattern++; ret_code = FALSE; - while ((*str!=T('\0')) + while ((*str!=wxT('\0')) && (!(ret_code=wxMatchWild(pattern, str++, FALSE)))) /*loop*/; if (ret_code) { - while (*str != T('\0')) + while (*str != wxT('\0')) str++; - while (*pattern != T('\0')) + while (*pattern != wxT('\0')) pattern++; } break; - case T('['): + case wxT('['): pattern++; repeat: - if ((*pattern == T('\0')) || (*pattern == T(']'))) { + if ((*pattern == wxT('\0')) || (*pattern == wxT(']'))) { done = TRUE; break; } - if (*pattern == T('\\')) { + if (*pattern == wxT('\\')) { pattern++; - if (*pattern == T('\0')) { + if (*pattern == wxT('\0')) { done = TRUE; break; } } - if (*(pattern + 1) == T('-')) { + if (*(pattern + 1) == wxT('-')) { c = *pattern; pattern += 2; - if (*pattern == T(']')) { + if (*pattern == wxT(']')) { done = TRUE; break; } - if (*pattern == T('\\')) { + if (*pattern == wxT('\\')) { pattern++; - if (*pattern == T('\0')) { + if (*pattern == wxT('\0')) { done = TRUE; break; } @@ -1773,51 +1773,51 @@ bool wxMatchWild( const wxString& pat, const wxString& text, bool dot_special ) goto repeat; } pattern++; - while ((*pattern != T(']')) && (*pattern != T('\0'))) { - if ((*pattern == T('\\')) && (*(pattern + 1) != T('\0'))) + while ((*pattern != wxT(']')) && (*pattern != wxT('\0'))) { + if ((*pattern == wxT('\\')) && (*(pattern + 1) != wxT('\0'))) pattern++; pattern++; } - if (*pattern != T('\0')) { + if (*pattern != wxT('\0')) { pattern++, str++; } break; - case T('?'): + case wxT('?'): pattern++; str++; break; case OB: pattern++; - while ((*pattern != CB) && (*pattern != T('\0'))) { + while ((*pattern != CB) && (*pattern != wxT('\0'))) { cp = str; ok = TRUE; - while (ok && (*cp != T('\0')) && (*pattern != T('\0')) - && (*pattern != T(',')) && (*pattern != CB)) { - if (*pattern == T('\\')) + while (ok && (*cp != wxT('\0')) && (*pattern != wxT('\0')) + && (*pattern != wxT(',')) && (*pattern != CB)) { + if (*pattern == wxT('\\')) pattern++; ok = (*pattern++ == *cp++); } - if (*pattern == T('\0')) { + if (*pattern == wxT('\0')) { ok = FALSE; done = TRUE; break; } else if (ok) { str = cp; - while ((*pattern != CB) && (*pattern != T('\0'))) { - if (*++pattern == T('\\')) { + while ((*pattern != CB) && (*pattern != wxT('\0'))) { + if (*++pattern == wxT('\\')) { if (*++pattern == CB) pattern++; } } } else { - while (*pattern!=CB && *pattern!=T(',') && *pattern!=T('\0')) { - if (*++pattern == T('\\')) { - if (*++pattern == CB || *pattern == T(',')) + while (*pattern!=CB && *pattern!=wxT(',') && *pattern!=wxT('\0')) { + if (*++pattern == wxT('\\')) { + if (*++pattern == CB || *pattern == wxT(',')) pattern++; } } } - if (*pattern != T('\0')) + if (*pattern != wxT('\0')) pattern++; } break; @@ -1829,9 +1829,9 @@ bool wxMatchWild( const wxString& pat, const wxString& text, bool dot_special ) } } } - while (*pattern == T('*')) + while (*pattern == wxT('*')) pattern++; - return ((*str == T('\0')) && (*pattern == T('\0'))); + return ((*str == wxT('\0')) && (*pattern == wxT('\0'))); }; #endif diff --git a/src/common/filesys.cpp b/src/common/filesys.cpp index 54c8cc86e3..65dfccc567 100644 --- a/src/common/filesys.cpp +++ b/src/common/filesys.cpp @@ -53,9 +53,9 @@ wxString wxFileSystemHandler::GetMimeTypeFromExt(const wxString& location) l2 = l; for (int i = l-1; i >= 0; i--) { c = loc[(unsigned int) i]; - if (c == T('#')) l2 = i + 1; - if (c == T('.')) {ext = loc.Right(l2-i-1); break;} - if ((c == T('/')) || (c == T('\\')) || (c == T(':'))) {return wxEmptyString;} + if (c == wxT('#')) l2 = i + 1; + if (c == wxT('.')) {ext = loc.Right(l2-i-1); break;} + if ((c == wxT('/')) || (c == wxT('\\')) || (c == wxT(':'))) {return wxEmptyString;} } if (m_MimeMng == NULL) { @@ -110,11 +110,11 @@ wxString wxFileSystemHandler::GetProtocol(const wxString& location) const bool fnd; fnd = FALSE; - for (i = l-1; (i >= 0) && ((location[i] != T('#')) || (!fnd)); i--) { - if ((location[i] == T(':')) && (i != 1 /*win: C:\path*/)) fnd = TRUE; + for (i = l-1; (i >= 0) && ((location[i] != wxT('#')) || (!fnd)); i--) { + if ((location[i] == wxT(':')) && (i != 1 /*win: C:\path*/)) fnd = TRUE; } - if (!fnd) return T("file"); - for (++i; (i < l) && (location[i] != T(':')); i++) s << location[i]; + if (!fnd) return wxT("file"); + for (++i; (i < l) && (location[i] != wxT(':')); i++) s << location[i]; return s; } @@ -126,8 +126,8 @@ wxString wxFileSystemHandler::GetLeftLocation(const wxString& location) const fnd = FALSE; for (i = location.Length()-1; i >= 0; i--) { - if ((location[i] == T(':')) && (i != 1 /*win: C:\path*/)) fnd = TRUE; - else if (fnd && (location[i] == T('#'))) return location.Left(i); + if ((location[i] == wxT(':')) && (i != 1 /*win: C:\path*/)) fnd = TRUE; + else if (fnd && (location[i] == wxT('#'))) return location.Left(i); } return wxEmptyString; } @@ -136,7 +136,7 @@ wxString wxFileSystemHandler::GetRightLocation(const wxString& location) const { int i, l = location.Length(); int l2 = l + 1; - for (i = l-1; (i >= 0) && ((location[i] != T(':')) || (i == 1) || (location[i-2] == T(':'))); i--) {if (location[i] == T('#')) l2 = i + 1;} + for (i = l-1; (i >= 0) && ((location[i] != wxT(':')) || (i == 1) || (location[i-2] == wxT(':'))); i--) {if (location[i] == wxT('#')) l2 = i + 1;} if (i == 0) return wxEmptyString; else return location.Mid(i + 1, l2 - i - 2); } @@ -148,8 +148,8 @@ wxString wxFileSystemHandler::GetAnchor(const wxString& location) const for (int i = l-1; i >= 0; i--) { c = location[i]; - if (c == T('#')) return location.Right(l-i-1); - else if ((c == T('.')) || (c == T('/')) || (c == T('\\')) || (c == T(':'))) return wxEmptyString; + if (c == wxT('#')) return location.Right(l-i-1); + else if ((c == wxT('.')) || (c == wxT('/')) || (c == wxT('\\')) || (c == wxT(':'))) return wxEmptyString; } return wxEmptyString; } @@ -168,7 +168,7 @@ class wxLocalFSHandler : public wxFileSystemHandler bool wxLocalFSHandler::CanOpen(const wxString& location) { - return GetProtocol(location) == T("file"); + return GetProtocol(location) == wxT("file"); } wxFSFile* wxLocalFSHandler::OpenFile(wxFileSystem& WXUNUSED(fs), const wxString& location) @@ -199,15 +199,15 @@ void wxFileSystem::ChangePathTo(const wxString& location, bool is_dir) m_Path = location; for (i = m_Path.Length()-1; i >= 0; i--) - if (m_Path[(unsigned int) i] == T('\\')) m_Path.GetWritableChar(i) = T('/'); // wanna be windows-safe + if (m_Path[(unsigned int) i] == wxT('\\')) m_Path.GetWritableChar(i) = wxT('/'); // wanna be windows-safe if (is_dir == FALSE) { for (i = m_Path.Length()-1; i >= 0; i--) { - if (m_Path[(unsigned int) i] == T('/')) + if (m_Path[(unsigned int) i] == wxT('/')) { - if ((i > 1) && (m_Path[(unsigned int) (i-1)] == T('/')) && (m_Path[(unsigned int) (i-2)] == T(':'))) + if ((i > 1) && (m_Path[(unsigned int) (i-1)] == wxT('/')) && (m_Path[(unsigned int) (i-2)] == wxT(':'))) { i -= 2; continue; @@ -218,7 +218,7 @@ void wxFileSystem::ChangePathTo(const wxString& location, bool is_dir) break; } } - else if (m_Path[(unsigned int) i] == T(':')) { + else if (m_Path[(unsigned int) i] == wxT(':')) { pathpos = i; break; } @@ -227,9 +227,9 @@ void wxFileSystem::ChangePathTo(const wxString& location, bool is_dir) { for (i = 0; i < (int) m_Path.Length(); i++) { - if (m_Path[(unsigned int) i] == T(':')) + if (m_Path[(unsigned int) i] == wxT(':')) { - //m_Path << T('/'); + //m_Path << wxT('/'); m_Path.Remove(i+1); break; } @@ -239,8 +239,8 @@ void wxFileSystem::ChangePathTo(const wxString& location, bool is_dir) } else { - if (m_Path[m_Path.Length()-1] != T('/')) - m_Path << T('/'); + if (m_Path[m_Path.Length()-1] != wxT('/')) + m_Path << wxT('/'); m_Path.Remove(pathpos+1); } } @@ -260,16 +260,16 @@ wxFSFile* wxFileSystem::OpenFile(const wxString& location) meta = 0; for (i = 0; i < ln; i++) { - if (loc[(unsigned int) i] == T('\\')) loc.GetWritableChar(i) = T('/'); // wanna be windows-safe + if (loc[(unsigned int) i] == wxT('\\')) loc.GetWritableChar(i) = wxT('/'); // wanna be windows-safe if (!meta) switch (loc[(unsigned int) i]) { - case T('/') : case T(':') : case T('#') : meta = loc[(unsigned int) i]; + case wxT('/') : case wxT(':') : case wxT('#') : meta = loc[(unsigned int) i]; } } m_LastName = wxEmptyString; // try relative paths first : - if (meta != T(':')) + if (meta != wxT(':')) { node = m_Handlers.GetFirst(); while (node) diff --git a/src/common/fontcmn.cpp b/src/common/fontcmn.cpp index c876d04f74..c27bb8d92b 100644 --- a/src/common/fontcmn.cpp +++ b/src/common/fontcmn.cpp @@ -70,43 +70,43 @@ bool wxFontBase::operator!=(const wxFont& font) const wxString wxFontBase::GetFamilyString() const { - wxCHECK_MSG( Ok(), T("wxDEFAULT"), T("invalid font") ); + wxCHECK_MSG( Ok(), wxT("wxDEFAULT"), wxT("invalid font") ); switch ( GetFamily() ) { - case wxDECORATIVE: return T("wxDECORATIVE"); - case wxROMAN: return T("wxROMAN"); - case wxSCRIPT: return T("wxSCRIPT"); - case wxSWISS: return T("wxSWISS"); - case wxMODERN: return T("wxMODERN"); - case wxTELETYPE: return T("wxTELETYPE"); - default: return T("wxDEFAULT"); + case wxDECORATIVE: return wxT("wxDECORATIVE"); + case wxROMAN: return wxT("wxROMAN"); + case wxSCRIPT: return wxT("wxSCRIPT"); + case wxSWISS: return wxT("wxSWISS"); + case wxMODERN: return wxT("wxMODERN"); + case wxTELETYPE: return wxT("wxTELETYPE"); + default: return wxT("wxDEFAULT"); } } wxString wxFontBase::GetStyleString() const { - wxCHECK_MSG( Ok(), T("wxDEFAULT"), T("invalid font") ); + wxCHECK_MSG( Ok(), wxT("wxDEFAULT"), wxT("invalid font") ); switch ( GetStyle() ) { - case wxNORMAL: return T("wxNORMAL"); - case wxSLANT: return T("wxSLANT"); - case wxITALIC: return T("wxITALIC"); - default: return T("wxDEFAULT"); + case wxNORMAL: return wxT("wxNORMAL"); + case wxSLANT: return wxT("wxSLANT"); + case wxITALIC: return wxT("wxITALIC"); + default: return wxT("wxDEFAULT"); } } wxString wxFontBase::GetWeightString() const { - wxCHECK_MSG( Ok(), T("wxDEFAULT"), T("invalid font") ); + wxCHECK_MSG( Ok(), wxT("wxDEFAULT"), wxT("invalid font") ); switch ( GetWeight() ) { - case wxNORMAL: return T("wxNORMAL"); - case wxBOLD: return T("wxBOLD"); - case wxLIGHT: return T("wxLIGHT"); - default: return T("wxDEFAULT"); + case wxNORMAL: return wxT("wxNORMAL"); + case wxBOLD: return wxT("wxBOLD"); + case wxLIGHT: return wxT("wxLIGHT"); + default: return wxT("wxDEFAULT"); } } diff --git a/src/common/fs_inet.cpp b/src/common/fs_inet.cpp index 6b75e4b9ef..83178ea59b 100644 --- a/src/common/fs_inet.cpp +++ b/src/common/fs_inet.cpp @@ -69,13 +69,13 @@ class wxInetCacheNode : public wxObject bool wxInternetFSHandler::CanOpen(const wxString& location) { wxString p = GetProtocol(location); - return (p == T("http")) || (p == T("ftp")); + return (p == wxT("http")) || (p == wxT("ftp")); } wxFSFile* wxInternetFSHandler::OpenFile(wxFileSystem& WXUNUSED(fs), const wxString& location) { - wxString right = GetProtocol(location) + T(":") + GetRightLocation(location); + wxString right = GetProtocol(location) + wxT(":") + GetRightLocation(location); wxInputStream *s; wxString content; wxInetCacheNode *info; @@ -93,7 +93,7 @@ wxFSFile* wxInternetFSHandler::OpenFile(wxFileSystem& WXUNUSED(fs), const wxStri { wxChar buf[256]; - wxGetTempFileName( T("wxhtml"), buf); + wxGetTempFileName( wxT("wxhtml"), buf); info = new wxInetCacheNode(buf, content); m_Cache.Put(right, info); diff --git a/src/common/ftp.cpp b/src/common/ftp.cpp index 17a33280d5..a47d3a7b27 100644 --- a/src/common/ftp.cpp +++ b/src/common/ftp.cpp @@ -50,7 +50,7 @@ #if !USE_SHARED_LIBRARY IMPLEMENT_DYNAMIC_CLASS(wxFTP, wxProtocol) -IMPLEMENT_PROTOCOL(wxFTP, T("ftp"), T("ftp"), TRUE) +IMPLEMENT_PROTOCOL(wxFTP, wxT("ftp"), wxT("ftp"), TRUE) #endif //////////////////////////////////////////////////////////////// @@ -63,7 +63,7 @@ wxFTP::wxFTP() m_lastError = wxPROTO_NOERR; m_streaming = FALSE; - m_user = T("anonymous"); + m_user = wxT("anonymous"); m_passwd = wxGetUserId(); m_passwd += '@'; m_passwd += wxGetHostName(); @@ -99,13 +99,13 @@ bool wxFTP::Connect(wxSockAddress& addr, bool WXUNUSED(wait)) return FALSE; } - command.sprintf(T("USER %s"), (const wxChar *)m_user); + command.sprintf(wxT("USER %s"), (const wxChar *)m_user); if (!SendCommand(command, '3')) { Close(); return FALSE; } - command.sprintf(T("PASS %s"), (const wxChar *)m_passwd); + command.sprintf(wxT("PASS %s"), (const wxChar *)m_passwd); if (!SendCommand(command, '2')) { Close(); return FALSE; @@ -120,7 +120,7 @@ bool wxFTP::Connect(const wxString& host) wxString my_host = host; addr.Hostname(my_host); - addr.Service(T("ftp")); + addr.Service(wxT("ftp")); return Connect(addr); } @@ -132,7 +132,7 @@ bool wxFTP::Close() return FALSE; } if (m_connected) - SendCommand(wxString(T("QUIT")), '2'); + SendCommand(wxString(wxT("QUIT")), '2'); return wxSocketClient::Close(); } @@ -147,7 +147,7 @@ bool wxFTP::SendCommand(const wxString& command, char exp_ret) m_lastError = wxPROTO_STREAMING; return FALSE; } - tmp_str = command + T("\r\n"); + tmp_str = command + wxT("\r\n"); const wxWX2MBbuf tmp_buf = tmp_str.mb_str(); if (Write(wxMBSTRINGCAST tmp_buf, strlen(tmp_buf)).Error()) { m_lastError = wxPROTO_NETERR; @@ -169,7 +169,7 @@ bool wxFTP::GetResult(char exp) if (m_lastResult.GetChar(3) == '-') { wxString key = m_lastResult.Left((size_t)3); - key += T(' '); + key += wxT(' '); while (m_lastResult.Index(key) != 0) { m_lastError = GetLine(this, m_lastResult); @@ -187,14 +187,14 @@ bool wxFTP::ChDir(const wxString& dir) { wxString str = dir; - str.Prepend(T("CWD ")); + str.Prepend(wxT("CWD ")); return SendCommand(str, '2'); } bool wxFTP::MkDir(const wxString& dir) { wxString str = dir; - str.Prepend(T("MKD ")); + str.Prepend(wxT("MKD ")); return SendCommand(str, '2'); } @@ -202,7 +202,7 @@ bool wxFTP::RmDir(const wxString& dir) { wxString str = dir; - str.Prepend(T("PWD ")); + str.Prepend(wxT("PWD ")); return SendCommand(str, '2'); } @@ -210,11 +210,11 @@ wxString wxFTP::Pwd() { int beg, end; - if (!SendCommand(T("PWD"), '2')) + if (!SendCommand(wxT("PWD"), '2')) return wxString((char *)NULL); - beg = m_lastResult.Find(T('\"'),FALSE); - end = m_lastResult.Find(T('\"'),TRUE); + beg = m_lastResult.Find(wxT('\"'),FALSE); + end = m_lastResult.Find(wxT('\"'),TRUE); return wxString(beg+1, end); } @@ -223,11 +223,11 @@ bool wxFTP::Rename(const wxString& src, const wxString& dst) { wxString str; - str = T("RNFR ") + src; + str = wxT("RNFR ") + src; if (!SendCommand(str, '3')) return FALSE; - str = T("RNTO ") + dst; + str = wxT("RNTO ") + dst; return SendCommand(str, '2'); } @@ -235,7 +235,7 @@ bool wxFTP::RmFile(const wxString& path) { wxString str; - str = T("DELE "); + str = wxT("DELE "); str += path; return SendCommand(str, '2'); } @@ -288,16 +288,16 @@ wxSocketClient *wxFTP::GetPort() wxUint16 port; wxUint32 hostaddr; - if (!SendCommand(T("PASV"), '2')) + if (!SendCommand(wxT("PASV"), '2')) return NULL; - addr_pos = m_lastResult.Find(T('(')); + addr_pos = m_lastResult.Find(wxT('(')); if (addr_pos == -1) { m_lastError = wxPROTO_PROTERR; return NULL; } straddr = m_lastResult(addr_pos+1, m_lastResult.Length()); - wxSscanf((const wxChar *)straddr,T("%d,%d,%d,%d,%d,%d"),&a[2],&a[3],&a[4],&a[5],&a[0],&a[1]); + wxSscanf((const wxChar *)straddr,wxT("%d,%d,%d,%d,%d,%d"),&a[2],&a[3],&a[4],&a[5],&a[0],&a[1]); hostaddr = (wxUint16)a[5] << 24 | (wxUint16)a[4] << 16 | (wxUint16)a[3] << 8 | a[2]; @@ -319,7 +319,7 @@ wxSocketClient *wxFTP::GetPort() bool wxFTP::Abort(void) { m_streaming = FALSE; - if (!SendCommand(T("ABOR"), '4')) + if (!SendCommand(wxT("ABOR"), '4')) return FALSE; return GetResult('2'); } @@ -330,7 +330,7 @@ wxInputStream *wxFTP::GetInputStream(const wxString& path) int pos_size; wxInputFTPStream *in_stream; - if (!SendCommand(T("TYPE I"), '2')) + if (!SendCommand(wxT("TYPE I"), '2')) return NULL; wxSocketClient *sock = GetPort(); @@ -340,15 +340,15 @@ wxInputStream *wxFTP::GetInputStream(const wxString& path) return NULL; } - tmp_str = T("RETR ") + wxURL::ConvertFromURI(path); + tmp_str = wxT("RETR ") + wxURL::ConvertFromURI(path); if (!SendCommand(tmp_str, '1')) return NULL; in_stream = new wxInputFTPStream(this, sock); - pos_size = m_lastResult.Index(T('(')); + pos_size = m_lastResult.Index(wxT('(')); if (pos_size != wxNOT_FOUND) { - wxString str_size = m_lastResult(pos_size+1, m_lastResult.Index(T(')'))-1); + wxString str_size = m_lastResult(pos_size+1, m_lastResult.Index(wxT(')'))-1); in_stream->m_ftpsize = wxAtoi(WXSTRINGCAST str_size); } @@ -361,12 +361,12 @@ wxOutputStream *wxFTP::GetOutputStream(const wxString& path) { wxString tmp_str; - if (!SendCommand(T("TYPE I"), '2')) + if (!SendCommand(wxT("TYPE I"), '2')) return NULL; wxSocketClient *sock = GetPort(); - tmp_str = T("STOR ") + path; + tmp_str = wxT("STOR ") + path; if (!SendCommand(tmp_str, '1')) return FALSE; @@ -377,7 +377,7 @@ wxList *wxFTP::GetList(const wxString& wildcard) { wxList *file_list = new wxList; wxSocketBase *sock = GetPort(); - wxString tmp_str = T("NLST"); + wxString tmp_str = wxT("NLST"); if (!wildcard.IsNull()) tmp_str += wildcard; diff --git a/src/common/gdicmn.cpp b/src/common/gdicmn.cpp index dae75bf4ef..106d32a3ef 100644 --- a/src/common/gdicmn.cpp +++ b/src/common/gdicmn.cpp @@ -144,84 +144,84 @@ void wxColourDatabase::Initialize () static cdef table[]={ // #ifdef __WXMSW__ - {T("AQUAMARINE"),112, 219, 147}, - {T("BLACK"),0, 0, 0}, - {T("BLUE"), 0, 0, 255}, - {T("BLUE VIOLET"), 159, 95, 159}, - {T("BROWN"), 165, 42, 42}, - {T("CADET BLUE"), 95, 159, 159}, - {T("CORAL"), 255, 127, 0}, - {T("CORNFLOWER BLUE"), 66, 66, 111}, - {T("CYAN"), 0, 255, 255}, - {T("DARK GREY"), 47, 47, 47}, // ? - - {T("DARK GREEN"), 47, 79, 47}, - {T("DARK OLIVE GREEN"), 79, 79, 47}, - {T("DARK ORCHID"), 153, 50, 204}, - {T("DARK SLATE BLUE"), 107, 35, 142}, - {T("DARK SLATE GREY"), 47, 79, 79}, - {T("DARK TURQUOISE"), 112, 147, 219}, - {T("DIM GREY"), 84, 84, 84}, - {T("FIREBRICK"), 142, 35, 35}, - {T("FOREST GREEN"), 35, 142, 35}, - {T("GOLD"), 204, 127, 50}, - {T("GOLDENROD"), 219, 219, 112}, - {T("GREY"), 128, 128, 128}, - {T("GREEN"), 0, 255, 0}, - {T("GREEN YELLOW"), 147, 219, 112}, - {T("INDIAN RED"), 79, 47, 47}, - {T("KHAKI"), 159, 159, 95}, - {T("LIGHT BLUE"), 191, 216, 216}, - {T("LIGHT GREY"), 192, 192, 192}, - {T("LIGHT STEEL BLUE"), 143, 143, 188}, - {T("LIME GREEN"), 50, 204, 50}, - {T("LIGHT MAGENTA"), 255, 0, 255}, - {T("MAGENTA"), 255, 0, 255}, - {T("MAROON"), 142, 35, 107}, - {T("MEDIUM AQUAMARINE"), 50, 204, 153}, - {T("MEDIUM GREY"), 100, 100, 100}, - {T("MEDIUM BLUE"), 50, 50, 204}, - {T("MEDIUM FOREST GREEN"), 107, 142, 35}, - {T("MEDIUM GOLDENROD"), 234, 234, 173}, - {T("MEDIUM ORCHID"), 147, 112, 219}, - {T("MEDIUM SEA GREEN"), 66, 111, 66}, - {T("MEDIUM SLATE BLUE"), 127, 0, 255}, - {T("MEDIUM SPRING GREEN"), 127, 255, 0}, - {T("MEDIUM TURQUOISE"), 112, 219, 219}, - {T("MEDIUM VIOLET RED"), 219, 112, 147}, - {T("MIDNIGHT BLUE"), 47, 47, 79}, - {T("NAVY"), 35, 35, 142}, - {T("ORANGE"), 204, 50, 50}, - {T("ORANGE RED"), 255, 0, 127}, - {T("ORCHID"), 219, 112, 219}, - {T("PALE GREEN"), 143, 188, 143}, - {T("PINK"), 188, 143, 234}, - {T("PLUM"), 234, 173, 234}, - {T("PURPLE"), 176, 0, 255}, - {T("RED"), 255, 0, 0}, - {T("SALMON"), 111, 66, 66}, - {T("SEA GREEN"), 35, 142, 107}, - {T("SIENNA"), 142, 107, 35}, - {T("SKY BLUE"), 50, 153, 204}, - {T("SLATE BLUE"), 0, 127, 255}, - {T("SPRING GREEN"), 0, 255, 127}, - {T("STEEL BLUE"), 35, 107, 142}, - {T("TAN"), 219, 147, 112}, - {T("THISTLE"), 216, 191, 216}, - {T("TURQUOISE"), 173, 234, 234}, - {T("VIOLET"), 79, 47, 79}, - {T("VIOLET RED"), 204, 50, 153}, - {T("WHEAT"), 216, 216, 191}, - {T("WHITE"), 255, 255, 255}, - {T("YELLOW"), 255, 255, 0}, - {T("YELLOW GREEN"), 153, 204, 50}, + {wxT("AQUAMARINE"),112, 219, 147}, + {wxT("BLACK"),0, 0, 0}, + {wxT("BLUE"), 0, 0, 255}, + {wxT("BLUE VIOLET"), 159, 95, 159}, + {wxT("BROWN"), 165, 42, 42}, + {wxT("CADET BLUE"), 95, 159, 159}, + {wxT("CORAL"), 255, 127, 0}, + {wxT("CORNFLOWER BLUE"), 66, 66, 111}, + {wxT("CYAN"), 0, 255, 255}, + {wxT("DARK GREY"), 47, 47, 47}, // ? + + {wxT("DARK GREEN"), 47, 79, 47}, + {wxT("DARK OLIVE GREEN"), 79, 79, 47}, + {wxT("DARK ORCHID"), 153, 50, 204}, + {wxT("DARK SLATE BLUE"), 107, 35, 142}, + {wxT("DARK SLATE GREY"), 47, 79, 79}, + {wxT("DARK TURQUOISE"), 112, 147, 219}, + {wxT("DIM GREY"), 84, 84, 84}, + {wxT("FIREBRICK"), 142, 35, 35}, + {wxT("FOREST GREEN"), 35, 142, 35}, + {wxT("GOLD"), 204, 127, 50}, + {wxT("GOLDENROD"), 219, 219, 112}, + {wxT("GREY"), 128, 128, 128}, + {wxT("GREEN"), 0, 255, 0}, + {wxT("GREEN YELLOW"), 147, 219, 112}, + {wxT("INDIAN RED"), 79, 47, 47}, + {wxT("KHAKI"), 159, 159, 95}, + {wxT("LIGHT BLUE"), 191, 216, 216}, + {wxT("LIGHT GREY"), 192, 192, 192}, + {wxT("LIGHT STEEL BLUE"), 143, 143, 188}, + {wxT("LIME GREEN"), 50, 204, 50}, + {wxT("LIGHT MAGENTA"), 255, 0, 255}, + {wxT("MAGENTA"), 255, 0, 255}, + {wxT("MAROON"), 142, 35, 107}, + {wxT("MEDIUM AQUAMARINE"), 50, 204, 153}, + {wxT("MEDIUM GREY"), 100, 100, 100}, + {wxT("MEDIUM BLUE"), 50, 50, 204}, + {wxT("MEDIUM FOREST GREEN"), 107, 142, 35}, + {wxT("MEDIUM GOLDENROD"), 234, 234, 173}, + {wxT("MEDIUM ORCHID"), 147, 112, 219}, + {wxT("MEDIUM SEA GREEN"), 66, 111, 66}, + {wxT("MEDIUM SLATE BLUE"), 127, 0, 255}, + {wxT("MEDIUM SPRING GREEN"), 127, 255, 0}, + {wxT("MEDIUM TURQUOISE"), 112, 219, 219}, + {wxT("MEDIUM VIOLET RED"), 219, 112, 147}, + {wxT("MIDNIGHT BLUE"), 47, 47, 79}, + {wxT("NAVY"), 35, 35, 142}, + {wxT("ORANGE"), 204, 50, 50}, + {wxT("ORANGE RED"), 255, 0, 127}, + {wxT("ORCHID"), 219, 112, 219}, + {wxT("PALE GREEN"), 143, 188, 143}, + {wxT("PINK"), 188, 143, 234}, + {wxT("PLUM"), 234, 173, 234}, + {wxT("PURPLE"), 176, 0, 255}, + {wxT("RED"), 255, 0, 0}, + {wxT("SALMON"), 111, 66, 66}, + {wxT("SEA GREEN"), 35, 142, 107}, + {wxT("SIENNA"), 142, 107, 35}, + {wxT("SKY BLUE"), 50, 153, 204}, + {wxT("SLATE BLUE"), 0, 127, 255}, + {wxT("SPRING GREEN"), 0, 255, 127}, + {wxT("STEEL BLUE"), 35, 107, 142}, + {wxT("TAN"), 219, 147, 112}, + {wxT("THISTLE"), 216, 191, 216}, + {wxT("TURQUOISE"), 173, 234, 234}, + {wxT("VIOLET"), 79, 47, 79}, + {wxT("VIOLET RED"), 204, 50, 153}, + {wxT("WHEAT"), 216, 216, 191}, + {wxT("WHITE"), 255, 255, 255}, + {wxT("YELLOW"), 255, 255, 0}, + {wxT("YELLOW GREEN"), 153, 204, 50}, // #endif #if defined(__WXGTK__) || defined(__X__) - {T("MEDIUM GOLDENROD"), 234, 234, 173}, - {T("MEDIUM FOREST GREEN"), 107, 142, 35}, - {T("LIGHT MAGENTA"), 255, 0, 255}, - {T("MEDIUM GREY"), 100, 100, 100}, + {wxT("MEDIUM GOLDENROD"), 234, 234, 173}, + {wxT("MEDIUM FOREST GREEN"), 107, 142, 35}, + {wxT("LIGHT MAGENTA"), 255, 0, 255}, + {wxT("MEDIUM GREY"), 100, 100, 100}, #endif {0,0,0,0} @@ -604,7 +604,7 @@ wxFont *wxFontList:: #else each_font->GetFamily() == FamilyOrFontId && #endif - ((each_font->GetFaceName() == T("")) || each_font->GetFaceName() == Face)) + ((each_font->GetFaceName() == wxT("")) || each_font->GetFaceName() == Face)) //#endif return each_font; } diff --git a/src/common/http.cpp b/src/common/http.cpp index 6d0dbc2c2f..9f7e3adabc 100644 --- a/src/common/http.cpp +++ b/src/common/http.cpp @@ -34,7 +34,7 @@ #if !USE_SHARED_LIBRARY IMPLEMENT_DYNAMIC_CLASS(wxHTTP, wxProtocol) -IMPLEMENT_PROTOCOL(wxHTTP, T("http"), T("80"), TRUE) +IMPLEMENT_PROTOCOL(wxHTTP, wxT("http"), wxT("80"), TRUE) #endif #define HTTP_BSIZE 2048 @@ -65,7 +65,7 @@ wxHTTP::~wxHTTP() wxString wxHTTP::GetContentType() { - return GetHeader(T("Content-Type")); + return GetHeader(wxT("Content-Type")); } void wxHTTP::SetProxyMode(bool on) @@ -113,7 +113,7 @@ void wxHTTP::SendHeaders() wxString *str = (wxString *)head->Data(); wxString buf; - buf.Printf(T("%s: %s\n\r"), head->GetKeyString(), str->GetData()); + buf.Printf(wxT("%s: %s\n\r"), head->GetKeyString(), str->GetData()); const wxWX2MBbuf cbuf = buf.mb_str(); Write(cbuf, strlen(cbuf)); @@ -171,7 +171,7 @@ bool wxHTTP::Connect(const wxString& host) return FALSE; } - if (!addr->Service(T("http"))) + if (!addr->Service(wxT("http"))) addr->Service(80); return TRUE; @@ -196,12 +196,12 @@ bool wxHTTP::BuildRequest(const wxString& path, wxHTTP_Req req) wxString tmp_str = path; // If there is no User-Agent defined, define it. - if (GetHeader(T("User-Agent")).IsNull()) - SetHeader(T("User-Agent"), T("wxWindows 2.x")); + if (GetHeader(wxT("User-Agent")).IsNull()) + SetHeader(wxT("User-Agent"), wxT("wxWindows 2.x")); switch (req) { case wxHTTP_GET: - tmp_buf = T("GET"); + tmp_buf = wxT("GET"); break; default: return FALSE; @@ -211,7 +211,7 @@ bool wxHTTP::BuildRequest(const wxString& path, wxHTTP_Req req) SetFlags(NONE); Notify(FALSE); - wxSprintf(buf, T("%s %s HTTP/1.0\n\r"), tmp_buf, tmp_str.GetData()); + wxSprintf(buf, wxT("%s %s HTTP/1.0\n\r"), tmp_buf, tmp_str.GetData()); const wxWX2MBbuf pathbuf = wxConvLibc.cWX2MB(buf); Write(pathbuf, strlen(wxMBSTRINGCAST pathbuf)); SendHeaders(); @@ -223,16 +223,16 @@ bool wxHTTP::BuildRequest(const wxString& path, wxHTTP_Req req) return FALSE; } - if (!tmp_str.Contains(T("HTTP/"))) { + if (!tmp_str.Contains(wxT("HTTP/"))) { // TODO: support HTTP v0.9 which can have no header. // FIXME: tmp_str is not put back in the in-queue of the socket. - SetHeader(T("Content-Length"), T("-1")); - SetHeader(T("Content-Type"), T("none/none")); + SetHeader(wxT("Content-Length"), wxT("-1")); + SetHeader(wxT("Content-Type"), wxT("none/none")); RestoreState(); return TRUE; } - wxStringTokenizer token(tmp_str,T(' ')); + wxStringTokenizer token(tmp_str,wxT(' ')); wxString tmp_str2; bool ret_value; @@ -240,13 +240,13 @@ bool wxHTTP::BuildRequest(const wxString& path, wxHTTP_Req req) tmp_str2 = token.NextToken(); switch (tmp_str2[(unsigned int) 0]) { - case T('1'): + case wxT('1'): /* INFORMATION / SUCCESS */ break; - case T('2'): + case wxT('2'): /* SUCCESS */ break; - case T('3'): + case wxT('3'): /* REDIRECTION */ break; default: @@ -312,8 +312,8 @@ wxInputStream *wxHTTP::GetInputStream(const wxString& path) if (!BuildRequest(path, wxHTTP_GET)) return NULL; - if (!GetHeader(T("Content-Length")).IsEmpty()) - inp_stream->m_httpsize = wxAtoi(WXSTRINGCAST GetHeader(T("Content-Length"))); + if (!GetHeader(wxT("Content-Length")).IsEmpty()) + inp_stream->m_httpsize = wxAtoi(WXSTRINGCAST GetHeader(wxT("Content-Length"))); else inp_stream->m_httpsize = (size_t)-1; diff --git a/src/common/imagbmp.cpp b/src/common/imagbmp.cpp index 468b1f5be5..dca81ce5fc 100644 --- a/src/common/imagbmp.cpp +++ b/src/common/imagbmp.cpp @@ -97,12 +97,12 @@ bool wxBMPHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE int height = (int)wxINT32_SWAP_ON_BE( dbuf[1] ); if (width > 32767) { - wxLogError( T("Image width > 32767 pixels for file.") ); + wxLogError( wxT("Image width > 32767 pixels for file.") ); return FALSE; } if (height > 32767) { - wxLogError( T("Image height > 32767 pixels for file.") ); + wxLogError( wxT("Image height > 32767 pixels for file.") ); return FALSE; } @@ -115,7 +115,7 @@ bool wxBMPHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE int bpp = (int)wxUINT16_SWAP_ON_BE( aWord ); if (bpp != 1 && bpp != 4 && bpp != 8 && bpp != 16 && bpp != 24 && bpp != 32) { - wxLogError( T("unknown bitdepth in file.") ); + wxLogError( wxT("unknown bitdepth in file.") ); return FALSE; } @@ -123,7 +123,7 @@ bool wxBMPHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE int comp = (int)wxINT32_SWAP_ON_BE( dbuf[0] ); if (comp != BI_RGB && comp != BI_RLE4 && comp != BI_RLE8 && comp != BI_BITFIELDS) { - wxLogError( T("unknown encoding in Windows BMP file.") ); + wxLogError( wxT("unknown encoding in Windows BMP file.") ); return FALSE; } @@ -136,7 +136,7 @@ bool wxBMPHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE ((comp == BI_RLE8) && (bpp != 8)) || ((comp == BI_BITFIELDS) && (bpp != 16 && bpp != 32))) { - wxLogError( T("encoding of BMP doesn't match bitdepth.") ); + wxLogError( wxT("encoding of BMP doesn't match bitdepth.") ); return FALSE; } if (bpp < 16) @@ -144,7 +144,7 @@ bool wxBMPHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE cmap = (struct _cmap *)malloc(sizeof(struct _cmap) * ncolors); if (!cmap) { - wxLogError( T("Cannot allocate RAM for color map in BMP file.") ); + wxLogError( wxT("Cannot allocate RAM for color map in BMP file.") ); return FALSE; } } @@ -155,7 +155,7 @@ bool wxBMPHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE unsigned char *ptr = image->GetData(); if (!ptr) { - wxLogError( T("Cannot allocate RAM for RGB data in file.") ); + wxLogError( wxT("Cannot allocate RAM for RGB data in file.") ); if (cmap) free(cmap); return FALSE; @@ -263,7 +263,7 @@ bool wxBMPHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE { if (comp == BI_RLE4) { - wxLogError( T("Can't deal with 4bit encoded yet.") ); + wxLogError( wxT("Can't deal with 4bit encoded yet.") ); image->Destroy(); free(cmap); return FALSE; diff --git a/src/common/image.cpp b/src/common/image.cpp index be502d1e80..13a92da11a 100644 --- a/src/common/image.cpp +++ b/src/common/image.cpp @@ -154,15 +154,15 @@ wxImage wxImage::Scale( int width, int height ) const { wxImage image; - wxCHECK_MSG( Ok(), image, T("invalid image") ); + wxCHECK_MSG( Ok(), image, wxT("invalid image") ); - wxCHECK_MSG( (width > 0) && (height > 0), image, T("invalid image size") ); + wxCHECK_MSG( (width > 0) && (height > 0), image, wxT("invalid image size") ); image.Create( width, height ); char unsigned *data = image.GetData(); - wxCHECK_MSG( data, image, T("unable to create image") ); + wxCHECK_MSG( data, image, wxT("unable to create image") ); if (M_IMGDATA->m_hasMask) image.SetMaskColour( M_IMGDATA->m_maskRed, M_IMGDATA->m_maskGreen, M_IMGDATA->m_maskBlue ); @@ -193,10 +193,10 @@ wxImage wxImage::GetSubImage( const wxRect &rect ) const { wxImage image; - wxCHECK_MSG( Ok(), image, T("invalid image") ); + wxCHECK_MSG( Ok(), image, wxT("invalid image") ); wxCHECK_MSG( (rect.GetLeft()>=0) && (rect.GetTop()>=0) && (rect.GetRight()<=GetWidth()) && (rect.GetBottom()<=GetHeight()) - , image, T("invalid subimage size") ); + , image, wxT("invalid subimage size") ); int subwidth=rect.GetWidth(); const int subheight=rect.GetHeight(); @@ -205,7 +205,7 @@ wxImage wxImage::GetSubImage( const wxRect &rect ) const char unsigned *subdata = image.GetData(), *data=GetData(); - wxCHECK_MSG( subdata, image, T("unable to create image") ); + wxCHECK_MSG( subdata, image, wxT("unable to create image") ); if (M_IMGDATA->m_hasMask) image.SetMaskColour( M_IMGDATA->m_maskRed, M_IMGDATA->m_maskGreen, M_IMGDATA->m_maskBlue ); @@ -228,12 +228,12 @@ wxImage wxImage::GetSubImage( const wxRect &rect ) const void wxImage::SetRGB( int x, int y, unsigned char r, unsigned char g, unsigned char b ) { - wxCHECK_RET( Ok(), T("invalid image") ); + wxCHECK_RET( Ok(), wxT("invalid image") ); int w = M_IMGDATA->m_width; int h = M_IMGDATA->m_height; - wxCHECK_RET( (x>=0) && (y>=0) && (x=0) && (y>=0) && (xm_width; int h = M_IMGDATA->m_height; - wxCHECK_MSG( (x>=0) && (y>=0) && (x=0) && (y>=0) && (xm_width; int h = M_IMGDATA->m_height; - wxCHECK_MSG( (x>=0) && (y>=0) && (x=0) && (y>=0) && (xm_width; int h = M_IMGDATA->m_height; - wxCHECK_MSG( (x>=0) && (y>=0) && (x=0) && (y>=0) && (xm_data; } void wxImage::SetData( char unsigned *data ) { - wxCHECK_RET( Ok(), T("invalid image") ); + wxCHECK_RET( Ok(), wxT("invalid image") ); wxImageRefData *newRefData = new wxImageRefData(); @@ -318,7 +318,7 @@ void wxImage::SetData( char unsigned *data ) void wxImage::SetMaskColour( unsigned char r, unsigned char g, unsigned char b ) { - wxCHECK_RET( Ok(), T("invalid image") ); + wxCHECK_RET( Ok(), wxT("invalid image") ); M_IMGDATA->m_maskRed = r; M_IMGDATA->m_maskGreen = g; @@ -328,49 +328,49 @@ void wxImage::SetMaskColour( unsigned char r, unsigned char g, unsigned char b ) unsigned char wxImage::GetMaskRed() const { - wxCHECK_MSG( Ok(), 0, T("invalid image") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid image") ); return M_IMGDATA->m_maskRed; } unsigned char wxImage::GetMaskGreen() const { - wxCHECK_MSG( Ok(), 0, T("invalid image") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid image") ); return M_IMGDATA->m_maskGreen; } unsigned char wxImage::GetMaskBlue() const { - wxCHECK_MSG( Ok(), 0, T("invalid image") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid image") ); return M_IMGDATA->m_maskBlue; } void wxImage::SetMask( bool mask ) { - wxCHECK_RET( Ok(), T("invalid image") ); + wxCHECK_RET( Ok(), wxT("invalid image") ); M_IMGDATA->m_hasMask = mask; } bool wxImage::HasMask() const { - wxCHECK_MSG( Ok(), FALSE, T("invalid image") ); + wxCHECK_MSG( Ok(), FALSE, wxT("invalid image") ); return M_IMGDATA->m_hasMask; } int wxImage::GetWidth() const { - wxCHECK_MSG( Ok(), 0, T("invalid image") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid image") ); return M_IMGDATA->m_width; } int wxImage::GetHeight() const { - wxCHECK_MSG( Ok(), 0, T("invalid image") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid image") ); return M_IMGDATA->m_height; } @@ -385,7 +385,7 @@ bool wxImage::LoadFile( const wxString& filename, long type ) } else { - wxLogError( T("Can't load image from file '%s': file does not exist."), filename.c_str() ); + wxLogError( wxT("Can't load image from file '%s': file does not exist."), filename.c_str() ); return FALSE; } @@ -404,7 +404,7 @@ bool wxImage::LoadFile( const wxString& filename, const wxString& mimetype ) } else { - wxLogError( T("Can't load image from file '%s': file does not exist."), filename.c_str() ); + wxLogError( wxT("Can't load image from file '%s': file does not exist."), filename.c_str() ); return FALSE; } @@ -459,7 +459,7 @@ bool wxImage::LoadFile( wxInputStream& stream, long type ) } - wxLogWarning( T("No handler found for this image.") ); + wxLogWarning( wxT("No handler found for this image.") ); return FALSE; } @@ -467,7 +467,7 @@ bool wxImage::LoadFile( wxInputStream& stream, long type ) if (handler == NULL) { - wxLogWarning( T("No image handler for type %d defined."), type ); + wxLogWarning( wxT("No image handler for type %d defined."), type ); return FALSE; } @@ -485,7 +485,7 @@ bool wxImage::LoadFile( wxInputStream& stream, const wxString& mimetype ) if (handler == NULL) { - wxLogWarning( T("No image handler for type %s defined."), mimetype.GetData() ); + wxLogWarning( wxT("No image handler for type %s defined."), mimetype.GetData() ); return FALSE; } @@ -495,13 +495,13 @@ bool wxImage::LoadFile( wxInputStream& stream, const wxString& mimetype ) bool wxImage::SaveFile( wxOutputStream& stream, int type ) { - wxCHECK_MSG( Ok(), FALSE, T("invalid image") ); + wxCHECK_MSG( Ok(), FALSE, wxT("invalid image") ); wxImageHandler *handler = FindHandler(type); if (handler == NULL) { - wxLogWarning( T("No image handler for type %d defined."), type ); + wxLogWarning( wxT("No image handler for type %d defined."), type ); return FALSE; } @@ -511,13 +511,13 @@ bool wxImage::SaveFile( wxOutputStream& stream, int type ) bool wxImage::SaveFile( wxOutputStream& stream, const wxString& mimetype ) { - wxCHECK_MSG( Ok(), FALSE, T("invalid image") ); + wxCHECK_MSG( Ok(), FALSE, wxT("invalid image") ); wxImageHandler *handler = FindHandlerMime(mimetype); if (handler == NULL) { - wxLogWarning( T("No image handler for type %s defined."), mimetype.GetData() ); + wxLogWarning( wxT("No image handler for type %s defined."), mimetype.GetData() ); return FALSE; } @@ -657,7 +657,7 @@ bool wxImageHandler::CanRead( const wxString& name ) } else { - wxLogError( T("Can't check image format of file '%s': file does not exist."), name.c_str() ); + wxLogError( wxT("Can't check image format of file '%s': file does not exist."), name.c_str() ); return FALSE; } @@ -717,7 +717,7 @@ wxBitmap wxImage::ConvertToBitmap() const // set bitmap parameters wxBitmap bitmap; - wxCHECK_MSG( Ok(), bitmap, T("invalid image") ); + wxCHECK_MSG( Ok(), bitmap, wxT("invalid image") ); bitmap.SetWidth( width ); bitmap.SetHeight( bmpHeight ); bitmap.SetDepth( wxDisplayDepth() ); @@ -725,7 +725,7 @@ wxBitmap wxImage::ConvertToBitmap() const // create a DIB header int headersize = sizeof(BITMAPINFOHEADER); LPBITMAPINFO lpDIBh = (BITMAPINFO *) malloc( headersize ); - wxCHECK_MSG( lpDIBh, bitmap, T("could not allocate memory for DIB header") ); + wxCHECK_MSG( lpDIBh, bitmap, wxT("could not allocate memory for DIB header") ); // Fill in the DIB header lpDIBh->bmiHeader.biSize = headersize; lpDIBh->bmiHeader.biWidth = (DWORD)width; @@ -746,7 +746,7 @@ wxBitmap wxImage::ConvertToBitmap() const lpBits = (unsigned char *)malloc( lpDIBh->bmiHeader.biSizeImage ); if( !lpBits ) { - wxFAIL_MSG( T("could not allocate memory for DIB") ); + wxFAIL_MSG( wxT("could not allocate memory for DIB") ); free( lpDIBh ); return bitmap; } @@ -889,7 +889,7 @@ wxImage::wxImage( const wxBitmap &bitmap ) // check the bitmap if( !bitmap.Ok() ) { - wxFAIL_MSG( T("invalid bitmap") ); + wxFAIL_MSG( wxT("invalid bitmap") ); return; } @@ -900,7 +900,7 @@ wxImage::wxImage( const wxBitmap &bitmap ) unsigned char *data = GetData(); if( !data ) { - wxFAIL_MSG( T("could not allocate data for image") ); + wxFAIL_MSG( wxT("could not allocate data for image") ); return; } @@ -920,7 +920,7 @@ wxImage::wxImage( const wxBitmap &bitmap ) LPBITMAPINFO lpDIBh = (BITMAPINFO *) malloc( headersize ); if( !lpDIBh ) { - wxFAIL_MSG( T("could not allocate data for DIB header") ); + wxFAIL_MSG( wxT("could not allocate data for DIB header") ); free( data ); return; } @@ -942,7 +942,7 @@ wxImage::wxImage( const wxBitmap &bitmap ) lpBits = (unsigned char *) malloc( lpDIBh->bmiHeader.biSizeImage ); if( !lpBits ) { - wxFAIL_MSG( T("could not allocate data for DIB") ); + wxFAIL_MSG( wxT("could not allocate data for DIB") ); free( data ); free( lpDIBh ); return; @@ -1033,7 +1033,7 @@ wxBitmap wxImage::ConvertToBitmap() const { wxBitmap bitmap; - wxCHECK_MSG( Ok(), bitmap, T("invalid image") ); + wxCHECK_MSG( Ok(), bitmap, wxT("invalid image") ); int width = GetWidth(); int height = GetHeight(); @@ -1241,13 +1241,13 @@ wxBitmap wxImage::ConvertToBitmap() const wxImage::wxImage( const wxBitmap &bitmap ) { - wxCHECK_RET( bitmap.Ok(), T("invalid bitmap") ); + wxCHECK_RET( bitmap.Ok(), wxT("invalid bitmap") ); GdkImage *gdk_image = gdk_image_get( bitmap.GetPixmap(), 0, 0, bitmap.GetWidth(), bitmap.GetHeight() ); - wxCHECK_RET( gdk_image, T("couldn't create image") ); + wxCHECK_RET( gdk_image, wxT("couldn't create image") ); Create( bitmap.GetWidth(), bitmap.GetHeight() ); char unsigned *data = GetData(); @@ -1255,7 +1255,7 @@ wxImage::wxImage( const wxBitmap &bitmap ) if (!data) { gdk_image_destroy( gdk_image ); - wxFAIL_MSG( T("couldn't create image") ); + wxFAIL_MSG( wxT("couldn't create image") ); return; } @@ -1340,7 +1340,7 @@ wxBitmap wxImage::ConvertToBitmap() const { wxBitmap bitmap; - wxCHECK_MSG( Ok(), bitmap, T("invalid image") ); + wxCHECK_MSG( Ok(), bitmap, wxT("invalid image") ); int width = GetWidth(); int height = GetHeight(); @@ -1389,7 +1389,7 @@ wxBitmap wxImage::ConvertToBitmap() const vi = XGetVisualInfo( dpy, VisualIDMask|VisualDepthMask, &vinfo_template, &nitem ); - wxCHECK_MSG( vi, wxNullBitmap, T("no visual") ); + wxCHECK_MSG( vi, wxNullBitmap, wxT("no visual") ); XFree( vi ); @@ -1540,7 +1540,7 @@ wxBitmap wxImage::ConvertToBitmap() const wxImage::wxImage( const wxBitmap &bitmap ) { - wxCHECK_RET( bitmap.Ok(), T("invalid bitmap") ); + wxCHECK_RET( bitmap.Ok(), wxT("invalid bitmap") ); Display *dpy = (Display*) wxGetDisplay(); Visual* vis = DefaultVisual( dpy, DefaultScreen( dpy ) ); @@ -1552,7 +1552,7 @@ wxImage::wxImage( const wxBitmap &bitmap ) bitmap.GetWidth(), bitmap.GetHeight(), AllPlanes, ZPixmap ); - wxCHECK_RET( ximage, T("couldn't create image") ); + wxCHECK_RET( ximage, wxT("couldn't create image") ); Create( bitmap.GetWidth(), bitmap.GetHeight() ); char unsigned *data = GetData(); @@ -1560,7 +1560,7 @@ wxImage::wxImage( const wxBitmap &bitmap ) if (!data) { XDestroyImage( ximage ); - wxFAIL_MSG( T("couldn't create image") ); + wxFAIL_MSG( wxT("couldn't create image") ); return; } @@ -1588,7 +1588,7 @@ wxImage::wxImage( const wxBitmap &bitmap ) vi = XGetVisualInfo( dpy, VisualIDMask|VisualDepthMask, &vinfo_template, &nitem ); - wxCHECK_RET( vi, T("no visual") ); + wxCHECK_RET( vi, wxT("no visual") ); if ((bpp == 16) && (vi->red_mask != 0xf800)) bpp = 15; diff --git a/src/common/imaggif.cpp b/src/common/imaggif.cpp index 32f0539bc2..d2d5ef4bd9 100644 --- a/src/common/imaggif.cpp +++ b/src/common/imaggif.cpp @@ -54,9 +54,9 @@ bool wxGIFHandler::LoadFile( wxImage *image, wxInputStream& stream, bool verbose { switch (error) { - case E_FORMATO: wxLogError(T("wxGIFHandler: error in image format")); break; - case E_MEMORIA: wxLogError(T("wxGIFHandler: couldn't allocate memory")); break; - default: wxLogError(T("wxGIFHandler: unknown error !!!")); + case E_FORMATO: wxLogError(wxT("wxGIFHandler: error in image format")); break; + case E_MEMORIA: wxLogError(wxT("wxGIFHandler: couldn't allocate memory")); break; + default: wxLogError(wxT("wxGIFHandler: unknown error !!!")); } } delete decod; @@ -74,7 +74,7 @@ bool wxGIFHandler::SaveFile( wxImage * WXUNUSED(image), wxOutputStream& WXUNUSED(stream), bool verbose ) { if (verbose) - wxLogDebug(T("wxGIFHandler is read-only!!")); + wxLogDebug(wxT("wxGIFHandler is read-only!!")); return FALSE; } diff --git a/src/common/imagpcx.cpp b/src/common/imagpcx.cpp index c2793f6d5f..5d72d09ef0 100644 --- a/src/common/imagpcx.cpp +++ b/src/common/imagpcx.cpp @@ -229,7 +229,7 @@ bool wxPCXHandler::LoadFile( wxImage *image, wxInputStream& stream, bool verbose if (!CanRead(stream)) { if (verbose) - wxLogError(T("wxPCXHandler: this is not a PCX file")); + wxLogError(wxT("wxPCXHandler: this is not a PCX file")); return FALSE; } @@ -242,10 +242,10 @@ bool wxPCXHandler::LoadFile( wxImage *image, wxInputStream& stream, bool verbose { switch (error) { - case E_FORMATO: wxLogError(T("wxPCXHandler: image format unsupported")); break; - case E_MEMORIA: wxLogError(T("wxPCXHandler: couldn't allocate memory")); break; - case E_VERSION: wxLogError(T("wxPCXHandler: version number too low")); break; - default: wxLogError(T("wxPCXHandler: unknown error !!!")); + case E_FORMATO: wxLogError(wxT("wxPCXHandler: image format unsupported")); break; + case E_MEMORIA: wxLogError(wxT("wxPCXHandler: couldn't allocate memory")); break; + case E_VERSION: wxLogError(wxT("wxPCXHandler: version number too low")); break; + default: wxLogError(wxT("wxPCXHandler: unknown error !!!")); } } image->Destroy(); @@ -258,7 +258,7 @@ bool wxPCXHandler::LoadFile( wxImage *image, wxInputStream& stream, bool verbose bool wxPCXHandler::SaveFile( wxImage *WXUNUSED(image), wxOutputStream& WXUNUSED(stream), bool verbose ) { if (verbose) - wxLogError(T("wxPCXHandler::SaveFile still not implemented")); + wxLogError(wxT("wxPCXHandler::SaveFile still not implemented")); return FALSE; } diff --git a/src/common/imagpnm.cpp b/src/common/imagpnm.cpp index 6a14eae9a6..d29174929c 100644 --- a/src/common/imagpnm.cpp +++ b/src/common/imagpnm.cpp @@ -44,7 +44,7 @@ void Skip_Comment(wxInputStream &stream) wxString line; wxTextInputStream text_stream(stream); - if (stream.Peek()==T('#')) + if (stream.Peek()==wxT('#')) { text_stream >> line; Skip_Comment(stream); @@ -68,19 +68,19 @@ bool wxPNMHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE wxTextInputStream text_stream(buf_stream); Skip_Comment(buf_stream); - if (buf_stream.GetC()==T('P')) c=buf_stream.GetC(); + if (buf_stream.GetC()==wxT('P')) c=buf_stream.GetC(); switch (c) { - case T('2'): - wxLogError(T("Loading Grey Ascii PNM image is not yet implemented.")); + case wxT('2'): + wxLogError(wxT("Loading Grey Ascii PNM image is not yet implemented.")); return FALSE; - case T('5'): - wxLogError(T("Loading Grey Raw PNM image is not yet implemented.")); + case wxT('5'): + wxLogError(wxT("Loading Grey Raw PNM image is not yet implemented.")); return FALSE; - case T('3'): case T('6'): break; + case wxT('3'): case wxT('6'): break; default : - wxLogError(T("Loading PNM image : file not recognized.")); + wxLogError(wxT("Loading PNM image : file not recognized.")); return FALSE; } @@ -95,7 +95,7 @@ bool wxPNMHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE unsigned char *ptr = image->GetData(); if (!ptr) { - wxLogError( T("Cannot allocate RAM for RGB data in PNM file.") ); + wxLogError( wxT("Cannot allocate RAM for RGB data in PNM file.") ); return FALSE; } @@ -111,7 +111,7 @@ bool wxPNMHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE if (buf_stream.LastError()!=wxSTREAM_NOERROR) { - wxLogError(T("Loading PNM image : file seems truncated.")); + wxLogError(wxT("Loading PNM image : file seems truncated.")); return FALSE; } } @@ -143,10 +143,10 @@ bool wxPNMHandler::CanRead( wxInputStream& stream ) Skip_Comment(stream); - if (stream.GetC()==T('P')) + if (stream.GetC()==wxT('P')) switch (stream.GetC()) { - case T('3'): case T('6'): + case wxT('3'): case wxT('6'): stream.SeekI(pos); return TRUE; } diff --git a/src/common/init.cpp b/src/common/init.cpp index 63cf1f4ece..e1fef28c23 100644 --- a/src/common/init.cpp +++ b/src/common/init.cpp @@ -46,7 +46,7 @@ wxAppInitializerFunction class /* no WXDLLEXPORT */ wxConsoleApp : public wxApp { public: - virtual int OnRun() { wxFAIL_MSG(T("unreachable")); return 0; } + virtual int OnRun() { wxFAIL_MSG(wxT("unreachable")); return 0; } }; // ---------------------------------------------------------------------------- @@ -68,7 +68,7 @@ bool WXDLLEXPORT wxInitialize() } wxASSERT_MSG( !wxTheApp, - T("either call wxInitialize or create app, not both!") ); + wxT("either call wxInitialize or create app, not both!") ); wxClassInfo::InitializeClasses(); diff --git a/src/common/intl.cpp b/src/common/intl.cpp index 76b2e672f4..6ad12197a5 100644 --- a/src/common/intl.cpp +++ b/src/common/intl.cpp @@ -267,7 +267,7 @@ static wxString GetAllMsgCatalogSubdirs(const wxChar *prefix, // search first in prefix/fr/LC_MESSAGES, then in prefix/fr and finally in // prefix (assuming the language is 'fr') searchPath << prefix << wxFILE_SEP_PATH << lang << wxFILE_SEP_PATH - << T("LC_MESSAGES") << wxPATH_SEP + << wxT("LC_MESSAGES") << wxPATH_SEP << prefix << wxFILE_SEP_PATH << lang << wxPATH_SEP << prefix << wxPATH_SEP; @@ -289,13 +289,13 @@ static wxString GetFullSearchPath(const wxChar *lang) // then take the current directory // FIXME it should be the directory of the executable - searchPath << GetAllMsgCatalogSubdirs(T("."), lang) << wxPATH_SEP; + searchPath << GetAllMsgCatalogSubdirs(wxT("."), lang) << wxPATH_SEP; // and finally add some standard ones searchPath - << GetAllMsgCatalogSubdirs(T("/usr/share/locale"), lang) << wxPATH_SEP - << GetAllMsgCatalogSubdirs(T("/usr/lib/locale"), lang) << wxPATH_SEP - << GetAllMsgCatalogSubdirs(T("/usr/local/share/locale"), lang); + << GetAllMsgCatalogSubdirs(wxT("/usr/share/locale"), lang) << wxPATH_SEP + << GetAllMsgCatalogSubdirs(wxT("/usr/lib/locale"), lang) << wxPATH_SEP + << GetAllMsgCatalogSubdirs(wxT("/usr/local/share/locale"), lang); return searchPath; } @@ -320,7 +320,7 @@ bool wxMsgCatalog::Load(const wxChar *szDirPrefix, const wxChar *szName0) #endif // 0 wxString searchPath = GetFullSearchPath(szDirPrefix); - const wxChar *sublocale = wxStrchr(szDirPrefix, T('_')); + const wxChar *sublocale = wxStrchr(szDirPrefix, wxT('_')); if ( sublocale ) { // also add just base locale name: for things like "fr_BE" (belgium @@ -340,7 +340,7 @@ bool wxMsgCatalog::Load(const wxChar *szDirPrefix, const wxChar *szName0) // (we're using an object because we have several return paths) NoTransErr noTransErr; - wxLogVerbose(T("looking for catalog '%s' in path '%s'."), + wxLogVerbose(wxT("looking for catalog '%s' in path '%s'."), szName.c_str(), searchPath.c_str()); wxString strFullName; @@ -496,7 +496,7 @@ bool wxLocale::Init(const wxChar *szName, m_pMsgCat = NULL; bool bOk = TRUE; if ( bLoadDefault ) - bOk = AddCatalog(T("wxstd")); + bOk = AddCatalog(wxT("wxstd")); return bOk; } diff --git a/src/common/list.cpp b/src/common/list.cpp index 06759b42a5..e442699d80 100644 --- a/src/common/list.cpp +++ b/src/common/list.cpp @@ -52,7 +52,7 @@ bool wxListKey::operator==(wxListKeyValue value) const switch ( m_keyType ) { default: - wxFAIL_MSG(T("bad key type.")); + wxFAIL_MSG(wxT("bad key type.")); // let compiler optimize the line above away in release build // by not putting return here... @@ -92,7 +92,7 @@ wxNodeBase::wxNodeBase(wxListBase *list, break; default: - wxFAIL_MSG(T("invalid key type")); + wxFAIL_MSG(wxT("invalid key type")); } if ( previous ) @@ -120,7 +120,7 @@ wxNodeBase::~wxNodeBase() int wxNodeBase::IndexOf() const { - wxCHECK_MSG( m_list, wxNOT_FOUND, T("node doesn't belong to a list in IndexOf")); + wxCHECK_MSG( m_list, wxNOT_FOUND, wxT("node doesn't belong to a list in IndexOf")); // It would be more efficient to implement IndexOf() completely inside // wxListBase (only traverse the list once), but this is probably a more @@ -163,7 +163,7 @@ wxListBase::wxListBase(size_t count, void *elements[]) void wxListBase::DoCopy(const wxListBase& list) { wxASSERT_MSG( !list.m_destroy, - T("copying list which owns it's elements is a bad idea") ); + wxT("copying list which owns it's elements is a bad idea") ); m_count = list.m_count; m_destroy = list.m_destroy; @@ -210,7 +210,7 @@ wxNodeBase *wxListBase::Append(void *object) { // all objects in a keyed list should have a key wxCHECK_MSG( m_keyType == wxKEY_NONE, (wxNodeBase *)NULL, - T("need a key for the object to append") ); + wxT("need a key for the object to append") ); wxNodeBase *node = CreateNode(m_nodeLast, (wxNodeBase *)NULL, object); @@ -222,7 +222,7 @@ wxNodeBase *wxListBase::Append(long key, void *object) wxCHECK_MSG( (m_keyType == wxKEY_INTEGER) || (m_keyType == wxKEY_NONE && m_count == 0), (wxNodeBase *)NULL, - T("can't append object with numeric key to this list") ); + wxT("can't append object with numeric key to this list") ); wxNodeBase *node = CreateNode(m_nodeLast, (wxNodeBase *)NULL, object, key); return AppendCommon(node); @@ -233,7 +233,7 @@ wxNodeBase *wxListBase::Append (const wxChar *key, void *object) wxCHECK_MSG( (m_keyType == wxKEY_STRING) || (m_keyType == wxKEY_NONE && m_count == 0), (wxNodeBase *)NULL, - T("can't append object with string key to this list") ); + wxT("can't append object with string key to this list") ); wxNodeBase *node = CreateNode(m_nodeLast, (wxNodeBase *)NULL, object, key); return AppendCommon(node); @@ -243,10 +243,10 @@ wxNodeBase *wxListBase::Insert(wxNodeBase *position, void *object) { // all objects in a keyed list should have a key wxCHECK_MSG( m_keyType == wxKEY_NONE, (wxNodeBase *)NULL, - T("need a key for the object to insert") ); + wxT("need a key for the object to insert") ); wxCHECK_MSG( !position || position->m_list == this, (wxNodeBase *)NULL, - T("can't insert before a node from another list") ); + wxT("can't insert before a node from another list") ); // previous and next node for the node being inserted wxNodeBase *prev, *next; @@ -288,7 +288,7 @@ wxNodeBase *wxListBase::Item(size_t n) const } } - wxFAIL_MSG( T("invalid index in wxListBase::Item") ); + wxFAIL_MSG( wxT("invalid index in wxListBase::Item") ); return (wxNodeBase *)NULL; } @@ -296,7 +296,7 @@ wxNodeBase *wxListBase::Item(size_t n) const wxNodeBase *wxListBase::Find(const wxListKey& key) const { wxASSERT_MSG( m_keyType == key.GetKeyType(), - T("this list is not keyed on the type of this key") ); + wxT("this list is not keyed on the type of this key") ); for ( wxNodeBase *current = GetFirst(); current; current = current->GetNext() ) { @@ -349,9 +349,9 @@ void wxListBase::DoDeleteNode(wxNodeBase *node) wxNodeBase *wxListBase::DetachNode(wxNodeBase *node) { - wxCHECK_MSG( node, NULL, T("detaching NULL wxNodeBase") ); + wxCHECK_MSG( node, NULL, wxT("detaching NULL wxNodeBase") ); wxCHECK_MSG( node->m_list == this, NULL, - T("detaching node which is not from this list") ); + wxT("detaching node which is not from this list") ); // update the list wxNodeBase **prevNext = node->GetPrevious() ? &node->GetPrevious()->m_next diff --git a/src/common/log.cpp b/src/common/log.cpp index a9a0c0c025..cf366a0d6f 100644 --- a/src/common/log.cpp +++ b/src/common/log.cpp @@ -295,7 +295,7 @@ void wxLog::TimeStamp(wxString *str) wxStrftime(buf, WXSIZEOF(buf), ms_timestamp, localtime(&timeNow)); str->Empty(); - *str << buf << T(": "); + *str << buf << wxT(": "); } } @@ -339,7 +339,7 @@ void wxLog::DoLog(wxLogLevel level, const wxChar *szString, time_t t) void wxLog::DoLogString(const wxChar *WXUNUSED(szString), time_t WXUNUSED(t)) { - wxFAIL_MSG(T("DoLogString must be overriden if it's called.")); + wxFAIL_MSG(wxT("DoLogString must be overriden if it's called.")); } void wxLog::Flush() @@ -363,7 +363,7 @@ void wxLogStderr::DoLogString(const wxChar *szString, time_t WXUNUSED(t)) { wxString str; TimeStamp(&str); - str << szString << T('\n'); + str << szString << wxT('\n'); fputs(str.mb_str(), m_fp); fflush(m_fp); @@ -371,7 +371,7 @@ void wxLogStderr::DoLogString(const wxChar *szString, time_t WXUNUSED(t)) // under Windows, programs usually don't have stderr at all, so make show the // messages also under debugger #ifdef __WXMSW__ - OutputDebugString(str + T('\r')); + OutputDebugString(str + wxT('\r')); #endif // MSW } @@ -406,7 +406,7 @@ wxLog *wxLog::ms_pLogger = (wxLog *)NULL; bool wxLog::ms_doLog = TRUE; bool wxLog::ms_bAutoCreate = TRUE; -const wxChar *wxLog::ms_timestamp = T("%X"); // time only, no date +const wxChar *wxLog::ms_timestamp = wxT("%X"); // time only, no date wxTraceMask wxLog::ms_ulTraceMask = (wxTraceMask)0; wxArrayString wxLog::ms_aTraceMasks; @@ -487,7 +487,7 @@ const wxChar *wxSysErrorMsg(unsigned long nErrCode) // copy it to our buffer and free memory wxStrncpy(s_szBuf, (const wxChar *)lpMsgBuf, WXSIZEOF(s_szBuf) - 1); - s_szBuf[WXSIZEOF(s_szBuf) - 1] = T('\0'); + s_szBuf[WXSIZEOF(s_szBuf) - 1] = wxT('\0'); LocalFree(lpMsgBuf); // returned string is capitalized and ended with '\r\n' - bad @@ -495,8 +495,8 @@ const wxChar *wxSysErrorMsg(unsigned long nErrCode) size_t len = wxStrlen(s_szBuf); if ( len > 0 ) { // truncate string - if ( s_szBuf[len - 2] == T('\r') ) - s_szBuf[len - 2] = T('\0'); + if ( s_szBuf[len - 2] == wxT('\r') ) + s_szBuf[len - 2] = wxT('\0'); } return s_szBuf; @@ -562,18 +562,18 @@ void wxOnAssert(const wxChar *szFile, int nLine, const wxChar *szMsg) // make life easier for people using VC++ IDE: clicking on the message // will take us immediately to the place of the failed assert #ifdef __VISUALC__ - wxSprintf(szBuf, T("%s(%d): assert failed"), szFile, nLine); + wxSprintf(szBuf, wxT("%s(%d): assert failed"), szFile, nLine); #else // !VC++ // make the error message more clear for all the others - wxSprintf(szBuf, T("Assert failed in file %s at line %d"), szFile, nLine); + wxSprintf(szBuf, wxT("Assert failed in file %s at line %d"), szFile, nLine); #endif // VC/!VC if ( szMsg != NULL ) { - wxStrcat(szBuf, T(": ")); + wxStrcat(szBuf, wxT(": ")); wxStrcat(szBuf, szMsg); } else { - wxStrcat(szBuf, T(".")); + wxStrcat(szBuf, wxT(".")); } if ( !s_bNoAsserts ) { @@ -583,7 +583,7 @@ void wxOnAssert(const wxChar *szFile, int nLine, const wxChar *szMsg) #if wxUSE_GUI // this message is intentionally not translated - it is for // developpers only - wxStrcat(szBuf, T("\nDo you want to stop the program?" + wxStrcat(szBuf, wxT("\nDo you want to stop the program?" "\nYou can also choose [Cancel] to suppress " "further warnings.")); diff --git a/src/common/memory.cpp b/src/common/memory.cpp index 963838511f..d8ad194662 100644 --- a/src/common/memory.cpp +++ b/src/common/memory.cpp @@ -110,7 +110,7 @@ */ void wxMemStruct::ErrorMsg (const char * mesg) { - wxLogDebug(T("wxWindows memory checking error: %s"), mesg); + wxLogDebug(wxT("wxWindows memory checking error: %s"), mesg); PrintNode (); // << m_fileName << ' ' << m_lineNum << endl; @@ -121,7 +121,7 @@ void wxMemStruct::ErrorMsg (const char * mesg) */ void wxMemStruct::ErrorMsg () { - wxLogDebug(T("wxWindows over/underwrite memory error:")); + wxLogDebug(wxT("wxWindows over/underwrite memory error:")); PrintNode (); // cerr << m_fileName << ' ' << m_lineNum << endl; @@ -329,18 +329,18 @@ void wxMemStruct::PrintNode () // Let's put this in standard form so IDEs can load the file at the appropriate // line - wxString msg(T("")); + wxString msg(wxT("")); if (m_fileName) - msg.Printf(T("%s(%d): "), m_fileName, (int)m_lineNum); + msg.Printf(wxT("%s(%d): "), m_fileName, (int)m_lineNum); if (info && info->GetClassName()) msg += info->GetClassName(); else - msg += T("object"); + msg += wxT("object"); wxString msg2; - msg2.Printf(T(" at $%lX, size %d"), (long)GetActualData(), (int)RequestSize()); + msg2.Printf(wxT(" at $%lX, size %d"), (long)GetActualData(), (int)RequestSize()); msg += msg2; wxLogDebug(msg); @@ -350,10 +350,10 @@ void wxMemStruct::PrintNode () wxString msg(""); if (m_fileName) - msg.Printf(T("%s(%d): "), m_fileName, (int)m_lineNum); - msg += T("non-object data"); + msg.Printf(wxT("%s(%d): "), m_fileName, (int)m_lineNum); + msg += wxT("non-object data"); wxString msg2; - msg2.Printf(T(" at $%lX, size %d\n"), (long)GetActualData(), (int)RequestSize()); + msg2.Printf(wxT(" at $%lX, size %d\n"), (long)GetActualData(), (int)RequestSize()); msg += msg2; wxLogDebug(msg); @@ -368,9 +368,9 @@ void wxMemStruct::Dump () { wxObject *obj = (wxObject *)m_actualData; - wxString msg(T("")); + wxString msg(wxT("")); if (m_fileName) - msg.Printf(T("%s(%d): "), m_fileName, (int)m_lineNum); + msg.Printf(wxT("%s(%d): "), m_fileName, (int)m_lineNum); /* TODO: We no longer have a stream (using wxLogDebug) so we can't dump it. @@ -383,22 +383,22 @@ void wxMemStruct::Dump () if (obj->GetClassInfo() && obj->GetClassInfo()->GetClassName()) msg += obj->GetClassInfo()->GetClassName(); else - msg += T("unknown object class"); + msg += wxT("unknown object class"); wxString msg2(""); - msg2.Printf(T(" at $%lX, size %d"), (long)GetActualData(), (int)RequestSize()); + msg2.Printf(wxT(" at $%lX, size %d"), (long)GetActualData(), (int)RequestSize()); msg += msg2; wxLogDebug(msg); } else { - wxString msg(T("")); + wxString msg(wxT("")); if (m_fileName) - msg.Printf(T("%s(%d): "), m_fileName, (int)m_lineNum); + msg.Printf(wxT("%s(%d): "), m_fileName, (int)m_lineNum); wxString msg2(""); - msg2.Printf(T("non-object data at $%lX, size %d"), (long)GetActualData(), (int)RequestSize() ); + msg2.Printf(wxT("non-object data at $%lX, size %d"), (long)GetActualData(), (int)RequestSize() ); msg += msg2; wxLogDebug(msg); } @@ -418,7 +418,7 @@ int wxMemStruct::ValidateNode () else { // Can't use the error routines as we have no recognisable object. #ifndef __WXGTK__ - wxLogDebug(T("Can't verify memory struct - all bets are off!")); + wxLogDebug(wxT("Can't verify memory struct - all bets are off!")); #endif } return 0; @@ -666,23 +666,23 @@ bool wxDebugContext::Dump(void) // if (TRUE) { - wxChar* appName = T("application"); + wxChar* appName = wxT("application"); wxString appNameStr(""); if (wxTheApp) { appNameStr = wxTheApp->GetAppName(); appName = WXSTRINGCAST appNameStr; - wxLogDebug(T("----- Memory dump of %s at %s -----"), appName, WXSTRINGCAST wxNow() ); + wxLogDebug(wxT("----- Memory dump of %s at %s -----"), appName, WXSTRINGCAST wxNow() ); } else { - wxLogDebug( T("----- Memory dump -----") ); + wxLogDebug( wxT("----- Memory dump -----") ); } } TraverseList ((PmSFV)&wxMemStruct::Dump, (checkPoint ? checkPoint->m_next : (wxMemStruct*)NULL)); - wxLogDebug( T("") ); - wxLogDebug( T("") ); + wxLogDebug( wxT("") ); + wxLogDebug( wxT("") ); return TRUE; #else @@ -723,17 +723,17 @@ bool wxDebugContext::PrintStatistics(bool detailed) // if (TRUE) { - wxChar* appName = T("application"); - wxString appNameStr(T("")); + wxChar* appName = wxT("application"); + wxString appNameStr(wxT("")); if (wxTheApp) { appNameStr = wxTheApp->GetAppName(); appName = WXSTRINGCAST appNameStr; - wxLogDebug(T("----- Memory statistics of %s at %s -----"), appName, WXSTRINGCAST wxNow() ); + wxLogDebug(wxT("----- Memory statistics of %s at %s -----"), appName, WXSTRINGCAST wxNow() ); } else { - wxLogDebug( T("----- Memory statistics -----") ); + wxLogDebug( wxT("----- Memory statistics -----") ); } } @@ -757,7 +757,7 @@ bool wxDebugContext::PrintStatistics(bool detailed) // if (detailed && (data != (void*)m_debugStream) && (data != (void*) m_streamBuf)) if (detailed && (data != (void*) wxLog::GetActiveTarget())) { - wxChar *className = T("nonobject"); + wxChar *className = wxT("nonobject"); if (st->m_isObject && st->GetActualData()) { wxObject *obj = (wxObject *)st->GetActualData(); @@ -792,22 +792,22 @@ bool wxDebugContext::PrintStatistics(bool detailed) { while (list) { - wxLogDebug(T("%ld objects of class %s, total size %ld"), + wxLogDebug(wxT("%ld objects of class %s, total size %ld"), list->instanceCount, list->instanceClass, list->totalSize); wxDebugStatsStruct *old = list; list = old->next; free((char *)old); } - wxLogDebug(T("")); + wxLogDebug(wxT("")); } SetDebugMode(currentMode); - wxLogDebug(T("Number of object items: %ld"), noObjectNodes); - wxLogDebug(T("Number of non-object items: %ld"), noNonObjectNodes); - wxLogDebug(T("Total allocated size: %ld"), totalSize); - wxLogDebug(T("")); - wxLogDebug(T("")); + wxLogDebug(wxT("Number of object items: %ld"), noObjectNodes); + wxLogDebug(wxT("Number of non-object items: %ld"), noNonObjectNodes); + wxLogDebug(wxT("Total allocated size: %ld"), totalSize); + wxLogDebug(wxT("")); + wxLogDebug(wxT("")); return TRUE; #else @@ -822,13 +822,13 @@ bool wxDebugContext::PrintClasses(void) // if (TRUE) { - wxChar* appName = T("application"); - wxString appNameStr(T("")); + wxChar* appName = wxT("application"); + wxString appNameStr(wxT("")); if (wxTheApp) { appNameStr = wxTheApp->GetAppName(); appName = WXSTRINGCAST appNameStr; - wxLogDebug(T("----- Classes in %s -----"), appName); + wxLogDebug(wxT("----- Classes in %s -----"), appName); } } @@ -844,32 +844,32 @@ bool wxDebugContext::PrintClasses(void) if (info->GetClassName()) { wxString msg(info->GetClassName()); - msg += T(" "); + msg += wxT(" "); if (info->GetBaseClassName1() && !info->GetBaseClassName2()) { - msg += T("is a "); + msg += wxT("is a "); msg += info->GetBaseClassName1(); } else if (info->GetBaseClassName1() && info->GetBaseClassName2()) { - msg += T("is a "); + msg += wxT("is a "); msg += info->GetBaseClassName1() ; - msg += T(", "); + msg += wxT(", "); msg += info->GetBaseClassName2() ; } if (info->GetConstructor()) - msg += T(": dynamic"); + msg += wxT(": dynamic"); wxLogDebug(msg); } node = wxClassInfo::sm_classTable->Next(); n ++; } - wxLogDebug(T("")); - wxLogDebug(T("There are %d classes derived from wxObject."), n); - wxLogDebug(T("")); - wxLogDebug(T("")); + wxLogDebug(wxT("")); + wxLogDebug(wxT("There are %d classes derived from wxObject."), n); + wxLogDebug(wxT("")); + wxLogDebug(wxT("")); return TRUE; } @@ -1040,7 +1040,7 @@ void * wxDebugAlloc(size_t size, wxChar * fileName, int lineNum, bool isObject, int totSize = wxDebugContext::TotSize (size); char * buf = (char *) malloc(totSize); if (!buf) { - wxLogDebug(T("Call to malloc (%ld) failed."), (long)size); + wxLogDebug(wxT("Call to malloc (%ld) failed."), (long)size); return 0; } wxMemStruct * st = (wxMemStruct *)buf; diff --git a/src/common/mimetype.cpp b/src/common/mimetype.cpp index b36a2dcfa8..c7c12b22e2 100644 --- a/src/common/mimetype.cpp +++ b/src/common/mimetype.cpp @@ -249,7 +249,7 @@ public: break; } - wxASSERT_MSG( n == pos, T("invalid position in MailCapEntry::Insert") ); + wxASSERT_MSG( n == pos, wxT("invalid position in MailCapEntry::Insert") ); m_next = cur->m_next; cur->m_next = this; @@ -257,7 +257,7 @@ public: // append this element to the list void Append(MailCapEntry *next) { - wxCHECK_RET( next != NULL, T("Append()ing to what?") ); + wxCHECK_RET( next != NULL, wxT("Append()ing to what?") ); // FIXME slooow... MailCapEntry *cur; @@ -266,7 +266,7 @@ public: cur->m_next = this; - wxASSERT_MSG( !m_next, T("Append()ing element already in the list?") ); + wxASSERT_MSG( !m_next, wxT("Append()ing element already in the list?") ); } private: @@ -413,57 +413,57 @@ wxString wxFileType::ExpandCommand(const wxString& command, bool hasFilename = FALSE; wxString str; - for ( const wxChar *pc = command.c_str(); *pc != T('\0'); pc++ ) { - if ( *pc == T('%') ) { + for ( const wxChar *pc = command.c_str(); *pc != wxT('\0'); pc++ ) { + if ( *pc == wxT('%') ) { switch ( *++pc ) { - case T('s'): + case wxT('s'): // '%s' expands into file name (quoted because it might // contain spaces) - except if there are already quotes // there because otherwise some programs may get confused // by double double quotes #if 0 - if ( *(pc - 2) == T('"') ) + if ( *(pc - 2) == wxT('"') ) str << params.GetFileName(); else - str << T('"') << params.GetFileName() << T('"'); + str << wxT('"') << params.GetFileName() << wxT('"'); #endif str << params.GetFileName(); hasFilename = TRUE; break; - case T('t'): + case wxT('t'): // '%t' expands into MIME type (quote it too just to be // consistent) - str << T('\'') << params.GetMimeType() << T('\''); + str << wxT('\'') << params.GetMimeType() << wxT('\''); break; - case T('{'): + case wxT('{'): { - const wxChar *pEnd = wxStrchr(pc, T('}')); + const wxChar *pEnd = wxStrchr(pc, wxT('}')); if ( pEnd == NULL ) { wxString mimetype; wxLogWarning(_("Unmatched '{' in an entry for " "mime type %s."), params.GetMimeType().c_str()); - str << T("%{"); + str << wxT("%{"); } else { wxString param(pc + 1, pEnd - pc - 1); - str << T('\'') << params.GetParamValue(param) << T('\''); + str << wxT('\'') << params.GetParamValue(param) << wxT('\''); pc = pEnd; } } break; - case T('n'): - case T('F'): + case wxT('n'): + case wxT('F'): // TODO %n is the number of parts, %F is an array containing // the names of temp files these parts were written to // and their mime types. break; default: - wxLogDebug(T("Unknown field %%%c in command '%s'."), + wxLogDebug(wxT("Unknown field %%%c in command '%s'."), *pc, command.c_str()); str << *pc; } @@ -476,7 +476,7 @@ wxString wxFileType::ExpandCommand(const wxString& command, // metamail(1) man page states that if the mailcap entry doesn't have '%s' // the program will accept the data on stdin: so give it to it! if ( !hasFilename && !str.IsEmpty() ) { - str << T(" < '") << params.GetFileName() << T('\''); + str << wxT(" < '") << params.GetFileName() << wxT('\''); } return str; @@ -533,16 +533,16 @@ wxFileType::GetPrintCommand(wxString *printCmd, bool wxMimeTypesManager::IsOfType(const wxString& mimeType, const wxString& wildcard) { - wxASSERT_MSG( mimeType.Find(T('*')) == wxNOT_FOUND, - T("first MIME type can't contain wildcards") ); + wxASSERT_MSG( mimeType.Find(wxT('*')) == wxNOT_FOUND, + wxT("first MIME type can't contain wildcards") ); // all comparaisons are case insensitive (2nd arg of IsSameAs() is FALSE) - if ( wildcard.BeforeFirst(T('/')).IsSameAs(mimeType.BeforeFirst(T('/')), FALSE) ) + if ( wildcard.BeforeFirst(wxT('/')).IsSameAs(mimeType.BeforeFirst(wxT('/')), FALSE) ) { - wxString strSubtype = wildcard.AfterFirst(T('/')); + wxString strSubtype = wildcard.AfterFirst(wxT('/')); - if ( strSubtype == T("*") || - strSubtype.IsSameAs(mimeType.AfterFirst(T('/')), FALSE) ) + if ( strSubtype == wxT("*") || + strSubtype.IsSameAs(mimeType.AfterFirst(wxT('/')), FALSE) ) { // matches (either exactly or it's a wildcard) return TRUE; @@ -602,13 +602,13 @@ wxString wxFileTypeImpl::GetCommand(const wxChar *verb) const // suppress possible error messages wxLogNull nolog; wxString strKey; - strKey << m_strFileType << T("\\shell\\") << verb << T("\\command"); + strKey << m_strFileType << wxT("\\shell\\") << verb << wxT("\\command"); wxRegKey key(wxRegKey::HKCR, strKey); wxString command; if ( key.Open() ) { // it's the default value of the key - if ( key.QueryValue(T(""), command) ) { + if ( key.QueryValue(wxT(""), command) ) { // transform it from '%1' to '%s' style format string // NB: we don't make any attempt to verify that the string is valid, @@ -617,10 +617,10 @@ wxString wxFileTypeImpl::GetCommand(const wxChar *verb) const bool foundFilename = FALSE; size_t len = command.Len(); for ( size_t n = 0; (n < len) && !foundFilename; n++ ) { - if ( command[n] == T('%') && - (n + 1 < len) && command[n + 1] == T('1') ) { + if ( command[n] == wxT('%') && + (n + 1 < len) && command[n + 1] == wxT('1') ) { // replace it with '%s' - command[n + 1] = T('s'); + command[n + 1] = wxT('s'); foundFilename = TRUE; } @@ -629,7 +629,7 @@ wxString wxFileTypeImpl::GetCommand(const wxChar *verb) const if ( !foundFilename ) { // we didn't find any '%1'! // HACK: append the filename at the end, hope that it will do - command << T(" %s"); + command << wxT(" %s"); } } } @@ -648,7 +648,7 @@ wxFileTypeImpl::GetOpenCommand(wxString *openCmd, cmd = m_info->GetOpenCommand(); } else { - cmd = GetCommand(T("open")); + cmd = GetCommand(wxT("open")); } *openCmd = wxFileType::ExpandCommand(cmd, params); @@ -666,7 +666,7 @@ wxFileTypeImpl::GetPrintCommand(wxString *printCmd, cmd = m_info->GetPrintCommand(); } else { - cmd = GetCommand(T("print")); + cmd = GetCommand(wxT("print")); } *printCmd = wxFileType::ExpandCommand(cmd, params); @@ -707,8 +707,8 @@ bool wxFileTypeImpl::GetMimeType(wxString *mimeType) const // suppress possible error messages wxLogNull nolog; - wxRegKey key(wxRegKey::HKCR, /*m_strFileType*/ T(".") + m_ext); - if ( key.Open() && key.QueryValue(T("Content Type"), *mimeType) ) { + wxRegKey key(wxRegKey::HKCR, /*m_strFileType*/ wxT(".") + m_ext); + if ( key.Open() && key.QueryValue(wxT("Content Type"), *mimeType) ) { return TRUE; } else { @@ -724,7 +724,7 @@ bool wxFileTypeImpl::GetIcon(wxIcon *icon) const } wxString strIconKey; - strIconKey << m_strFileType << T("\\DefaultIcon"); + strIconKey << m_strFileType << wxT("\\DefaultIcon"); // suppress possible error messages wxLogNull nolog; @@ -733,18 +733,18 @@ bool wxFileTypeImpl::GetIcon(wxIcon *icon) const if ( key.Open() ) { wxString strIcon; // it's the default value of the key - if ( key.QueryValue(T(""), strIcon) ) { + if ( key.QueryValue(wxT(""), strIcon) ) { // the format is the following: , // NB: icon index may be negative as well as positive and the full // path may contain the environment variables inside '%' - wxString strFullPath = strIcon.BeforeLast(T(',')), - strIndex = strIcon.AfterLast(T(',')); + wxString strFullPath = strIcon.BeforeLast(wxT(',')), + strIndex = strIcon.AfterLast(wxT(',')); // index may be omitted, in which case BeforeLast(',') is empty and // AfterLast(',') is the whole string if ( strFullPath.IsEmpty() ) { strFullPath = strIndex; - strIndex = T("0"); + strIndex = wxT("0"); } wxString strExpPath = wxExpandEnvVars(strFullPath); @@ -754,7 +754,7 @@ bool wxFileTypeImpl::GetIcon(wxIcon *icon) const switch ( (int)hIcon ) { case 0: // means no icons were found case 1: // means no such file or it wasn't a DLL/EXE/OCX/ICO/... - wxLogDebug(T("incorrect registry entry '%s': no such icon."), + wxLogDebug(wxT("incorrect registry entry '%s': no such icon."), key.GetName().c_str()); break; @@ -784,7 +784,7 @@ bool wxFileTypeImpl::GetDescription(wxString *desc) const if ( key.Open() ) { // it's the default value of the key - if ( key.QueryValue(T(""), *desc) ) { + if ( key.QueryValue(wxT(""), *desc) ) { return TRUE; } } @@ -798,8 +798,8 @@ wxMimeTypesManagerImpl::GetFileTypeFromExtension(const wxString& ext) { // add the leading point if necessary wxString str; - if ( ext[0u] != T('.') ) { - str = T('.'); + if ( ext[0u] != wxT('.') ) { + str = wxT('.'); } str << ext; @@ -810,7 +810,7 @@ wxMimeTypesManagerImpl::GetFileTypeFromExtension(const wxString& ext) wxRegKey key(wxRegKey::HKCR, str); if ( key.Open() ) { // it's the default value of the key - if ( key.QueryValue(T(""), strFileType) ) { + if ( key.QueryValue(wxT(""), strFileType) ) { // create the new wxFileType object wxFileType *fileType = new wxFileType; fileType->m_impl->Init(strFileType, ext); @@ -842,7 +842,7 @@ wxMimeTypesManagerImpl::GetFileTypeFromMimeType(const wxString& mimeType) { // HACK I don't know of any official documentation which mentions this // location, but as a matter of fact IE uses it, so why not we? - static const wxChar *szMimeDbase = T("MIME\\Database\\Content Type\\"); + static const wxChar *szMimeDbase = wxT("MIME\\Database\\Content Type\\"); wxString strKey = szMimeDbase; strKey << mimeType; @@ -853,7 +853,7 @@ wxMimeTypesManagerImpl::GetFileTypeFromMimeType(const wxString& mimeType) wxString ext; wxRegKey key(wxRegKey::HKCR, strKey); if ( key.Open() ) { - if ( key.QueryValue(T("Extension"), ext) ) { + if ( key.QueryValue(wxT("Extension"), ext) ) { return GetFileTypeFromExtension(ext); } } @@ -889,12 +889,12 @@ wxFileTypeImpl::GetEntry(const wxFileType::MessageParameters& params) const if ( command.IsEmpty() || (wxSystem(command) == 0) ) { // ok, passed - wxLogTrace(T("Test '%s' for mime type '%s' succeeded."), + wxLogTrace(wxT("Test '%s' for mime type '%s' succeeded."), command.c_str(), params.GetMimeType().c_str()); break; } else { - wxLogTrace(T("Test '%s' for mime type '%s' failed."), + wxLogTrace(wxT("Test '%s' for mime type '%s' failed."), command.c_str(), params.GetMimeType().c_str()); } @@ -933,7 +933,7 @@ bool wxFileTypeImpl::GetExtensions(wxArrayString& extensions) // one extension in the space or comma delimitid list wxString strExt; for ( const wxChar *p = strExtensions; ; p++ ) { - if ( *p == T(' ') || *p == T(',') || *p == T('\0') ) { + if ( *p == wxT(' ') || *p == wxT(',') || *p == wxT('\0') ) { if ( !strExt.IsEmpty() ) { extensions.Add(strExt); strExt.Empty(); @@ -941,13 +941,13 @@ bool wxFileTypeImpl::GetExtensions(wxArrayString& extensions) //else: repeated spaces (shouldn't happen, but it's not that // important if it does happen) - if ( *p == T('\0') ) + if ( *p == wxT('\0') ) break; } - else if ( *p == T('.') ) { + else if ( *p == wxT('.') ) { // remove the dot from extension (but only if it's the first char) if ( !strExt.IsEmpty() ) { - strExt += T('.'); + strExt += wxT('.'); } //else: no, don't append it } @@ -966,38 +966,38 @@ wxMimeTypesManagerImpl::wxMimeTypesManagerImpl() // (taken from metamail(1) sources) static const wxChar *aStandardLocations[] = { - T("/etc"), - T("/usr/etc"), - T("/usr/local/etc"), - T("/etc/mail"), - T("/usr/public/lib") + wxT("/etc"), + wxT("/usr/etc"), + wxT("/usr/local/etc"), + wxT("/etc/mail"), + wxT("/usr/public/lib") }; // first read the system wide file(s) for ( size_t n = 0; n < WXSIZEOF(aStandardLocations); n++ ) { wxString dir = aStandardLocations[n]; - wxString file = dir + T("/mailcap"); + wxString file = dir + wxT("/mailcap"); if ( wxFile::Exists(file) ) { ReadMailcap(file); } - file = dir + T("/mime.types"); + file = dir + wxT("/mime.types"); if ( wxFile::Exists(file) ) { ReadMimeTypes(file); } } - wxString strHome = wxGetenv(T("HOME")); + wxString strHome = wxGetenv(wxT("HOME")); // and now the users mailcap - wxString strUserMailcap = strHome + T("/.mailcap"); + wxString strUserMailcap = strHome + wxT("/.mailcap"); if ( wxFile::Exists(strUserMailcap) ) { ReadMailcap(strUserMailcap); } // read the users mime.types - wxString strUserMimeTypes = strHome + T("/.mime.types"); + wxString strUserMimeTypes = strHome + wxT("/.mime.types"); if ( wxFile::Exists(strUserMimeTypes) ) { ReadMimeTypes(strUserMimeTypes); } @@ -1010,8 +1010,8 @@ wxMimeTypesManagerImpl::GetFileTypeFromExtension(const wxString& ext) for ( size_t n = 0; n < count; n++ ) { wxString extensions = m_aExtensions[n]; while ( !extensions.IsEmpty() ) { - wxString field = extensions.BeforeFirst(T(' ')); - extensions = extensions.AfterFirst(T(' ')); + wxString field = extensions.BeforeFirst(wxT(' ')); + extensions = extensions.AfterFirst(wxT(' ')); // consider extensions as not being case-sensitive if ( field.IsSameAs(ext, FALSE /* no case */) ) { @@ -1041,12 +1041,12 @@ wxMimeTypesManagerImpl::GetFileTypeFromMimeType(const wxString& mimeType) // then try to find "text/*" as match for "text/plain" (for example) // NB: if mimeType doesn't contain '/' at all, BeforeFirst() will return // the whole string - ok. - wxString strCategory = mimetype.BeforeFirst(T('/')); + wxString strCategory = mimetype.BeforeFirst(wxT('/')); size_t nCount = m_aTypes.Count(); for ( size_t n = 0; n < nCount; n++ ) { - if ( (m_aTypes[n].BeforeFirst(T('/')) == strCategory ) && - m_aTypes[n].AfterFirst(T('/')) == T("*") ) { + if ( (m_aTypes[n].BeforeFirst(wxT('/')) == strCategory ) && + m_aTypes[n].AfterFirst(wxT('/')) == wxT("*") ) { index = n; break; } @@ -1072,7 +1072,7 @@ void wxMimeTypesManagerImpl::AddFallback(const wxFileTypeInfo& filetype) size_t nExts = exts.GetCount(); for ( size_t nExt = 0; nExt < nExts; nExt++ ) { if ( nExt > 0 ) { - extensions += T(' '); + extensions += wxT(' '); } extensions += exts[nExt]; } @@ -1084,7 +1084,7 @@ void wxMimeTypesManagerImpl::AddFallback(const wxFileTypeInfo& filetype) AddMailcapInfo(filetype.GetMimeType(), filetype.GetOpenCommand(), filetype.GetPrintCommand(), - T(""), + wxT(""), filetype.GetDescription()); } @@ -1123,7 +1123,7 @@ void wxMimeTypesManagerImpl::AddMailcapInfo(const wxString& strType, m_aTypes.Add(strType); m_aEntries.Add(entry); - m_aExtensions.Add(T("")); + m_aExtensions.Add(wxT("")); m_aDescriptions.Add(strDesc); } else { @@ -1139,7 +1139,7 @@ void wxMimeTypesManagerImpl::AddMailcapInfo(const wxString& strType, bool wxMimeTypesManagerImpl::ReadMimeTypes(const wxString& strFileName) { - wxLogTrace(T("--- Parsing mime.types file '%s' ---"), strFileName.c_str()); + wxLogTrace(wxT("--- Parsing mime.types file '%s' ---"), strFileName.c_str()); wxTextFile file(strFileName); if ( !file.Open() ) @@ -1165,20 +1165,20 @@ bool wxMimeTypesManagerImpl::ReadMimeTypes(const wxString& strFileName) pc++; // comment? - if ( *pc == T('#') ) { + if ( *pc == wxT('#') ) { // skip the whole line pc = NULL; continue; } // detect file format - const wxChar *pEqualSign = wxStrchr(pc, T('=')); + const wxChar *pEqualSign = wxStrchr(pc, wxT('=')); if ( pEqualSign == NULL ) { // brief format // ------------ // first field is mime type - for ( strMimeType.Empty(); !wxIsspace(*pc) && *pc != T('\0'); pc++ ) { + for ( strMimeType.Empty(); !wxIsspace(*pc) && *pc != wxT('\0'); pc++ ) { strMimeType += *pc; } @@ -1204,9 +1204,9 @@ bool wxMimeTypesManagerImpl::ReadMimeTypes(const wxString& strFileName) ; const wxChar *pEnd; - if ( *pc == T('"') ) { + if ( *pc == wxT('"') ) { // the string is quoted and ends at the matching quote - pEnd = wxStrchr(++pc, T('"')); + pEnd = wxStrchr(++pc, wxT('"')); if ( pEnd == NULL ) { wxLogWarning(_("Mime.types file %s, line %d: unterminated " "quoted string."), @@ -1223,7 +1223,7 @@ bool wxMimeTypesManagerImpl::ReadMimeTypes(const wxString& strFileName) wxString strRHS(pc, pEnd - pc); // check what follows this entry - if ( *pEnd == T('"') ) { + if ( *pEnd == wxT('"') ) { // skip this quote pEnd++; } @@ -1233,20 +1233,20 @@ bool wxMimeTypesManagerImpl::ReadMimeTypes(const wxString& strFileName) // if there is something left, it may be either a '\\' to continue // the line or the next field of the same entry - bool entryEnded = *pc == T('\0'), + bool entryEnded = *pc == wxT('\0'), nextFieldOnSameLine = FALSE; if ( !entryEnded ) { - nextFieldOnSameLine = ((*pc != T('\\')) || (pc[1] != T('\0'))); + nextFieldOnSameLine = ((*pc != wxT('\\')) || (pc[1] != wxT('\0'))); } // now see what we got - if ( strLHS == T("type") ) { + if ( strLHS == wxT("type") ) { strMimeType = strRHS; } - else if ( strLHS == T("desc") ) { + else if ( strLHS == wxT("desc") ) { strDesc = strRHS; } - else if ( strLHS == T("exts") ) { + else if ( strLHS == wxT("exts") ) { strExtensions = strRHS; } else { @@ -1269,10 +1269,10 @@ bool wxMimeTypesManagerImpl::ReadMimeTypes(const wxString& strFileName) // although it doesn't seem to be covered by RFCs, some programs // (notably Netscape) create their entries with several comma // separated extensions (RFC mention the spaces only) - strExtensions.Replace(T(","), T(" ")); + strExtensions.Replace(wxT(","), wxT(" ")); // also deal with the leading dot - if ( !strExtensions.IsEmpty() && strExtensions[0] == T('.') ) { + if ( !strExtensions.IsEmpty() && strExtensions[0] == wxT('.') ) { strExtensions.erase(0, 1); } @@ -1293,7 +1293,7 @@ bool wxMimeTypesManagerImpl::ReadMimeTypes(const wxString& strFileName) bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName, bool fallback) { - wxLogTrace(T("--- Parsing mailcap file '%s' ---"), strFileName.c_str()); + wxLogTrace(wxT("--- Parsing mailcap file '%s' ---"), strFileName.c_str()); wxTextFile file(strFileName); if ( !file.Open() ) @@ -1317,7 +1317,7 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName, pc++; // comment or empty string? - if ( *pc == T('#') || *pc == T('\0') ) + if ( *pc == wxT('#') || *pc == wxT('\0') ) continue; // no, do parse @@ -1343,10 +1343,10 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName, curField; // accumulator for ( bool cont = TRUE; cont; pc++ ) { switch ( *pc ) { - case T('\\'): + case wxT('\\'): // interpret the next character literally (notice that // backslash can be used for line continuation) - if ( *++pc == T('\0') ) { + if ( *++pc == wxT('\0') ) { // fetch the next line. // pc currently points to nowhere, but after the next @@ -1360,12 +1360,12 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName, } break; - case T('\0'): + case wxT('\0'): cont = FALSE; // end of line reached, exit the loop // fall through - case T(';'): + case wxT(';'): // store this field and start looking for the next one // trim whitespaces from both sides @@ -1374,9 +1374,9 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName, switch ( currentToken ) { case Field_Type: strType = curField; - if ( strType.Find(T('/')) == wxNOT_FOUND ) { + if ( strType.Find(wxT('/')) == wxNOT_FOUND ) { // we interpret "type" as "type/*" - strType += T("/*"); + strType += wxT("/*"); } currentToken = Field_OpenCmd; @@ -1394,22 +1394,22 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName, bool ok = TRUE; // is this something of the form foo=bar? - const wxChar *pEq = wxStrchr(curField, T('=')); + const wxChar *pEq = wxStrchr(curField, wxT('=')); if ( pEq != NULL ) { - wxString lhs = curField.BeforeFirst(T('=')), - rhs = curField.AfterFirst(T('=')); + wxString lhs = curField.BeforeFirst(wxT('=')), + rhs = curField.AfterFirst(wxT('=')); lhs.Trim(TRUE); // from right rhs.Trim(FALSE); // from left - if ( lhs == T("print") ) + if ( lhs == wxT("print") ) strPrintCmd = rhs; - else if ( lhs == T("test") ) + else if ( lhs == wxT("test") ) strTest = rhs; - else if ( lhs == T("description") ) { + else if ( lhs == wxT("description") ) { // it might be quoted - if ( rhs[0u] == T('"') && - rhs.Last() == T('"') ) { + if ( rhs[0u] == wxT('"') && + rhs.Last() == wxT('"') ) { strDesc = wxString(rhs.c_str() + 1, rhs.Len() - 2); } @@ -1417,10 +1417,10 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName, strDesc = rhs; } } - else if ( lhs == T("compose") || - lhs == T("composetyped") || - lhs == T("notes") || - lhs == T("edit") ) + else if ( lhs == wxT("compose") || + lhs == wxT("composetyped") || + lhs == wxT("notes") || + lhs == wxT("edit") ) ; // ignore else ok = FALSE; @@ -1431,11 +1431,11 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName, // TODO support the flags: // 1. create an xterm for 'needsterminal' // 2. append "| $PAGER" for 'copiousoutput' - if ( curField == T("needsterminal") ) + if ( curField == wxT("needsterminal") ) needsterminal = TRUE; - else if ( curField == T("copiousoutput") ) + else if ( curField == wxT("copiousoutput") ) copiousoutput = TRUE; - else if ( curField == T("textualnewlines") ) + else if ( curField == wxT("textualnewlines") ) ; // ignore else ok = FALSE; @@ -1450,7 +1450,7 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName, // programmer wxLogDebug ( - T("Mailcap file %s, line %d: unknown " + wxT("Mailcap file %s, line %d: unknown " "field '%s' for the MIME type " "'%s' ignored."), strFileName.c_str(), @@ -1466,7 +1466,7 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName, break; default: - wxFAIL_MSG(T("unknown field type in mailcap")); + wxFAIL_MSG(wxT("unknown field type in mailcap")); } // next token starts immediately after ';' @@ -1498,7 +1498,7 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName, m_aTypes.Add(strType); m_aEntries.Add(entry); - m_aExtensions.Add(T("")); + m_aExtensions.Add(wxT("")); m_aDescriptions.Add(strDesc); } else { diff --git a/src/common/object.cpp b/src/common/object.cpp index d2d37670fa..972f6c0bc4 100644 --- a/src/common/object.cpp +++ b/src/common/object.cpp @@ -45,7 +45,7 @@ #endif #if !USE_SHARED_LIBRARY -wxClassInfo wxObject::sm_classwxObject((wxChar *) T("wxObject"), (wxChar *) NULL, (wxChar *) NULL, (int ) sizeof(wxObject), (wxObjectConstructorFn) NULL); +wxClassInfo wxObject::sm_classwxObject((wxChar *) wxT("wxObject"), (wxChar *) NULL, (wxChar *) NULL, (int ) sizeof(wxObject), (wxObjectConstructorFn) NULL); wxClassInfo* wxClassInfo::sm_first = (wxClassInfo *) NULL; wxHashTable* wxClassInfo::sm_classTable = (wxHashTable*) NULL; #endif diff --git a/src/common/objstrm.cpp b/src/common/objstrm.cpp index f5f8e8a8ce..0488a6b90d 100644 --- a/src/common/objstrm.cpp +++ b/src/common/objstrm.cpp @@ -45,7 +45,7 @@ wxString wxObjectOutputStream::GetObjectName(wxObject *obj) { wxString name; - name.Printf(T("%x"), (unsigned long)obj); + name.Printf(wxT("%x"), (unsigned long)obj); return name; } @@ -58,16 +58,16 @@ void wxObjectOutputStream::WriteObjectDef(wxObjectStreamInfo& info) if (info.duplicate) { data_s.WriteString(TAG_DUPLICATE_OBJECT); data_s.WriteString(GetObjectName(info.object)); - wxPrintf(T("info.object (dup %s)\n"), info.object->GetClassInfo()->GetClassName()); + wxPrintf(wxT("info.object (dup %s)\n"), info.object->GetClassInfo()->GetClassName()); return; } if (info.object) { data_s.WriteString(info.object->GetClassInfo()->GetClassName()); - wxPrintf(T("info.object (%s)\n"), info.object->GetClassInfo()->GetClassName()); + wxPrintf(wxT("info.object (%s)\n"), info.object->GetClassInfo()->GetClassName()); } else { data_s.WriteString(TAG_EMPTY_OBJECT); - wxPrintf(T("info.object (NULL)\n")); + wxPrintf(wxT("info.object (NULL)\n")); return; } diff --git a/src/common/prntbase.cpp b/src/common/prntbase.cpp index 4de06a39de..e363bd6b76 100644 --- a/src/common/prntbase.cpp +++ b/src/common/prntbase.cpp @@ -409,7 +409,7 @@ void wxPreviewControlBar::SetZoomControl(int zoom) int wxPreviewControlBar::GetZoomControl() { wxChar buf[20]; - if (m_zoomControl && (m_zoomControl->GetStringSelection() != T(""))) + if (m_zoomControl && (m_zoomControl->GetStringSelection() != wxT(""))) { wxStrcpy(buf, m_zoomControl->GetStringSelection()); buf[wxStrlen(buf) - 1] = 0; diff --git a/src/common/resource.cpp b/src/common/resource.cpp index c7f54d8fa0..b3391f9ac7 100644 --- a/src/common/resource.cpp +++ b/src/common/resource.cpp @@ -171,10 +171,10 @@ wxItemResource *wxResourceTable::FindResource(const wxString& name) const void wxResourceTable::AddResource(wxItemResource *item) { wxString name = item->GetName(); - if (name == T("")) + if (name == wxT("")) name = item->GetTitle(); - if (name == T("")) - name = T("no name"); + if (name == wxT("")) + name = wxT("no name"); // Delete existing resource, if any. Delete(name); @@ -243,7 +243,7 @@ bool wxResourceTable::RegisterResourceBitmapData(const wxString& name, char bits // Register pre-loaded bitmap data wxItemResource *item = new wxItemResource; // item->SetType(wxRESOURCE_TYPE_XBM_DATA); - item->SetType(T("wxXBMData")); + item->SetType(wxT("wxXBMData")); item->SetName(name); item->SetValue1((long)bits); item->SetValue2((long)width); @@ -257,7 +257,7 @@ bool wxResourceTable::RegisterResourceBitmapData(const wxString& name, char **da // Register pre-loaded bitmap data wxItemResource *item = new wxItemResource; // item->SetType(wxRESOURCE_TYPE_XPM_DATA); - item->SetType(T("wxXPMData")); + item->SetType(wxT("wxXPMData")); item->SetName(name); item->SetValue1((long)data); AddResource(item); @@ -307,9 +307,9 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c size = wxSize(childResource->GetWidth(), childResource->GetHeight()); } - if (itemType == wxString(T("wxButton")) || itemType == wxString(T("wxBitmapButton"))) + if (itemType == wxString(wxT("wxButton")) || itemType == wxString(wxT("wxBitmapButton"))) { - if (childResource->GetValue4() != T("")) + if (childResource->GetValue4() != wxT("")) { // Bitmap button wxBitmap bitmap = childResource->GetBitmap(); @@ -327,10 +327,10 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c control = new wxButton(parent, id, childResource->GetTitle(), pos, size, childResource->GetStyle(), wxDefaultValidator, childResource->GetName()); } - else if (itemType == wxString(T("wxMessage")) || itemType == wxString(T("wxStaticText")) || - itemType == wxString(T("wxStaticBitmap"))) + else if (itemType == wxString(wxT("wxMessage")) || itemType == wxString(wxT("wxStaticText")) || + itemType == wxString(wxT("wxStaticBitmap"))) { - if (childResource->GetValue4() != T("")) + if (childResource->GetValue4() != wxT("")) { // Bitmap message wxBitmap bitmap = childResource->GetBitmap(); @@ -351,12 +351,12 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c childResource->GetStyle(), childResource->GetName()); } } - else if (itemType == wxString(T("wxText")) || itemType == wxString(T("wxTextCtrl")) || itemType == wxString(T("wxMultiText"))) + else if (itemType == wxString(wxT("wxText")) || itemType == wxString(wxT("wxTextCtrl")) || itemType == wxString(wxT("wxMultiText"))) { control = new wxTextCtrl(parent, id, childResource->GetValue4(), pos, size, childResource->GetStyle(), wxDefaultValidator, childResource->GetName()); } - else if (itemType == wxString(T("wxCheckBox"))) + else if (itemType == wxString(wxT("wxCheckBox"))) { control = new wxCheckBox(parent, id, childResource->GetTitle(), pos, size, childResource->GetStyle(), wxDefaultValidator, childResource->GetName()); @@ -364,7 +364,7 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c ((wxCheckBox *)control)->SetValue((childResource->GetValue1() != 0)); } #if wxUSE_GAUGE - else if (itemType == wxString(T("wxGauge"))) + else if (itemType == wxString(wxT("wxGauge"))) { control = new wxGauge(parent, id, (int)childResource->GetValue2(), pos, size, childResource->GetStyle(), wxDefaultValidator, childResource->GetName()); @@ -373,7 +373,7 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c } #endif #if wxUSE_RADIOBTN - else if (itemType == wxString(T("wxRadioButton"))) + else if (itemType == wxString(wxT("wxRadioButton"))) { control = new wxRadioButton(parent, id, childResource->GetTitle(), // (int)childResource->GetValue1(), pos, size, @@ -381,7 +381,7 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c } #endif #if wxUSE_SCROLLBAR - else if (itemType == wxString(T("wxScrollBar"))) + else if (itemType == wxString(wxT("wxScrollBar"))) { control = new wxScrollBar(parent, id, pos, size, childResource->GetStyle(), wxDefaultValidator, childResource->GetName()); @@ -396,18 +396,18 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c } #endif - else if (itemType == wxString(T("wxSlider"))) + else if (itemType == wxString(wxT("wxSlider"))) { control = new wxSlider(parent, id, (int)childResource->GetValue1(), (int)childResource->GetValue2(), (int)childResource->GetValue3(), pos, size, childResource->GetStyle(), wxDefaultValidator, childResource->GetName()); } - else if (itemType == wxString(T("wxGroupBox")) || itemType == wxString(T("wxStaticBox"))) + else if (itemType == wxString(wxT("wxGroupBox")) || itemType == wxString(wxT("wxStaticBox"))) { control = new wxStaticBox(parent, id, childResource->GetTitle(), pos, size, childResource->GetStyle(), childResource->GetName()); } - else if (itemType == wxString(T("wxListBox"))) + else if (itemType == wxString(wxT("wxListBox"))) { wxStringList& stringList = childResource->GetStringValues(); wxString *strings = (wxString *) NULL; @@ -431,7 +431,7 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c if (strings) delete[] strings; } - else if (itemType == wxString(T("wxChoice"))) + else if (itemType == wxString(wxT("wxChoice"))) { wxStringList& stringList = childResource->GetStringValues(); wxString *strings = (wxString *) NULL; @@ -456,7 +456,7 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c delete[] strings; } #if wxUSE_COMBOBOX - else if (itemType == wxString(T("wxComboBox"))) + else if (itemType == wxString(wxT("wxComboBox"))) { wxStringList& stringList = childResource->GetStringValues(); wxString *strings = (wxString *) NULL; @@ -481,7 +481,7 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c delete[] strings; } #endif - else if (itemType == wxString(T("wxRadioBox"))) + else if (itemType == wxString(wxT("wxRadioBox"))) { wxStringList& stringList = childResource->GetStringValues(); wxString *strings = (wxString *) NULL; @@ -532,25 +532,25 @@ bool wxResourceInterpretResources(wxResourceTable& table, wxExprDatabase& db) wxString functor(clause->Functor()); wxItemResource *item = (wxItemResource *) NULL; - if (functor == T("dialog")) + if (functor == wxT("dialog")) item = wxResourceInterpretDialog(table, clause); - else if (functor == T("panel")) + else if (functor == wxT("panel")) item = wxResourceInterpretDialog(table, clause, TRUE); - else if (functor == T("menubar")) + else if (functor == wxT("menubar")) item = wxResourceInterpretMenuBar(table, clause); - else if (functor == T("menu")) + else if (functor == wxT("menu")) item = wxResourceInterpretMenu(table, clause); - else if (functor == T("string")) + else if (functor == wxT("string")) item = wxResourceInterpretString(table, clause); - else if (functor == T("bitmap")) + else if (functor == wxT("bitmap")) item = wxResourceInterpretBitmap(table, clause); - else if (functor == T("icon")) + else if (functor == wxT("icon")) item = wxResourceInterpretIcon(table, clause); if (item) { // Remove any existing resource of same name - if (item->GetName() != T("")) + if (item->GetName() != wxT("")) table.DeleteResource(item->GetName()); table.AddResource(item); } @@ -561,26 +561,26 @@ bool wxResourceInterpretResources(wxResourceTable& table, wxExprDatabase& db) static const wxChar *g_ValidControlClasses[] = { - T("wxButton"), - T("wxBitmapButton"), - T("wxMessage"), - T("wxStaticText"), - T("wxStaticBitmap"), - T("wxText"), - T("wxTextCtrl"), - T("wxMultiText"), - T("wxListBox"), - T("wxRadioBox"), - T("wxRadioButton"), - T("wxCheckBox"), - T("wxBitmapCheckBox"), - T("wxGroupBox"), - T("wxStaticBox"), - T("wxSlider"), - T("wxGauge"), - T("wxScrollBar"), - T("wxChoice"), - T("wxComboBox") + wxT("wxButton"), + wxT("wxBitmapButton"), + wxT("wxMessage"), + wxT("wxStaticText"), + wxT("wxStaticBitmap"), + wxT("wxText"), + wxT("wxTextCtrl"), + wxT("wxMultiText"), + wxT("wxListBox"), + wxT("wxRadioBox"), + wxT("wxRadioButton"), + wxT("wxCheckBox"), + wxT("wxBitmapCheckBox"), + wxT("wxGroupBox"), + wxT("wxStaticBox"), + wxT("wxSlider"), + wxT("wxGauge"), + wxT("wxScrollBar"), + wxT("wxChoice"), + wxT("wxComboBox") }; static bool wxIsValidControlClass(const wxString& c) @@ -597,15 +597,15 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr, { wxItemResource *dialogItem = new wxItemResource; if (isPanel) - dialogItem->SetType(T("wxPanel")); + dialogItem->SetType(wxT("wxPanel")); else - dialogItem->SetType(T("wxDialog")); - wxString style = T(""); - wxString title = T(""); - wxString name = T(""); - wxString backColourHex = T(""); - wxString labelColourHex = T(""); - wxString buttonColourHex = T(""); + dialogItem->SetType(wxT("wxDialog")); + wxString style = wxT(""); + wxString title = wxT(""); + wxString name = wxT(""); + wxString backColourHex = wxT(""); + wxString labelColourHex = wxT(""); + wxString buttonColourHex = wxT(""); long windowStyle = wxDEFAULT_DIALOG_STYLE; if (isPanel) @@ -616,36 +616,36 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr, wxExpr *labelFontExpr = (wxExpr *) NULL; wxExpr *buttonFontExpr = (wxExpr *) NULL; wxExpr *fontExpr = (wxExpr *) NULL; - expr->GetAttributeValue(T("style"), style); - expr->GetAttributeValue(T("name"), name); - expr->GetAttributeValue(T("title"), title); - expr->GetAttributeValue(T("x"), x); - expr->GetAttributeValue(T("y"), y); - expr->GetAttributeValue(T("width"), width); - expr->GetAttributeValue(T("height"), height); - expr->GetAttributeValue(T("modal"), isModal); - expr->GetAttributeValue(T("label_font"), &labelFontExpr); - expr->GetAttributeValue(T("button_font"), &buttonFontExpr); - expr->GetAttributeValue(T("font"), &fontExpr); - expr->GetAttributeValue(T("background_colour"), backColourHex); - expr->GetAttributeValue(T("label_colour"), labelColourHex); - expr->GetAttributeValue(T("button_colour"), buttonColourHex); + expr->GetAttributeValue(wxT("style"), style); + expr->GetAttributeValue(wxT("name"), name); + expr->GetAttributeValue(wxT("title"), title); + expr->GetAttributeValue(wxT("x"), x); + expr->GetAttributeValue(wxT("y"), y); + expr->GetAttributeValue(wxT("width"), width); + expr->GetAttributeValue(wxT("height"), height); + expr->GetAttributeValue(wxT("modal"), isModal); + expr->GetAttributeValue(wxT("label_font"), &labelFontExpr); + expr->GetAttributeValue(wxT("button_font"), &buttonFontExpr); + expr->GetAttributeValue(wxT("font"), &fontExpr); + expr->GetAttributeValue(wxT("background_colour"), backColourHex); + expr->GetAttributeValue(wxT("label_colour"), labelColourHex); + expr->GetAttributeValue(wxT("button_colour"), buttonColourHex); int useDialogUnits = 0; - expr->GetAttributeValue(T("use_dialog_units"), useDialogUnits); + expr->GetAttributeValue(wxT("use_dialog_units"), useDialogUnits); if (useDialogUnits != 0) dialogItem->SetResourceStyle(dialogItem->GetResourceStyle() | wxRESOURCE_DIALOG_UNITS); int useDefaults = 0; - expr->GetAttributeValue(T("use_system_defaults"), useDefaults); + expr->GetAttributeValue(wxT("use_system_defaults"), useDefaults); if (useDefaults != 0) dialogItem->SetResourceStyle(dialogItem->GetResourceStyle() | wxRESOURCE_USE_DEFAULTS); long id = 0; - expr->GetAttributeValue(T("id"), id); + expr->GetAttributeValue(wxT("id"), id); dialogItem->SetId(id); - if (style != T("")) + if (style != wxT("")) { windowStyle = wxParseWindowStyle(style); } @@ -658,7 +658,7 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr, dialogItem->SetTitle(title); dialogItem->SetSize(x, y, width, height); - if (backColourHex != T("")) + if (backColourHex != wxT("")) { int r = 0; int g = 0; @@ -668,7 +668,7 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr, b = wxHexToDec(backColourHex.Mid(4, 2)); dialogItem->SetBackgroundColour(wxColour((unsigned char)r,(unsigned char)g,(unsigned char)b)); } - if (labelColourHex != T("")) + if (labelColourHex != wxT("")) { int r = 0; int g = 0; @@ -678,7 +678,7 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr, b = wxHexToDec(labelColourHex.Mid(4, 2)); dialogItem->SetLabelColour(wxColour((unsigned char)r,(unsigned char)g,(unsigned char)b)); } - if (buttonColourHex != T("")) + if (buttonColourHex != wxT("")) { int r = 0; int g = 0; @@ -703,7 +703,7 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr, if (controlExpr->Number() == 3) { wxString controlKeyword(controlExpr->Nth(1)->StringValue()); - if (controlKeyword != T("") && controlKeyword == T("control")) + if (controlKeyword != wxT("") && controlKeyword == wxT("control")) { // The value part: always a list. wxExpr *listExpr = controlExpr->Nth(2); @@ -821,7 +821,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) controlItem->SetType(controlType); controlItem->SetId(id); - if (controlType == T("wxButton")) + if (controlType == wxT("wxButton")) { // Check for bitmap resource name (in case loading old-style resource file) if (expr->Nth(count) && ((expr->Nth(count)->Type() == PrologString) || (expr->Nth(count)->Type() == PrologWord))) @@ -829,16 +829,16 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) wxString str(expr->Nth(count)->StringValue()); count ++; - if (str != T("")) + if (str != wxT("")) { controlItem->SetValue4(str); - controlItem->SetType(T("wxBitmapButton")); + controlItem->SetType(wxT("wxBitmapButton")); } } if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList) controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count))); } - else if (controlType == T("wxBitmapButton")) + else if (controlType == wxT("wxBitmapButton")) { // Check for bitmap resource name if (expr->Nth(count) && ((expr->Nth(count)->Type() == PrologString) || (expr->Nth(count)->Type() == PrologWord))) @@ -850,7 +850,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count))); } } - else if (controlType == T("wxCheckBox")) + else if (controlType == wxT("wxCheckBox")) { // Check for default value if (expr->Nth(count) && (expr->Nth(count)->Type() == PrologInteger)) @@ -862,7 +862,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) } } #if wxUSE_RADIOBTN - else if (controlType == T("wxRadioButton")) + else if (controlType == wxT("wxRadioButton")) { // Check for default value if (expr->Nth(count) && (expr->Nth(count)->Type() == PrologInteger)) @@ -874,7 +874,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) } } #endif - else if (controlType == T("wxText") || controlType == T("wxTextCtrl") || controlType == T("wxMultiText")) + else if (controlType == wxT("wxText") || controlType == wxT("wxTextCtrl") || controlType == wxT("wxMultiText")) { // Check for default value if (expr->Nth(count) && ((expr->Nth(count)->Type() == PrologString) || (expr->Nth(count)->Type() == PrologWord))) @@ -893,7 +893,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) } } } - else if (controlType == T("wxMessage") || controlType == T("wxStaticText")) + else if (controlType == wxT("wxMessage") || controlType == wxT("wxStaticText")) { // Check for bitmap resource name (in case it's an old-style .wxr file) if (expr->Nth(count) && ((expr->Nth(count)->Type() == PrologString) || (expr->Nth(count)->Type() == PrologWord))) @@ -901,12 +901,12 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) wxString str(expr->Nth(count)->StringValue()); controlItem->SetValue4(str); count ++; - controlItem->SetType(T("wxStaticText")); + controlItem->SetType(wxT("wxStaticText")); } if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList) controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count))); } - else if (controlType == T("wxStaticBitmap")) + else if (controlType == wxT("wxStaticBitmap")) { // Check for bitmap resource name if (expr->Nth(count) && ((expr->Nth(count)->Type() == PrologString) || (expr->Nth(count)->Type() == PrologWord))) @@ -918,12 +918,12 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList) controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count))); } - else if (controlType == T("wxGroupBox") || controlType == T("wxStaticBox")) + else if (controlType == wxT("wxGroupBox") || controlType == wxT("wxStaticBox")) { if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList) controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count))); } - else if (controlType == T("wxGauge")) + else if (controlType == wxT("wxGauge")) { // Check for default value if (expr->Nth(count) && (expr->Nth(count)->Type() == PrologInteger)) @@ -949,7 +949,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) } } } - else if (controlType == T("wxSlider")) + else if (controlType == wxT("wxSlider")) { // Check for default value if (expr->Nth(count) && (expr->Nth(count)->Type() == PrologInteger)) @@ -982,7 +982,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) } } } - else if (controlType == T("wxScrollBar")) + else if (controlType == wxT("wxScrollBar")) { // DEFAULT VALUE if (expr->Nth(count) && (expr->Nth(count)->Type() == PrologInteger)) @@ -1009,7 +1009,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) } } } - else if (controlType == T("wxListBox")) + else if (controlType == wxT("wxListBox")) { wxExpr *valueList = (wxExpr *) NULL; @@ -1051,7 +1051,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) } } } - else if (controlType == T("wxChoice")) + else if (controlType == wxT("wxChoice")) { wxExpr *valueList = (wxExpr *) NULL; // Check for default value list @@ -1079,7 +1079,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) } } #if wxUSE_COMBOBOX - else if (controlType == T("wxComboBox")) + else if (controlType == wxT("wxComboBox")) { wxExpr *textValue = expr->Nth(count); if (textValue && (textValue->Type() == PrologString || textValue->Type() == PrologWord)) @@ -1117,7 +1117,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr) } #endif #if 1 - else if (controlType == T("wxRadioBox")) + else if (controlType == wxT("wxRadioBox")) { wxExpr *valueList = (wxExpr *) NULL; // Check for default value list @@ -1181,13 +1181,13 @@ wxItemResource *wxResourceInterpretMenuItem(wxResourceTable& table, wxExpr *expr if (expr->Number() == 0) { // item->SetType(wxRESOURCE_TYPE_SEPARATOR); - item->SetType(T("wxMenuSeparator")); + item->SetType(wxT("wxMenuSeparator")); return item; } else { // item->SetType(wxTYPE_MENU); // Well, menu item, but doesn't matter. - item->SetType(T("wxMenu")); // Well, menu item, but doesn't matter. + item->SetType(wxT("wxMenu")); // Well, menu item, but doesn't matter. if (labelExpr) { wxString str(labelExpr->StringValue()); @@ -1260,7 +1260,7 @@ wxItemResource *wxResourceInterpretMenu1(wxResourceTable& table, wxExpr *expr) wxItemResource *wxResourceInterpretMenu(wxResourceTable& table, wxExpr *expr) { wxExpr *listExpr = (wxExpr *) NULL; - expr->GetAttributeValue(T("menu"), &listExpr); + expr->GetAttributeValue(wxT("menu"), &listExpr); if (!listExpr) return (wxItemResource *) NULL; @@ -1270,7 +1270,7 @@ wxItemResource *wxResourceInterpretMenu(wxResourceTable& table, wxExpr *expr) return (wxItemResource *) NULL; wxString name; - if (expr->GetAttributeValue(T("name"), name)) + if (expr->GetAttributeValue(wxT("name"), name)) { menuResource->SetName(name); } @@ -1281,12 +1281,12 @@ wxItemResource *wxResourceInterpretMenu(wxResourceTable& table, wxExpr *expr) wxItemResource *wxResourceInterpretMenuBar(wxResourceTable& table, wxExpr *expr) { wxExpr *listExpr = (wxExpr *) NULL; - expr->GetAttributeValue(T("menu"), &listExpr); + expr->GetAttributeValue(wxT("menu"), &listExpr); if (!listExpr) return (wxItemResource *) NULL; wxItemResource *resource = new wxItemResource; - resource->SetType(T("wxMenu")); + resource->SetType(wxT("wxMenu")); // resource->SetType(wxTYPE_MENU); wxExpr *element = listExpr->GetFirst(); @@ -1298,7 +1298,7 @@ wxItemResource *wxResourceInterpretMenuBar(wxResourceTable& table, wxExpr *expr) } wxString name; - if (expr->GetAttributeValue(T("name"), name)) + if (expr->GetAttributeValue(wxT("name"), name)) { resource->SetName(name); } @@ -1315,9 +1315,9 @@ wxItemResource *wxResourceInterpretBitmap(wxResourceTable& WXUNUSED(table), wxEx { wxItemResource *bitmapItem = new wxItemResource; // bitmapItem->SetType(wxTYPE_BITMAP); - bitmapItem->SetType(T("wxBitmap")); + bitmapItem->SetType(wxT("wxBitmap")); wxString name; - if (expr->GetAttributeValue(T("name"), name)) + if (expr->GetAttributeValue(wxT("name"), name)) { bitmapItem->SetName(name); } @@ -1328,7 +1328,7 @@ wxItemResource *wxResourceInterpretBitmap(wxResourceTable& WXUNUSED(table), wxEx if (bitmapExpr->Number() == 3) { wxString bitmapKeyword(bitmapExpr->Nth(1)->StringValue()); - if (bitmapKeyword == T("bitmap") || bitmapKeyword == T("icon")) + if (bitmapKeyword == wxT("bitmap") || bitmapKeyword == wxT("icon")) { // The value part: always a list. wxExpr *listExpr = bitmapExpr->Nth(2); @@ -1336,7 +1336,7 @@ wxItemResource *wxResourceInterpretBitmap(wxResourceTable& WXUNUSED(table), wxEx { wxItemResource *bitmapSpec = new wxItemResource; // bitmapSpec->SetType(wxTYPE_BITMAP); - bitmapSpec->SetType(T("wxBitmap")); + bitmapSpec->SetType(wxT("wxBitmap")); // List is of form: [filename, bitmaptype, platform, colours, xresolution, yresolution] // where everything after 'filename' is optional. @@ -1346,25 +1346,25 @@ wxItemResource *wxResourceInterpretBitmap(wxResourceTable& WXUNUSED(table), wxEx wxExpr *coloursExpr = listExpr->Nth(3); wxExpr *xresExpr = listExpr->Nth(4); wxExpr *yresExpr = listExpr->Nth(5); - if (nameExpr && nameExpr->StringValue() != T("")) + if (nameExpr && nameExpr->StringValue() != wxT("")) { bitmapSpec->SetName(nameExpr->StringValue()); } - if (typeExpr && typeExpr->StringValue() != T("")) + if (typeExpr && typeExpr->StringValue() != wxT("")) { bitmapSpec->SetValue1(wxParseWindowStyle(typeExpr->StringValue())); } else bitmapSpec->SetValue1(0); - if (platformExpr && platformExpr->StringValue() != T("")) + if (platformExpr && platformExpr->StringValue() != wxT("")) { wxString plat(platformExpr->StringValue()); - if (plat == T("windows") || plat == T("WINDOWS")) + if (plat == wxT("windows") || plat == wxT("WINDOWS")) bitmapSpec->SetValue2(RESOURCE_PLATFORM_WINDOWS); - else if (plat == T("x") || plat == T("X")) + else if (plat == wxT("x") || plat == wxT("X")) bitmapSpec->SetValue2(RESOURCE_PLATFORM_X); - else if (plat == T("mac") || plat == T("MAC")) + else if (plat == wxT("mac") || plat == wxT("MAC")) bitmapSpec->SetValue2(RESOURCE_PLATFORM_MAC); else bitmapSpec->SetValue2(RESOURCE_PLATFORM_ANY); @@ -1398,7 +1398,7 @@ wxItemResource *wxResourceInterpretIcon(wxResourceTable& table, wxExpr *expr) if (item) { // item->SetType(wxTYPE_ICON); - item->SetType(T("wxIcon")); + item->SetType(wxT("wxIcon")); return item; } else @@ -1416,7 +1416,7 @@ wxFont wxResourceInterpretFontSpec(wxExpr *expr) int style = wxNORMAL; int weight = wxNORMAL; int underline = 0; - wxString faceName(T("")); + wxString faceName(wxT("")); wxExpr *pointExpr = expr->Nth(0); wxExpr *familyExpr = expr->Nth(1); @@ -1645,10 +1645,10 @@ bool wxResourceReadOneResource(FILE *fd, wxExprDatabase& db, bool *eof, wxResour wxGetResourceToken(fd); wxChar *name = copystring(wxConvCurrent->cMB2WX(wxResourceBuffer)); wxChar *actualName = name; - if (name[0] == T('"')) + if (name[0] == wxT('"')) actualName = name + 1; int len = wxStrlen(name); - if ((len > 0) && (name[len-1] == T('"'))) + if ((len > 0) && (name[len-1] == wxT('"'))) name[len-1] = 0; if (!wxResourceParseIncludeFile(actualName, table)) { @@ -1753,7 +1753,7 @@ wxChar* wxResourceParseWord(wxChar*s, int *i) int len = wxStrlen(s); int j = 0; int ii = *i; - while ((ii < len) && (wxIsalpha(s[ii]) || (s[ii] == T('_')))) + while ((ii < len) && (wxIsalpha(s[ii]) || (s[ii] == wxT('_')))) { buf[j] = s[ii]; j ++; @@ -1763,7 +1763,7 @@ wxChar* wxResourceParseWord(wxChar*s, int *i) // Eat whitespace and conjunction characters while ((ii < len) && - ((s[ii] == T(' ')) || (s[ii] == T('|')) || (s[ii] == T(',')))) + ((s[ii] == wxT(' ')) || (s[ii] == wxT('|')) || (s[ii] == wxT(',')))) { ii ++; } @@ -1783,259 +1783,259 @@ struct wxResourceBitListStruct static wxResourceBitListStruct wxResourceBitListTable[] = { /* wxListBox */ - { T("wxSINGLE"), wxLB_SINGLE }, - { T("wxMULTIPLE"), wxLB_MULTIPLE }, - { T("wxEXTENDED"), wxLB_EXTENDED }, - { T("wxLB_SINGLE"), wxLB_SINGLE }, - { T("wxLB_MULTIPLE"), wxLB_MULTIPLE }, - { T("wxLB_EXTENDED"), wxLB_EXTENDED }, - { T("wxLB_NEEDED_SB"), wxLB_NEEDED_SB }, - { T("wxLB_ALWAYS_SB"), wxLB_ALWAYS_SB }, - { T("wxLB_SORT"), wxLB_SORT }, - { T("wxLB_OWNERDRAW"), wxLB_OWNERDRAW }, - { T("wxLB_HSCROLL"), wxLB_HSCROLL }, + { wxT("wxSINGLE"), wxLB_SINGLE }, + { wxT("wxMULTIPLE"), wxLB_MULTIPLE }, + { wxT("wxEXTENDED"), wxLB_EXTENDED }, + { wxT("wxLB_SINGLE"), wxLB_SINGLE }, + { wxT("wxLB_MULTIPLE"), wxLB_MULTIPLE }, + { wxT("wxLB_EXTENDED"), wxLB_EXTENDED }, + { wxT("wxLB_NEEDED_SB"), wxLB_NEEDED_SB }, + { wxT("wxLB_ALWAYS_SB"), wxLB_ALWAYS_SB }, + { wxT("wxLB_SORT"), wxLB_SORT }, + { wxT("wxLB_OWNERDRAW"), wxLB_OWNERDRAW }, + { wxT("wxLB_HSCROLL"), wxLB_HSCROLL }, /* wxComboxBox */ - { T("wxCB_SIMPLE"), wxCB_SIMPLE }, - { T("wxCB_DROPDOWN"), wxCB_DROPDOWN }, - { T("wxCB_READONLY"), wxCB_READONLY }, - { T("wxCB_SORT"), wxCB_SORT }, + { wxT("wxCB_SIMPLE"), wxCB_SIMPLE }, + { wxT("wxCB_DROPDOWN"), wxCB_DROPDOWN }, + { wxT("wxCB_READONLY"), wxCB_READONLY }, + { wxT("wxCB_SORT"), wxCB_SORT }, /* wxGauge */ - { T("wxGA_PROGRESSBAR"), wxGA_PROGRESSBAR }, - { T("wxGA_HORIZONTAL"), wxGA_HORIZONTAL }, - { T("wxGA_VERTICAL"), wxGA_VERTICAL }, + { wxT("wxGA_PROGRESSBAR"), wxGA_PROGRESSBAR }, + { wxT("wxGA_HORIZONTAL"), wxGA_HORIZONTAL }, + { wxT("wxGA_VERTICAL"), wxGA_VERTICAL }, /* wxTextCtrl */ - { T("wxPASSWORD"), wxPASSWORD}, - { T("wxPROCESS_ENTER"), wxPROCESS_ENTER}, - { T("wxTE_PASSWORD"), wxTE_PASSWORD}, - { T("wxTE_READONLY"), wxTE_READONLY}, - { T("wxTE_PROCESS_ENTER"), wxTE_PROCESS_ENTER}, - { T("wxTE_MULTILINE"), wxTE_MULTILINE}, - { T("wxTE_NO_VSCROLL"), wxTE_NO_VSCROLL}, + { wxT("wxPASSWORD"), wxPASSWORD}, + { wxT("wxPROCESS_ENTER"), wxPROCESS_ENTER}, + { wxT("wxTE_PASSWORD"), wxTE_PASSWORD}, + { wxT("wxTE_READONLY"), wxTE_READONLY}, + { wxT("wxTE_PROCESS_ENTER"), wxTE_PROCESS_ENTER}, + { wxT("wxTE_MULTILINE"), wxTE_MULTILINE}, + { wxT("wxTE_NO_VSCROLL"), wxTE_NO_VSCROLL}, /* wxRadioBox/wxRadioButton */ - { T("wxRB_GROUP"), wxRB_GROUP }, - { T("wxRA_SPECIFY_COLS"), wxRA_SPECIFY_COLS }, - { T("wxRA_SPECIFY_ROWS"), wxRA_SPECIFY_ROWS }, - { T("wxRA_HORIZONTAL"), wxRA_HORIZONTAL }, - { T("wxRA_VERTICAL"), wxRA_VERTICAL }, + { wxT("wxRB_GROUP"), wxRB_GROUP }, + { wxT("wxRA_SPECIFY_COLS"), wxRA_SPECIFY_COLS }, + { wxT("wxRA_SPECIFY_ROWS"), wxRA_SPECIFY_ROWS }, + { wxT("wxRA_HORIZONTAL"), wxRA_HORIZONTAL }, + { wxT("wxRA_VERTICAL"), wxRA_VERTICAL }, /* wxSlider */ - { T("wxSL_HORIZONTAL"), wxSL_HORIZONTAL }, - { T("wxSL_VERTICAL"), wxSL_VERTICAL }, - { T("wxSL_AUTOTICKS"), wxSL_AUTOTICKS }, - { T("wxSL_LABELS"), wxSL_LABELS }, - { T("wxSL_LEFT"), wxSL_LEFT }, - { T("wxSL_TOP"), wxSL_TOP }, - { T("wxSL_RIGHT"), wxSL_RIGHT }, - { T("wxSL_BOTTOM"), wxSL_BOTTOM }, - { T("wxSL_BOTH"), wxSL_BOTH }, - { T("wxSL_SELRANGE"), wxSL_SELRANGE }, + { wxT("wxSL_HORIZONTAL"), wxSL_HORIZONTAL }, + { wxT("wxSL_VERTICAL"), wxSL_VERTICAL }, + { wxT("wxSL_AUTOTICKS"), wxSL_AUTOTICKS }, + { wxT("wxSL_LABELS"), wxSL_LABELS }, + { wxT("wxSL_LEFT"), wxSL_LEFT }, + { wxT("wxSL_TOP"), wxSL_TOP }, + { wxT("wxSL_RIGHT"), wxSL_RIGHT }, + { wxT("wxSL_BOTTOM"), wxSL_BOTTOM }, + { wxT("wxSL_BOTH"), wxSL_BOTH }, + { wxT("wxSL_SELRANGE"), wxSL_SELRANGE }, /* wxScrollBar */ - { T("wxSB_HORIZONTAL"), wxSB_HORIZONTAL }, - { T("wxSB_VERTICAL"), wxSB_VERTICAL }, + { wxT("wxSB_HORIZONTAL"), wxSB_HORIZONTAL }, + { wxT("wxSB_VERTICAL"), wxSB_VERTICAL }, /* wxButton */ - { T("wxBU_AUTODRAW"), wxBU_AUTODRAW }, - { T("wxBU_NOAUTODRAW"), wxBU_NOAUTODRAW }, + { wxT("wxBU_AUTODRAW"), wxBU_AUTODRAW }, + { wxT("wxBU_NOAUTODRAW"), wxBU_NOAUTODRAW }, /* wxTreeCtrl */ - { T("wxTR_HAS_BUTTONS"), wxTR_HAS_BUTTONS }, - { T("wxTR_EDIT_LABELS"), wxTR_EDIT_LABELS }, - { T("wxTR_LINES_AT_ROOT"), wxTR_LINES_AT_ROOT }, + { wxT("wxTR_HAS_BUTTONS"), wxTR_HAS_BUTTONS }, + { wxT("wxTR_EDIT_LABELS"), wxTR_EDIT_LABELS }, + { wxT("wxTR_LINES_AT_ROOT"), wxTR_LINES_AT_ROOT }, /* wxListCtrl */ - { T("wxLC_ICON"), wxLC_ICON }, - { T("wxLC_SMALL_ICON"), wxLC_SMALL_ICON }, - { T("wxLC_LIST"), wxLC_LIST }, - { T("wxLC_REPORT"), wxLC_REPORT }, - { T("wxLC_ALIGN_TOP"), wxLC_ALIGN_TOP }, - { T("wxLC_ALIGN_LEFT"), wxLC_ALIGN_LEFT }, - { T("wxLC_AUTOARRANGE"), wxLC_AUTOARRANGE }, - { T("wxLC_USER_TEXT"), wxLC_USER_TEXT }, - { T("wxLC_EDIT_LABELS"), wxLC_EDIT_LABELS }, - { T("wxLC_NO_HEADER"), wxLC_NO_HEADER }, - { T("wxLC_NO_SORT_HEADER"), wxLC_NO_SORT_HEADER }, - { T("wxLC_SINGLE_SEL"), wxLC_SINGLE_SEL }, - { T("wxLC_SORT_ASCENDING"), wxLC_SORT_ASCENDING }, - { T("wxLC_SORT_DESCENDING"), wxLC_SORT_DESCENDING }, + { wxT("wxLC_ICON"), wxLC_ICON }, + { wxT("wxLC_SMALL_ICON"), wxLC_SMALL_ICON }, + { wxT("wxLC_LIST"), wxLC_LIST }, + { wxT("wxLC_REPORT"), wxLC_REPORT }, + { wxT("wxLC_ALIGN_TOP"), wxLC_ALIGN_TOP }, + { wxT("wxLC_ALIGN_LEFT"), wxLC_ALIGN_LEFT }, + { wxT("wxLC_AUTOARRANGE"), wxLC_AUTOARRANGE }, + { wxT("wxLC_USER_TEXT"), wxLC_USER_TEXT }, + { wxT("wxLC_EDIT_LABELS"), wxLC_EDIT_LABELS }, + { wxT("wxLC_NO_HEADER"), wxLC_NO_HEADER }, + { wxT("wxLC_NO_SORT_HEADER"), wxLC_NO_SORT_HEADER }, + { wxT("wxLC_SINGLE_SEL"), wxLC_SINGLE_SEL }, + { wxT("wxLC_SORT_ASCENDING"), wxLC_SORT_ASCENDING }, + { wxT("wxLC_SORT_DESCENDING"), wxLC_SORT_DESCENDING }, /* wxSpinButton */ - { T("wxSP_VERTICAL"), wxSP_VERTICAL}, - { T("wxSP_HORIZONTAL"), wxSP_HORIZONTAL}, - { T("wxSP_ARROW_KEYS"), wxSP_ARROW_KEYS}, - { T("wxSP_WRAP"), wxSP_WRAP}, + { wxT("wxSP_VERTICAL"), wxSP_VERTICAL}, + { wxT("wxSP_HORIZONTAL"), wxSP_HORIZONTAL}, + { wxT("wxSP_ARROW_KEYS"), wxSP_ARROW_KEYS}, + { wxT("wxSP_WRAP"), wxSP_WRAP}, /* wxSplitterWnd */ - { T("wxSP_NOBORDER"), wxSP_NOBORDER}, - { T("wxSP_3D"), wxSP_3D}, - { T("wxSP_BORDER"), wxSP_BORDER}, + { wxT("wxSP_NOBORDER"), wxSP_NOBORDER}, + { wxT("wxSP_3D"), wxSP_3D}, + { wxT("wxSP_BORDER"), wxSP_BORDER}, /* wxTabCtrl */ - { T("wxTC_MULTILINE"), wxTC_MULTILINE}, - { T("wxTC_RIGHTJUSTIFY"), wxTC_RIGHTJUSTIFY}, - { T("wxTC_FIXEDWIDTH"), wxTC_FIXEDWIDTH}, - { T("wxTC_OWNERDRAW"), wxTC_OWNERDRAW}, + { wxT("wxTC_MULTILINE"), wxTC_MULTILINE}, + { wxT("wxTC_RIGHTJUSTIFY"), wxTC_RIGHTJUSTIFY}, + { wxT("wxTC_FIXEDWIDTH"), wxTC_FIXEDWIDTH}, + { wxT("wxTC_OWNERDRAW"), wxTC_OWNERDRAW}, /* wxStatusBar95 */ - { T("wxST_SIZEGRIP"), wxST_SIZEGRIP}, + { wxT("wxST_SIZEGRIP"), wxST_SIZEGRIP}, /* wxControl */ - { T("wxFIXED_LENGTH"), wxFIXED_LENGTH}, - { T("wxALIGN_LEFT"), wxALIGN_LEFT}, - { T("wxALIGN_CENTER"), wxALIGN_CENTER}, - { T("wxALIGN_CENTRE"), wxALIGN_CENTRE}, - { T("wxALIGN_RIGHT"), wxALIGN_RIGHT}, - { T("wxCOLOURED"), wxCOLOURED}, + { wxT("wxFIXED_LENGTH"), wxFIXED_LENGTH}, + { wxT("wxALIGN_LEFT"), wxALIGN_LEFT}, + { wxT("wxALIGN_CENTER"), wxALIGN_CENTER}, + { wxT("wxALIGN_CENTRE"), wxALIGN_CENTRE}, + { wxT("wxALIGN_RIGHT"), wxALIGN_RIGHT}, + { wxT("wxCOLOURED"), wxCOLOURED}, /* wxToolBar */ - { T("wxTB_3DBUTTONS"), wxTB_3DBUTTONS}, - { T("wxTB_HORIZONTAL"), wxTB_HORIZONTAL}, - { T("wxTB_VERTICAL"), wxTB_VERTICAL}, - { T("wxTB_FLAT"), wxTB_FLAT}, + { wxT("wxTB_3DBUTTONS"), wxTB_3DBUTTONS}, + { wxT("wxTB_HORIZONTAL"), wxTB_HORIZONTAL}, + { wxT("wxTB_VERTICAL"), wxTB_VERTICAL}, + { wxT("wxTB_FLAT"), wxTB_FLAT}, /* wxDialog */ - { T("wxDIALOG_MODAL"), wxDIALOG_MODAL }, + { wxT("wxDIALOG_MODAL"), wxDIALOG_MODAL }, /* Generic */ - { T("wxVSCROLL"), wxVSCROLL }, - { T("wxHSCROLL"), wxHSCROLL }, - { T("wxCAPTION"), wxCAPTION }, - { T("wxSTAY_ON_TOP"), wxSTAY_ON_TOP}, - { T("wxICONIZE"), wxICONIZE}, - { T("wxMINIMIZE"), wxICONIZE}, - { T("wxMAXIMIZE"), wxMAXIMIZE}, - { T("wxSDI"), 0}, - { T("wxMDI_PARENT"), 0}, - { T("wxMDI_CHILD"), 0}, - { T("wxTHICK_FRAME"), wxTHICK_FRAME}, - { T("wxRESIZE_BORDER"), wxRESIZE_BORDER}, - { T("wxSYSTEM_MENU"), wxSYSTEM_MENU}, - { T("wxMINIMIZE_BOX"), wxMINIMIZE_BOX}, - { T("wxMAXIMIZE_BOX"), wxMAXIMIZE_BOX}, - { T("wxRESIZE_BOX"), wxRESIZE_BOX}, - { T("wxDEFAULT_FRAME_STYLE"), wxDEFAULT_FRAME_STYLE}, - { T("wxDEFAULT_FRAME"), wxDEFAULT_FRAME_STYLE}, - { T("wxDEFAULT_DIALOG_STYLE"), wxDEFAULT_DIALOG_STYLE}, - { T("wxBORDER"), wxBORDER}, - { T("wxRETAINED"), wxRETAINED}, - { T("wxNATIVE_IMPL"), 0}, - { T("wxEXTENDED_IMPL"), 0}, - { T("wxBACKINGSTORE"), wxBACKINGSTORE}, -// { T("wxFLAT"), wxFLAT}, -// { T("wxMOTIF_RESIZE"), wxMOTIF_RESIZE}, - { T("wxFIXED_LENGTH"), 0}, - { T("wxDOUBLE_BORDER"), wxDOUBLE_BORDER}, - { T("wxSUNKEN_BORDER"), wxSUNKEN_BORDER}, - { T("wxRAISED_BORDER"), wxRAISED_BORDER}, - { T("wxSIMPLE_BORDER"), wxSIMPLE_BORDER}, - { T("wxSTATIC_BORDER"), wxSTATIC_BORDER}, - { T("wxTRANSPARENT_WINDOW"), wxTRANSPARENT_WINDOW}, - { T("wxNO_BORDER"), wxNO_BORDER}, - { T("wxCLIP_CHILDREN"), wxCLIP_CHILDREN}, - { T("wxTAB_TRAVERSAL"), 0}, // Compatibility only - - { T("wxTINY_CAPTION_HORIZ"), wxTINY_CAPTION_HORIZ}, - { T("wxTINY_CAPTION_VERT"), wxTINY_CAPTION_VERT}, + { wxT("wxVSCROLL"), wxVSCROLL }, + { wxT("wxHSCROLL"), wxHSCROLL }, + { wxT("wxCAPTION"), wxCAPTION }, + { wxT("wxSTAY_ON_TOP"), wxSTAY_ON_TOP}, + { wxT("wxICONIZE"), wxICONIZE}, + { wxT("wxMINIMIZE"), wxICONIZE}, + { wxT("wxMAXIMIZE"), wxMAXIMIZE}, + { wxT("wxSDI"), 0}, + { wxT("wxMDI_PARENT"), 0}, + { wxT("wxMDI_CHILD"), 0}, + { wxT("wxTHICK_FRAME"), wxTHICK_FRAME}, + { wxT("wxRESIZE_BORDER"), wxRESIZE_BORDER}, + { wxT("wxSYSTEM_MENU"), wxSYSTEM_MENU}, + { wxT("wxMINIMIZE_BOX"), wxMINIMIZE_BOX}, + { wxT("wxMAXIMIZE_BOX"), wxMAXIMIZE_BOX}, + { wxT("wxRESIZE_BOX"), wxRESIZE_BOX}, + { wxT("wxDEFAULT_FRAME_STYLE"), wxDEFAULT_FRAME_STYLE}, + { wxT("wxDEFAULT_FRAME"), wxDEFAULT_FRAME_STYLE}, + { wxT("wxDEFAULT_DIALOG_STYLE"), wxDEFAULT_DIALOG_STYLE}, + { wxT("wxBORDER"), wxBORDER}, + { wxT("wxRETAINED"), wxRETAINED}, + { wxT("wxNATIVE_IMPL"), 0}, + { wxT("wxEXTENDED_IMPL"), 0}, + { wxT("wxBACKINGSTORE"), wxBACKINGSTORE}, +// { wxT("wxFLAT"), wxFLAT}, +// { wxT("wxMOTIF_RESIZE"), wxMOTIF_RESIZE}, + { wxT("wxFIXED_LENGTH"), 0}, + { wxT("wxDOUBLE_BORDER"), wxDOUBLE_BORDER}, + { wxT("wxSUNKEN_BORDER"), wxSUNKEN_BORDER}, + { wxT("wxRAISED_BORDER"), wxRAISED_BORDER}, + { wxT("wxSIMPLE_BORDER"), wxSIMPLE_BORDER}, + { wxT("wxSTATIC_BORDER"), wxSTATIC_BORDER}, + { wxT("wxTRANSPARENT_WINDOW"), wxTRANSPARENT_WINDOW}, + { wxT("wxNO_BORDER"), wxNO_BORDER}, + { wxT("wxCLIP_CHILDREN"), wxCLIP_CHILDREN}, + { wxT("wxTAB_TRAVERSAL"), 0}, // Compatibility only + + { wxT("wxTINY_CAPTION_HORIZ"), wxTINY_CAPTION_HORIZ}, + { wxT("wxTINY_CAPTION_VERT"), wxTINY_CAPTION_VERT}, // Text font families - { T("wxDEFAULT"), wxDEFAULT}, - { T("wxDECORATIVE"), wxDECORATIVE}, - { T("wxROMAN"), wxROMAN}, - { T("wxSCRIPT"), wxSCRIPT}, - { T("wxSWISS"), wxSWISS}, - { T("wxMODERN"), wxMODERN}, - { T("wxTELETYPE"), wxTELETYPE}, - { T("wxVARIABLE"), wxVARIABLE}, - { T("wxFIXED"), wxFIXED}, - { T("wxNORMAL"), wxNORMAL}, - { T("wxLIGHT"), wxLIGHT}, - { T("wxBOLD"), wxBOLD}, - { T("wxITALIC"), wxITALIC}, - { T("wxSLANT"), wxSLANT}, - { T("wxSOLID"), wxSOLID}, - { T("wxDOT"), wxDOT}, - { T("wxLONG_DASH"), wxLONG_DASH}, - { T("wxSHORT_DASH"), wxSHORT_DASH}, - { T("wxDOT_DASH"), wxDOT_DASH}, - { T("wxUSER_DASH"), wxUSER_DASH}, - { T("wxTRANSPARENT"), wxTRANSPARENT}, - { T("wxSTIPPLE"), wxSTIPPLE}, - { T("wxBDIAGONAL_HATCH"), wxBDIAGONAL_HATCH}, - { T("wxCROSSDIAG_HATCH"), wxCROSSDIAG_HATCH}, - { T("wxFDIAGONAL_HATCH"), wxFDIAGONAL_HATCH}, - { T("wxCROSS_HATCH"), wxCROSS_HATCH}, - { T("wxHORIZONTAL_HATCH"), wxHORIZONTAL_HATCH}, - { T("wxVERTICAL_HATCH"), wxVERTICAL_HATCH}, - { T("wxJOIN_BEVEL"), wxJOIN_BEVEL}, - { T("wxJOIN_MITER"), wxJOIN_MITER}, - { T("wxJOIN_ROUND"), wxJOIN_ROUND}, - { T("wxCAP_ROUND"), wxCAP_ROUND}, - { T("wxCAP_PROJECTING"), wxCAP_PROJECTING}, - { T("wxCAP_BUTT"), wxCAP_BUTT}, + { wxT("wxDEFAULT"), wxDEFAULT}, + { wxT("wxDECORATIVE"), wxDECORATIVE}, + { wxT("wxROMAN"), wxROMAN}, + { wxT("wxSCRIPT"), wxSCRIPT}, + { wxT("wxSWISS"), wxSWISS}, + { wxT("wxMODERN"), wxMODERN}, + { wxT("wxTELETYPE"), wxTELETYPE}, + { wxT("wxVARIABLE"), wxVARIABLE}, + { wxT("wxFIXED"), wxFIXED}, + { wxT("wxNORMAL"), wxNORMAL}, + { wxT("wxLIGHT"), wxLIGHT}, + { wxT("wxBOLD"), wxBOLD}, + { wxT("wxITALIC"), wxITALIC}, + { wxT("wxSLANT"), wxSLANT}, + { wxT("wxSOLID"), wxSOLID}, + { wxT("wxDOT"), wxDOT}, + { wxT("wxLONG_DASH"), wxLONG_DASH}, + { wxT("wxSHORT_DASH"), wxSHORT_DASH}, + { wxT("wxDOT_DASH"), wxDOT_DASH}, + { wxT("wxUSER_DASH"), wxUSER_DASH}, + { wxT("wxTRANSPARENT"), wxTRANSPARENT}, + { wxT("wxSTIPPLE"), wxSTIPPLE}, + { wxT("wxBDIAGONAL_HATCH"), wxBDIAGONAL_HATCH}, + { wxT("wxCROSSDIAG_HATCH"), wxCROSSDIAG_HATCH}, + { wxT("wxFDIAGONAL_HATCH"), wxFDIAGONAL_HATCH}, + { wxT("wxCROSS_HATCH"), wxCROSS_HATCH}, + { wxT("wxHORIZONTAL_HATCH"), wxHORIZONTAL_HATCH}, + { wxT("wxVERTICAL_HATCH"), wxVERTICAL_HATCH}, + { wxT("wxJOIN_BEVEL"), wxJOIN_BEVEL}, + { wxT("wxJOIN_MITER"), wxJOIN_MITER}, + { wxT("wxJOIN_ROUND"), wxJOIN_ROUND}, + { wxT("wxCAP_ROUND"), wxCAP_ROUND}, + { wxT("wxCAP_PROJECTING"), wxCAP_PROJECTING}, + { wxT("wxCAP_BUTT"), wxCAP_BUTT}, // Logical ops - { T("wxCLEAR"), wxCLEAR}, - { T("wxXOR"), wxXOR}, - { T("wxINVERT"), wxINVERT}, - { T("wxOR_REVERSE"), wxOR_REVERSE}, - { T("wxAND_REVERSE"), wxAND_REVERSE}, - { T("wxCOPY"), wxCOPY}, - { T("wxAND"), wxAND}, - { T("wxAND_INVERT"), wxAND_INVERT}, - { T("wxNO_OP"), wxNO_OP}, - { T("wxNOR"), wxNOR}, - { T("wxEQUIV"), wxEQUIV}, - { T("wxSRC_INVERT"), wxSRC_INVERT}, - { T("wxOR_INVERT"), wxOR_INVERT}, - { T("wxNAND"), wxNAND}, - { T("wxOR"), wxOR}, - { T("wxSET"), wxSET}, - - { T("wxFLOOD_SURFACE"), wxFLOOD_SURFACE}, - { T("wxFLOOD_BORDER"), wxFLOOD_BORDER}, - { T("wxODDEVEN_RULE"), wxODDEVEN_RULE}, - { T("wxWINDING_RULE"), wxWINDING_RULE}, - { T("wxHORIZONTAL"), wxHORIZONTAL}, - { T("wxVERTICAL"), wxVERTICAL}, - { T("wxBOTH"), wxBOTH}, - { T("wxCENTER_FRAME"), wxCENTER_FRAME}, - { T("wxOK"), wxOK}, - { T("wxYES_NO"), wxYES_NO}, - { T("wxCANCEL"), wxCANCEL}, - { T("wxYES"), wxYES}, - { T("wxNO"), wxNO}, - { T("wxICON_EXCLAMATION"), wxICON_EXCLAMATION}, - { T("wxICON_HAND"), wxICON_HAND}, - { T("wxICON_QUESTION"), wxICON_QUESTION}, - { T("wxICON_INFORMATION"), wxICON_INFORMATION}, - { T("wxICON_STOP"), wxICON_STOP}, - { T("wxICON_ASTERISK"), wxICON_ASTERISK}, - { T("wxICON_MASK"), wxICON_MASK}, - { T("wxCENTRE"), wxCENTRE}, - { T("wxCENTER"), wxCENTRE}, - { T("wxUSER_COLOURS"), wxUSER_COLOURS}, - { T("wxVERTICAL_LABEL"), 0}, - { T("wxHORIZONTAL_LABEL"), 0}, + { wxT("wxCLEAR"), wxCLEAR}, + { wxT("wxXOR"), wxXOR}, + { wxT("wxINVERT"), wxINVERT}, + { wxT("wxOR_REVERSE"), wxOR_REVERSE}, + { wxT("wxAND_REVERSE"), wxAND_REVERSE}, + { wxT("wxCOPY"), wxCOPY}, + { wxT("wxAND"), wxAND}, + { wxT("wxAND_INVERT"), wxAND_INVERT}, + { wxT("wxNO_OP"), wxNO_OP}, + { wxT("wxNOR"), wxNOR}, + { wxT("wxEQUIV"), wxEQUIV}, + { wxT("wxSRC_INVERT"), wxSRC_INVERT}, + { wxT("wxOR_INVERT"), wxOR_INVERT}, + { wxT("wxNAND"), wxNAND}, + { wxT("wxOR"), wxOR}, + { wxT("wxSET"), wxSET}, + + { wxT("wxFLOOD_SURFACE"), wxFLOOD_SURFACE}, + { wxT("wxFLOOD_BORDER"), wxFLOOD_BORDER}, + { wxT("wxODDEVEN_RULE"), wxODDEVEN_RULE}, + { wxT("wxWINDING_RULE"), wxWINDING_RULE}, + { wxT("wxHORIZONTAL"), wxHORIZONTAL}, + { wxT("wxVERTICAL"), wxVERTICAL}, + { wxT("wxBOTH"), wxBOTH}, + { wxT("wxCENTER_FRAME"), wxCENTER_FRAME}, + { wxT("wxOK"), wxOK}, + { wxT("wxYES_NO"), wxYES_NO}, + { wxT("wxCANCEL"), wxCANCEL}, + { wxT("wxYES"), wxYES}, + { wxT("wxNO"), wxNO}, + { wxT("wxICON_EXCLAMATION"), wxICON_EXCLAMATION}, + { wxT("wxICON_HAND"), wxICON_HAND}, + { wxT("wxICON_QUESTION"), wxICON_QUESTION}, + { wxT("wxICON_INFORMATION"), wxICON_INFORMATION}, + { wxT("wxICON_STOP"), wxICON_STOP}, + { wxT("wxICON_ASTERISK"), wxICON_ASTERISK}, + { wxT("wxICON_MASK"), wxICON_MASK}, + { wxT("wxCENTRE"), wxCENTRE}, + { wxT("wxCENTER"), wxCENTRE}, + { wxT("wxUSER_COLOURS"), wxUSER_COLOURS}, + { wxT("wxVERTICAL_LABEL"), 0}, + { wxT("wxHORIZONTAL_LABEL"), 0}, // Bitmap types (not strictly styles) - { T("wxBITMAP_TYPE_XPM"), wxBITMAP_TYPE_XPM}, - { T("wxBITMAP_TYPE_XBM"), wxBITMAP_TYPE_XBM}, - { T("wxBITMAP_TYPE_BMP"), wxBITMAP_TYPE_BMP}, - { T("wxBITMAP_TYPE_RESOURCE"), wxBITMAP_TYPE_BMP_RESOURCE}, - { T("wxBITMAP_TYPE_BMP_RESOURCE"), wxBITMAP_TYPE_BMP_RESOURCE}, - { T("wxBITMAP_TYPE_GIF"), wxBITMAP_TYPE_GIF}, - { T("wxBITMAP_TYPE_TIF"), wxBITMAP_TYPE_TIF}, - { T("wxBITMAP_TYPE_ICO"), wxBITMAP_TYPE_ICO}, - { T("wxBITMAP_TYPE_ICO_RESOURCE"), wxBITMAP_TYPE_ICO_RESOURCE}, - { T("wxBITMAP_TYPE_CUR"), wxBITMAP_TYPE_CUR}, - { T("wxBITMAP_TYPE_CUR_RESOURCE"), wxBITMAP_TYPE_CUR_RESOURCE}, - { T("wxBITMAP_TYPE_XBM_DATA"), wxBITMAP_TYPE_XBM_DATA}, - { T("wxBITMAP_TYPE_XPM_DATA"), wxBITMAP_TYPE_XPM_DATA}, - { T("wxBITMAP_TYPE_ANY"), wxBITMAP_TYPE_ANY} + { wxT("wxBITMAP_TYPE_XPM"), wxBITMAP_TYPE_XPM}, + { wxT("wxBITMAP_TYPE_XBM"), wxBITMAP_TYPE_XBM}, + { wxT("wxBITMAP_TYPE_BMP"), wxBITMAP_TYPE_BMP}, + { wxT("wxBITMAP_TYPE_RESOURCE"), wxBITMAP_TYPE_BMP_RESOURCE}, + { wxT("wxBITMAP_TYPE_BMP_RESOURCE"), wxBITMAP_TYPE_BMP_RESOURCE}, + { wxT("wxBITMAP_TYPE_GIF"), wxBITMAP_TYPE_GIF}, + { wxT("wxBITMAP_TYPE_TIF"), wxBITMAP_TYPE_TIF}, + { wxT("wxBITMAP_TYPE_ICO"), wxBITMAP_TYPE_ICO}, + { wxT("wxBITMAP_TYPE_ICO_RESOURCE"), wxBITMAP_TYPE_ICO_RESOURCE}, + { wxT("wxBITMAP_TYPE_CUR"), wxBITMAP_TYPE_CUR}, + { wxT("wxBITMAP_TYPE_CUR_RESOURCE"), wxBITMAP_TYPE_CUR_RESOURCE}, + { wxT("wxBITMAP_TYPE_XBM_DATA"), wxBITMAP_TYPE_XBM_DATA}, + { wxT("wxBITMAP_TYPE_XPM_DATA"), wxBITMAP_TYPE_XPM_DATA}, + { wxT("wxBITMAP_TYPE_ANY"), wxBITMAP_TYPE_ANY} }; static int wxResourceBitListCount = (sizeof(wxResourceBitListTable)/sizeof(wxResourceBitListStruct)); @@ -2080,7 +2080,7 @@ wxBitmap wxResourceCreateBitmap(const wxString& resource, wxResourceTable *table wxItemResource *item = table->FindResource(resource); if (item) { - if ((item->GetType() == T("")) || (item->GetType() != T("wxBitmap"))) + if ((item->GetType() == wxT("")) || (item->GetType() != wxT("wxBitmap"))) { wxLogWarning(_("%s not a bitmap resource specification."), (const wxChar*) resource); return wxNullBitmap; @@ -2235,7 +2235,7 @@ wxIcon wxResourceCreateIcon(const wxString& resource, wxResourceTable *table) wxItemResource *item = table->FindResource(resource); if (item) { - if ((item->GetType() == T("")) || wxStrcmp(item->GetType(), T("wxIcon")) != 0) + if ((item->GetType() == wxT("")) || wxStrcmp(item->GetType(), wxT("wxIcon")) != 0) { wxLogWarning(_("%s not an icon resource specification."), (const wxChar*) resource); return wxNullIcon; @@ -2393,7 +2393,7 @@ wxMenu *wxResourceCreateMenu(wxItemResource *item) while (node) { wxItemResource *child = (wxItemResource *)node->Data(); - if ((child->GetType() != T("")) && (child->GetType() == T("wxMenuSeparator"))) + if ((child->GetType() != wxT("")) && (child->GetType() == wxT("wxMenuSeparator"))) menu->AppendSeparator(); else if (child->GetChildren().Number() > 0) { @@ -2416,7 +2416,7 @@ wxMenuBar *wxResourceCreateMenuBar(const wxString& resource, wxResourceTable *ta table = wxDefaultResourceTable; wxItemResource *menuResource = table->FindResource(resource); - if (menuResource && (menuResource->GetType() != T("")) && (menuResource->GetType() == T("wxMenu"))) + if (menuResource && (menuResource->GetType() != wxT("")) && (menuResource->GetType() == wxT("wxMenu"))) { if (!menuBar) menuBar = new wxMenuBar; @@ -2440,7 +2440,7 @@ wxMenu *wxResourceCreateMenu(const wxString& resource, wxResourceTable *table) table = wxDefaultResourceTable; wxItemResource *menuResource = table->FindResource(resource); - if (menuResource && (menuResource->GetType() != T("")) && (menuResource->GetType() == T("wxMenu"))) + if (menuResource && (menuResource->GetType() != wxT("")) && (menuResource->GetType() == wxT("wxMenu"))) // if (menuResource && (menuResource->GetType() == wxTYPE_MENU)) return wxResourceCreateMenu(menuResource); return (wxMenu *) NULL; @@ -2863,8 +2863,8 @@ bool wxWindowBase::LoadFromResource(wxWindow *parent, const wxString& resourceNa wxItemResource *resource = table->FindResource((const wxChar *)resourceName); // if (!resource || (resource->GetType() != wxTYPE_DIALOG_BOX)) - if (!resource || (resource->GetType() == T("")) || - ! ((resource->GetType() == T("wxDialog")) || (resource->GetType() == T("wxPanel")))) + if (!resource || (resource->GetType() == wxT("")) || + ! ((resource->GetType() == wxT("wxDialog")) || (resource->GetType() == wxT("wxPanel")))) return FALSE; wxString title(resource->GetTitle()); diff --git a/src/common/sckaddr.cpp b/src/common/sckaddr.cpp index 25d22c56ca..fff40bef7d 100644 --- a/src/common/sckaddr.cpp +++ b/src/common/sckaddr.cpp @@ -103,8 +103,8 @@ wxIPV4address::~wxIPV4address() bool wxIPV4address::Hostname(const wxString& name) { // Some people are sometimes fool. - if (name == T("")) { - wxLogWarning( T("Trying to solve a NULL hostname: giving up") ); + if (name == wxT("")) { + wxLogWarning( wxT("Trying to solve a NULL hostname: giving up") ); return FALSE; } diff --git a/src/common/sckfile.cpp b/src/common/sckfile.cpp index bdb5681d22..b3f4737c6a 100644 --- a/src/common/sckfile.cpp +++ b/src/common/sckfile.cpp @@ -29,7 +29,7 @@ #if !USE_SHARED_LIBRARY IMPLEMENT_DYNAMIC_CLASS(wxFileProto, wxProtocol) -IMPLEMENT_PROTOCOL(wxFileProto, T("file"), NULL, FALSE) +IMPLEMENT_PROTOCOL(wxFileProto, wxT("file"), NULL, FALSE) #endif wxFileProto::wxFileProto() diff --git a/src/common/sizer.cpp b/src/common/sizer.cpp index 48ebd0014b..e412f5a70c 100644 --- a/src/common/sizer.cpp +++ b/src/common/sizer.cpp @@ -473,7 +473,7 @@ wxSize wxBoxSizer::CalcMin() wxStaticBoxSizer::wxStaticBoxSizer( wxStaticBox *box, int orient ) : wxBoxSizer( orient ) { - wxASSERT_MSG( box, T("wxStaticBoxSizer needs a static box") ); + wxASSERT_MSG( box, wxT("wxStaticBoxSizer needs a static box") ); m_staticBox = box; } diff --git a/src/common/socket.cpp b/src/common/socket.cpp index 5f23f76f9c..e9f958b928 100644 --- a/src/common/socket.cpp +++ b/src/common/socket.cpp @@ -316,7 +316,7 @@ wxSocketBase& wxSocketBase::ReadMsg(char* buffer, wxUint32 nbytes) if (sig != 0xfeeddead) { - wxLogMessage(T("Warning: invalid signature returned to ReadMsg")); + wxLogMessage(wxT("Warning: invalid signature returned to ReadMsg")); goto exit; } @@ -374,7 +374,7 @@ wxSocketBase& wxSocketBase::ReadMsg(char* buffer, wxUint32 nbytes) if (sig != 0xdeadfeed) { - //wxLogMessage(T("Warning: invalid signature returned to ReadMsg")); + //wxLogMessage(wxT("Warning: invalid signature returned to ReadMsg")); goto exit; } diff --git a/src/common/strconv.cpp b/src/common/strconv.cpp index 46f51b10a7..609f6f2b4d 100644 --- a/src/common/strconv.cpp +++ b/src/common/strconv.cpp @@ -280,7 +280,7 @@ static void wxLoadCharacterSets(void) #if defined(__UNIX__) && wxUSE_TEXTFILE // search through files in /usr/share/i18n/charmaps wxString fname; - for (fname = ::wxFindFirstFile(T("/usr/share/i18n/charmaps/*")); + for (fname = ::wxFindFirstFile(wxT("/usr/share/i18n/charmaps/*")); !fname.IsEmpty(); fname = ::wxFindNextFile()) { wxTextFile cmap(fname); @@ -289,36 +289,36 @@ static void wxLoadCharacterSets(void) wxString comchar,escchar; bool in_charset = FALSE; - // wxFprintf(stderr,T("Loaded: %s\n"),fname.c_str()); + // wxFprintf(stderr,wxT("Loaded: %s\n"),fname.c_str()); wxString line; for (line = cmap.GetFirstLine(); !cmap.Eof(); line = cmap.GetNextLine()) { - // wxFprintf(stderr,T("line contents: %s\n"),line.c_str()); + // wxFprintf(stderr,wxT("line contents: %s\n"),line.c_str()); wxStringTokenizer token(line); wxString cmd = token.GetNextToken(); if (cmd == comchar) { - if (token.GetNextToken() == T("alias")) + if (token.GetNextToken() == wxT("alias")) cset->names.Add(token.GetNextToken()); } - else if (cmd == T("")) + else if (cmd == wxT("")) cset->names.Add(token.GetNextToken()); - else if (cmd == T("")) + else if (cmd == wxT("")) comchar = token.GetNextToken(); - else if (cmd == T("")) + else if (cmd == wxT("")) escchar = token.GetNextToken(); - else if (cmd == T("")) { + else if (cmd == wxT("")) { delete cset; cset = (wxCharacterSet *) NULL; break; // we don't support multibyte charsets ourselves (yet) } - else if (cmd == T("CHARMAP")) { + else if (cmd == wxT("CHARMAP")) { cset->data = (wchar_t *)calloc(256, sizeof(wchar_t)); in_charset = TRUE; } - else if (cmd == T("END")) { - if (token.GetNextToken() == T("CHARMAP")) + else if (cmd == wxT("END")) { + if (token.GetNextToken() == wxT("CHARMAP")) in_charset = FALSE; } else if (in_charset) { @@ -330,15 +330,15 @@ static void wxLoadCharacterSets(void) wxString uni = token.GetNextToken(); // skip whitespace again while (wxIsEmpty(uni) && token.HasMoreTokens()) uni = token.GetNextToken(); - if ((hex.Len() > 2) && (wxString(hex.GetChar(0)) == escchar) && (hex.GetChar(1) == T('x')) && - (uni.Left(2) == T(" 2) && (wxString(hex.GetChar(0)) == escchar) && (hex.GetChar(1) == wxT('x')) && + (uni.Left(2) == wxT("=0) { unsigned long uni1 = ::wxHexToDec(uni.Mid(2,2)); unsigned long uni2 = ::wxHexToDec(uni.Mid(4,2)); cset->data[pos] = (uni1 << 16) | uni2; - // wxFprintf(stderr,T("char %02x mapped to %04x (%c)\n"),pos,cset->data[pos],cset->data[pos]); + // wxFprintf(stderr,wxT("char %02x mapped to %04x (%c)\n"),pos,cset->data[pos],cset->data[pos]); } } } @@ -384,15 +384,15 @@ void wxCSConv::SetName(const wxChar *charset) #ifdef __UNIX__ // first, convert the character set name to standard form wxString codeset; - if (wxString(charset,3).CmpNoCase(T("ISO")) == 0) { + if (wxString(charset,3).CmpNoCase(wxT("ISO")) == 0) { // make sure it's represented in the standard form: ISO_8859-1 - codeset = T("ISO_"); + codeset = wxT("ISO_"); charset += 3; - if ((*charset == T('-')) || (*charset == T('_'))) charset++; + if ((*charset == wxT('-')) || (*charset == wxT('_'))) charset++; if (wxStrlen(charset)>4) { - if (wxString(charset,4) == T("8859")) { - codeset << T("8859-"); - if (*charset == T('-')) charset++; + if (wxString(charset,4) == wxT("8859")) { + codeset << wxT("8859-"); + if (*charset == wxT('-')) charset++; } } } @@ -406,12 +406,12 @@ void wxCSConv::SetName(const wxChar *charset) void wxCSConv::LoadNow() { -// wxPrintf(T("Conversion request\n")); +// wxPrintf(wxT("Conversion request\n")); if (m_deferred) { if (!m_name) { #ifdef __UNIX__ - wxChar *lang = wxGetenv(T("LANG")); - wxChar *dot = lang ? wxStrchr(lang, T('.')) : (wxChar *)NULL; + wxChar *lang = wxGetenv(wxT("LANG")); + wxChar *dot = lang ? wxStrchr(lang, wxT('.')) : (wxChar *)NULL; if (dot) SetName(dot+1); #endif } diff --git a/src/common/string.cpp b/src/common/string.cpp index 5782d1374b..c0f3c6e218 100644 --- a/src/common/string.cpp +++ b/src/common/string.cpp @@ -85,7 +85,7 @@ static const struct { wxStringData data; wxChar dummy; -} g_strEmpty = { {-1, 0, 0}, T('\0') }; +} g_strEmpty = { {-1, 0, 0}, wxT('\0') }; // empty C style string: points to 'string data' byte of g_strEmpty extern const wxChar WXDLLEXPORT *wxEmptyString = &g_strEmpty.dummy; @@ -327,7 +327,7 @@ void wxString::AllocBuffer(size_t nLen) pData->nDataLength = nLen; pData->nAllocLength = nLen + EXTRA_ALLOC; m_pchData = pData->data(); // data starts after wxStringData - m_pchData[nLen] = T('\0'); + m_pchData[nLen] = wxT('\0'); } // must be called before changing this string @@ -379,7 +379,7 @@ void wxString::Alloc(size_t nLen) pData->nDataLength = 0; pData->nAllocLength = nLen; m_pchData = pData->data(); // data starts after wxStringData - m_pchData[0u] = T('\0'); + m_pchData[0u] = wxT('\0'); } else if ( pData->IsShared() ) { pData->Unlock(); // memory not freed because shared @@ -461,7 +461,7 @@ void wxString::AssignCopy(size_t nSrcLen, const wxChar *pszSrcData) AllocBeforeWrite(nSrcLen); memcpy(m_pchData, pszSrcData, nSrcLen*sizeof(wxChar)); GetStringData()->nDataLength = nSrcLen; - m_pchData[nSrcLen] = T('\0'); + m_pchData[nSrcLen] = wxT('\0'); } } @@ -563,7 +563,7 @@ void wxString::ConcatSelf(int nSrcLen, const wxChar *pszSrcData) // fast concatenation - all is done in our buffer memcpy(m_pchData + nLen, pszSrcData, nSrcLen*sizeof(wxChar)); - m_pchData[nNewLen] = T('\0'); // put terminating '\0' + m_pchData[nNewLen] = wxT('\0'); // put terminating '\0' GetStringData()->nDataLength = nNewLen; // and fix the length } //else: the string to append was empty @@ -722,7 +722,7 @@ wxString wxString::Left(size_t nCount) const wxString wxString::BeforeFirst(wxChar ch) const { wxString str; - for ( const wxChar *pc = m_pchData; *pc != T('\0') && *pc != ch; pc++ ) + for ( const wxChar *pc = m_pchData; *pc != wxT('\0') && *pc != ch; pc++ ) str += *pc; return str; @@ -762,7 +762,7 @@ size_t wxString::Replace(const wxChar *szOld, const wxChar *szNew, bool bReplace wxString strTemp; const wxChar *pCurrent = m_pchData; const wxChar *pSubstr; - while ( *pCurrent != T('\0') ) { + while ( *pCurrent != wxT('\0') ) { pSubstr = wxStrstr(pCurrent, szOld); if ( pSubstr == NULL ) { // strTemp is unused if no replacements were made, so avoid the copy @@ -882,7 +882,7 @@ wxString& wxString::Trim(bool bFromRight) psz--; // truncate at trailing space start - *++psz = T('\0'); + *++psz = wxT('\0'); GetStringData()->nDataLength = psz - m_pchData; } else @@ -924,7 +924,7 @@ wxString& wxString::Truncate(size_t uiLen) if ( uiLen < Len() ) { CopyBeforeWrite(); - *(m_pchData + uiLen) = T('\0'); + *(m_pchData + uiLen) = wxT('\0'); GetStringData()->nDataLength = uiLen; } //else: nothing to do, string is already short enough @@ -958,7 +958,7 @@ int wxString::Find(const wxChar *pszSub) const wxString& wxString::operator<<(int i) { wxString res; - res.Printf(T("%d"), i); + res.Printf(wxT("%d"), i); return (*this) << res; } @@ -966,7 +966,7 @@ wxString& wxString::operator<<(int i) wxString& wxString::operator<<(float f) { wxString res; - res.Printf(T("%f"), f); + res.Printf(wxT("%f"), f); return (*this) << res; } @@ -974,7 +974,7 @@ wxString& wxString::operator<<(float f) wxString& wxString::operator<<(double d) { wxString res; - res.Printf(T("%g"), d); + res.Printf(wxT("%g"), d); return (*this) << res; } @@ -1011,7 +1011,7 @@ int wxString::PrintfV(const wxChar* pszFormat, va_list argptr) Reinit(); for (size_t n = 0; pszFormat[n]; n++) - if (pszFormat[n] == T('%')) { + if (pszFormat[n] == wxT('%')) { static char s_szFlags[256] = "%"; size_t flagofs = 1; bool adj_left = FALSE, in_prec = FALSE, @@ -1021,55 +1021,55 @@ int wxString::PrintfV(const wxChar* pszFormat, va_list argptr) do { #define CHECK_PREC if (in_prec && !prec_dot) { s_szFlags[flagofs++] = '.'; prec_dot = TRUE; } switch (pszFormat[++n]) { - case T('\0'): + case wxT('\0'): done = TRUE; break; - case T('%'): - *this += T('%'); + case wxT('%'): + *this += wxT('%'); done = TRUE; break; - case T('#'): - case T('0'): - case T(' '): - case T('+'): - case T('\''): + case wxT('#'): + case wxT('0'): + case wxT(' '): + case wxT('+'): + case wxT('\''): CHECK_PREC s_szFlags[flagofs++] = pszFormat[n]; break; - case T('-'): + case wxT('-'): CHECK_PREC adj_left = TRUE; s_szFlags[flagofs++] = pszFormat[n]; break; - case T('.'): + case wxT('.'): CHECK_PREC in_prec = TRUE; prec_dot = FALSE; max_width = 0; // dot will be auto-added to s_szFlags if non-negative number follows break; - case T('h'): + case wxT('h'): ilen = -1; CHECK_PREC s_szFlags[flagofs++] = pszFormat[n]; break; - case T('l'): + case wxT('l'): ilen = 1; CHECK_PREC s_szFlags[flagofs++] = pszFormat[n]; break; - case T('q'): - case T('L'): + case wxT('q'): + case wxT('L'): ilen = 2; CHECK_PREC s_szFlags[flagofs++] = pszFormat[n]; break; - case T('Z'): + case wxT('Z'): ilen = 3; CHECK_PREC s_szFlags[flagofs++] = pszFormat[n]; break; - case T('*'): + case wxT('*'): { int len = va_arg(argptr, int); if (in_prec) { @@ -1087,15 +1087,15 @@ int wxString::PrintfV(const wxChar* pszFormat, va_list argptr) flagofs += ::sprintf(s_szFlags+flagofs,"%d",len); } break; - case T('1'): case T('2'): case T('3'): - case T('4'): case T('5'): case T('6'): - case T('7'): case T('8'): case T('9'): + case wxT('1'): case wxT('2'): case wxT('3'): + case wxT('4'): case wxT('5'): case wxT('6'): + case wxT('7'): case wxT('8'): case wxT('9'): { int len = 0; CHECK_PREC - while ((pszFormat[n]>=T('0')) && (pszFormat[n]<=T('9'))) { + while ((pszFormat[n]>=wxT('0')) && (pszFormat[n]<=wxT('9'))) { s_szFlags[flagofs++] = pszFormat[n]; - len = len*10 + (pszFormat[n] - T('0')); + len = len*10 + (pszFormat[n] - wxT('0')); n++; } if (in_prec) max_width = len; @@ -1103,12 +1103,12 @@ int wxString::PrintfV(const wxChar* pszFormat, va_list argptr) n--; // the main loop pre-increments n again } break; - case T('d'): - case T('i'): - case T('o'): - case T('u'): - case T('x'): - case T('X'): + case wxT('d'): + case wxT('i'): + case wxT('o'): + case wxT('u'): + case wxT('x'): + case wxT('X'): CHECK_PREC s_szFlags[flagofs++] = pszFormat[n]; s_szFlags[flagofs] = '\0'; @@ -1140,11 +1140,11 @@ int wxString::PrintfV(const wxChar* pszFormat, va_list argptr) *this += wxString(s_szScratch); done = TRUE; break; - case T('e'): - case T('E'): - case T('f'): - case T('g'): - case T('G'): + case wxT('e'): + case wxT('E'): + case wxT('f'): + case wxT('g'): + case wxT('G'): CHECK_PREC s_szFlags[flagofs++] = pszFormat[n]; s_szFlags[flagofs] = '\0'; @@ -1158,7 +1158,7 @@ int wxString::PrintfV(const wxChar* pszFormat, va_list argptr) *this += wxString(s_szScratch); done = TRUE; break; - case T('p'): + case wxT('p'): { void *val = va_arg(argptr, void *); CHECK_PREC @@ -1169,7 +1169,7 @@ int wxString::PrintfV(const wxChar* pszFormat, va_list argptr) done = TRUE; } break; - case T('c'): + case wxT('c'): { wxChar val = va_arg(argptr, int); // we don't need to honor padding here, do we? @@ -1177,7 +1177,7 @@ int wxString::PrintfV(const wxChar* pszFormat, va_list argptr) done = TRUE; } break; - case T('s'): + case wxT('s'): if (ilen == -1) { // wx extension: we'll let %hs mean non-Unicode strings char *val = va_arg(argptr, char *); @@ -1188,26 +1188,26 @@ int wxString::PrintfV(const wxChar* pszFormat, va_list argptr) size_t len = wxSTRING_MAXLEN; if (val) { for (len = 0; val[len] && (lenGetC(); if (!m_input) return (wxChar) 0; - if (c != T('\n') && - c != T('\r') && - c != T('\t') && - c != T(' ')) + if (c != wxT('\n') && + c != wxT('\r') && + c != wxT('\t') && + c != wxT(' ')) { return c; } @@ -70,20 +70,20 @@ wxChar wxTextInputStream::NextNonWhiteSpace() void wxTextInputStream::SkipIfEndOfLine( wxChar c ) { - if (c == T('\n')) + if (c == wxT('\n')) { // eat on UNIX return; } - if (c == T('\r')) + if (c == wxT('\r')) { // eat on both Mac and DOS wxChar c2 = m_input->GetC(); if (!m_input) return; - if (c2 == T('\n')) + if (c2 == wxT('\n')) { // eat on DOS return; @@ -111,18 +111,18 @@ wxUint32 wxTextInputStream::Read32() if (!m_input) return 0; i = 0; - if (! (c == T('-') || c == T('+') || isdigit(c)) ) + if (! (c == wxT('-') || c == wxT('+') || isdigit(c)) ) { m_input->Ungetch(c); return 0; } - if (c == T('-')) + if (c == wxT('-')) { sign = -1; c = m_input->GetC(); } else - if (c == T('+')) + if (c == wxT('+')) { sign = 1; c = m_input->GetC(); @@ -133,7 +133,7 @@ wxUint32 wxTextInputStream::Read32() while (isdigit(c)) { - i = i*10 + (c - (int)T('0')); + i = i*10 + (c - (int)wxT('0')); c = m_input->GetC(); } @@ -164,18 +164,18 @@ double wxTextInputStream::ReadDouble() if (!m_input) return 0.0; f = 0.0; - if (! (c == T('.') || c == T('-') || c == T('+') || isdigit(c)) ) + if (! (c == wxT('.') || c == wxT('-') || c == wxT('+') || isdigit(c)) ) { m_input->Ungetch(c); return 0.0; } - if (c == T('-')) + if (c == wxT('-')) { sign = -1; c = m_input->GetC(); } else - if (c == T('+')) + if (c == wxT('+')) { sign = 1; c = m_input->GetC(); @@ -187,11 +187,11 @@ double wxTextInputStream::ReadDouble() while (isdigit(c)) { - f = f*10 + (c - T('0')); + f = f*10 + (c - wxT('0')); c = m_input->GetC(); } - if (c == T('.')) + if (c == wxT('.')) { double f_multiplicator = (double) 0.1; @@ -199,12 +199,12 @@ double wxTextInputStream::ReadDouble() while (isdigit(c)) { - f += (c-T('0'))*f_multiplicator; + f += (c-wxT('0'))*f_multiplicator; f_multiplicator /= 10; c = m_input->GetC(); } - if (c == T('e')) + if (c == wxT('e')) { double f_multiplicator = 0.0; int i, e; @@ -213,8 +213,8 @@ double wxTextInputStream::ReadDouble() switch (c) { - case T('-'): f_multiplicator = 0.1; break; - case T('+'): f_multiplicator = 10.0; break; + case wxT('-'): f_multiplicator = 0.1; break; + case wxT('+'): f_multiplicator = 10.0; break; } e = Read8(); // why only max 256 ? @@ -245,20 +245,20 @@ wxString wxTextInputStream::ReadString() c = m_input->GetC(); if (!m_input) break; - if (c == T('\n')) + if (c == wxT('\n')) { // eat on UNIX break; } - if (c == T('\r')) + if (c == wxT('\r')) { // eat on both Mac and DOS wxChar c2 = m_input->GetC(); if (!m_input) break; - if (c2 == T('\n')) + if (c2 == wxT('\n')) { // eat on DOS break; @@ -292,13 +292,13 @@ wxTextInputStream& wxTextInputStream::operator>>(wxChar& c) return *this; } - if (c1 == T('\r')) + if (c1 == wxT('\r')) { - c = T('\n'); + c = wxT('\n'); wxChar c2 = m_input->GetC(); if (!m_input) return *this; - if (c2 != T('\n')) + if (c2 != wxT('\n')) { // we are on a Mac m_input->Ungetch( c2 ); @@ -360,7 +360,7 @@ wxTextOutputStream::~wxTextOutputStream() void wxTextOutputStream::Write32(wxUint32 i) { wxString str; - str.Printf(T("%u"), i); + str.Printf(wxT("%u"), i); WriteString(str); } @@ -368,7 +368,7 @@ void wxTextOutputStream::Write32(wxUint32 i) void wxTextOutputStream::Write16(wxUint16 i) { wxString str; - str.Printf(T("%u"), i); + str.Printf(wxT("%u"), i); WriteString(str); } @@ -376,7 +376,7 @@ void wxTextOutputStream::Write16(wxUint16 i) void wxTextOutputStream::Write8(wxUint8 i) { wxString str; - str.Printf(T("%u"), i); + str.Printf(wxT("%u"), i); WriteString(str); } @@ -385,7 +385,7 @@ void wxTextOutputStream::WriteDouble(double d) { wxString str; - str.Printf(T("%f"), d); + str.Printf(wxT("%f"), d); WriteString(str); } @@ -394,23 +394,23 @@ void wxTextOutputStream::WriteString(const wxString& string) for (size_t i = 0; i < string.Len(); i++) { wxChar c = string[i]; - if (c == T('\n')) + if (c == wxT('\n')) { #if defined(__WINDOWS__) - c = T('\r'); + c = wxT('\r'); m_output->Write( (const void*)(&c), sizeof(wxChar) ); - c = T('\n'); + c = wxT('\n'); m_output->Write( (const void*)(&c), sizeof(wxChar) ); #elif defined(__UNIX__) - c = T('\n'); + c = wxT('\n'); m_output->Write( (const void*)(&c), sizeof(wxChar) ); #elif defined(__WXMAC__) - c = T('\r'); + c = wxT('\r'); m_output->Write( (const void*)(&c), sizeof(wxChar) ); #elif defined(__OS2__) - c = T('\r'); + c = wxT('\r'); m_output->Write( (const void*)(&c), sizeof(wxChar) ); - c = T('\n'); + c = wxT('\n'); m_output->Write( (const void*)(&c), sizeof(wxChar) ); #else #error "wxTextOutputStream: unsupported platform." @@ -479,7 +479,7 @@ wxTextOutputStream& wxTextOutputStream::operator<<(float f) wxTextOutputStream &endl( wxTextOutputStream &stream ) { - return stream << T('\n'); + return stream << wxT('\n'); } #endif diff --git a/src/common/url.cpp b/src/common/url.cpp index aba9e7a5b5..813ac542e5 100644 --- a/src/common/url.cpp +++ b/src/common/url.cpp @@ -105,9 +105,9 @@ bool wxURL::ParseURL() CleanData(); // Third, we rebuild the URL. - m_url = m_protoname + T(":"); + m_url = m_protoname + wxT(":"); if (m_protoinfo->m_needhost) - m_url = m_url + T("//") + m_hostname; + m_url = m_url + wxT("//") + m_hostname; m_url += m_path; @@ -146,7 +146,7 @@ bool wxURL::PrepProto(wxString& url) int pos; // Find end - pos = url.Find(T(':')); + pos = url.Find(wxT(':')); if (pos == -1) return FALSE; @@ -167,7 +167,7 @@ bool wxURL::PrepHost(wxString& url) url = url(2, url.Length()); - pos = url.Find(T('/')); + pos = url.Find(wxT('/')); if (pos == -1) pos = url.Length(); @@ -175,10 +175,10 @@ bool wxURL::PrepHost(wxString& url) return FALSE; temp_url = url(0, pos); - url = url(url.Find(T('/')), url.Length()); + url = url(url.Find(wxT('/')), url.Length()); // Retrieve service number - pos2 = temp_url.Find(T(':'), TRUE); + pos2 = temp_url.Find(wxT(':'), TRUE); if (pos2 != -1 && pos2 < pos) { m_servname = temp_url(pos2+1, pos); if (!m_servname.IsNumber()) @@ -187,18 +187,18 @@ bool wxURL::PrepHost(wxString& url) } // Retrieve user and password. - pos2 = temp_url.Find(T('@')); + pos2 = temp_url.Find(wxT('@')); // Even if pos2 equals -1, this code is right. m_hostname = temp_url(pos2+1, temp_url.Length()); - m_user = T(""); - m_password = T(""); + m_user = wxT(""); + m_password = wxT(""); if (pos2 == -1) return TRUE; temp_url = temp_url(0, pos2); - pos2 = temp_url.Find(T(':')); + pos2 = temp_url.Find(wxT(':')); if (pos2 == -1) return FALSE; @@ -214,7 +214,7 @@ bool wxURL::PrepPath(wxString& url) if (url.Length() != 0) m_path = ConvertToValidURI(url); else - m_path = T("/"); + m_path = wxT("/"); return TRUE; } @@ -250,7 +250,7 @@ wxInputStream *wxURL::GetInputStream(void) } m_error = wxURL_NOERR; - if (m_user != T("")) { + if (m_user != wxT("")) { m_protocol->SetUser(m_user); m_protocol->SetPassword(m_password); } @@ -300,7 +300,7 @@ void wxURL::SetDefaultProxy(const wxString& url_proxy) } wxString tmp_str = url_proxy; - int pos = tmp_str.Find(T(':')); + int pos = tmp_str.Find(wxT(':')); if (pos == -1) return; @@ -338,7 +338,7 @@ void wxURL::SetProxy(const wxString& url_proxy) wxIPV4address addr; tmp_str = url_proxy; - pos = tmp_str.Find(T(':')); + pos = tmp_str.Find(wxT(':')); // This is an invalid proxy name. if (pos == -1) return; @@ -371,11 +371,11 @@ wxString wxURL::ConvertToValidURI(const wxString& uri) for (i=0;i= T('A') && uri[i] <= T('F')) - code = (uri[i] - T('A') + 10) * 16; + if (uri[i] >= wxT('A') && uri[i] <= wxT('F')) + code = (uri[i] - wxT('A') + 10) * 16; else - code = (uri[i] - T('0')) * 16; + code = (uri[i] - wxT('0')) * 16; i++; - if (uri[i] >= T('A') && uri[i] <= T('F')) - code += (uri[i] - T('A')) + 10; + if (uri[i] >= wxT('A') && uri[i] <= wxT('F')) + code += (uri[i] - wxT('A')) + 10; else - code += (uri[i] - T('0')); + code += (uri[i] - wxT('0')); i++; new_uri += (wxChar)code; continue; diff --git a/src/common/utilscmn.cpp b/src/common/utilscmn.cpp index f41b535fca..1fcc2b7346 100644 --- a/src/common/utilscmn.cpp +++ b/src/common/utilscmn.cpp @@ -207,7 +207,7 @@ extern "C" wxChar * copystring (const wxChar *s) { - if (s == NULL) s = T(""); + if (s == NULL) s = wxT(""); size_t len = wxStrlen (s) + 1; wxChar *news = new wxChar[len]; @@ -287,7 +287,7 @@ IntToString (int number) { static wxChar buf[20]; - wxSprintf (buf, T("%d"), number); + wxSprintf (buf, wxT("%d"), number); return buf; } @@ -296,27 +296,27 @@ LongToString (long number) { static wxChar buf[20]; - wxSprintf (buf, T("%ld"), number); + wxSprintf (buf, wxT("%ld"), number); return buf; } // Array used in DecToHex conversion routine. -static wxChar hexArray[] = T("0123456789ABCDEF"); +static wxChar hexArray[] = wxT("0123456789ABCDEF"); // Convert 2-digit hex number to decimal int wxHexToDec(const wxString& buf) { int firstDigit, secondDigit; - if (buf.GetChar(0) >= T('A')) - firstDigit = buf.GetChar(0) - T('A') + 10; + if (buf.GetChar(0) >= wxT('A')) + firstDigit = buf.GetChar(0) - wxT('A') + 10; else - firstDigit = buf.GetChar(0) - T('0'); + firstDigit = buf.GetChar(0) - wxT('0'); - if (buf.GetChar(1) >= T('A')) - secondDigit = buf.GetChar(1) - T('A') + 10; + if (buf.GetChar(1) >= wxT('A')) + secondDigit = buf.GetChar(1) - wxT('A') + 10; else - secondDigit = buf.GetChar(1) - T('0'); + secondDigit = buf.GetChar(1) - wxT('0'); return firstDigit * 16 + secondDigit; } @@ -407,13 +407,13 @@ wxChar *wxStripMenuCodes (wxChar *in, wxChar *out) while (*in) { - if (*in == T('&')) + if (*in == wxT('&')) { // Check && -> &, &x -> x - if (*++in == T('&')) + if (*++in == wxT('&')) *out++ = *in++; } - else if (*in == T('\t')) + else if (*in == wxT('\t')) { // Remove all stuff after \t in X mode, and let the stuff as is // in Windows mode. @@ -425,7 +425,7 @@ wxChar *wxStripMenuCodes (wxChar *in, wxChar *out) *out++ = *in++; } // while - *out = T('\0'); + *out = wxT('\0'); return tmpOut; } @@ -869,7 +869,7 @@ bool wxGetEmailAddress(wxChar *address, int maxSize) return FALSE; wxStrncpy(address, email, maxSize - 1); - address[maxSize - 1] = T('\0'); + address[maxSize - 1] = wxT('\0'); return TRUE; } @@ -885,7 +885,7 @@ wxString wxGetEmailAddress() if ( !!user ) { wxString email(user); - email << T('@') << host; + email << wxT('@') << host; } } diff --git a/src/common/valtext.cpp b/src/common/valtext.cpp index 0bc8568d54..9fdf5b77e7 100644 --- a/src/common/valtext.cpp +++ b/src/common/valtext.cpp @@ -312,4 +312,3 @@ static bool wxIsNumeric(const wxString& val) #endif // wxUSE_VALIDATORS - \ No newline at end of file diff --git a/src/common/variant.cpp b/src/common/variant.cpp index c743090cc6..4bcefec312 100644 --- a/src/common/variant.cpp +++ b/src/common/variant.cpp @@ -63,7 +63,7 @@ public: virtual bool Read(istream& str); #endif virtual bool Read(wxString& str); - virtual wxString GetType() const { return T("list"); }; + virtual wxString GetType() const { return wxT("list"); }; void Clear(); @@ -109,7 +109,7 @@ void wxVariantDataList::Clear() void wxVariantDataList::Copy(wxVariantData& data) { - wxASSERT_MSG( (data.GetType() == T("list")), T("wxVariantDataList::Copy: Can't copy to this type of data") ); + wxASSERT_MSG( (data.GetType() == wxT("list")), wxT("wxVariantDataList::Copy: Can't copy to this type of data") ); wxVariantDataList& listData = (wxVariantDataList&) data; @@ -125,7 +125,7 @@ void wxVariantDataList::Copy(wxVariantData& data) bool wxVariantDataList::Eq(wxVariantData& data) const { - wxASSERT_MSG( (data.GetType() == T("list")), T("wxVariantDataList::Eq: argument mismatch") ); + wxASSERT_MSG( (data.GetType() == wxT("list")), wxT("wxVariantDataList::Eq: argument mismatch") ); wxVariantDataList& listData = (wxVariantDataList&) data; wxNode* node1 = m_value.First(); @@ -155,13 +155,13 @@ bool wxVariantDataList::Write(ostream& str) const bool wxVariantDataList::Write(wxString& str) const { - str = T(""); + str = wxT(""); wxNode* node = m_value.First(); while (node) { wxVariant* var = (wxVariant*) node->Data(); if (node != m_value.First()) - str += T(" "); + str += wxT(" "); wxString str1; str += var->MakeString(); node = node->Next(); @@ -173,7 +173,7 @@ bool wxVariantDataList::Write(wxString& str) const #if wxUSE_STD_IOSTREAM bool wxVariantDataList::Read(istream& WXUNUSED(str)) { - wxFAIL_MSG(T("Unimplemented")); + wxFAIL_MSG(wxT("Unimplemented")); // TODO return FALSE; } @@ -181,7 +181,7 @@ bool wxVariantDataList::Read(istream& WXUNUSED(str)) bool wxVariantDataList::Read(wxString& WXUNUSED(str)) { - wxFAIL_MSG(T("Unimplemented")); + wxFAIL_MSG(wxT("Unimplemented")); // TODO return FALSE; } @@ -210,7 +210,7 @@ public: virtual bool Read(istream& str); #endif virtual bool Read(wxString& str); - virtual wxString GetType() const { return T("stringlist"); }; + virtual wxString GetType() const { return wxT("stringlist"); }; protected: wxStringList m_value; @@ -225,7 +225,7 @@ void wxVariantDataStringList::SetValue(const wxStringList& value) void wxVariantDataStringList::Copy(wxVariantData& data) { - wxASSERT_MSG( (data.GetType() == T("stringlist")), T("wxVariantDataStringList::Copy: Can't copy to this type of data") ); + wxASSERT_MSG( (data.GetType() == wxT("stringlist")), wxT("wxVariantDataStringList::Copy: Can't copy to this type of data") ); wxVariantDataStringList& listData = (wxVariantDataStringList&) data; @@ -234,7 +234,7 @@ void wxVariantDataStringList::Copy(wxVariantData& data) bool wxVariantDataStringList::Eq(wxVariantData& data) const { - wxASSERT_MSG( (data.GetType() == T("stringlist")), T("wxVariantDataStringList::Eq: argument mismatch") ); + wxASSERT_MSG( (data.GetType() == wxT("stringlist")), wxT("wxVariantDataStringList::Eq: argument mismatch") ); wxVariantDataStringList& listData = (wxVariantDataStringList&) data; wxNode* node1 = m_value.First(); @@ -264,13 +264,13 @@ bool wxVariantDataStringList::Write(ostream& str) const bool wxVariantDataStringList::Write(wxString& str) const { - str = T(""); + str = wxT(""); wxNode* node = m_value.First(); while (node) { wxChar* s = (wxChar*) node->Data(); if (node != m_value.First()) - str += T(" "); + str += wxT(" "); str += s; node = node->Next(); } @@ -281,7 +281,7 @@ bool wxVariantDataStringList::Write(wxString& str) const #if wxUSE_STD_IOSTREAM bool wxVariantDataStringList::Read(istream& WXUNUSED(str)) { - wxFAIL_MSG(T("Unimplemented")); + wxFAIL_MSG(wxT("Unimplemented")); // TODO return FALSE; } @@ -289,7 +289,7 @@ bool wxVariantDataStringList::Read(istream& WXUNUSED(str)) bool wxVariantDataStringList::Read(wxString& WXUNUSED(str)) { - wxFAIL_MSG(T("Unimplemented")); + wxFAIL_MSG(wxT("Unimplemented")); // TODO return FALSE; } @@ -322,7 +322,7 @@ public: virtual bool Write(wxOutputStream &str) const; #endif // wxUSE_STREAMS - virtual wxString GetType() const { return T("long"); }; + virtual wxString GetType() const { return wxT("long"); }; protected: long m_value; @@ -332,7 +332,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxVariantDataLong, wxVariantData) void wxVariantDataLong::Copy(wxVariantData& data) { - wxASSERT_MSG( (data.GetType() == T("long")), T("wxVariantDataLong::Copy: Can't copy to this type of data") ); + wxASSERT_MSG( (data.GetType() == wxT("long")), wxT("wxVariantDataLong::Copy: Can't copy to this type of data") ); wxVariantDataLong& otherData = (wxVariantDataLong&) data; @@ -341,7 +341,7 @@ void wxVariantDataLong::Copy(wxVariantData& data) bool wxVariantDataLong::Eq(wxVariantData& data) const { - wxASSERT_MSG( (data.GetType() == T("long")), T("wxVariantDataLong::Eq: argument mismatch") ); + wxASSERT_MSG( (data.GetType() == wxT("long")), wxT("wxVariantDataLong::Eq: argument mismatch") ); wxVariantDataLong& otherData = (wxVariantDataLong&) data; @@ -360,7 +360,7 @@ bool wxVariantDataLong::Write(ostream& str) const bool wxVariantDataLong::Write(wxString& str) const { - str.Printf(T("%ld"), m_value); + str.Printf(wxT("%ld"), m_value); return TRUE; } @@ -423,7 +423,7 @@ public: virtual bool Read(wxInputStream& str); virtual bool Write(wxOutputStream &str) const; #endif // wxUSE_STREAMS - virtual wxString GetType() const { return T("double"); }; + virtual wxString GetType() const { return wxT("double"); }; protected: double m_value; @@ -433,7 +433,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxVariantDataReal, wxVariantData) void wxVariantDataReal::Copy(wxVariantData& data) { - wxASSERT_MSG( (data.GetType() == T("double")), T("wxVariantDataReal::Copy: Can't copy to this type of data") ); + wxASSERT_MSG( (data.GetType() == wxT("double")), wxT("wxVariantDataReal::Copy: Can't copy to this type of data") ); wxVariantDataReal& otherData = (wxVariantDataReal&) data; @@ -442,7 +442,7 @@ void wxVariantDataReal::Copy(wxVariantData& data) bool wxVariantDataReal::Eq(wxVariantData& data) const { - wxASSERT_MSG( (data.GetType() == T("double")), T("wxVariantDataReal::Eq: argument mismatch") ); + wxASSERT_MSG( (data.GetType() == wxT("double")), wxT("wxVariantDataReal::Eq: argument mismatch") ); wxVariantDataReal& otherData = (wxVariantDataReal&) data; @@ -461,7 +461,7 @@ bool wxVariantDataReal::Write(ostream& str) const bool wxVariantDataReal::Write(wxString& str) const { - str.Printf(T("%.4f"), m_value); + str.Printf(wxT("%.4f"), m_value); return TRUE; } @@ -524,7 +524,7 @@ public: virtual bool Read(wxInputStream& str); virtual bool Write(wxOutputStream& str) const; #endif // wxUSE_STREAMS - virtual wxString GetType() const { return T("bool"); }; + virtual wxString GetType() const { return wxT("bool"); }; protected: bool m_value; @@ -534,7 +534,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxVariantDataBool, wxVariantData) void wxVariantDataBool::Copy(wxVariantData& data) { - wxASSERT_MSG( (data.GetType() == T("bool")), T("wxVariantDataBool::Copy: Can't copy to this type of data") ); + wxASSERT_MSG( (data.GetType() == wxT("bool")), wxT("wxVariantDataBool::Copy: Can't copy to this type of data") ); wxVariantDataBool& otherData = (wxVariantDataBool&) data; @@ -543,7 +543,7 @@ void wxVariantDataBool::Copy(wxVariantData& data) bool wxVariantDataBool::Eq(wxVariantData& data) const { - wxASSERT_MSG( (data.GetType() == T("bool")), T("wxVariantDataBool::Eq: argument mismatch") ); + wxASSERT_MSG( (data.GetType() == wxT("bool")), wxT("wxVariantDataBool::Eq: argument mismatch") ); wxVariantDataBool& otherData = (wxVariantDataBool&) data; @@ -562,14 +562,14 @@ bool wxVariantDataBool::Write(ostream& str) const bool wxVariantDataBool::Write(wxString& str) const { - str.Printf(T("%d"), (int) m_value); + str.Printf(wxT("%d"), (int) m_value); return TRUE; } #if wxUSE_STD_IOSTREAM bool wxVariantDataBool::Read(istream& WXUNUSED(str)) { - wxFAIL_MSG(T("Unimplemented")); + wxFAIL_MSG(wxT("Unimplemented")); // str >> (long) m_value; return FALSE; } @@ -626,7 +626,7 @@ public: virtual bool Read(wxInputStream& str); virtual bool Write(wxOutputStream& str) const; #endif // wxUSE_STREAMS - virtual wxString GetType() const { return T("char"); }; + virtual wxString GetType() const { return wxT("char"); }; protected: char m_value; @@ -636,7 +636,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxVariantDataChar, wxVariantData) void wxVariantDataChar::Copy(wxVariantData& data) { - wxASSERT_MSG( (data.GetType() == T("char")), T("wxVariantDataChar::Copy: Can't copy to this type of data") ); + wxASSERT_MSG( (data.GetType() == wxT("char")), wxT("wxVariantDataChar::Copy: Can't copy to this type of data") ); wxVariantDataChar& otherData = (wxVariantDataChar&) data; @@ -645,7 +645,7 @@ void wxVariantDataChar::Copy(wxVariantData& data) bool wxVariantDataChar::Eq(wxVariantData& data) const { - wxASSERT_MSG( (data.GetType() == T("char")), T("wxVariantDataChar::Eq: argument mismatch") ); + wxASSERT_MSG( (data.GetType() == wxT("char")), wxT("wxVariantDataChar::Eq: argument mismatch") ); wxVariantDataChar& otherData = (wxVariantDataChar&) data; @@ -664,14 +664,14 @@ bool wxVariantDataChar::Write(ostream& str) const bool wxVariantDataChar::Write(wxString& str) const { - str.Printf(T("%c"), m_value); + str.Printf(wxT("%c"), m_value); return TRUE; } #if wxUSE_STD_IOSTREAM bool wxVariantDataChar::Read(istream& WXUNUSED(str)) { - wxFAIL_MSG(T("Unimplemented")); + wxFAIL_MSG(wxT("Unimplemented")); // str >> m_value; return FALSE; } @@ -738,7 +738,7 @@ public: virtual bool Read(wxInputStream& str); virtual bool Write(wxOutputStream& str) const; #endif // wxUSE_STREAMS - virtual wxString GetType() const { return T("string"); }; + virtual wxString GetType() const { return wxT("string"); }; protected: wxString m_value; @@ -746,7 +746,7 @@ protected: void wxVariantDataString::Copy(wxVariantData& data) { - wxASSERT_MSG( (data.GetType() == T("string")), T("wxVariantDataString::Copy: Can't copy to this type of data") ); + wxASSERT_MSG( (data.GetType() == wxT("string")), wxT("wxVariantDataString::Copy: Can't copy to this type of data") ); wxVariantDataString& otherData = (wxVariantDataString&) data; @@ -755,7 +755,7 @@ void wxVariantDataString::Copy(wxVariantData& data) bool wxVariantDataString::Eq(wxVariantData& data) const { - wxASSERT_MSG( (data.GetType() == T("string")), T("wxVariantDataString::Eq: argument mismatch") ); + wxASSERT_MSG( (data.GetType() == wxT("string")), wxT("wxVariantDataString::Eq: argument mismatch") ); wxVariantDataString& otherData = (wxVariantDataString&) data; @@ -840,7 +840,7 @@ public: virtual bool Read(istream& str); #endif virtual bool Read(wxString& str); - virtual wxString GetType() const { return T("time"); }; + virtual wxString GetType() const { return wxT("time"); }; virtual wxVariantData* Clone() { return new wxVariantDataTime; } protected: @@ -851,7 +851,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxVariantDataTime, wxVariantData) void wxVariantDataTime::Copy(wxVariantData& data) { - wxASSERT_MSG( (data.GetType() == T("time")), T("wxVariantDataTime::Copy: Can't copy to this type of data") ); + wxASSERT_MSG( (data.GetType() == wxT("time")), wxT("wxVariantDataTime::Copy: Can't copy to this type of data") ); wxVariantDataTime& otherData = (wxVariantDataTime&) data; @@ -860,7 +860,7 @@ void wxVariantDataTime::Copy(wxVariantData& data) bool wxVariantDataTime::Eq(wxVariantData& data) const { - wxASSERT_MSG( (data.GetType() == T("time")), T("wxVariantDataTime::Eq: argument mismatch") ); + wxASSERT_MSG( (data.GetType() == wxT("time")), wxT("wxVariantDataTime::Eq: argument mismatch") ); wxVariantDataTime& otherData = (wxVariantDataTime&) data; @@ -922,7 +922,7 @@ public: virtual bool Read(istream& str); #endif virtual bool Read(wxString& str); - virtual wxString GetType() const { return T("date"); }; + virtual wxString GetType() const { return wxT("date"); }; virtual wxVariantData* Clone() { return new wxVariantDataDate; } protected: @@ -933,7 +933,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxVariantDataDate, wxVariantData) void wxVariantDataDate::Copy(wxVariantData& data) { - wxASSERT_MSG( (data.GetType() == T("date")), T("wxVariantDataDate::Copy: Can't copy to this type of data") ); + wxASSERT_MSG( (data.GetType() == wxT("date")), wxT("wxVariantDataDate::Copy: Can't copy to this type of data") ); wxVariantDataDate& otherData = (wxVariantDataDate&) data; @@ -942,7 +942,7 @@ void wxVariantDataDate::Copy(wxVariantData& data) bool wxVariantDataDate::Eq(wxVariantData& data) const { - wxASSERT_MSG( (data.GetType() == T("date")), T("wxVariantDataDate::Eq: argument mismatch") ); + wxASSERT_MSG( (data.GetType() == wxT("date")), wxT("wxVariantDataDate::Eq: argument mismatch") ); wxVariantDataDate& otherData = (wxVariantDataDate&) data; @@ -1005,7 +1005,7 @@ public: virtual bool Read(istream& str); #endif virtual bool Read(wxString& str); - virtual wxString GetType() const { return T("void*"); }; + virtual wxString GetType() const { return wxT("void*"); }; virtual wxVariantData* Clone() { return new wxVariantDataVoidPtr; } protected: @@ -1016,7 +1016,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxVariantDataVoidPtr, wxVariantData) void wxVariantDataVoidPtr::Copy(wxVariantData& data) { - wxASSERT_MSG( (data.GetType() == T("void*")), T("wxVariantDataVoidPtr::Copy: Can't copy to this type of data") ); + wxASSERT_MSG( (data.GetType() == wxT("void*")), wxT("wxVariantDataVoidPtr::Copy: Can't copy to this type of data") ); wxVariantDataVoidPtr& otherData = (wxVariantDataVoidPtr&) data; @@ -1025,7 +1025,7 @@ void wxVariantDataVoidPtr::Copy(wxVariantData& data) bool wxVariantDataVoidPtr::Eq(wxVariantData& data) const { - wxASSERT_MSG( (data.GetType() == T("void*")), T("wxVariantDataVoidPtr::Eq: argument mismatch") ); + wxASSERT_MSG( (data.GetType() == wxT("void*")), wxT("wxVariantDataVoidPtr::Eq: argument mismatch") ); wxVariantDataVoidPtr& otherData = (wxVariantDataVoidPtr&) data; @@ -1044,7 +1044,7 @@ bool wxVariantDataVoidPtr::Write(ostream& str) const bool wxVariantDataVoidPtr::Write(wxString& str) const { - str.Printf(T("%ld"), (long) m_value); + str.Printf(wxT("%ld"), (long) m_value); return TRUE; } @@ -1235,7 +1235,7 @@ bool wxVariant::operator!= (double value) const void wxVariant::operator= (double value) { - if (GetType() == T("double")) + if (GetType() == wxT("double")) { ((wxVariantDataReal*)GetData())->SetValue(value); } @@ -1263,7 +1263,7 @@ bool wxVariant::operator!= (long value) const void wxVariant::operator= (long value) { - if (GetType() == T("long")) + if (GetType() == wxT("long")) { ((wxVariantDataLong*)GetData())->SetValue(value); } @@ -1291,7 +1291,7 @@ bool wxVariant::operator!= (char value) const void wxVariant::operator= (char value) { - if (GetType() == T("char")) + if (GetType() == wxT("char")) { ((wxVariantDataChar*)GetData())->SetValue(value); } @@ -1320,7 +1320,7 @@ bool wxVariant::operator!= (bool value) const void wxVariant::operator= (bool value) { - if (GetType() == T("bool")) + if (GetType() == wxT("bool")) { ((wxVariantDataBool*)GetData())->SetValue(value); } @@ -1349,7 +1349,7 @@ bool wxVariant::operator!= (const wxString& value) const void wxVariant::operator= (const wxString& value) { - if (GetType() == T("string")) + if (GetType() == wxT("string")) { ((wxVariantDataString*)GetData())->SetValue(value); } @@ -1363,7 +1363,7 @@ void wxVariant::operator= (const wxString& value) void wxVariant::operator= (const wxChar* value) { - if (GetType() == T("string")) + if (GetType() == wxT("string")) { ((wxVariantDataString*)GetData())->SetValue(wxString(value)); } @@ -1377,7 +1377,7 @@ void wxVariant::operator= (const wxChar* value) bool wxVariant::operator== (const wxStringList& value) const { - wxASSERT_MSG( (GetType() == T("stringlist")), T("Invalid type for == operator") ); + wxASSERT_MSG( (GetType() == wxT("stringlist")), wxT("Invalid type for == operator") ); wxVariantDataStringList other(value); return (m_data->Eq(other)); @@ -1390,7 +1390,7 @@ bool wxVariant::operator!= (const wxStringList& value) const void wxVariant::operator= (const wxStringList& value) { - if (GetType() == T("stringlist")) + if (GetType() == wxT("stringlist")) { ((wxVariantDataStringList*)GetData())->SetValue(value); } @@ -1404,7 +1404,7 @@ void wxVariant::operator= (const wxStringList& value) bool wxVariant::operator== (const wxList& value) const { - wxASSERT_MSG( (GetType() == T("list")), T("Invalid type for == operator") ); + wxASSERT_MSG( (GetType() == wxT("list")), wxT("Invalid type for == operator") ); wxVariantDataList other(value); return (m_data->Eq(other)); @@ -1417,7 +1417,7 @@ bool wxVariant::operator!= (const wxList& value) const void wxVariant::operator= (const wxList& value) { - if (GetType() == T("list")) + if (GetType() == wxT("list")) { ((wxVariantDataList*)GetData())->SetValue(value); } @@ -1446,7 +1446,7 @@ bool wxVariant::operator!= (const wxTime& value) const void wxVariant::operator= (const wxTime& value) { - if (GetType() == T("time")) + if (GetType() == wxT("time")) { ((wxVariantDataTime*)GetData())->SetValue(value); } @@ -1474,7 +1474,7 @@ bool wxVariant::operator!= (const wxDate& value) const void wxVariant::operator= (const wxDate& value) { - if (GetType() == T("date")) + if (GetType() == wxT("date")) { ((wxVariantDataTime*)GetData())->SetValue(value); } @@ -1499,7 +1499,7 @@ bool wxVariant::operator!= (void* value) const void wxVariant::operator= (void* value) { - if (GetType() == T("void*")) + if (GetType() == wxT("void*")) { ((wxVariantDataVoidPtr*)GetData())->SetValue(value); } @@ -1514,18 +1514,18 @@ void wxVariant::operator= (void* value) // Treat a list variant as an array wxVariant wxVariant::operator[] (size_t idx) const { - wxASSERT_MSG( (GetType() == T("list") || GetType() == T("stringlist")), T("Invalid type for array operator") ); + wxASSERT_MSG( (GetType() == wxT("list") || GetType() == wxT("stringlist")), wxT("Invalid type for array operator") ); - if (GetType() == T("list")) + if (GetType() == wxT("list")) { wxVariantDataList* data = (wxVariantDataList*) m_data; - wxASSERT_MSG( (idx < (size_t) data->GetValue().Number()), T("Invalid index for array") ); + wxASSERT_MSG( (idx < (size_t) data->GetValue().Number()), wxT("Invalid index for array") ); return * (wxVariant*) (data->GetValue().Nth(idx)->Data()); } - else if (GetType() == T("stringlist")) + else if (GetType() == wxT("stringlist")) { wxVariantDataStringList* data = (wxVariantDataStringList*) m_data; - wxASSERT_MSG( (idx < (size_t) data->GetValue().Number()), T("Invalid index for array") ); + wxASSERT_MSG( (idx < (size_t) data->GetValue().Number()), wxT("Invalid index for array") ); wxVariant variant( wxString( (wxChar*) (data->GetValue().Nth(idx)->Data()) )); return variant; @@ -1538,10 +1538,10 @@ wxVariant& wxVariant::operator[] (size_t idx) // We can't return a reference to a variant for a string list, since the string // is actually stored as a char*, not a variant. - wxASSERT_MSG( (GetType() == T("list")), T("Invalid type for array operator") ); + wxASSERT_MSG( (GetType() == wxT("list")), wxT("Invalid type for array operator") ); wxVariantDataList* data = (wxVariantDataList*) m_data; - wxASSERT_MSG( (idx < (size_t) data->GetValue().Number()), T("Invalid index for array") ); + wxASSERT_MSG( (idx < (size_t) data->GetValue().Number()), wxT("Invalid index for array") ); return * (wxVariant*) (data->GetValue().Nth(idx)->Data()); } @@ -1549,14 +1549,14 @@ wxVariant& wxVariant::operator[] (size_t idx) // Return the number of elements in a list int wxVariant::GetCount() const { - wxASSERT_MSG( (GetType() == T("list") || GetType() == T("stringlist")), T("Invalid type for GetCount()") ); + wxASSERT_MSG( (GetType() == wxT("list") || GetType() == wxT("stringlist")), wxT("Invalid type for GetCount()") ); - if (GetType() == T("list")) + if (GetType() == wxT("list")) { wxVariantDataList* data = (wxVariantDataList*) m_data; return data->GetValue().Number(); } - else if (GetType() == T("stringlist")) + else if (GetType() == wxT("stringlist")) { wxVariantDataStringList* data = (wxVariantDataStringList*) m_data; return data->GetValue().Number(); @@ -1572,7 +1572,7 @@ wxString wxVariant::MakeString() const if (GetData()->Write(str)) return str; } - return wxString(T("")); + return wxString(wxT("")); } // Accessors @@ -1589,7 +1589,7 @@ void wxVariant::SetData(wxVariantData* data) wxString wxVariant::GetType() const { if (IsNull()) - return wxString(T("null")); + return wxString(wxT("null")); else return m_data->GetType(); } @@ -1609,7 +1609,7 @@ double wxVariant::GetReal() const return value; else { - wxFAIL_MSG(T("Could not convert to a real number")); + wxFAIL_MSG(wxT("Could not convert to a real number")); return 0.0; } } @@ -1621,7 +1621,7 @@ long wxVariant::GetInteger() const return value; else { - wxFAIL_MSG(T("Could not convert to an integer")); + wxFAIL_MSG(wxT("Could not convert to an integer")); return 0; } } @@ -1633,7 +1633,7 @@ char wxVariant::GetChar() const return value; else { - wxFAIL_MSG(T("Could not convert to a char")); + wxFAIL_MSG(wxT("Could not convert to a char")); return 0; } } @@ -1645,7 +1645,7 @@ bool wxVariant::GetBool() const return value; else { - wxFAIL_MSG(T("Could not convert to a bool")); + wxFAIL_MSG(wxT("Could not convert to a bool")); return 0; } } @@ -1657,7 +1657,7 @@ wxString wxVariant::GetString() const return value; else { - wxFAIL_MSG(T("Could not convert to a string")); + wxFAIL_MSG(wxT("Could not convert to a string")); return wxString(""); } } @@ -1670,7 +1670,7 @@ wxTime wxVariant::GetTime() const return value; else { - wxFAIL_MSG(T("Could not convert to a time")); + wxFAIL_MSG(wxT("Could not convert to a time")); return wxTime(); } } @@ -1682,7 +1682,7 @@ wxDate wxVariant::GetDate() const return value; else { - wxFAIL_MSG(T("Could not convert to a date")); + wxFAIL_MSG(wxT("Could not convert to a date")); return wxDate(); } } @@ -1690,21 +1690,21 @@ wxDate wxVariant::GetDate() const void* wxVariant::GetVoidPtr() const { - wxASSERT( (GetType() == T("void*")) ); + wxASSERT( (GetType() == wxT("void*")) ); return (void*) ((wxVariantDataVoidPtr*) m_data)->GetValue(); } wxList& wxVariant::GetList() const { - wxASSERT( (GetType() == T("list")) ); + wxASSERT( (GetType() == wxT("list")) ); return (wxList&) ((wxVariantDataList*) m_data)->GetValue(); } wxStringList& wxVariant::GetStringList() const { - wxASSERT( (GetType() == T("stringlist")) ); + wxASSERT( (GetType() == wxT("stringlist")) ); return (wxStringList&) ((wxVariantDataStringList*) m_data)->GetValue(); } @@ -1746,7 +1746,7 @@ bool wxVariant::Delete(int item) { wxList& list = GetList(); - wxASSERT_MSG( (item < list.Number()), T("Invalid index to Delete") ); + wxASSERT_MSG( (item < list.Number()), wxT("Invalid index to Delete") ); wxNode* node = list.Nth(item); wxVariant* variant = (wxVariant*) node->Data(); delete variant; @@ -1757,13 +1757,13 @@ bool wxVariant::Delete(int item) // Clear list void wxVariant::ClearList() { - if (!IsNull() && (GetType() == T("list"))) + if (!IsNull() && (GetType() == wxT("list"))) { ((wxVariantDataList*) m_data)->Clear(); } else { - if (GetType() != T("list")) + if (GetType() != wxT("list")) { delete m_data; m_data = NULL; @@ -1776,15 +1776,15 @@ void wxVariant::ClearList() bool wxVariant::Convert(long* value) const { wxString type(GetType()); - if (type == T("double")) + if (type == wxT("double")) *value = (long) (((wxVariantDataReal*)GetData())->GetValue()); - else if (type == T("long")) + else if (type == wxT("long")) *value = ((wxVariantDataLong*)GetData())->GetValue(); #ifdef HAVE_BOOL - else if (type == T("bool")) + else if (type == wxT("bool")) *value = (long) (((wxVariantDataBool*)GetData())->GetValue()); #endif - else if (type == T("string")) + else if (type == wxT("string")) *value = wxAtol((const wxChar*) ((wxVariantDataString*)GetData())->GetValue()); else return FALSE; @@ -1795,21 +1795,21 @@ bool wxVariant::Convert(long* value) const bool wxVariant::Convert(bool* value) const { wxString type(GetType()); - if (type == T("double")) + if (type == wxT("double")) *value = ((int) (((wxVariantDataReal*)GetData())->GetValue()) != 0); - else if (type == T("long")) + else if (type == wxT("long")) *value = (((wxVariantDataLong*)GetData())->GetValue() != 0); #ifdef HAVE_BOOL - else if (type == T("bool")) + else if (type == wxT("bool")) *value = ((wxVariantDataBool*)GetData())->GetValue(); #endif - else if (type == T("string")) + else if (type == wxT("string")) { wxString val(((wxVariantDataString*)GetData())->GetValue()); val.MakeLower(); - if (val == T("true") || val == T("yes")) + if (val == wxT("true") || val == wxT("yes")) *value = TRUE; - else if (val == T("false") || val == T("no")) + else if (val == wxT("false") || val == wxT("no")) *value = FALSE; else return FALSE; @@ -1823,15 +1823,15 @@ bool wxVariant::Convert(bool* value) const bool wxVariant::Convert(double* value) const { wxString type(GetType()); - if (type == T("double")) + if (type == wxT("double")) *value = ((wxVariantDataReal*)GetData())->GetValue(); - else if (type == T("long")) + else if (type == wxT("long")) *value = (double) (((wxVariantDataLong*)GetData())->GetValue()); #ifdef HAVE_BOOL - else if (type == T("bool")) + else if (type == wxT("bool")) *value = (double) (((wxVariantDataBool*)GetData())->GetValue()); #endif - else if (type == T("string")) + else if (type == wxT("string")) *value = (double) wxAtof((const wxChar*) ((wxVariantDataString*)GetData())->GetValue()); else return FALSE; @@ -1842,12 +1842,12 @@ bool wxVariant::Convert(double* value) const bool wxVariant::Convert(char* value) const { wxString type(GetType()); - if (type == T("char")) + if (type == wxT("char")) *value = ((wxVariantDataChar*)GetData())->GetValue(); - else if (type == T("long")) + else if (type == wxT("long")) *value = (char) (((wxVariantDataLong*)GetData())->GetValue()); #ifdef HAVE_BOOL - else if (type == T("bool")) + else if (type == wxT("bool")) *value = (char) (((wxVariantDataBool*)GetData())->GetValue()); #endif else @@ -1866,9 +1866,9 @@ bool wxVariant::Convert(wxString* value) const bool wxVariant::Convert(wxTime* value) const { wxString type(GetType()); - if (type == T("time")) + if (type == wxT("time")) *value = ((wxVariantDataTime*)GetData())->GetValue(); - else if (type == T("date")) + else if (type == wxT("date")) *value = wxTime(((wxVariantDataDate*)GetData())->GetValue()); else return FALSE; @@ -1879,7 +1879,7 @@ bool wxVariant::Convert(wxTime* value) const bool wxVariant::Convert(wxDate* value) const { wxString type(GetType()); - if (type == T("date")) + if (type == wxT("date")) *value = ((wxVariantDataDate*)GetData())->GetValue(); else return FALSE; diff --git a/src/common/wincmn.cpp b/src/common/wincmn.cpp index 20e32b7e83..ccba8e7c53 100644 --- a/src/common/wincmn.cpp +++ b/src/common/wincmn.cpp @@ -160,7 +160,7 @@ bool wxWindowBase::CreateBase(wxWindowBase *parent, // m_isWindow is set to TRUE in wxWindowBase::Init() as well as many other // member variables - check that it has been called (will catch the case // when a new ctor is added which doesn't call InitWindow) - wxASSERT_MSG( m_isWindow, T("Init() must have been called before!") ); + wxASSERT_MSG( m_isWindow, wxT("Init() must have been called before!") ); // generate a new id if the user doesn't care about it m_windowId = id == -1 ? NewControlId() : id; @@ -191,7 +191,7 @@ wxWindowBase::~wxWindowBase() // we weren't a dialog class wxTopLevelWindows.DeleteObject(this); - wxASSERT_MSG( GetChildren().GetCount() == 0, T("children not destroyed") ); + wxASSERT_MSG( GetChildren().GetCount() == 0, wxT("children not destroyed") ); // make sure that there are no dangling pointers left pointing to us wxPanel *panel = wxDynamicCast(GetParent(), wxPanel); @@ -280,12 +280,12 @@ bool wxWindowBase::DestroyChildren() wxWindow *child = node->GetData(); - wxASSERT_MSG( child, T("children list contains empty nodes") ); + wxASSERT_MSG( child, wxT("children list contains empty nodes") ); delete child; wxASSERT_MSG( !GetChildren().Find(child), - T("child didn't remove itself using RemoveChild()") ); + wxT("child didn't remove itself using RemoveChild()") ); } return TRUE; @@ -335,7 +335,7 @@ void wxWindowBase::Centre(int direction) if ( !(direction & wxCENTRE_ON_SCREEN) || wxDynamicCast(this, wxControl) ) { // theo nly chance to get this is to have a wxControl without parent - wxCHECK_RET( parent, T("a control must have a parent") ); + wxCHECK_RET( parent, wxT("a control must have a parent") ); // adjust to the parents client area origin wxPoint posParent = parent->ClientToScreen(wxPoint(0, 0)); @@ -436,7 +436,7 @@ bool wxWindowBase::IsTopLevel() const void wxWindowBase::AddChild(wxWindowBase *child) { - wxCHECK_RET( child, T("can't add a NULL child") ); + wxCHECK_RET( child, wxT("can't add a NULL child") ); GetChildren().Append(child); child->SetParent(this); @@ -444,7 +444,7 @@ void wxWindowBase::AddChild(wxWindowBase *child) void wxWindowBase::RemoveChild(wxWindowBase *child) { - wxCHECK_RET( child, T("can't remove a NULL child") ); + wxCHECK_RET( child, wxT("can't remove a NULL child") ); GetChildren().DeleteObject(child); child->SetParent((wxWindow *)NULL); @@ -579,7 +579,7 @@ void wxWindowBase::SetCaret(wxCaret *caret) if ( m_caret ) { wxASSERT_MSG( m_caret->GetWindow() == this, - T("caret should be created associated to this window") ); + wxT("caret should be created associated to this window") ); } } #endif // wxUSE_CARET @@ -1038,18 +1038,18 @@ void wxWindowBase::SetConstraintSizes(bool recurse) wxChar *windowClass = GetClassInfo()->GetClassName(); wxString winName; - if ( GetName() == T("") ) - winName = T("unnamed"); + if ( GetName() == wxT("") ) + winName = wxT("unnamed"); else winName = GetName(); - wxLogDebug( T("Constraint(s) not satisfied for window of type %s, name %s:\n"), + wxLogDebug( wxT("Constraint(s) not satisfied for window of type %s, name %s:\n"), (const wxChar *)windowClass, (const wxChar *)winName); - if ( !constr->left.GetDone()) wxLogDebug( T(" unsatisfied 'left' constraint.\n") ); - if ( !constr->right.GetDone()) wxLogDebug( T(" unsatisfied 'right' constraint.\n") ); - if ( !constr->width.GetDone()) wxLogDebug( T(" unsatisfied 'width' constraint.\n") ); - if ( !constr->height.GetDone()) wxLogDebug( T(" unsatisfied 'height' constraint.\n") ); - wxLogDebug( T("Please check constraints: try adding AsIs() constraints.\n") ); + if ( !constr->left.GetDone()) wxLogDebug( wxT(" unsatisfied 'left' constraint.\n") ); + if ( !constr->right.GetDone()) wxLogDebug( wxT(" unsatisfied 'right' constraint.\n") ); + if ( !constr->width.GetDone()) wxLogDebug( wxT(" unsatisfied 'width' constraint.\n") ); + if ( !constr->height.GetDone()) wxLogDebug( wxT(" unsatisfied 'height' constraint.\n") ); + wxLogDebug( wxT("Please check constraints: try adding AsIs() constraints.\n") ); } if ( recurse ) @@ -1236,7 +1236,7 @@ wxPoint wxWindowBase::ConvertDialogToPixels(const wxPoint& pt) void wxWindowBase::DoSetClientObject( wxClientData *data ) { wxASSERT_MSG( m_clientDataType != ClientData_Void, - T("can't have both object and void client data") ); + wxT("can't have both object and void client data") ); if ( m_clientObject ) delete m_clientObject; @@ -1248,7 +1248,7 @@ void wxWindowBase::DoSetClientObject( wxClientData *data ) wxClientData *wxWindowBase::DoGetClientObject() const { wxASSERT_MSG( m_clientDataType == ClientData_Object, - T("this window doesn't have object client data") ); + wxT("this window doesn't have object client data") ); return m_clientObject; } @@ -1256,7 +1256,7 @@ wxClientData *wxWindowBase::DoGetClientObject() const void wxWindowBase::DoSetClientData( void *data ) { wxASSERT_MSG( m_clientDataType != ClientData_Object, - T("can't have both object and void client data") ); + wxT("can't have both object and void client data") ); m_clientData = data; m_clientDataType = ClientData_Void; @@ -1265,7 +1265,7 @@ void wxWindowBase::DoSetClientData( void *data ) void *wxWindowBase::DoGetClientData() const { wxASSERT_MSG( m_clientDataType == ClientData_Void, - T("this window doesn't have void client data") ); + wxT("this window doesn't have void client data") ); return m_clientData; } diff --git a/src/common/wxchar.cpp b/src/common/wxchar.cpp index cad23ca412..1ef378cda3 100644 --- a/src/common/wxchar.cpp +++ b/src/common/wxchar.cpp @@ -52,7 +52,7 @@ size_t WXDLLEXPORT wxMB2WC(wchar_t *buf, const char *psz, size_t n) { if (buf) { if (!n || !*psz) { - if (n) *buf = T('\0'); + if (n) *buf = wxT('\0'); return 0; } return mbstowcs(buf, psz, n); @@ -181,7 +181,7 @@ WXDLLEXPORT wxChar * wxStrtok(wxChar *psz, const wxChar *delim, wxChar **save_pt psz = wxStrpbrk(psz, delim); if (!psz) *save_ptr = (wxChar*)NULL; else { - *psz = T('\0'); + *psz = wxT('\0'); *save_ptr = psz + 1; } return ret; @@ -292,15 +292,15 @@ WXDLLEXPORT double wxStrtod(const wxChar *nptr, wxChar **endptr) // FIXME: only correct for C locale while (wxIsspace(*nptr)) nptr++; - if (*nptr == T('+') || *nptr == T('-')) nptr++; + if (*nptr == wxT('+') || *nptr == wxT('-')) nptr++; while (wxIsdigit(*nptr)) nptr++; - if (*nptr == T('.')) { + if (*nptr == wxT('.')) { nptr++; while (wxIsdigit(*nptr)) nptr++; } - if (*nptr == T('E') || *nptr == T('e')) { + if (*nptr == wxT('E') || *nptr == wxT('e')) { nptr++; - if (*nptr == T('+') || *nptr == T('-')) nptr++; + if (*nptr == wxT('+') || *nptr == wxT('-')) nptr++; while (wxIsdigit(*nptr)) nptr++; } @@ -320,17 +320,17 @@ WXDLLEXPORT long int wxStrtol(const wxChar *nptr, wxChar **endptr, int base) // FIXME: only correct for C locale while (wxIsspace(*nptr)) nptr++; - if (*nptr == T('+') || *nptr == T('-')) nptr++; + if (*nptr == wxT('+') || *nptr == wxT('-')) nptr++; if (((base == 0) || (base == 16)) && - (nptr[0] == T('0') && nptr[1] == T('x'))) { + (nptr[0] == wxT('0') && nptr[1] == wxT('x'))) { nptr += 2; base = 16; } - else if ((base == 0) && (nptr[0] == T('0'))) base = 8; + else if ((base == 0) && (nptr[0] == wxT('0'))) base = 8; else if (base == 0) base = 10; - while ((wxIsdigit(*nptr) && (*nptr - T('0') < base)) || - (wxIsalpha(*nptr) && (wxToupper(*nptr) - T('A') + 10 < base))) nptr++; + while ((wxIsdigit(*nptr) && (*nptr - wxT('0') < base)) || + (wxIsalpha(*nptr) && (wxToupper(*nptr) - wxT('A') + 10 < base))) nptr++; wxString data(nptr, nptr-start); wxWX2MBbuf dat = data.mb_str(wxConvLibc); diff --git a/src/common/wxexpr.cpp b/src/common/wxexpr.cpp index feecedc3ae..9db80bb028 100644 --- a/src/common/wxexpr.cpp +++ b/src/common/wxexpr.cpp @@ -275,12 +275,12 @@ wxExpr *wxExpr::AttributeValue(const wxString& word) const // Use only for a cla wxString wxExpr::Functor(void) const // Use only for a clause { if ((type != wxExprList) || !value.first) - return wxString(T("")); + return wxString(wxT("")); if (value.first->type == wxExprWord) return wxString(value.first->value.word); else - return wxString(T("")); + return wxString(wxT("")); } bool wxExpr::IsFunctor(const wxString& f) const // Use only for a clause @@ -390,7 +390,7 @@ void wxExpr::AddAttributeValue(const wxString& attribute, wxExpr *val) // DeleteAttributeValue(attribute); wxExpr *patt = new wxExpr(wxExprWord, attribute); - wxExpr *pequals = new wxExpr(wxExprWord, T("=")); + wxExpr *pequals = new wxExpr(wxExprWord, wxT("=")); wxExpr *listExpr = new wxExpr(wxExprList); @@ -414,7 +414,7 @@ void wxExpr::AddAttributeValue(const wxString& attribute, long val) wxExpr *patt = new wxExpr(wxExprWord, attribute); wxExpr *pval = new wxExpr(val); - wxExpr *pequals = new wxExpr(wxExprWord, T("=")); + wxExpr *pequals = new wxExpr(wxExprWord, wxT("=")); wxExpr *listExpr = new wxExpr(wxExprList); @@ -436,7 +436,7 @@ void wxExpr::AddAttributeValue(const wxString& attribute, double val) // DeleteAttributeValue(attribute); wxExpr *patt = new wxExpr(wxExprWord, attribute); wxExpr *pval = new wxExpr(val); - wxExpr *pequals = new wxExpr(wxExprWord, T("=")); + wxExpr *pequals = new wxExpr(wxExprWord, wxT("=")); wxExpr *listExpr = new wxExpr(wxExprList); @@ -459,7 +459,7 @@ void wxExpr::AddAttributeValueString(const wxString& attribute, const wxString& wxExpr *patt = new wxExpr(wxExprWord, attribute); wxExpr *pval = new wxExpr(wxExprString, val); - wxExpr *pequals = new wxExpr(wxExprWord, T("=")); + wxExpr *pequals = new wxExpr(wxExprWord, wxT("=")); wxExpr *listExpr = new wxExpr(wxExprList); @@ -482,7 +482,7 @@ void wxExpr::AddAttributeValueWord(const wxString& attribute, const wxString& va wxExpr *patt = new wxExpr(wxExprWord, attribute); wxExpr *pval = new wxExpr(wxExprWord, val); - wxExpr *pequals = new wxExpr(wxExprWord, T("=")); + wxExpr *pequals = new wxExpr(wxExprWord, wxT("=")); wxExpr *listExpr = new wxExpr(wxExprList); @@ -507,7 +507,7 @@ void wxExpr::AddAttributeValue(const wxString& attribute, wxList *val) wxExpr *patt = new wxExpr(wxExprWord, attribute); wxExpr *pval = new wxExpr(val); - wxExpr *pequals = new wxExpr(wxExprWord, T("=")); + wxExpr *pequals = new wxExpr(wxExprWord, wxT("=")); wxExpr *listExpr = new wxExpr(wxExprList); @@ -543,7 +543,7 @@ void wxExpr::AddAttributeValueStringList(const wxString& attribute, wxList *stri // Now make an (=, Att, Value) triple wxExpr *patt = new wxExpr(wxExprWord, attribute); - wxExpr *pequals = new wxExpr(wxExprWord, T("=")); + wxExpr *pequals = new wxExpr(wxExprWord, wxT("=")); wxExpr *listExpr2 = new wxExpr(wxExprList); @@ -769,7 +769,7 @@ void wxExpr::WriteExpr(FILE* stream) // Write as any other subexpression { wxExpr *expr = value.first; - if ((expr->Type() == wxExprWord) && (wxStrcmp(expr->WordValue(), T("=")) == 0)) + if ((expr->Type() == wxExprWord) && (wxStrcmp(expr->WordValue(), wxT("=")) == 0)) { wxExpr *arg1 = expr->next; wxExpr *arg2 = arg1->next; @@ -1143,21 +1143,21 @@ char *wxmake_string(char *str) t = s; for(i=1; i=360 || sa<=-360) sa=sa-int(sa/360)*360; if (ea>=360 || ea<=-360) ea=ea-int(ea/360)*360; @@ -581,7 +581,7 @@ void wxPostScriptDC::DoDrawEllipticArc(long x,long y,long w,long h,double sa,dou void wxPostScriptDC::DoDrawPoint (long x, long y) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); if (m_pen.GetStyle() == wxTRANSPARENT) return; @@ -600,7 +600,7 @@ void wxPostScriptDC::DoDrawPoint (long x, long y) void wxPostScriptDC::DoDrawPolygon (int n, wxPoint points[], long xoffset, long yoffset, int WXUNUSED(fillStyle)) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); if (n <= 0) return; @@ -659,7 +659,7 @@ void wxPostScriptDC::DoDrawPolygon (int n, wxPoint points[], long xoffset, long void wxPostScriptDC::DoDrawLines (int n, wxPoint points[], long xoffset, long yoffset) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); if (m_pen.GetStyle() == wxTRANSPARENT) return; @@ -690,7 +690,7 @@ void wxPostScriptDC::DoDrawLines (int n, wxPoint points[], long xoffset, long yo void wxPostScriptDC::DoDrawRectangle (long x, long y, long width, long height) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); if (m_brush.GetStyle () != wxTRANSPARENT) { @@ -737,7 +737,7 @@ void wxPostScriptDC::DoDrawRectangle (long x, long y, long width, long height) void wxPostScriptDC::DoDrawRoundedRectangle (long x, long y, long width, long height, double radius) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); if (radius < 0.0) { @@ -816,7 +816,7 @@ void wxPostScriptDC::DoDrawRoundedRectangle (long x, long y, long width, long he void wxPostScriptDC::DoDrawEllipse (long x, long y, long width, long height) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); if (m_brush.GetStyle () != wxTRANSPARENT) { @@ -867,7 +867,7 @@ static void LocalDecToHex( int dec, char *buf ) void wxPostScriptDC::DoDrawBitmap( const wxBitmap& bitmap, long x, long y, bool WXUNUSED(useMask) ) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); if (!bitmap.Ok()) return; @@ -921,7 +921,7 @@ void wxPostScriptDC::DoDrawBitmap( const wxBitmap& bitmap, long x, long y, bool void wxPostScriptDC::SetFont( const wxFont& font ) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); if (!font.Ok()) return; @@ -1016,7 +1016,7 @@ void wxPostScriptDC::SetFont( const wxFont& font ) void wxPostScriptDC::SetPen( const wxPen& pen ) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); if (!pen.Ok()) return; @@ -1101,7 +1101,7 @@ void wxPostScriptDC::SetPen( const wxPen& pen ) void wxPostScriptDC::SetBrush( const wxBrush& brush ) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); if (!brush.Ok()) return; @@ -1144,7 +1144,7 @@ void wxPostScriptDC::SetBrush( const wxBrush& brush ) void wxPostScriptDC::DoDrawText( const wxString& text, long x, long y ) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); SetFont( m_font ); @@ -1251,12 +1251,12 @@ void wxPostScriptDC::SetBackground (const wxBrush& brush) void wxPostScriptDC::SetLogicalFunction (int WXUNUSED(function)) { - wxFAIL_MSG( T("wxPostScriptDC::SetLogicalFunction not implemented.") ); + wxFAIL_MSG( wxT("wxPostScriptDC::SetLogicalFunction not implemented.") ); } void wxPostScriptDC::DoDrawSpline( wxList *points ) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); SetPen( m_pen ); @@ -1328,7 +1328,7 @@ long wxPostScriptDC::GetCharWidth() const void wxPostScriptDC::SetAxisOrientation( bool xLeftRight, bool yBottomUp ) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); m_signX = (xLeftRight ? 1 : -1); m_signY = (yBottomUp ? 1 : -1); @@ -1341,7 +1341,7 @@ void wxPostScriptDC::SetAxisOrientation( bool xLeftRight, bool yBottomUp ) void wxPostScriptDC::SetDeviceOrigin( long x, long y ) { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); int h = 0; int w = 0; @@ -1413,7 +1413,7 @@ wxSize wxPostScriptDC::GetPPI(void) const bool wxPostScriptDC::StartDoc( const wxString& message ) { - wxCHECK_MSG( m_ok, FALSE, T("invalid postscript dc") ); + wxCHECK_MSG( m_ok, FALSE, wxT("invalid postscript dc") ); if (m_printData.GetFilename() == "") { @@ -1458,7 +1458,7 @@ bool wxPostScriptDC::StartDoc( const wxString& message ) void wxPostScriptDC::EndDoc () { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); if (m_clipping) { @@ -1608,7 +1608,7 @@ void wxPostScriptDC::EndDoc () void wxPostScriptDC::StartPage() { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); fprintf( m_pstream, "%%%%Page: %d\n", wxPageNumber++ ); @@ -1648,7 +1648,7 @@ void wxPostScriptDC::StartPage() void wxPostScriptDC::EndPage () { - wxCHECK_RET( m_ok && m_pstream, T("invalid postscript dc") ); + wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") ); fprintf( m_pstream, "showpage\n" ); } @@ -1659,9 +1659,9 @@ bool wxPostScriptDC::DoBlit( long xdest, long ydest, long xsrc, long ysrc, int rop, bool WXUNUSED(useMask) ) { - wxCHECK_MSG( m_ok && m_pstream, FALSE, T("invalid postscript dc") ); + wxCHECK_MSG( m_ok && m_pstream, FALSE, wxT("invalid postscript dc") ); - wxCHECK_MSG( source, FALSE, T("invalid source dc") ); + wxCHECK_MSG( source, FALSE, wxT("invalid source dc") ); /* blit into a bitmap */ wxBitmap bitmap( (int)fwidth, (int)fheight ); @@ -1691,9 +1691,9 @@ void wxPostScriptDC::GetTextExtent( const wxString& string, long *x, long *y, if (!fontToUse) fontToUse = (wxFont*) &m_font; - wxCHECK_RET( fontToUse, T("GetTextExtent: no font defined") ); - wxCHECK_RET( x, T("GetTextExtent: x == NULL") ); - wxCHECK_RET( y, T("GetTextExtent: y == NULL") ); + wxCHECK_RET( fontToUse, wxT("GetTextExtent: no font defined") ); + wxCHECK_RET( x, wxT("GetTextExtent: x == NULL") ); + wxCHECK_RET( y, wxT("GetTextExtent: y == NULL") ); const wxWX2MBbuf strbuf = string.mb_str(); diff --git a/src/generic/dirdlgg.cpp b/src/generic/dirdlgg.cpp index 826703e3f7..706a6320c9 100644 --- a/src/generic/dirdlgg.cpp +++ b/src/generic/dirdlgg.cpp @@ -198,17 +198,17 @@ void wxDirCtrl::SetupSections() m_names.Clear(); #ifdef __WXMSW__ // better than nothing - ADD_SECTION(T("c:\\"), _("My Harddisk") ) + ADD_SECTION(wxT("c:\\"), _("My Harddisk") ) #else - ADD_SECTION(T("/"), _("The Computer") ) + ADD_SECTION(wxT("/"), _("The Computer") ) wxGetHomeDir(&home); ADD_SECTION(home, _("My Home") ) - ADD_SECTION(T("/mnt"), _("Mounted Devices") ) - ADD_SECTION(T("/usr"), _("User") ) - ADD_SECTION(T("/usr/local"), _("User Local") ) - ADD_SECTION(T("/var"), _("Variables") ) - ADD_SECTION(T("/etc"), _("Etcetera") ) - ADD_SECTION(T("/tmp"), _("Temporary") ) + ADD_SECTION(wxT("/mnt"), _("Mounted Devices") ) + ADD_SECTION(wxT("/usr"), _("User") ) + ADD_SECTION(wxT("/usr/local"), _("User Local") ) + ADD_SECTION(wxT("/var"), _("Variables") ) + ADD_SECTION(wxT("/etc"), _("Etcetera") ) + ADD_SECTION(wxT("/tmp"), _("Temporary") ) #endif } #undef ADD_SECTION @@ -254,7 +254,7 @@ void wxDirCtrl::OnEndEditItem(wxTreeEvent &event) if ((event.GetLabel().IsEmpty()) || (event.GetLabel() == _(".")) || (event.GetLabel() == _("..")) || - (event.GetLabel().First( T("/") ) != wxNOT_FOUND)) + (event.GetLabel().First( wxT("/") ) != wxNOT_FOUND)) { wxMessageDialog dialog(this, _("Illegal directory name."), _("Error"), wxOK | wxICON_ERROR ); dialog.ShowModal(); @@ -267,7 +267,7 @@ void wxDirCtrl::OnEndEditItem(wxTreeEvent &event) wxASSERT( data ); wxString new_name( wxPathOnly( data->m_path ) ); - new_name += T("/"); + new_name += wxT("/"); new_name += event.GetLabel(); wxLogNull log; @@ -502,22 +502,22 @@ void wxDirDialog::OnNew( wxCommandEvent& WXUNUSED(event) ) wxDirItemData *data = (wxDirItemData*)m_dir->GetItemData( parent ); wxASSERT( data ); - wxString new_name( T("NewName") ); + wxString new_name( wxT("NewName") ); wxString path( data->m_path ); - path += T("/"); + path += wxT("/"); path += new_name; if (wxFileExists(path)) { // try NewName0, NewName1 etc. int i = 0; do { - new_name = T("NewName"); + new_name = wxT("NewName"); wxString num; num.Printf( "%d", i ); new_name += num; path = data->m_path; - path += T("/"); + path += wxT("/"); path += new_name; i++; } while (wxFileExists(path)); diff --git a/src/generic/filedlgg.cpp b/src/generic/filedlgg.cpp index dd7841da78..265e8cb39e 100644 --- a/src/generic/filedlgg.cpp +++ b/src/generic/filedlgg.cpp @@ -89,8 +89,8 @@ int ListCompare( long data1, long data2, long WXUNUSED(data) ) { wxFileData *fd1 = (wxFileData*)data1 ; wxFileData *fd2 = (wxFileData*)data2 ; - if (fd1->GetName() == T("..")) return -1; - if (fd2->GetName() == T("..")) return 1; + if (fd1->GetName() == wxT("..")) return -1; + if (fd2->GetName() == wxT("..")) return 1; if (fd1->IsDir() && !fd2->IsDir()) return -1; if (fd2->IsDir() && !fd1->IsDir()) return 1; return strcmp( fd1->GetName(), fd2->GetName() ); @@ -156,15 +156,15 @@ wxString wxFileData::GetHint() const s += _(" bytes "); } s += IntToString( m_day ); - s += T("."); + s += wxT("."); s += IntToString( m_month ); - s += T("."); + s += wxT("."); s += IntToString( m_year ); - s += T(" "); + s += wxT(" "); s += IntToString( m_hour ); - s += T(":"); + s += wxT(":"); s += IntToString( m_minute ); - s += T(" "); + s += wxT(" "); s += m_permissions; return s; }; @@ -183,27 +183,27 @@ wxString wxFileData::GetEntry( int num ) else s = LongToString( m_size ); break; case 2: - if (m_day < 10) s = T("0"); else s = T(""); + if (m_day < 10) s = wxT("0"); else s = wxT(""); s += IntToString( m_day ); - s += T("."); - if (m_month < 10) s += T("0"); + s += wxT("."); + if (m_month < 10) s += wxT("0"); s += IntToString( m_month ); - s += T("."); - if (m_year < 10) s += T("0"); // this should happen real soon... + s += wxT("."); + if (m_year < 10) s += wxT("0"); // this should happen real soon... s += IntToString( m_year ); break; case 3: - if (m_hour < 10) s = T("0"); else s = T(""); + if (m_hour < 10) s = wxT("0"); else s = wxT(""); s += IntToString( m_hour ); - s += T(":"); - if (m_minute < 10) s += T("0"); + s += wxT(":"); + if (m_minute < 10) s += wxT("0"); s += IntToString( m_minute ); break; case 4: s = m_permissions; break; default: - s = T("No entry"); + s = wxT("No entry"); break; } return s; @@ -263,7 +263,7 @@ END_EVENT_TABLE() wxFileCtrl::wxFileCtrl() { - m_dirName = T("/"); + m_dirName = wxT("/"); m_showHidden = FALSE; } @@ -342,23 +342,23 @@ void wxFileCtrl::Update() item.m_itemId = 0; item.m_col = 0; - if (m_dirName != T("/")) + if (m_dirName != wxT("/")) { wxString p( wxPathOnly(m_dirName) ); - if (p.IsEmpty()) p = T("/"); - fd = new wxFileData( T(".."), p ); + if (p.IsEmpty()) p = wxT("/"); + fd = new wxFileData( wxT(".."), p ); Add( fd, item ); item.m_itemId++; } - wxString res = m_dirName + T("/*"); + wxString res = m_dirName + wxT("/*"); wxString f( wxFindFirstFile( res.GetData(), wxDIR ) ); while (!f.IsEmpty()) { res = wxFileNameFromPath( f ); fd = new wxFileData( res, f ); wxString s = fd->GetName(); - if (m_showHidden || (s[0] != T('.'))) + if (m_showHidden || (s[0] != wxT('.'))) { Add( fd, item ); item.m_itemId++; @@ -366,14 +366,14 @@ void wxFileCtrl::Update() f = wxFindNextFile(); } - res = m_dirName + T("/") + m_wild; + res = m_dirName + wxT("/") + m_wild; f = wxFindFirstFile( res.GetData(), wxFILE ); while (!f.IsEmpty()) { res = wxFileNameFromPath( f ); fd = new wxFileData( res, f ); wxString s = fd->GetName(); - if (m_showHidden || (s[0] != T('.'))) + if (m_showHidden || (s[0] != wxT('.'))) { Add( fd, item ); item.m_itemId++; @@ -392,9 +392,9 @@ void wxFileCtrl::SetWild( const wxString &wild ) void wxFileCtrl::MakeDir() { - wxString new_name( T("NewName") ); + wxString new_name( wxT("NewName") ); wxString path( m_dirName ); - path += T("/"); + path += wxT("/"); path += new_name; if (wxFileExists(path)) { @@ -403,11 +403,11 @@ void wxFileCtrl::MakeDir() do { new_name = _("NewName"); wxString num; - num.Printf( T("%d"), i ); + num.Printf( wxT("%d"), i ); new_name += num; path = m_dirName; - path += T("/"); + path += wxT("/"); path += new_name; i++; } while (wxFileExists(path)); @@ -438,11 +438,11 @@ void wxFileCtrl::MakeDir() void wxFileCtrl::GoToParentDir() { - if (m_dirName != T("/")) + if (m_dirName != wxT("/")) { wxString fname( wxFileNameFromPath(m_dirName) ); m_dirName = wxPathOnly( m_dirName ); - if (m_dirName.IsEmpty()) m_dirName = T("/"); + if (m_dirName.IsEmpty()) m_dirName = wxT("/"); Update(); int id = FindItem( 0, fname ); if (id != -1) @@ -489,7 +489,7 @@ void wxFileCtrl::OnListEndLabelEdit( wxListEvent &event ) if ((event.GetLabel().IsEmpty()) || (event.GetLabel() == _(".")) || (event.GetLabel() == _("..")) || - (event.GetLabel().First( T("/") ) != wxNOT_FOUND)) + (event.GetLabel().First( wxT("/") ) != wxNOT_FOUND)) { wxMessageDialog dialog(this, _("Illegal directory name."), _("Error"), wxOK | wxICON_ERROR ); dialog.ShowModal(); @@ -498,7 +498,7 @@ void wxFileCtrl::OnListEndLabelEdit( wxListEvent &event ) } wxString new_name( wxPathOnly( fd->GetFullName() ) ); - new_name += T("/"); + new_name += wxT("/"); new_name += event.GetLabel(); wxLogNull log; @@ -573,7 +573,7 @@ wxFileDialog::wxFileDialog(wxWindow *parent, m_dir = getcwd( buf, sizeof(buf) ); } m_path = defaultDir; - m_path += T("/"); + m_path += wxT("/"); m_path += defaultFile; m_fileName = defaultFile; m_wildCard = wildCard; @@ -584,7 +584,7 @@ wxFileDialog::wxFileDialog(wxWindow *parent, if (m_wildCard.IsEmpty()) m_wildCard = _("All files (*)|*"); - wxStringTokenizer tokens( m_wildCard, T("|") ); + wxStringTokenizer tokens( m_wildCard, wxT("|") ); wxString firstWild; wxString firstWildText; if (tokens.CountTokens() == 1) @@ -594,7 +594,7 @@ wxFileDialog::wxFileDialog(wxWindow *parent, } else { - wxASSERT_MSG( tokens.CountTokens() % 2 == 0, T("Wrong file type descripition") ); + wxASSERT_MSG( tokens.CountTokens() % 2 == 0, wxT("Wrong file type descripition") ); firstWildText = tokens.GetNextToken(); firstWild = tokens.GetNextToken(); } @@ -717,11 +717,11 @@ void wxFileDialog::OnSelected( wxListEvent &event ) if (FindFocus() != m_list) return; wxString filename( event.m_item.m_text ); - if (filename == T("..")) return; + if (filename == wxT("..")) return; wxString dir; m_list->GetDir( dir ); - if (dir != T("/")) dir += T("/"); + if (dir != wxT("/")) dir += wxT("/"); dir += filename; if (wxDirExists(dir)) return; @@ -734,9 +734,9 @@ void wxFileDialog::HandleAction( const wxString &fn ) wxString dir; m_list->GetDir( dir ); if (filename.IsEmpty()) return; - if (filename == T(".")) return; + if (filename == wxT(".")) return; - if (filename == T("..")) + if (filename == wxT("..")) { m_list->GoToParentDir(); m_list->SetFocus(); @@ -745,7 +745,7 @@ void wxFileDialog::HandleAction( const wxString &fn ) return; } - if (filename == T("~")) + if (filename == wxT("~")) { m_list->GoToHomeDir(); m_list->SetFocus(); @@ -754,19 +754,19 @@ void wxFileDialog::HandleAction( const wxString &fn ) return; } - if (filename[0] == T('~')) + if (filename[0] == wxT('~')) { filename.Remove( 0, 1 ); wxString tmp( wxGetUserHome() ); - tmp += T('/'); + tmp += wxT('/'); tmp += filename; filename = tmp; } - if ((filename.Find(T('*')) != wxNOT_FOUND) || - (filename.Find(T('?')) != wxNOT_FOUND)) + if ((filename.Find(wxT('*')) != wxNOT_FOUND) || + (filename.Find(wxT('?')) != wxNOT_FOUND)) { - if (filename.Find(T('/')) != wxNOT_FOUND) + if (filename.Find(wxT('/')) != wxNOT_FOUND) { wxMessageBox(_("Illegal file specification."), _("Error"), wxOK | wxICON_ERROR ); return; @@ -775,8 +775,8 @@ void wxFileDialog::HandleAction( const wxString &fn ) return; } - if (dir != T("/")) dir += T("/"); - if (filename[0] != T('/')) + if (dir != wxT("/")) dir += wxT("/"); + if (filename[0] != wxT('/')) { dir += filename; filename = dir; @@ -867,7 +867,7 @@ void wxFileDialog::SetPath( const wxString& path ) wxSplitPath(path, &m_dir, &m_fileName, &ext); if (!ext.IsEmpty()) { - m_fileName += T("."); + m_fileName += wxT("."); m_fileName += ext; } } @@ -888,7 +888,7 @@ wxFileSelectorEx(const wxChar *message, int x, int y) { // TODO: implement this somehow - return wxFileSelector(message, default_path, default_filename, T(""), + return wxFileSelector(message, default_path, default_filename, wxT(""), wildcard, flags, parent, x, y); } @@ -899,7 +899,7 @@ wxString wxFileSelector( const wxChar *title, { wxString filter2; if ( defaultExtension && !filter ) - filter2 = wxString(T("*.")) + wxString(defaultExtension) ; + filter2 = wxString(wxT("*.")) + wxString(defaultExtension) ; else if ( filter ) filter2 = filter; @@ -931,9 +931,9 @@ wxString wxLoadFileSelector( const wxChar *what, const wxChar *extension, const wxString str = _("Load %s file"); wxSprintf(prompt, str, what); - if (*ext == T('.')) ext++; + if (*ext == wxT('.')) ext++; wxChar wild[60]; - wxSprintf(wild, T("*.%s"), ext); + wxSprintf(wild, wxT("*.%s"), ext); return wxFileSelector (prompt, (const wxChar *) NULL, default_name, ext, wild, 0, parent); } @@ -947,9 +947,9 @@ wxString wxSaveFileSelector(const wxChar *what, const wxChar *extension, const w wxString str = _("Save %s file"); wxSprintf(prompt, str, what); - if (*ext == T('.')) ext++; + if (*ext == wxT('.')) ext++; wxChar wild[60]; - wxSprintf(wild, T("*.%s"), ext); + wxSprintf(wild, wxT("*.%s"), ext); return wxFileSelector (prompt, (const wxChar *) NULL, default_name, ext, wild, 0, parent); } diff --git a/src/generic/fontdlgg.cpp b/src/generic/fontdlgg.cpp index 5422598196..e71f4562e6 100644 --- a/src/generic/fontdlgg.cpp +++ b/src/generic/fontdlgg.cpp @@ -57,59 +57,59 @@ END_EVENT_TABLE() #endif #define NUM_COLS 48 -static wxString wxColourDialogNames[NUM_COLS]={T("ORANGE"), - T("GOLDENROD"), - T("WHEAT"), - T("SPRING GREEN"), - T("SKY BLUE"), - T("SLATE BLUE"), - T("MEDIUM VIOLET RED"), - T("PURPLE"), - - T("RED"), - T("YELLOW"), - T("MEDIUM SPRING GREEN"), - T("PALE GREEN"), - T("CYAN"), - T("LIGHT STEEL BLUE"), - T("ORCHID"), - T("LIGHT MAGENTA"), - - T("BROWN"), - T("YELLOW"), - T("GREEN"), - T("CADET BLUE"), - T("MEDIUM BLUE"), - T("MAGENTA"), - T("MAROON"), - T("ORANGE RED"), - - T("FIREBRICK"), - T("CORAL"), - T("FOREST GREEN"), - T("AQUARAMINE"), - T("BLUE"), - T("NAVY"), - T("THISTLE"), - T("MEDIUM VIOLET RED"), - - T("INDIAN RED"), - T("GOLD"), - T("MEDIUM SEA GREEN"), - T("MEDIUM BLUE"), - T("MIDNIGHT BLUE"), - T("GREY"), - T("PURPLE"), - T("KHAKI"), - - T("BLACK"), - T("MEDIUM FOREST GREEN"), - T("KHAKI"), - T("DARK GREY"), - T("SEA GREEN"), - T("LIGHT GREY"), - T("MEDIUM SLATE BLUE"), - T("WHITE") +static wxString wxColourDialogNames[NUM_COLS]={wxT("ORANGE"), + wxT("GOLDENROD"), + wxT("WHEAT"), + wxT("SPRING GREEN"), + wxT("SKY BLUE"), + wxT("SLATE BLUE"), + wxT("MEDIUM VIOLET RED"), + wxT("PURPLE"), + + wxT("RED"), + wxT("YELLOW"), + wxT("MEDIUM SPRING GREEN"), + wxT("PALE GREEN"), + wxT("CYAN"), + wxT("LIGHT STEEL BLUE"), + wxT("ORCHID"), + wxT("LIGHT MAGENTA"), + + wxT("BROWN"), + wxT("YELLOW"), + wxT("GREEN"), + wxT("CADET BLUE"), + wxT("MEDIUM BLUE"), + wxT("MAGENTA"), + wxT("MAROON"), + wxT("ORANGE RED"), + + wxT("FIREBRICK"), + wxT("CORAL"), + wxT("FOREST GREEN"), + wxT("AQUARAMINE"), + wxT("BLUE"), + wxT("NAVY"), + wxT("THISTLE"), + wxT("MEDIUM VIOLET RED"), + + wxT("INDIAN RED"), + wxT("GOLD"), + wxT("MEDIUM SEA GREEN"), + wxT("MEDIUM BLUE"), + wxT("MIDNIGHT BLUE"), + wxT("GREY"), + wxT("PURPLE"), + wxT("KHAKI"), + + wxT("BLACK"), + wxT("MEDIUM FOREST GREEN"), + wxT("KHAKI"), + wxT("DARK GREY"), + wxT("SEA GREEN"), + wxT("LIGHT GREY"), + wxT("MEDIUM SLATE BLUE"), + wxT("WHITE") }; /* @@ -345,7 +345,7 @@ void wxGenericFontDialog::OnChangeFont(wxCommandEvent& WXUNUSED(event)) int fontUnderline = underLineCheckBox->GetValue(); dialogFont = wxFont(fontSize, fontFamily, fontStyle, fontWeight, (fontUnderline != 0)); - if (colourChoice->GetStringSelection() != T("")) + if (colourChoice->GetStringSelection() != wxT("")) { wxColour *col = (wxColour*) NULL; col = wxTheColourDatabase->FindColour(colourChoice->GetStringSelection()); @@ -364,14 +364,14 @@ wxChar *wxFontWeightIntToString(int weight) switch (weight) { case wxLIGHT: - return T("Light"); + return wxT("Light"); case wxBOLD: - return T("Bold"); + return wxT("Bold"); case wxNORMAL: default: - return T("Normal"); + return wxT("Normal"); } - return T("Normal"); + return wxT("Normal"); } wxChar *wxFontStyleIntToString(int style) @@ -379,14 +379,14 @@ wxChar *wxFontStyleIntToString(int style) switch (style) { case wxITALIC: - return T("Italic"); + return wxT("Italic"); case wxSLANT: - return T("Slant"); + return wxT("Slant"); case wxNORMAL: default: - return T("Normal"); + return wxT("Normal"); } - return T("Normal"); + return wxT("Normal"); } wxChar *wxFontFamilyIntToString(int family) @@ -394,20 +394,20 @@ wxChar *wxFontFamilyIntToString(int family) switch (family) { case wxROMAN: - return T("Roman"); + return wxT("Roman"); case wxDECORATIVE: - return T("Decorative"); + return wxT("Decorative"); case wxMODERN: - return T("Modern"); + return wxT("Modern"); case wxSCRIPT: - return T("Script"); + return wxT("Script"); case wxTELETYPE: - return T("Teletype"); + return wxT("Teletype"); case wxSWISS: default: - return T("Swiss"); + return wxT("Swiss"); } - return T("Swiss"); + return wxT("Swiss"); } int wxFontFamilyStringToInt(wxChar *family) @@ -415,15 +415,15 @@ int wxFontFamilyStringToInt(wxChar *family) if (!family) return wxSWISS; - if (wxStrcmp(family, T("Roman")) == 0) + if (wxStrcmp(family, wxT("Roman")) == 0) return wxROMAN; - else if (wxStrcmp(family, T("Decorative")) == 0) + else if (wxStrcmp(family, wxT("Decorative")) == 0) return wxDECORATIVE; - else if (wxStrcmp(family, T("Modern")) == 0) + else if (wxStrcmp(family, wxT("Modern")) == 0) return wxMODERN; - else if (wxStrcmp(family, T("Script")) == 0) + else if (wxStrcmp(family, wxT("Script")) == 0) return wxSCRIPT; - else if (wxStrcmp(family, T("Teletype")) == 0) + else if (wxStrcmp(family, wxT("Teletype")) == 0) return wxTELETYPE; else return wxSWISS; } @@ -432,9 +432,9 @@ int wxFontStyleStringToInt(wxChar *style) { if (!style) return wxNORMAL; - if (wxStrcmp(style, T("Italic")) == 0) + if (wxStrcmp(style, wxT("Italic")) == 0) return wxITALIC; - else if (wxStrcmp(style, T("Slant")) == 0) + else if (wxStrcmp(style, wxT("Slant")) == 0) return wxSLANT; else return wxNORMAL; @@ -444,9 +444,9 @@ int wxFontWeightStringToInt(wxChar *weight) { if (!weight) return wxNORMAL; - if (wxStrcmp(weight, T("Bold")) == 0) + if (wxStrcmp(weight, wxT("Bold")) == 0) return wxBOLD; - else if (wxStrcmp(weight, T("Light")) == 0) + else if (wxStrcmp(weight, wxT("Light")) == 0) return wxLIGHT; else return wxNORMAL; diff --git a/src/generic/grid.cpp b/src/generic/grid.cpp index 2af40dc9c8..efa0edd05c 100644 --- a/src/generic/grid.cpp +++ b/src/generic/grid.cpp @@ -187,7 +187,7 @@ wxGridTableMessage::wxGridTableMessage( wxGridTableBase *table, int id, // this is a magic incantation which must be done! #include -WX_DEFINE_OBJARRAY(wxGridStringArray); +WX_DEFINE_OBJARRAY(wxGridStringArray) IMPLEMENT_DYNAMIC_CLASS( wxGridStringTable, wxGridTableBase ) diff --git a/src/generic/helpext.cpp b/src/generic/helpext.cpp index 56a293ca42..232d27d10b 100644 --- a/src/generic/helpext.cpp +++ b/src/generic/helpext.cpp @@ -102,23 +102,23 @@ wxExtHelpController::DisplayHelp(wxString const &relativeURL) { wxString lockfile; wxGetHomeDir(&lockfile); - lockfile << WXEXTHELP_SEPARATOR << T(".netscape/lock"); + lockfile << WXEXTHELP_SEPARATOR << wxT(".netscape/lock"); struct stat statbuf; if(lstat(lockfile.fn_str(), &statbuf) == 0) // cannot use wxFileExists, because it's a link pointing to a // non-existing location if(wxFileExists(lockfile)) { long success; - command << m_BrowserName << T(" -remote openURL(") - << T("file://") << m_MapFile - << WXEXTHELP_SEPARATOR << relativeURL << T(")"); + command << m_BrowserName << wxT(" -remote openURL(") + << wxT("file://") << m_MapFile + << WXEXTHELP_SEPARATOR << relativeURL << wxT(")"); success = wxExecute(command); if(success != 0 ) // returns PID on success return TRUE; } } command = m_BrowserName; - command << T(" file://") + command << wxT(" file://") << m_MapFile << WXEXTHELP_SEPARATOR << relativeURL; return wxExecute(command) != 0; #endif diff --git a/src/generic/helphtml.cpp b/src/generic/helphtml.cpp index 721367da1a..9358e52012 100644 --- a/src/generic/helphtml.cpp +++ b/src/generic/helphtml.cpp @@ -143,7 +143,7 @@ wxHTMLHelpControllerBase::LoadFile(const wxString& ifile) { newfile = WXEXTHELP_SEPARATOR; const wxChar *cptr = wxGetLocale()->GetName().c_str(); - while(*cptr && *cptr != T('_')) + while(*cptr && *cptr != wxT('_')) newfile << *(cptr++); if(wxDirExists(newfile)) file = newfile; @@ -223,13 +223,13 @@ wxHTMLHelpControllerBase::DisplayContents() bool rc = FALSE; wxString file; file << m_MapFile << WXEXTHELP_SEPARATOR << contents; - if(file.Contains(T('#'))) - file = file.BeforeLast(T('#')); + if(file.Contains(wxT('#'))) + file = file.BeforeLast(wxT('#')); if(contents.Length() && wxFileExists(file)) rc = DisplaySection(CONTENTS_ID); // if not found, open homemade toc: - return rc ? TRUE : KeywordSearch(T("")); + return rc ? TRUE : KeywordSearch(wxT("")); } bool diff --git a/src/generic/imaglist.cpp b/src/generic/imaglist.cpp index 686fd59f36..8011b2b648 100644 --- a/src/generic/imaglist.cpp +++ b/src/generic/imaglist.cpp @@ -62,7 +62,7 @@ const wxBitmap *wxImageList::GetBitmap( int index ) const { wxNode *node = m_images.Nth( index ); - wxCHECK_MSG( node, (wxBitmap *) NULL, T("wrong index in image list") ); + wxCHECK_MSG( node, (wxBitmap *) NULL, wxT("wrong index in image list") ); return (wxBitmap*)node->Data(); } @@ -71,7 +71,7 @@ bool wxImageList::Replace( int index, const wxBitmap &bitmap ) { wxNode *node = m_images.Nth( index ); - wxCHECK_MSG( node, FALSE, T("wrong index in image list") ); + wxCHECK_MSG( node, FALSE, wxT("wrong index in image list") ); wxBitmap* newBitmap = NULL; if (bitmap.IsKindOf(CLASSINFO(wxIcon))) @@ -98,7 +98,7 @@ bool wxImageList::Remove( int index ) { wxNode *node = m_images.Nth( index ); - wxCHECK_MSG( node, FALSE, T("wrong index in image list") ); + wxCHECK_MSG( node, FALSE, wxT("wrong index in image list") ); m_images.DeleteNode( node ); @@ -119,7 +119,7 @@ bool wxImageList::GetSize( int index, int &width, int &height ) const wxNode *node = m_images.Nth( index ); - wxCHECK_MSG( node, FALSE, T("wrong index in image list") ); + wxCHECK_MSG( node, FALSE, wxT("wrong index in image list") ); wxBitmap *bm = (wxBitmap*)node->Data(); width = bm->GetWidth(); @@ -133,7 +133,7 @@ bool wxImageList::Draw( int index, wxDC &dc, int x, int y, { wxNode *node = m_images.Nth( index ); - wxCHECK_MSG( node, FALSE, T("wrong index in image list") ); + wxCHECK_MSG( node, FALSE, wxT("wrong index in image list") ); wxBitmap *bm = (wxBitmap*)node->Data(); diff --git a/src/generic/listctrl.cpp b/src/generic/listctrl.cpp index 2f4cccc30c..1855e79d9e 100644 --- a/src/generic/listctrl.cpp +++ b/src/generic/listctrl.cpp @@ -436,7 +436,7 @@ void wxListLineData::SetPosition( wxDC *dc, int x, int y, int window_width ) wxListItemData *item = (wxListItemData*)node->Data(); wxString s; item->GetText( s ); - if (s.IsEmpty()) s = T("H"); + if (s.IsEmpty()) s = wxT("H"); long lw,lh; dc->GetTextExtent( s, &lw, &lh ); m_bound_label.width = lw; @@ -1209,7 +1209,7 @@ void wxListMainWindow::DeleteLine( wxListLineData *line ) void wxListMainWindow::EditLabel( long item ) { wxNode *node = m_lines.Nth( item ); - wxCHECK_RET( node, T("wrong index in wxListCtrl::Edit()") ); + wxCHECK_RET( node, wxT("wrong index in wxListCtrl::Edit()") ); m_currentEdit = (wxListLineData*) node->Data(); @@ -1247,7 +1247,7 @@ void wxListMainWindow::EditLabel( long item ) void wxListMainWindow::OnRenameTimer() { - wxCHECK_RET( m_current, T("invalid m_current") ); + wxCHECK_RET( m_current, wxT("invalid m_current") ); Edit( m_lines.IndexOf( m_current ) ); } @@ -2251,7 +2251,7 @@ void wxListMainWindow::DeleteItem( long index ) void wxListMainWindow::DeleteColumn( int col ) { wxCHECK_RET( col < (int)m_columns.GetCount(), - T("attempting to delete inexistent column in wxListView") ); + wxT("attempting to delete inexistent column in wxListView") ); m_dirty = TRUE; wxNode *node = m_columns.Nth( col ); diff --git a/src/generic/logg.cpp b/src/generic/logg.cpp index 9164360cec..c38a09de27 100644 --- a/src/generic/logg.cpp +++ b/src/generic/logg.cpp @@ -99,7 +99,7 @@ void wxLogTextCtrl::DoLogString(const wxChar *szString, time_t WXUNUSED(t)) { wxString msg; TimeStamp(&msg); - msg << szString << T('\n'); + msg << szString << wxT('\n'); m_pTextCtrl->AppendText(msg); } @@ -143,7 +143,7 @@ void wxLogGui::Flush() if ( nLines > 25 ) // don't put too many lines in message box break; - str << m_aMessages[n - 1] << T("\n"); + str << m_aMessages[n - 1] << wxT("\n"); } const wxChar *title; @@ -213,13 +213,13 @@ void wxLogGui::DoLog(wxLogLevel level, const wxChar *szString, time_t t) // debug window anyhow, but do put a timestamp wxString str; TimeStamp(&str); - str << szString << T("\n\r"); + str << szString << wxT("\n\r"); OutputDebugString(str); #else // send them to stderr - wxFprintf(stderr, T("%s: %s\n"), - level == wxLOG_Trace ? T("Trace") - : T("Debug"), + wxFprintf(stderr, wxT("%s: %s\n"), + level == wxLOG_Trace ? wxT("Trace") + : wxT("Debug"), szString); fflush(stderr); #endif @@ -356,7 +356,7 @@ void wxLogFrame::OnSave(wxCommandEvent& WXUNUSED(event)) { // get the file name // ----------------- - const wxChar *szFileName = wxSaveFileSelector(T("log"), T("txt"), T("log.txt")); + const wxChar *szFileName = wxSaveFileSelector(wxT("log"), wxT("txt"), wxT("log.txt")); if ( szFileName == NULL ) { // cancelled return; @@ -516,7 +516,7 @@ void wxLogWindow::DoLogString(const wxChar *szString, time_t WXUNUSED(t)) wxString msg; TimeStamp(&msg); - msg << szString << T('\n'); + msg << szString << wxT('\n'); pText->AppendText(msg); diff --git a/src/generic/numdlgg.cpp b/src/generic/numdlgg.cpp index d6567fe138..c88afa638c 100644 --- a/src/generic/numdlgg.cpp +++ b/src/generic/numdlgg.cpp @@ -120,7 +120,7 @@ wxNumberEntryDialog::wxNumberEntryDialog(wxWindow *parent, inputsizer->Add( new wxStaticText( this, -1, prompt ), 0, wxCENTER | wxLEFT, 10 ); // spin ctrl wxString valStr; - valStr.Printf(T("%lu"), m_value); + valStr.Printf(wxT("%lu"), m_value); m_spinctrl = new wxTextCtrl(this, -1, valStr, wxDefaultPosition, wxSize( 140, -1 ) ); inputsizer->Add( m_spinctrl, 1, wxCENTER | wxLEFT | wxRIGHT, 10 ); // add both @@ -149,7 +149,7 @@ wxNumberEntryDialog::wxNumberEntryDialog(wxWindow *parent, void wxNumberEntryDialog::OnOK(wxCommandEvent& WXUNUSED(event)) { - if ( (wxSscanf(m_spinctrl->GetValue(), T("%lu"), &m_value) != 1) || + if ( (wxSscanf(m_spinctrl->GetValue(), wxT("%lu"), &m_value) != 1) || (m_value < m_min) || (m_value > m_max) ) { // not a number or out of range diff --git a/src/generic/prntdlgg.cpp b/src/generic/prntdlgg.cpp index 47d3cfb3f1..df57a25ad4 100644 --- a/src/generic/prntdlgg.cpp +++ b/src/generic/prntdlgg.cpp @@ -274,7 +274,7 @@ void wxGenericPrintDialog::OnOK(wxCommandEvent& WXUNUSED(event)) wxString f = wxFileSelector(_("PostScript file"), wxPathOnly(wxThePrintSetupData->GetPrinterFile()), wxFileNameFromPath(wxThePrintSetupData->GetPrinterFile()), - T("ps"), T("*.ps"), 0, this); + wxT("ps"), wxT("*.ps"), 0, this); if ( f.IsEmpty() ) return; diff --git a/src/generic/progdlgg.cpp b/src/generic/progdlgg.cpp index fffb684cc3..c6d34316e1 100644 --- a/src/generic/progdlgg.cpp +++ b/src/generic/progdlgg.cpp @@ -150,21 +150,21 @@ wxProgressDialog::wxProgressDialog(wxString const &title, { nTimeLabels++; - m_elapsed = CreateLabel(T("Elapsed time : "), &lastWindow); + m_elapsed = CreateLabel(wxT("Elapsed time : "), &lastWindow); } if ( style & wxPD_ESTIMATED_TIME ) { nTimeLabels++; - m_estimated = CreateLabel(T("Estimated time : "), &lastWindow); + m_estimated = CreateLabel(wxT("Estimated time : "), &lastWindow); } if ( style & wxPD_REMAINING_TIME ) { nTimeLabels++; - m_remaining = CreateLabel(T("Remaining time : "), &lastWindow); + m_remaining = CreateLabel(wxT("Remaining time : "), &lastWindow); } if ( nTimeLabels > 0 ) @@ -234,7 +234,7 @@ wxStaticText *wxProgressDialog::CreateLabel(const wxString& text, { wxLayoutConstraints *c; - wxStaticText *label = new wxStaticText(this, -1, T("unknown")); + wxStaticText *label = new wxStaticText(this, -1, wxT("unknown")); c = new wxLayoutConstraints; // VZ: I like the labels be centered - if the others don't mind, you may @@ -265,8 +265,8 @@ wxStaticText *wxProgressDialog::CreateLabel(const wxString& text, bool wxProgressDialog::Update(int value, const wxString& newmsg) { - wxASSERT_MSG( value == -1 || m_gauge, T("cannot update non existent dialog") ); - wxASSERT_MSG( value <= m_maximum, T("invalid progress value") ); + wxASSERT_MSG( value == -1 || m_gauge, wxT("cannot update non existent dialog") ); + wxASSERT_MSG( value <= m_maximum, wxT("invalid progress value") ); if( m_gauge ) @@ -374,7 +374,7 @@ static void SetTimeLabel(unsigned long val, wxStaticText *label) unsigned long hours = val / 3600; unsigned long minutes = (val % 3600) / 60; unsigned long seconds = val % 60; - s.Printf(T("%lu:%02lu:%02lu"), hours, minutes, seconds); + s.Printf(wxT("%lu:%02lu:%02lu"), hours, minutes, seconds); if ( s != label->GetLabel() ) label->SetLabel(s); diff --git a/src/generic/prop.cpp b/src/generic/prop.cpp index 81667fa193..25fc02ce07 100644 --- a/src/generic/prop.cpp +++ b/src/generic/prop.cpp @@ -328,7 +328,7 @@ wxPropertyValue *wxPropertyValue::NewCopy(void) const return new wxPropertyValue(m_value.stringPtr); case wxPropertyValueNull: - wxFAIL_MSG( T("Should never get here!\n" ) ); + wxFAIL_MSG( wxT("Should never get here!\n" ) ); break; } return NULL; @@ -399,7 +399,7 @@ void wxPropertyValue::Copy(wxPropertyValue& copyFrom) return; } case wxPropertyValueNull: - wxFAIL_MSG( T("Should never get here!\n" ) ); + wxFAIL_MSG( wxT("Should never get here!\n" ) ); break; } } @@ -461,20 +461,20 @@ void wxPropertyValue::WritePropertyClause(wxString& stream) // Write this expre if (node) { node->WritePropertyType(stream); - stream.Append( T("(") ); + stream.Append( wxT("(") ); node = node->m_next; bool first = TRUE; while (node) { if (!first) - stream.Append( T(" ") ); + stream.Append( wxT(" ") ); node->WritePropertyType(stream); node = node->m_next; if (node) - stream.Append( T(",\n" ) ); + stream.Append( wxT(",\n" ) ); first = FALSE; } - stream.Append( T(").\n\n") ); + stream.Append( wxT(").\n\n") ); } } @@ -485,43 +485,43 @@ void wxPropertyValue::WritePropertyType(wxString& stream) // Write as any oth { case wxPropertyValueInteger: { - tmp.Printf( T("%ld"), m_value.integer ); + tmp.Printf( wxT("%ld"), m_value.integer ); stream.Append( tmp ); break; } case wxPropertyValueIntegerPtr: { - tmp.Printf( T("%ld"), *m_value.integerPtr ); + tmp.Printf( wxT("%ld"), *m_value.integerPtr ); stream.Append( tmp ); break; } case wxPropertyValuebool: { if (m_value.integer) - stream.Append( T("True") ); + stream.Append( wxT("True") ); else - stream.Append( T("False") ); + stream.Append( wxT("False") ); break; } case wxPropertyValueboolPtr: { if (*m_value.integerPtr) - stream.Append( T("True") ); + stream.Append( wxT("True") ); else - stream.Append( T("False") ); + stream.Append( wxT("False") ); break; } case wxPropertyValueReal: { double d = m_value.real; - tmp.Printf( T("%.6g"), d ); + tmp.Printf( wxT("%.6g"), d ); stream.Append( tmp ); break; } case wxPropertyValueRealPtr: { double d = *m_value.realPtr; - tmp.Printf( T("%.6g"), d ); + tmp.Printf( wxT("%.6g"), d ); stream.Append( tmp ); break; } @@ -532,7 +532,7 @@ void wxPropertyValue::WritePropertyType(wxString& stream) // Write as any oth } case wxPropertyValueStringPtr: { - wxFAIL_MSG( T("wxPropertyValue::WritePropertyType( wxPropertyValueStringPtr ) not implemented") ); + wxFAIL_MSG( wxT("wxPropertyValue::WritePropertyType( wxPropertyValueStringPtr ) not implemented") ); /* int i; int len = strlen(*(m_value.stringPtr)); @@ -547,20 +547,20 @@ void wxPropertyValue::WritePropertyType(wxString& stream) // Write as any oth case wxPropertyValueList: { if (!m_value.first) - stream.Append( T("[]") ); + stream.Append( wxT("[]") ); else { wxPropertyValue *expr = m_value.first; - stream.Append( T("[") ); + stream.Append( wxT("[") ); while (expr) { expr->WritePropertyType(stream); expr = expr->m_next; if (expr) - stream.Append( T(", ") ); + stream.Append( wxT(", ") ); } - stream.Append( T("]") ); + stream.Append( wxT("]") ); } break; } @@ -1097,13 +1097,13 @@ bool wxPropertyValidator::StringToLong (wxChar *s, long *number) { wxChar *wxPropertyValidator::FloatToString (float number) { static wxChar buf[20]; - wxSprintf (buf, T("%.6g"), number); + wxSprintf (buf, wxT("%.6g"), number); return buf; } wxChar *wxPropertyValidator::DoubleToString (double number) { static wxChar buf[20]; - wxSprintf (buf, T("%.6g"), number); + wxSprintf (buf, wxT("%.6g"), number); return buf; } diff --git a/src/generic/propform.cpp b/src/generic/propform.cpp index af83e76fc0..e8f651083c 100644 --- a/src/generic/propform.cpp +++ b/src/generic/propform.cpp @@ -150,7 +150,7 @@ bool wxPropertyFormView::AssociateNames(void) while (node) { wxWindow *win = (wxWindow *)node->Data(); - if (win->GetName() != T("")) + if (win->GetName() != wxT("")) { wxProperty *prop = m_propertySheet->GetProperty(win->GetName()); if (prop) @@ -207,18 +207,18 @@ void wxPropertyFormView::OnCommand(wxWindow& win, wxCommandEvent& event) if (!m_propertySheet) return; - if (win.GetName() == T("")) + if (win.GetName() == wxT("")) return; - if (wxStrcmp(win.GetName(), T("ok")) == 0) + if (wxStrcmp(win.GetName(), wxT("ok")) == 0) OnOk(event); - else if (wxStrcmp(win.GetName(), T("cancel")) == 0) + else if (wxStrcmp(win.GetName(), wxT("cancel")) == 0) OnCancel(event); - else if (wxStrcmp(win.GetName(), T("help")) == 0) + else if (wxStrcmp(win.GetName(), wxT("help")) == 0) OnHelp(event); - else if (wxStrcmp(win.GetName(), T("update")) == 0) + else if (wxStrcmp(win.GetName(), wxT("update")) == 0) OnUpdate(event); - else if (wxStrcmp(win.GetName(), T("revert")) == 0) + else if (wxStrcmp(win.GetName(), wxT("revert")) == 0) OnRevert(event); else { @@ -427,16 +427,16 @@ bool wxRealFormValidator::OnCheckValue( wxProperty *property, wxPropertyFormView if (!StringToFloat(WXSTRINGCAST value, &val)) { wxChar buf[200]; - wxSprintf(buf, T("Value %s is not a valid real number!"), (const wxChar *)value); - wxMessageBox(buf, T("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); + wxSprintf(buf, wxT("Value %s is not a valid real number!"), (const wxChar *)value); + wxMessageBox(buf, wxT("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); return FALSE; } if (val < m_realMin || val > m_realMax) { wxChar buf[200]; - wxSprintf(buf, T("Value must be a real number between %.2f and %.2f!"), m_realMin, m_realMax); - wxMessageBox(buf, T("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); + wxSprintf(buf, wxT("Value must be a real number between %.2f and %.2f!"), m_realMin, m_realMax); + wxMessageBox(buf, wxT("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); return FALSE; } return TRUE; @@ -498,8 +498,8 @@ bool wxIntegerFormValidator::OnCheckValue(wxProperty *property, wxPropertyFormVi if (!StringToLong(WXSTRINGCAST value, &val)) { wxChar buf[200]; - wxSprintf(buf, T("Value %s is not a valid integer!"), (const wxChar *)value); - wxMessageBox(buf, T("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); + wxSprintf(buf, wxT("Value %s is not a valid integer!"), (const wxChar *)value); + wxMessageBox(buf, wxT("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); return FALSE; } } diff --git a/src/generic/proplist.cpp b/src/generic/proplist.cpp index c5e69cac4a..af0a32a664 100644 --- a/src/generic/proplist.cpp +++ b/src/generic/proplist.cpp @@ -830,7 +830,7 @@ bool wxPropertyListValidator::OnSelect(bool select, wxProperty *property, wxProp bool wxPropertyListValidator::OnValueListSelect(wxProperty *property, wxPropertyListView *view, wxWindow *WXUNUSED(parentWindow)) { wxString s(view->GetValueList()->GetStringSelection()); - if (s != T("")) + if (s != wxT("")) { view->GetValueText()->SetValue(s); view->RetrieveProperty(property); @@ -898,8 +898,8 @@ bool wxRealListValidator::OnCheckValue(wxProperty *WXUNUSED(property), wxPropert if (!StringToFloat(WXSTRINGCAST value, &val)) { wxChar buf[200]; - wxSprintf(buf, T("Value %s is not a valid real number!"), value.GetData()); - wxMessageBox(buf, T("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); + wxSprintf(buf, wxT("Value %s is not a valid real number!"), value.GetData()); + wxMessageBox(buf, wxT("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); return FALSE; } @@ -961,15 +961,15 @@ bool wxIntegerListValidator::OnCheckValue(wxProperty *WXUNUSED(property), wxProp if (!StringToLong(WXSTRINGCAST value, &val)) { wxChar buf[200]; - wxSprintf(buf, T("Value %s is not a valid integer!"), value.GetData()); - wxMessageBox(buf, T("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); + wxSprintf(buf, wxT("Value %s is not a valid integer!"), value.GetData()); + wxMessageBox(buf, wxT("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); return FALSE; } if (val < m_integerMin || val > m_integerMax) { wxChar buf[200]; - wxSprintf(buf, T("Value must be an integer between %ld and %ld!"), m_integerMin, m_integerMax); - wxMessageBox(buf, T("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); + wxSprintf(buf, wxT("Value must be an integer between %ld and %ld!"), m_integerMin, m_integerMax); + wxMessageBox(buf, wxT("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); return FALSE; } return TRUE; @@ -1015,9 +1015,9 @@ bool wxBoolListValidator::OnCheckValue(wxProperty *WXUNUSED(property), wxPropert if (!view->GetValueText()) return FALSE; wxString value(view->GetValueText()->GetValue()); - if (value != T("True") && value != T("False")) + if (value != wxT("True") && value != wxT("False")) { - wxMessageBox(T("Value must be True or False!"), T("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); + wxMessageBox(wxT("Value must be True or False!"), wxT("Property value error"), wxOK | wxICON_EXCLAMATION, parentWindow); return FALSE; } return TRUE; @@ -1036,7 +1036,7 @@ bool wxBoolListValidator::OnRetrieveValue(wxProperty *property, wxPropertyListVi wxString value(view->GetValueText()->GetValue()); bool boolValue = FALSE; - if (value == T("True")) + if (value == wxT("True")) boolValue = TRUE; else boolValue = FALSE; @@ -1079,8 +1079,8 @@ bool wxBoolListValidator::OnPrepareDetailControls(wxProperty *WXUNUSED(property) view->ShowListBoxControl(TRUE); view->GetValueList()->Enable(TRUE); - view->GetValueList()->Append(T("True")); - view->GetValueList()->Append(T("False")); + view->GetValueList()->Append(wxT("True")); + view->GetValueList()->Append(wxT("False")); wxChar *currentString = copystring(view->GetValueText()->GetValue()); view->GetValueList()->SetStringSelection(currentString); delete[] currentString; @@ -1353,7 +1353,7 @@ void wxFilenameListValidator::OnEdit(wxProperty *property, wxPropertyListView *v m_filenameWildCard.GetData(), 0, parentWindow); - if (s != T("")) + if (s != wxT("")) { property->GetValue() = s; view->DisplayProperty(property); @@ -1546,7 +1546,7 @@ void wxListOfStringsListValidator::OnEdit(wxProperty *property, wxPropertyListVi expr = expr->GetNext(); } - wxString title(T("Editing ")); + wxString title(wxT("Editing ")); title += property->GetName(); if (EditStringList(parentWindow, stringList, title.GetData())) @@ -1766,7 +1766,7 @@ void wxPropertyStringListEditorDialog::OnAdd(wxCommandEvent& WXUNUSED(event)) { SaveCurrentSelection(); - wxChar *initialText = T(""); + wxChar *initialText = wxT(""); wxNode *node = m_stringList->Add(initialText); m_listBox->Append(initialText, (void *)node); m_currentSelection = m_stringList->Number() - 1; diff --git a/src/generic/splitter.cpp b/src/generic/splitter.cpp index 072448b191..2df6674596 100644 --- a/src/generic/splitter.cpp +++ b/src/generic/splitter.cpp @@ -373,7 +373,7 @@ void wxSplitterWindow::OnSize(wxSizeEvent& event) if ( dialog ) iconized = dialog->IsIconized(); else - wxFAIL_MSG(T("should have a top level frame or dialog parent!")); + wxFAIL_MSG(wxT("should have a top level frame or dialog parent!")); } if ( iconized ) @@ -742,7 +742,7 @@ bool wxSplitterWindow::Unsplit(wxWindow *toRemove) } else { - wxFAIL_MSG(T("splitter: attempt to remove a non-existent window")); + wxFAIL_MSG(wxT("splitter: attempt to remove a non-existent window")); return FALSE; } @@ -757,8 +757,8 @@ bool wxSplitterWindow::Unsplit(wxWindow *toRemove) // Replace a window with another one bool wxSplitterWindow::ReplaceWindow(wxWindow *winOld, wxWindow *winNew) { - wxCHECK_MSG( winOld, FALSE, T("use one of Split() functions instead") ); - wxCHECK_MSG( winNew, FALSE, T("use Unsplit() functions instead") ); + wxCHECK_MSG( winOld, FALSE, wxT("use one of Split() functions instead") ); + wxCHECK_MSG( winNew, FALSE, wxT("use Unsplit() functions instead") ); if ( winOld == m_windowTwo ) { @@ -770,7 +770,7 @@ bool wxSplitterWindow::ReplaceWindow(wxWindow *winOld, wxWindow *winNew) } else { - wxFAIL_MSG(T("splitter: attempt to replace a non-existent window")); + wxFAIL_MSG(wxT("splitter: attempt to replace a non-existent window")); return FALSE; } diff --git a/src/generic/statline.cpp b/src/generic/statline.cpp index b430f8d280..964385982f 100644 --- a/src/generic/statline.cpp +++ b/src/generic/statline.cpp @@ -55,7 +55,7 @@ bool wxStaticLine::Create( wxWindow *parent, wxSize sizeReal = AdjustSize(size); - m_statbox = new wxStaticBox(parent, id, T(""), pos, sizeReal, style, name); + m_statbox = new wxStaticBox(parent, id, wxT(""), pos, sizeReal, style, name); return TRUE; } diff --git a/src/generic/tipdlg.cpp b/src/generic/tipdlg.cpp index 7b06f357a1..7562a31424 100644 --- a/src/generic/tipdlg.cpp +++ b/src/generic/tipdlg.cpp @@ -183,7 +183,7 @@ wxTipDialog::wxTipDialog(wxWindow *parent, // // text->SetBackgroundColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_BTNFACE)); - m_text = new wxTextCtrl(this, -1, T(""), + m_text = new wxTextCtrl(this, -1, wxT(""), wxDefaultPosition, wxSize(200, 160), wxTE_MULTILINE | wxTE_READONLY | wxSUNKEN_BORDER); m_text->SetFont(wxFont(14, wxROMAN, wxNORMAL, wxNORMAL)); diff --git a/src/generic/treectrl.cpp b/src/generic/treectrl.cpp index 8c64a4c26a..57b181dd44 100644 --- a/src/generic/treectrl.cpp +++ b/src/generic/treectrl.cpp @@ -291,7 +291,7 @@ wxGenericTreeItem::~wxGenericTreeItem() delete m_data; wxASSERT_MSG( m_children.IsEmpty(), - T("please call DeleteChildren() before deleting the item") ); + wxT("please call DeleteChildren() before deleting the item") ); } void wxGenericTreeItem::DeleteChildren(wxTreeCtrl *tree) @@ -574,7 +574,7 @@ void wxTreeCtrl::SetSpacing(unsigned int spacing) size_t wxTreeCtrl::GetChildrenCount(const wxTreeItemId& item, bool recursively) { - wxCHECK_MSG( item.IsOk(), 0u, T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), 0u, wxT("invalid tree item") ); return item.m_pItem->GetChildrenCount(recursively); } @@ -585,7 +585,7 @@ size_t wxTreeCtrl::GetChildrenCount(const wxTreeItemId& item, bool recursively) wxString wxTreeCtrl::GetItemText(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), T(""), T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), wxT(""), wxT("invalid tree item") ); return item.m_pItem->GetText(); } @@ -593,21 +593,21 @@ wxString wxTreeCtrl::GetItemText(const wxTreeItemId& item) const int wxTreeCtrl::GetItemImage(const wxTreeItemId& item, wxTreeItemIcon which) const { - wxCHECK_MSG( item.IsOk(), -1, T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), -1, wxT("invalid tree item") ); return item.m_pItem->GetImage(which); } wxTreeItemData *wxTreeCtrl::GetItemData(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), NULL, T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), NULL, wxT("invalid tree item") ); return item.m_pItem->GetData(); } void wxTreeCtrl::SetItemText(const wxTreeItemId& item, const wxString& text) { - wxCHECK_RET( item.IsOk(), T("invalid tree item") ); + wxCHECK_RET( item.IsOk(), wxT("invalid tree item") ); wxClientDC dc(this); wxGenericTreeItem *pItem = item.m_pItem; @@ -620,7 +620,7 @@ void wxTreeCtrl::SetItemImage(const wxTreeItemId& item, int image, wxTreeItemIcon which) { - wxCHECK_RET( item.IsOk(), T("invalid tree item") ); + wxCHECK_RET( item.IsOk(), wxT("invalid tree item") ); wxGenericTreeItem *pItem = item.m_pItem; pItem->SetImage(image, which); @@ -632,14 +632,14 @@ void wxTreeCtrl::SetItemImage(const wxTreeItemId& item, void wxTreeCtrl::SetItemData(const wxTreeItemId& item, wxTreeItemData *data) { - wxCHECK_RET( item.IsOk(), T("invalid tree item") ); + wxCHECK_RET( item.IsOk(), wxT("invalid tree item") ); item.m_pItem->SetData(data); } void wxTreeCtrl::SetItemHasChildren(const wxTreeItemId& item, bool has) { - wxCHECK_RET( item.IsOk(), T("invalid tree item") ); + wxCHECK_RET( item.IsOk(), wxT("invalid tree item") ); wxGenericTreeItem *pItem = item.m_pItem; pItem->SetHasPlus(has); @@ -648,7 +648,7 @@ void wxTreeCtrl::SetItemHasChildren(const wxTreeItemId& item, bool has) void wxTreeCtrl::SetItemBold(const wxTreeItemId& item, bool bold) { - wxCHECK_RET( item.IsOk(), T("invalid tree item") ); + wxCHECK_RET( item.IsOk(), wxT("invalid tree item") ); // avoid redrawing the tree if no real change wxGenericTreeItem *pItem = item.m_pItem; @@ -665,35 +665,35 @@ void wxTreeCtrl::SetItemBold(const wxTreeItemId& item, bool bold) bool wxTreeCtrl::IsVisible(const wxTreeItemId& WXUNUSED(item)) const { - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return TRUE; } bool wxTreeCtrl::ItemHasChildren(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), FALSE, T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), FALSE, wxT("invalid tree item") ); return !item.m_pItem->GetChildren().IsEmpty(); } bool wxTreeCtrl::IsExpanded(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), FALSE, T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), FALSE, wxT("invalid tree item") ); return item.m_pItem->IsExpanded(); } bool wxTreeCtrl::IsSelected(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), FALSE, T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), FALSE, wxT("invalid tree item") ); return item.m_pItem->IsSelected(); } bool wxTreeCtrl::IsBold(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), FALSE, T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), FALSE, wxT("invalid tree item") ); return item.m_pItem->IsBold(); } @@ -704,14 +704,14 @@ bool wxTreeCtrl::IsBold(const wxTreeItemId& item) const wxTreeItemId wxTreeCtrl::GetParent(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), wxTreeItemId(), T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), wxTreeItemId(), wxT("invalid tree item") ); return item.m_pItem->GetParent(); } wxTreeItemId wxTreeCtrl::GetFirstChild(const wxTreeItemId& item, long& cookie) const { - wxCHECK_MSG( item.IsOk(), wxTreeItemId(), T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), wxTreeItemId(), wxT("invalid tree item") ); cookie = 0; return GetNextChild(item, cookie); @@ -719,7 +719,7 @@ wxTreeItemId wxTreeCtrl::GetFirstChild(const wxTreeItemId& item, long& cookie) c wxTreeItemId wxTreeCtrl::GetNextChild(const wxTreeItemId& item, long& cookie) const { - wxCHECK_MSG( item.IsOk(), wxTreeItemId(), T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), wxTreeItemId(), wxT("invalid tree item") ); wxArrayGenericTreeItems& children = item.m_pItem->GetChildren(); if ( (size_t)cookie < children.Count() ) @@ -735,7 +735,7 @@ wxTreeItemId wxTreeCtrl::GetNextChild(const wxTreeItemId& item, long& cookie) co wxTreeItemId wxTreeCtrl::GetLastChild(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), wxTreeItemId(), T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), wxTreeItemId(), wxT("invalid tree item") ); wxArrayGenericTreeItems& children = item.m_pItem->GetChildren(); return (children.IsEmpty() ? wxTreeItemId() : wxTreeItemId(children.Last())); @@ -743,7 +743,7 @@ wxTreeItemId wxTreeCtrl::GetLastChild(const wxTreeItemId& item) const wxTreeItemId wxTreeCtrl::GetNextSibling(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), wxTreeItemId(), T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), wxTreeItemId(), wxT("invalid tree item") ); wxGenericTreeItem *i = item.m_pItem; wxGenericTreeItem *parent = i->GetParent(); @@ -763,7 +763,7 @@ wxTreeItemId wxTreeCtrl::GetNextSibling(const wxTreeItemId& item) const wxTreeItemId wxTreeCtrl::GetPrevSibling(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), wxTreeItemId(), T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), wxTreeItemId(), wxT("invalid tree item") ); wxGenericTreeItem *i = item.m_pItem; wxGenericTreeItem *parent = i->GetParent(); @@ -783,25 +783,25 @@ wxTreeItemId wxTreeCtrl::GetPrevSibling(const wxTreeItemId& item) const wxTreeItemId wxTreeCtrl::GetFirstVisibleItem() const { - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return wxTreeItemId(); } wxTreeItemId wxTreeCtrl::GetNextVisible(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), wxTreeItemId(), T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), wxTreeItemId(), wxT("invalid tree item") ); - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return wxTreeItemId(); } wxTreeItemId wxTreeCtrl::GetPrevVisible(const wxTreeItemId& item) const { - wxCHECK_MSG( item.IsOk(), wxTreeItemId(), T("invalid tree item") ); + wxCHECK_MSG( item.IsOk(), wxTreeItemId(), wxT("invalid tree item") ); - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return wxTreeItemId(); } @@ -845,7 +845,7 @@ wxTreeItemId wxTreeCtrl::AddRoot(const wxString& text, int image, int selImage, wxTreeItemData *data) { - wxCHECK_MSG( !m_anchor, wxTreeItemId(), T("tree can have only one root") ); + wxCHECK_MSG( !m_anchor, wxTreeItemId(), wxT("tree can have only one root") ); wxClientDC dc(this); m_anchor = new wxGenericTreeItem((wxGenericTreeItem *)NULL, text, dc, @@ -884,7 +884,7 @@ wxTreeItemId wxTreeCtrl::InsertItem(const wxTreeItemId& parentId, int index = parent->GetChildren().Index(idPrevious.m_pItem); wxASSERT_MSG( index != wxNOT_FOUND, - T("previous item in wxTreeCtrl::InsertItem() is not a sibling") ); + wxT("previous item in wxTreeCtrl::InsertItem() is not a sibling") ); return DoInsertItem(parentId, (size_t)++index, text, image, selImage, data); } @@ -1126,13 +1126,13 @@ void wxTreeCtrl::SelectItem(const wxTreeItemId& itemId, bool unselect_others, bool extended_select) { - wxCHECK_RET( itemId.IsOk(), T("invalid tree item") ); + wxCHECK_RET( itemId.IsOk(), wxT("invalid tree item") ); bool is_single=!(GetWindowStyleFlag() & wxTR_MULTIPLE); wxGenericTreeItem *item = itemId.m_pItem; //wxCHECK_RET( ( (!unselect_others) && is_single), - // T("this is a single selection tree") ); + // wxT("this is a single selection tree") ); // to keep going anyhow !!! if (is_single) @@ -1286,7 +1286,7 @@ static wxTreeCtrl *s_treeBeingSorted = NULL; static int tree_ctrl_compare_func(wxGenericTreeItem **item1, wxGenericTreeItem **item2) { - wxCHECK_MSG( s_treeBeingSorted, 0, T("bug in wxTreeCtrl::SortChildren()") ); + wxCHECK_MSG( s_treeBeingSorted, 0, wxT("bug in wxTreeCtrl::SortChildren()") ); return s_treeBeingSorted->OnCompareItems(*item1, *item2); } @@ -1299,12 +1299,12 @@ int wxTreeCtrl::OnCompareItems(const wxTreeItemId& item1, void wxTreeCtrl::SortChildren(const wxTreeItemId& itemId) { - wxCHECK_RET( itemId.IsOk(), T("invalid tree item") ); + wxCHECK_RET( itemId.IsOk(), wxT("invalid tree item") ); wxGenericTreeItem *item = itemId.m_pItem; wxCHECK_RET( !s_treeBeingSorted, - T("wxTreeCtrl::SortChildren is not reentrant") ); + wxT("wxTreeCtrl::SortChildren is not reentrant") ); wxArrayGenericTreeItems& children = item->GetChildren(); if ( children.Count() > 1 ) @@ -1411,7 +1411,7 @@ void wxTreeCtrl::PaintItem(wxGenericTreeItem *item, wxDC& dc) } else { - wxFAIL_MSG(T("wxDC::GetFont() failed!")); + wxFAIL_MSG(wxT("wxDC::GetFont() failed!")); } } @@ -2005,7 +2005,7 @@ void wxTreeCtrl::CalculateSize( wxGenericTreeItem *item, wxDC &dc ) } else { - wxFAIL_MSG(T("wxDC::GetFont() failed!")); + wxFAIL_MSG(wxT("wxDC::GetFont() failed!")); } } diff --git a/src/generic/wizard.cpp b/src/generic/wizard.cpp index a09f08bef7..b50ea09e07 100644 --- a/src/generic/wizard.cpp +++ b/src/generic/wizard.cpp @@ -187,7 +187,7 @@ wxWizard::wxWizard(wxWindow *parent, bool wxWizard::ShowPage(wxWizardPage *page, bool goingForward) { - wxASSERT_MSG( page != m_page, T("this is useless") ); + wxASSERT_MSG( page != m_page, wxT("this is useless") ); // we'll use this to decide whether we have to change the label of this // button or not (initially the label is "Next") @@ -252,7 +252,7 @@ bool wxWizard::ShowPage(wxWizardPage *page, bool goingForward) bool wxWizard::RunWizard(wxWizardPage *firstPage) { - wxCHECK_MSG( firstPage, FALSE, T("can't run empty wizard") ); + wxCHECK_MSG( firstPage, FALSE, wxT("can't run empty wizard") ); // can't return FALSE here because there is no old page (void)ShowPage(firstPage, TRUE /* forward */); @@ -284,7 +284,7 @@ void wxWizard::OnBackOrNext(wxCommandEvent& event) { wxASSERT_MSG( (event.GetEventObject() == m_btnNext) || (event.GetEventObject() == m_btnPrev), - T("unknown button") ); + wxT("unknown button") ); bool forward = event.GetEventObject() == m_btnNext; @@ -297,7 +297,7 @@ void wxWizard::OnBackOrNext(wxCommandEvent& event) { page = m_page->GetPrev(); - wxASSERT_MSG( page, T("\"m_idleTag == 0, T("attempt to install idle handler twice") ); + wxASSERT_MSG( wxTheApp->m_idleTag == 0, wxT("attempt to install idle handler twice") ); /* this routine gets called by all event handlers indicating that the idle is over. */ @@ -397,7 +397,7 @@ bool wxApp::OnInitGui() index |= (g >> (5 - vis->green_prec)) << vis->green_shift; index |= (b >> (5 - vis->blue_prec)) << vis->blue_shift; #else - wxFAIL_MSG( T("Unsupported graphics hardware") ); + wxFAIL_MSG( wxT("Unsupported graphics hardware") ); #endif } m_colorCube[ (r*1024) + (g*32) + b ] = index; @@ -640,7 +640,7 @@ void wxApp::CleanUp() #if (defined(__WXDEBUG__) && wxUSE_MEMORY_TRACING) || wxUSE_DEBUG_CONTEXT if (wxDebugContext::CountObjectsLeft() > 0) { - wxLogDebug(T("There were memory leaks.\n")); + wxLogDebug(wxT("There were memory leaks.\n")); wxDebugContext::Dump(); wxDebugContext::PrintStatistics(); } @@ -681,7 +681,7 @@ int wxEntry( int argc, char *argv[] ) if (!wxTheApp) { wxCHECK_MSG( wxApp::GetInitializerFunction(), -1, - T("wxWindows error: No initializer - use IMPLEMENT_APP macro.\n") ); + wxT("wxWindows error: No initializer - use IMPLEMENT_APP macro.\n") ); wxAppInitializerFunction app_ini = wxApp::GetInitializerFunction(); @@ -690,7 +690,7 @@ int wxEntry( int argc, char *argv[] ) wxTheApp = (wxApp*) test_app; } - wxCHECK_MSG( wxTheApp, -1, T("wxWindows error: no application object") ); + wxCHECK_MSG( wxTheApp, -1, wxT("wxWindows error: no application object") ); wxTheApp->argc = argc; #if wxUSE_UNICODE @@ -794,7 +794,7 @@ wxApp::GetStdIcon(int which) const return wxIcon(warning_xpm); default: - wxFAIL_MSG(T("requested non existent standard icon")); + wxFAIL_MSG(wxT("requested non existent standard icon")); // still fall through case wxICON_HAND: diff --git a/src/gtk/bitmap.cpp b/src/gtk/bitmap.cpp index 707e07e951..0918af1707 100644 --- a/src/gtk/bitmap.cpp +++ b/src/gtk/bitmap.cpp @@ -60,7 +60,7 @@ bool wxMask::Create( const wxBitmap& WXUNUSED(bitmap), m_bitmap = (GdkBitmap*) NULL; } - wxFAIL_MSG( T("TODO") ); + wxFAIL_MSG( wxT("TODO") ); return FALSE; } @@ -74,7 +74,7 @@ bool wxMask::Create( const wxBitmap& WXUNUSED(bitmap), m_bitmap = (GdkBitmap*) NULL; } - wxFAIL_MSG( T("not implemented") ); + wxFAIL_MSG( wxT("not implemented") ); return FALSE; } @@ -89,7 +89,7 @@ bool wxMask::Create( const wxBitmap& bitmap ) if (!bitmap.Ok()) return FALSE; - wxCHECK_MSG( bitmap.GetBitmap(), FALSE, T("Cannot create mask from colour bitmap") ); + wxCHECK_MSG( bitmap.GetBitmap(), FALSE, wxT("Cannot create mask from colour bitmap") ); m_bitmap = gdk_pixmap_new( (GdkWindow*) &gdk_root_parent, bitmap.GetWidth(), bitmap.GetHeight(), 1 ); @@ -160,13 +160,13 @@ wxBitmap::wxBitmap() wxBitmap::wxBitmap( int width, int height, int depth ) { - wxCHECK_RET( (width > 0) && (height > 0), T("invalid bitmap size") ) + wxCHECK_RET( (width > 0) && (height > 0), wxT("invalid bitmap size") ) GdkWindow *parent = (GdkWindow*) &gdk_root_parent; if (depth == -1) depth = gdk_window_get_visual( parent )->depth; wxCHECK_RET( (depth == gdk_window_get_visual( parent )->depth) || - (depth == 1), T("invalid bitmap depth") ) + (depth == 1), wxT("invalid bitmap depth") ) m_refData = new wxBitmapRefData(); M_BMPDATA->m_mask = (wxMask *) NULL; @@ -188,7 +188,7 @@ wxBitmap::wxBitmap( int width, int height, int depth ) wxBitmap::wxBitmap( const char **bits ) { - wxCHECK_RET( bits != NULL, T("invalid bitmap data") ) + wxCHECK_RET( bits != NULL, wxT("invalid bitmap data") ) m_refData = new wxBitmapRefData(); @@ -211,7 +211,7 @@ wxBitmap::wxBitmap( const char **bits ) wxBitmap::wxBitmap( char **bits ) { - wxCHECK_RET( bits != NULL, T("invalid bitmap data") ) + wxCHECK_RET( bits != NULL, wxT("invalid bitmap data") ) m_refData = new wxBitmapRefData(); @@ -220,7 +220,7 @@ wxBitmap::wxBitmap( char **bits ) M_BMPDATA->m_pixmap = gdk_pixmap_create_from_xpm_d( parent, &mask, NULL, (gchar **) bits ); - wxCHECK_RET( M_BMPDATA->m_pixmap, T("couldn't create pixmap") ); + wxCHECK_RET( M_BMPDATA->m_pixmap, wxT("couldn't create pixmap") ); if (mask) { @@ -259,7 +259,7 @@ wxBitmap::wxBitmap( const char bits[], int width, int height, int WXUNUSED(depth M_BMPDATA->m_height = height; M_BMPDATA->m_bpp = 1; - wxCHECK_RET( M_BMPDATA->m_bitmap, T("couldn't create bitmap") ); + wxCHECK_RET( M_BMPDATA->m_bitmap, wxT("couldn't create bitmap") ); if (wxTheBitmapList) wxTheBitmapList->AddBitmap(this); } @@ -293,35 +293,35 @@ bool wxBitmap::Ok() const int wxBitmap::GetHeight() const { - wxCHECK_MSG( Ok(), -1, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid bitmap") ); return M_BMPDATA->m_height; } int wxBitmap::GetWidth() const { - wxCHECK_MSG( Ok(), -1, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid bitmap") ); return M_BMPDATA->m_width; } int wxBitmap::GetDepth() const { - wxCHECK_MSG( Ok(), -1, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid bitmap") ); return M_BMPDATA->m_bpp; } wxMask *wxBitmap::GetMask() const { - wxCHECK_MSG( Ok(), (wxMask *) NULL, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), (wxMask *) NULL, wxT("invalid bitmap") ); return M_BMPDATA->m_mask; } void wxBitmap::SetMask( wxMask *mask ) { - wxCHECK_RET( Ok(), T("invalid bitmap") ); + wxCHECK_RET( Ok(), wxT("invalid bitmap") ); if (M_BMPDATA->m_mask) delete M_BMPDATA->m_mask; @@ -330,7 +330,7 @@ void wxBitmap::SetMask( wxMask *mask ) bool wxBitmap::SaveFile( const wxString &name, int type, wxPalette *WXUNUSED(palette) ) { - wxCHECK_MSG( Ok(), FALSE, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), FALSE, wxT("invalid bitmap") ); if (type == wxBITMAP_TYPE_PNG) { @@ -420,14 +420,14 @@ void wxBitmap::SetPixmap( GdkPixmap *pixmap ) GdkPixmap *wxBitmap::GetPixmap() const { - wxCHECK_MSG( Ok(), (GdkPixmap *) NULL, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), (GdkPixmap *) NULL, wxT("invalid bitmap") ); return M_BMPDATA->m_pixmap; } GdkBitmap *wxBitmap::GetBitmap() const { - wxCHECK_MSG( Ok(), (GdkBitmap *) NULL, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), (GdkBitmap *) NULL, wxT("invalid bitmap") ); return M_BMPDATA->m_bitmap; } diff --git a/src/gtk/bmpbuttn.cpp b/src/gtk/bmpbuttn.cpp index 47f6662935..691e6912d7 100644 --- a/src/gtk/bmpbuttn.cpp +++ b/src/gtk/bmpbuttn.cpp @@ -121,7 +121,7 @@ bool wxBitmapButton::Create( wxWindow *parent, wxWindowID id, const wxBitmap &bi if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxBitmapButton creation failed") ); + wxFAIL_MSG( wxT("wxBitmapButton creation failed") ); return FALSE; } @@ -190,14 +190,14 @@ void wxBitmapButton::SetDefault() void wxBitmapButton::SetLabel( const wxString &label ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); wxControl::SetLabel( label ); } wxString wxBitmapButton::GetLabel() const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid button") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid button") ); return wxControl::GetLabel(); } @@ -208,7 +208,7 @@ void wxBitmapButton::ApplyWidgetStyle() void wxBitmapButton::SetBitmap() { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); wxBitmap the_one; @@ -243,7 +243,7 @@ void wxBitmapButton::SetBitmap() void wxBitmapButton::SetBitmapDisabled( const wxBitmap& bitmap ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); if ( ! m_disabled.Ok() ) return; m_disabled = bitmap; @@ -253,7 +253,7 @@ void wxBitmapButton::SetBitmapDisabled( const wxBitmap& bitmap ) void wxBitmapButton::SetBitmapFocus( const wxBitmap& bitmap ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); if ( ! m_focus.Ok() ) return; m_focus = bitmap; @@ -263,7 +263,7 @@ void wxBitmapButton::SetBitmapFocus( const wxBitmap& bitmap ) void wxBitmapButton::SetBitmapLabel( const wxBitmap& bitmap ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); if (!m_bitmap.Ok()) return; m_bitmap = bitmap; @@ -273,7 +273,7 @@ void wxBitmapButton::SetBitmapLabel( const wxBitmap& bitmap ) void wxBitmapButton::SetBitmapSelected( const wxBitmap& bitmap ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); if ( ! m_selected.Ok() ) return; m_selected = bitmap; @@ -314,5 +314,5 @@ void wxBitmapButton::EndSelect() m_isSelected = FALSE; SetBitmap(); } +#endif -#endif \ No newline at end of file diff --git a/src/gtk/brush.cpp b/src/gtk/brush.cpp index a324ecea66..b86a7615bc 100644 --- a/src/gtk/brush.cpp +++ b/src/gtk/brush.cpp @@ -111,7 +111,7 @@ int wxBrush::GetStyle() const { if (m_refData == NULL) { - wxFAIL_MSG( T("invalid brush") ); + wxFAIL_MSG( wxT("invalid brush") ); return 0; } @@ -122,7 +122,7 @@ wxColour &wxBrush::GetColour() const { if (m_refData == NULL) { - wxFAIL_MSG( T("invalid brush") ); + wxFAIL_MSG( wxT("invalid brush") ); return wxNullColour; } @@ -133,7 +133,7 @@ wxBitmap *wxBrush::GetStipple() const { if (m_refData == NULL) { - wxFAIL_MSG( T("invalid brush") ); + wxFAIL_MSG( wxT("invalid brush") ); return &wxNullBitmap; } diff --git a/src/gtk/button.cpp b/src/gtk/button.cpp index 0d2353b918..39d94b37b1 100644 --- a/src/gtk/button.cpp +++ b/src/gtk/button.cpp @@ -78,7 +78,7 @@ bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxButton creation failed") ); + wxFAIL_MSG( wxT("wxButton creation failed") ); return FALSE; } @@ -142,7 +142,7 @@ wxSize wxButton::GetDefaultSize() void wxButton::SetLabel( const wxString &label ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); wxControl::SetLabel( label ); diff --git a/src/gtk/checkbox.cpp b/src/gtk/checkbox.cpp index a7763349d2..1426171b56 100644 --- a/src/gtk/checkbox.cpp +++ b/src/gtk/checkbox.cpp @@ -75,7 +75,7 @@ bool wxCheckBox::Create(wxWindow *parent, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxCheckBox creation failed") ); + wxFAIL_MSG( wxT("wxCheckBox creation failed") ); return FALSE; } @@ -136,7 +136,7 @@ bool wxCheckBox::Create(wxWindow *parent, void wxCheckBox::SetValue( bool state ) { - wxCHECK_RET( m_widgetCheckbox != NULL, T("invalid checkbox") ); + wxCHECK_RET( m_widgetCheckbox != NULL, wxT("invalid checkbox") ); if (state == GetValue()) return; @@ -155,14 +155,14 @@ void wxCheckBox::SetValue( bool state ) bool wxCheckBox::GetValue() const { - wxCHECK_MSG( m_widgetCheckbox != NULL, FALSE, T("invalid checkbox") ); + wxCHECK_MSG( m_widgetCheckbox != NULL, FALSE, wxT("invalid checkbox") ); return GTK_TOGGLE_BUTTON(m_widgetCheckbox)->active; } void wxCheckBox::SetLabel( const wxString& label ) { - wxCHECK_RET( m_widgetLabel != NULL, T("invalid checkbox") ); + wxCHECK_RET( m_widgetLabel != NULL, wxT("invalid checkbox") ); wxControl::SetLabel( label ); diff --git a/src/gtk/checklst.cpp b/src/gtk/checklst.cpp index 5730929a86..de5d961859 100644 --- a/src/gtk/checklst.cpp +++ b/src/gtk/checklst.cpp @@ -44,7 +44,7 @@ wxCheckListBox::wxCheckListBox(wxWindow *parent, wxWindowID id, bool wxCheckListBox::IsChecked( int index ) const { - wxCHECK_MSG( m_list != NULL, FALSE, T("invalid checklistbox") ); + wxCHECK_MSG( m_list != NULL, FALSE, wxT("invalid checklistbox") ); GList *child = g_list_nth( m_list->children, index ); if (child) @@ -54,16 +54,16 @@ bool wxCheckListBox::IsChecked( int index ) const wxString str = wxString(label->label,*wxConvCurrent); - return (str[1] == T('X')); + return (str[1] == wxT('X')); } - wxFAIL_MSG(T("wrong checklistbox index")); + wxFAIL_MSG(wxT("wrong checklistbox index")); return FALSE; } void wxCheckListBox::Check( int index, bool check ) { - wxCHECK_RET( m_list != NULL, T("invalid checklistbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid checklistbox") ); GList *child = g_list_nth( m_list->children, index ); if (child) @@ -73,19 +73,19 @@ void wxCheckListBox::Check( int index, bool check ) wxString str = wxString(label->label,*wxConvCurrent); - if (check == (str[1] == T('X'))) return; + if (check == (str[1] == wxT('X'))) return; if (check) - str.SetChar( 1, T('X') ); + str.SetChar( 1, wxT('X') ); else - str.SetChar( 1, T('-') ); + str.SetChar( 1, wxT('-') ); gtk_label_set( label, str.mbc_str() ); return; } - wxFAIL_MSG(T("wrong checklistbox index")); + wxFAIL_MSG(wxT("wrong checklistbox index")); } int wxCheckListBox::GetItemHeight() const diff --git a/src/gtk/choice.cpp b/src/gtk/choice.cpp index 21a697ce57..32322e0a7f 100644 --- a/src/gtk/choice.cpp +++ b/src/gtk/choice.cpp @@ -75,7 +75,7 @@ bool wxChoice::Create( wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxChoice creation failed") ); + wxFAIL_MSG( wxT("wxChoice creation failed") ); return FALSE; } @@ -125,7 +125,7 @@ wxChoice::~wxChoice() void wxChoice::AppendCommon( const wxString &item ) { - wxCHECK_RET( m_widget != NULL, T("invalid choice") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid choice") ); GtkWidget *menu = gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) ); GtkWidget *menu_item = gtk_menu_item_new_with_label( item.mbc_str() ); @@ -172,7 +172,7 @@ void wxChoice::Append( const wxString &item, wxClientData *clientData ) void wxChoice::SetClientData( int n, void* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return; @@ -182,7 +182,7 @@ void wxChoice::SetClientData( int n, void* clientData ) void* wxChoice::GetClientData( int n ) { - wxCHECK_MSG( m_widget != NULL, NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return NULL; @@ -192,7 +192,7 @@ void* wxChoice::GetClientData( int n ) void wxChoice::SetClientObject( int n, wxClientData* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientObjectList.Nth( n ); if (!node) return; @@ -205,7 +205,7 @@ void wxChoice::SetClientObject( int n, wxClientData* clientData ) wxClientData* wxChoice::GetClientObject( int n ) { - wxCHECK_MSG( m_widget != NULL, (wxClientData*) NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, (wxClientData*) NULL, wxT("invalid combobox") ); wxNode *node = m_clientObjectList.Nth( n ); if (!node) return (wxClientData*) NULL; @@ -215,7 +215,7 @@ wxClientData* wxChoice::GetClientObject( int n ) void wxChoice::Clear() { - wxCHECK_RET( m_widget != NULL, T("invalid choice") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid choice") ); gtk_option_menu_remove_menu( GTK_OPTION_MENU(m_widget) ); GtkWidget *menu = gtk_menu_new(); @@ -235,12 +235,12 @@ void wxChoice::Clear() void wxChoice::Delete( int WXUNUSED(n) ) { - wxFAIL_MSG( T("wxChoice:Delete not implemented") ); + wxFAIL_MSG( wxT("wxChoice:Delete not implemented") ); } int wxChoice::FindString( const wxString &string ) const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid choice") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid choice") ); // If you read this code once and you think you understand // it, then you are very wrong. Robert Roebling. @@ -255,7 +255,7 @@ int wxChoice::FindString( const wxString &string ) const if (bin->child) label = GTK_LABEL(bin->child); if (!label) label = GTK_LABEL( GTK_BUTTON(m_widget)->child ); - wxASSERT_MSG( label != NULL , T("wxChoice: invalid label") ); + wxASSERT_MSG( label != NULL , wxT("wxChoice: invalid label") ); if (string == wxString(label->label,*wxConvCurrent)) return count; @@ -274,7 +274,7 @@ int wxChoice::GetColumns() const int wxChoice::GetSelection() { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid choice") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid choice") ); GtkMenuShell *menu_shell = GTK_MENU_SHELL( gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) ) ); int count = 0; @@ -292,7 +292,7 @@ int wxChoice::GetSelection() wxString wxChoice::GetString( int n ) const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid choice") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid choice") ); GtkMenuShell *menu_shell = GTK_MENU_SHELL( gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) ) ); int count = 0; @@ -306,7 +306,7 @@ wxString wxChoice::GetString( int n ) const if (bin->child) label = GTK_LABEL(bin->child); if (!label) label = GTK_LABEL( GTK_BUTTON(m_widget)->child ); - wxASSERT_MSG( label != NULL , T("wxChoice: invalid label") ); + wxASSERT_MSG( label != NULL , wxT("wxChoice: invalid label") ); return wxString(label->label,*wxConvCurrent); } @@ -314,25 +314,25 @@ wxString wxChoice::GetString( int n ) const count++; } - wxFAIL_MSG( T("wxChoice: invalid index in GetString()") ); + wxFAIL_MSG( wxT("wxChoice: invalid index in GetString()") ); - return T(""); + return wxT(""); } wxString wxChoice::GetStringSelection() const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid choice") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid choice") ); GtkLabel *label = GTK_LABEL( GTK_BUTTON(m_widget)->child ); - wxASSERT_MSG( label != NULL , T("wxChoice: invalid label") ); + wxASSERT_MSG( label != NULL , wxT("wxChoice: invalid label") ); return wxString(label->label,*wxConvCurrent); } int wxChoice::Number() const { - wxCHECK_MSG( m_widget != NULL, 0, T("invalid choice") ); + wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid choice") ); GtkMenuShell *menu_shell = GTK_MENU_SHELL( gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) ) ); int count = 0; @@ -351,7 +351,7 @@ void wxChoice::SetColumns( int WXUNUSED(n) ) void wxChoice::SetSelection( int n ) { - wxCHECK_RET( m_widget != NULL, T("invalid choice") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid choice") ); int tmp = n; gtk_option_menu_set_history( GTK_OPTION_MENU(m_widget), (gint)tmp ); @@ -359,7 +359,7 @@ void wxChoice::SetSelection( int n ) void wxChoice::SetStringSelection( const wxString &string ) { - wxCHECK_RET( m_widget != NULL, T("invalid choice") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid choice") ); int n = FindString( string ); if (n != -1) SetSelection( n ); diff --git a/src/gtk/clipbrd.cpp b/src/gtk/clipbrd.cpp index 29442366dc..d981a17e76 100644 --- a/src/gtk/clipbrd.cpp +++ b/src/gtk/clipbrd.cpp @@ -450,7 +450,7 @@ void wxClipboard::Clear() bool wxClipboard::Open() { - wxCHECK_MSG( !m_open, FALSE, T("clipboard already open") ); + wxCHECK_MSG( !m_open, FALSE, wxT("clipboard already open") ); m_open = TRUE; @@ -459,9 +459,9 @@ bool wxClipboard::Open() bool wxClipboard::SetData( wxDataObject *data ) { - wxCHECK_MSG( m_open, FALSE, T("clipboard not open") ); + wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") ); - wxCHECK_MSG( data, FALSE, T("data is invalid") ); + wxCHECK_MSG( data, FALSE, wxT("data is invalid") ); Clear(); @@ -470,9 +470,9 @@ bool wxClipboard::SetData( wxDataObject *data ) bool wxClipboard::AddData( wxDataObject *data ) { - wxCHECK_MSG( m_open, FALSE, T("clipboard not open") ); + wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") ); - wxCHECK_MSG( data, FALSE, T("data is invalid") ); + wxCHECK_MSG( data, FALSE, wxT("data is invalid") ); /* if clipboard has been cleared before, create new data broker */ if (!m_dataBroker) m_dataBroker = new wxDataBroker(); @@ -483,7 +483,7 @@ bool wxClipboard::AddData( wxDataObject *data ) /* get native format id of new data object */ GdkAtom format = data->GetFormat().GetAtom(); - wxCHECK_MSG( format, FALSE, T("data has invalid format") ); + wxCHECK_MSG( format, FALSE, wxT("data has invalid format") ); /* This should happen automatically, but to be on the safe side */ m_ownsClipboard = FALSE; @@ -563,20 +563,20 @@ bool wxClipboard::AddData( wxDataObject *data ) void wxClipboard::Close() { - wxCHECK_RET( m_open, T("clipboard not open") ); + wxCHECK_RET( m_open, wxT("clipboard not open") ); m_open = FALSE; } bool wxClipboard::IsSupported( wxDataFormat format ) { - wxCHECK_MSG( m_open, FALSE, T("clipboard not open") ); + wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") ); /* store requested format to be asked for by callbacks */ m_targetRequested = format.GetAtom(); - wxCHECK_MSG( m_targetRequested, FALSE, T("invalid clipboard format") ); + wxCHECK_MSG( m_targetRequested, FALSE, wxT("invalid clipboard format") ); m_formatSupported = FALSE; @@ -604,7 +604,7 @@ bool wxClipboard::IsSupported( wxDataFormat format ) bool wxClipboard::GetData( wxDataObject *data ) { - wxCHECK_MSG( m_open, FALSE, T("clipboard not open") ); + wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") ); /* is data supported by clipboard ? */ @@ -618,7 +618,7 @@ bool wxClipboard::GetData( wxDataObject *data ) m_targetRequested = data->GetFormat().GetAtom(); - wxCHECK_MSG( m_targetRequested, FALSE, T("invalid clipboard format") ); + wxCHECK_MSG( m_targetRequested, FALSE, wxT("invalid clipboard format") ); /* start query */ @@ -644,7 +644,7 @@ bool wxClipboard::GetData( wxDataObject *data ) /* this is a true error as we checked for the presence of such data before */ - wxCHECK_MSG( m_formatSupported, FALSE, T("error retrieving data from clipboard") ); + wxCHECK_MSG( m_formatSupported, FALSE, wxT("error retrieving data from clipboard") ); return TRUE; } diff --git a/src/gtk/colour.cpp b/src/gtk/colour.cpp index ac8a7022dd..a4ca937116 100644 --- a/src/gtk/colour.cpp +++ b/src/gtk/colour.cpp @@ -91,8 +91,8 @@ void wxColour::InitFromName( const wxString &colourName ) m_refData = new wxColourRefData(); if (!gdk_color_parse( colourName.mb_str(), &M_COLDATA->m_color )) { - wxFAIL_MSG( T("wxColour: couldn't find colour") ); - wxPrintf( T("Colourname %s.\n"), WXSTRINGCAST colourName ); + wxFAIL_MSG( wxT("wxColour: couldn't find colour") ); + wxPrintf( wxT("Colourname %s.\n"), WXSTRINGCAST colourName ); delete m_refData; m_refData = (wxObjectRefData *) NULL; @@ -149,21 +149,21 @@ void wxColour::Set( unsigned char red, unsigned char green, unsigned char blue ) unsigned char wxColour::Red() const { - wxCHECK_MSG( Ok(), 0, T("invalid colour") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid colour") ); return (unsigned char)(M_COLDATA->m_color.red >> SHIFT); } unsigned char wxColour::Green() const { - wxCHECK_MSG( Ok(), 0, T("invalid colour") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid colour") ); return (unsigned char)(M_COLDATA->m_color.green >> SHIFT); } unsigned char wxColour::Blue() const { - wxCHECK_MSG( Ok(), 0, T("invalid colour") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid colour") ); return (unsigned char)(M_COLDATA->m_color.blue >> SHIFT); } @@ -211,14 +211,14 @@ void wxColour::CalcPixel( GdkColormap *cmap ) int wxColour::GetPixel() const { - wxCHECK_MSG( Ok(), 0, T("invalid colour") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid colour") ); return M_COLDATA->m_color.pixel; } GdkColor *wxColour::GetColor() const { - wxCHECK_MSG( Ok(), (GdkColor *) NULL, T("invalid colour") ); + wxCHECK_MSG( Ok(), (GdkColor *) NULL, wxT("invalid colour") ); return &M_COLDATA->m_color; } diff --git a/src/gtk/combobox.cpp b/src/gtk/combobox.cpp index 74ca53348b..a0a91e6a58 100644 --- a/src/gtk/combobox.cpp +++ b/src/gtk/combobox.cpp @@ -104,7 +104,7 @@ bool wxComboBox::Create( wxWindow *parent, wxWindowID id, const wxString& value, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxComboBox creation failed") ); + wxFAIL_MSG( wxT("wxComboBox creation failed") ); return FALSE; } @@ -180,7 +180,7 @@ wxComboBox::~wxComboBox() void wxComboBox::AppendCommon( const wxString &item ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -228,7 +228,7 @@ void wxComboBox::Append( const wxString &item, wxClientData *clientData ) void wxComboBox::SetClientData( int n, void* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return; @@ -238,7 +238,7 @@ void wxComboBox::SetClientData( int n, void* clientData ) void* wxComboBox::GetClientData( int n ) { - wxCHECK_MSG( m_widget != NULL, NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return NULL; @@ -248,7 +248,7 @@ void* wxComboBox::GetClientData( int n ) void wxComboBox::SetClientObject( int n, wxClientData* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientObjectList.Nth( n ); if (!node) return; @@ -261,7 +261,7 @@ void wxComboBox::SetClientObject( int n, wxClientData* clientData ) wxClientData* wxComboBox::GetClientObject( int n ) { - wxCHECK_MSG( m_widget != NULL, (wxClientData*)NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, (wxClientData*)NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return (wxClientData*) NULL; @@ -271,7 +271,7 @@ wxClientData* wxComboBox::GetClientObject( int n ) void wxComboBox::Clear() { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; gtk_list_clear_items( GTK_LIST(list), 0, Number() ); @@ -290,7 +290,7 @@ void wxComboBox::Clear() void wxComboBox::Delete( int n ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkList *listbox = GTK_LIST( GTK_COMBO(m_widget)->list ); @@ -298,7 +298,7 @@ void wxComboBox::Delete( int n ) if (!child) { - wxFAIL_MSG(T("wrong index")); + wxFAIL_MSG(wxT("wrong index")); return; } @@ -323,7 +323,7 @@ void wxComboBox::Delete( int n ) int wxComboBox::FindString( const wxString &item ) { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -344,7 +344,7 @@ int wxComboBox::FindString( const wxString &item ) int wxComboBox::GetSelection() const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -366,7 +366,7 @@ int wxComboBox::GetSelection() const wxString wxComboBox::GetString( int n ) const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -380,7 +380,7 @@ wxString wxComboBox::GetString( int n ) const } else { - wxFAIL_MSG( T("wxComboBox: wrong index") ); + wxFAIL_MSG( wxT("wxComboBox: wrong index") ); } return str; @@ -388,7 +388,7 @@ wxString wxComboBox::GetString( int n ) const wxString wxComboBox::GetStringSelection() const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -400,14 +400,14 @@ wxString wxComboBox::GetStringSelection() const return tmp; } - wxFAIL_MSG( T("wxComboBox: no selection") ); + wxFAIL_MSG( wxT("wxComboBox: no selection") ); - return T(""); + return wxT(""); } int wxComboBox::Number() const { - wxCHECK_MSG( m_widget != NULL, 0, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -419,7 +419,7 @@ int wxComboBox::Number() const void wxComboBox::SetSelection( int n ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); DisableEvents(); @@ -431,7 +431,7 @@ void wxComboBox::SetSelection( int n ) void wxComboBox::SetStringSelection( const wxString &string ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); int res = FindString( string ); if (res == -1) return; @@ -447,17 +447,17 @@ wxString wxComboBox::GetValue() const void wxComboBox::SetValue( const wxString& value ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; - wxString tmp = T(""); + wxString tmp = wxT(""); if (!value.IsNull()) tmp = value; gtk_entry_set_text( GTK_ENTRY(entry), tmp.mbc_str() ); } void wxComboBox::Copy() { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; #if (GTK_MINOR_VERSION > 0) @@ -469,7 +469,7 @@ void wxComboBox::Copy() void wxComboBox::Cut() { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; #if (GTK_MINOR_VERSION > 0) @@ -481,7 +481,7 @@ void wxComboBox::Cut() void wxComboBox::Paste() { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; #if (GTK_MINOR_VERSION > 0) @@ -493,7 +493,7 @@ void wxComboBox::Paste() void wxComboBox::SetInsertionPoint( long pos ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; gtk_entry_set_position( GTK_ENTRY(entry), (int)pos ); @@ -501,7 +501,7 @@ void wxComboBox::SetInsertionPoint( long pos ) void wxComboBox::SetInsertionPointEnd() { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); SetInsertionPoint( -1 ); } @@ -521,7 +521,7 @@ long wxComboBox::GetLastPosition() const void wxComboBox::Replace( long from, long to, const wxString& value ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); // FIXME: not quite sure how to do this method right in multibyte mode GtkWidget *entry = GTK_COMBO(m_widget)->entry; @@ -533,7 +533,7 @@ void wxComboBox::Replace( long from, long to, const wxString& value ) void wxComboBox::Remove(long from, long to) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; gtk_editable_delete_text( GTK_EDITABLE(entry), (gint)from, (gint)to ); diff --git a/src/gtk/control.cpp b/src/gtk/control.cpp index d69fae8dc1..12cc6a70df 100644 --- a/src/gtk/control.cpp +++ b/src/gtk/control.cpp @@ -39,13 +39,13 @@ wxControl::wxControl( wxWindow *parent, void wxControl::SetLabel( const wxString &label ) { m_label.Empty(); - for ( const wxChar *pc = label; *pc != T('\0'); pc++ ) + for ( const wxChar *pc = label; *pc != wxT('\0'); pc++ ) { - if ( *pc == T('&') ) + if ( *pc == wxT('&') ) { pc++; // skip it #if 0 // it would be unused anyhow for now - kbd interface not done yet - if ( *pc != T('&') ) m_chAccel = *pc; + if ( *pc != wxT('&') ) m_chAccel = *pc; #endif } m_label << *pc; diff --git a/src/gtk/cursor.cpp b/src/gtk/cursor.cpp index 17646128c6..3eca3593ef 100644 --- a/src/gtk/cursor.cpp +++ b/src/gtk/cursor.cpp @@ -95,7 +95,7 @@ wxCursor::wxCursor( int cursorId ) case wxCURSOR_BASED_ARROW_DOWN: gdk_cur = GDK_BASED_ARROW_DOWN; break; */ default: - wxFAIL_MSG(T("unsupported cursor type")); + wxFAIL_MSG(wxT("unsupported cursor type")); // will use the standard one case wxCURSOR_ARROW: @@ -170,7 +170,7 @@ void wxBeginBusyCursor( wxCursor *WXUNUSED(cursor) ) return; wxASSERT_MSG( !gs_savedCursor.Ok(), - T("forgot to call wxEndBusyCursor, will leak memory") ); + wxT("forgot to call wxEndBusyCursor, will leak memory") ); gs_savedCursor = g_globalCursor; diff --git a/src/gtk/data.cpp b/src/gtk/data.cpp index 063c74c4fe..3d2f42a354 100644 --- a/src/gtk/data.cpp +++ b/src/gtk/data.cpp @@ -142,45 +142,45 @@ wxColour wxNullColour; wxPalette wxNullPalette; /* Default window names */ -const wxChar *wxButtonNameStr = T("button"); -const wxChar *wxCanvasNameStr = T("canvas"); -const wxChar *wxCheckBoxNameStr = T("check"); -const wxChar *wxChoiceNameStr = T("choice"); -const wxChar *wxComboBoxNameStr = T("comboBox"); -const wxChar *wxDialogNameStr = T("dialog"); -const wxChar *wxFrameNameStr = T("frame"); -const wxChar *wxGaugeNameStr = T("gauge"); -const wxChar *wxStaticBoxNameStr = T("groupBox"); -const wxChar *wxListBoxNameStr = T("listBox"); -const wxChar *wxStaticTextNameStr = T("message"); -const wxChar *wxStaticBitmapNameStr = T("message"); -const wxChar *wxMultiTextNameStr = T("multitext"); -const wxChar *wxPanelNameStr = T("panel"); -const wxChar *wxRadioBoxNameStr = T("radioBox"); -const wxChar *wxRadioButtonNameStr = T("radioButton"); -const wxChar *wxBitmapRadioButtonNameStr = T("radioButton"); -const wxChar *wxScrollBarNameStr = T("scrollBar"); -const wxChar *wxSliderNameStr = T("slider"); -const wxChar *wxStaticNameStr = T("static"); -const wxChar *wxTextCtrlWindowNameStr = T("textWindow"); -const wxChar *wxTextCtrlNameStr = T("text"); -const wxChar *wxVirtListBoxNameStr = T("virtListBox"); -const wxChar *wxButtonBarNameStr = T("buttonbar"); -const wxChar *wxEnhDialogNameStr = T("Shell"); -const wxChar *wxToolBarNameStr = T("toolbar"); -const wxChar *wxStatusLineNameStr = T("status_line"); -const wxChar *wxGetTextFromUserPromptStr = T("Input Text"); -const wxChar *wxMessageBoxCaptionStr = T("Message"); -const wxChar *wxFileSelectorPromptStr = T("Select a file"); -const wxChar *wxFileSelectorDefaultWildcardStr = T("*"); -const wxChar *wxInternalErrorStr = T("wxWindows Internal Error"); -const wxChar *wxFatalErrorStr = T("wxWindows Fatal Error"); -const wxChar *wxDirDialogNameStr = T("wxDirCtrl"); -const wxChar *wxDirDialogDefaultFolderStr = T("/"); +const wxChar *wxButtonNameStr = wxT("button"); +const wxChar *wxCanvasNameStr = wxT("canvas"); +const wxChar *wxCheckBoxNameStr = wxT("check"); +const wxChar *wxChoiceNameStr = wxT("choice"); +const wxChar *wxComboBoxNameStr = wxT("comboBox"); +const wxChar *wxDialogNameStr = wxT("dialog"); +const wxChar *wxFrameNameStr = wxT("frame"); +const wxChar *wxGaugeNameStr = wxT("gauge"); +const wxChar *wxStaticBoxNameStr = wxT("groupBox"); +const wxChar *wxListBoxNameStr = wxT("listBox"); +const wxChar *wxStaticTextNameStr = wxT("message"); +const wxChar *wxStaticBitmapNameStr = wxT("message"); +const wxChar *wxMultiTextNameStr = wxT("multitext"); +const wxChar *wxPanelNameStr = wxT("panel"); +const wxChar *wxRadioBoxNameStr = wxT("radioBox"); +const wxChar *wxRadioButtonNameStr = wxT("radioButton"); +const wxChar *wxBitmapRadioButtonNameStr = wxT("radioButton"); +const wxChar *wxScrollBarNameStr = wxT("scrollBar"); +const wxChar *wxSliderNameStr = wxT("slider"); +const wxChar *wxStaticNameStr = wxT("static"); +const wxChar *wxTextCtrlWindowNameStr = wxT("textWindow"); +const wxChar *wxTextCtrlNameStr = wxT("text"); +const wxChar *wxVirtListBoxNameStr = wxT("virtListBox"); +const wxChar *wxButtonBarNameStr = wxT("buttonbar"); +const wxChar *wxEnhDialogNameStr = wxT("Shell"); +const wxChar *wxToolBarNameStr = wxT("toolbar"); +const wxChar *wxStatusLineNameStr = wxT("status_line"); +const wxChar *wxGetTextFromUserPromptStr = wxT("Input Text"); +const wxChar *wxMessageBoxCaptionStr = wxT("Message"); +const wxChar *wxFileSelectorPromptStr = wxT("Select a file"); +const wxChar *wxFileSelectorDefaultWildcardStr = wxT("*"); +const wxChar *wxInternalErrorStr = wxT("wxWindows Internal Error"); +const wxChar *wxFatalErrorStr = wxT("wxWindows Fatal Error"); +const wxChar *wxDirDialogNameStr = wxT("wxDirCtrl"); +const wxChar *wxDirDialogDefaultFolderStr = wxT("/"); /* See wx/utils.h */ -const wxChar *wxFloatToStringStr = T("%.2f"); -const wxChar *wxDoubleToStringStr = T("%.2f"); +const wxChar *wxFloatToStringStr = wxT("%.2f"); +const wxChar *wxDoubleToStringStr = wxT("%.2f"); /* Dafaults for wxWindow etc. */ const wxSize wxDefaultSize(-1, -1); diff --git a/src/gtk/dataobj.cpp b/src/gtk/dataobj.cpp index 8b217e7bc4..d1668eb212 100644 --- a/src/gtk/dataobj.cpp +++ b/src/gtk/dataobj.cpp @@ -87,7 +87,7 @@ wxDataFormat::wxDataFormat( const GdkAtom atom ) m_type = wxDF_PRIVATE; m_id = gdk_atom_name( m_atom ); - if (m_id == T("file:ALL")) + if (m_id == wxT("file:ALL")) { m_type = wxDF_FILENAME; } @@ -100,21 +100,21 @@ void wxDataFormat::SetType( wxDataFormatId type ) if (m_type == wxDF_TEXT) { - m_id = T("STRING"); + m_id = wxT("STRING"); } else if (m_type == wxDF_BITMAP) { - m_id = T("image/png"); + m_id = wxT("image/png"); } else if (m_type == wxDF_FILENAME) { - m_id = T("file:ALL"); + m_id = wxT("file:ALL"); } else { - wxFAIL_MSG( T("invalid dataformat") ); + wxFAIL_MSG( wxT("invalid dataformat") ); } m_hasAtom = FALSE; @@ -484,7 +484,7 @@ void wxPrivateDataObject::Free() wxPrivateDataObject::wxPrivateDataObject() { - wxString id = T("application/"); + wxString id = wxT("application/"); id += wxTheApp->GetAppName(); m_format.SetId( id ); diff --git a/src/gtk/dcclient.cpp b/src/gtk/dcclient.cpp index d0d94aaaf4..668155d07c 100644 --- a/src/gtk/dcclient.cpp +++ b/src/gtk/dcclient.cpp @@ -112,11 +112,11 @@ wxWindowDC::wxWindowDC( wxWindow *window ) m_isMemDC = FALSE; m_font = window->GetFont(); - wxASSERT_MSG( window, T("DC needs a window") ); + wxASSERT_MSG( window, wxT("DC needs a window") ); GtkWidget *widget = window->m_wxwindow; - wxASSERT_MSG( widget, T("DC needs a widget") ); + wxASSERT_MSG( widget, wxT("DC needs a widget") ); m_window = widget->window; @@ -154,18 +154,18 @@ wxWindowDC::~wxWindowDC() void wxWindowDC::DoFloodFill( long WXUNUSED(x), long WXUNUSED(y), const wxColour &WXUNUSED(col), int WXUNUSED(style) ) { - wxFAIL_MSG( T("wxWindowDC::DoFloodFill not implemented") ); + wxFAIL_MSG( wxT("wxWindowDC::DoFloodFill not implemented") ); } bool wxWindowDC::DoGetPixel( long WXUNUSED(x1), long WXUNUSED(y1), wxColour *WXUNUSED(col) ) const { - wxFAIL_MSG( T("wxWindowDC::DoGetPixel not implemented") ); + wxFAIL_MSG( wxT("wxWindowDC::DoGetPixel not implemented") ); return FALSE; } void wxWindowDC::DoDrawLine( long x1, long y1, long x2, long y2 ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_pen.GetStyle() != wxTRANSPARENT) { @@ -179,7 +179,7 @@ void wxWindowDC::DoDrawLine( long x1, long y1, long x2, long y2 ) void wxWindowDC::DoCrossHair( long x, long y ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_pen.GetStyle() != wxTRANSPARENT) { @@ -199,7 +199,7 @@ void wxWindowDC::DoCrossHair( long x, long y ) void wxWindowDC::DoDrawArc( long x1, long y1, long x2, long y2, long xc, long yc ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); long xx1 = XLOG2DEV(x1); long yy1 = YLOG2DEV(y1); @@ -252,7 +252,7 @@ void wxWindowDC::DoDrawArc( long x1, long y1, long x2, long y2, void wxWindowDC::DoDrawEllipticArc( long x, long y, long width, long height, double sa, double ea ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); long xx = XLOG2DEV(x); long yy = YLOG2DEV(y); @@ -281,7 +281,7 @@ void wxWindowDC::DoDrawEllipticArc( long x, long y, long width, long height, dou void wxWindowDC::DoDrawPoint( long x, long y ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if ((m_pen.GetStyle() != wxTRANSPARENT) && m_window) gdk_draw_point( m_window, m_penGC, XLOG2DEV(x), YLOG2DEV(y) ); @@ -291,7 +291,7 @@ void wxWindowDC::DoDrawPoint( long x, long y ) void wxWindowDC::DoDrawLines( int n, wxPoint points[], long xoffset, long yoffset ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_pen.GetStyle() == wxTRANSPARENT) return; if (n <= 0) return; @@ -314,7 +314,7 @@ void wxWindowDC::DoDrawLines( int n, wxPoint points[], long xoffset, long yoffse void wxWindowDC::DoDrawPolygon( int n, wxPoint points[], long xoffset, long yoffset, int WXUNUSED(fillStyle) ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (n <= 0) return; @@ -350,7 +350,7 @@ void wxWindowDC::DoDrawPolygon( int n, wxPoint points[], long xoffset, long yoff void wxWindowDC::DoDrawRectangle( long x, long y, long width, long height ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); long xx = XLOG2DEV(x); long yy = YLOG2DEV(y); @@ -379,7 +379,7 @@ void wxWindowDC::DoDrawRectangle( long x, long y, long width, long height ) void wxWindowDC::DoDrawRoundedRectangle( long x, long y, long width, long height, double radius ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (radius < 0.0) radius = - radius * ((width < height) ? width : height); @@ -451,7 +451,7 @@ void wxWindowDC::DoDrawRoundedRectangle( long x, long y, long width, long height void wxWindowDC::DoDrawEllipse( long x, long y, long width, long height ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); long xx = XLOG2DEV(x); long yy = YLOG2DEV(y); @@ -485,9 +485,9 @@ void wxWindowDC::DoDrawBitmap( const wxBitmap &bitmap, long x, long y, bool useMask ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); - wxCHECK_RET( bitmap.Ok(), T("invalid bitmap") ); + wxCHECK_RET( bitmap.Ok(), wxT("invalid bitmap") ); /* scale/translate size and position */ @@ -566,9 +566,9 @@ bool wxWindowDC::DoBlit( long xdest, long ydest, long width, long height, of the source dc, but scales correctly on the target dc and knows about possible mask information in a memory dc. */ - wxCHECK_MSG( Ok(), FALSE, T("invalid window dc") ); + wxCHECK_MSG( Ok(), FALSE, wxT("invalid window dc") ); - wxCHECK_MSG( source, FALSE, T("invalid source dc") ); + wxCHECK_MSG( source, FALSE, wxT("invalid source dc") ); if (!m_window) return FALSE; @@ -754,7 +754,7 @@ bool wxWindowDC::DoBlit( long xdest, long ydest, long width, long height, void wxWindowDC::DoDrawText( const wxString &text, long x, long y ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (!m_window) return; @@ -819,7 +819,7 @@ long wxWindowDC::GetCharHeight() const void wxWindowDC::Clear() { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (!m_window) return; @@ -854,7 +854,7 @@ void wxWindowDC::SetFont( const wxFont &font ) void wxWindowDC::SetPen( const wxPen &pen ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_pen == pen) return; @@ -985,7 +985,7 @@ void wxWindowDC::SetPen( const wxPen &pen ) void wxWindowDC::SetBrush( const wxBrush &brush ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_brush == brush) return; @@ -1027,7 +1027,7 @@ void wxWindowDC::SetBackground( const wxBrush &brush ) /* CMB 21/7/98: Added SetBackground. Sets background brush * for Clear() and bg colour for shapes filled with cross-hatch brush */ - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_backgroundBrush == brush) return; @@ -1069,7 +1069,7 @@ void wxWindowDC::SetBackground( const wxBrush &brush ) void wxWindowDC::SetLogicalFunction( int function ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_logicalFunction == function) return; @@ -1097,7 +1097,7 @@ void wxWindowDC::SetLogicalFunction( int function ) #endif default: { - wxFAIL_MSG( T("unsupported logical function") ); + wxFAIL_MSG( wxT("unsupported logical function") ); break; } } @@ -1113,7 +1113,7 @@ void wxWindowDC::SetLogicalFunction( int function ) void wxWindowDC::SetTextForeground( const wxColour &col ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_textForegroundColour == col) return; @@ -1128,7 +1128,7 @@ void wxWindowDC::SetTextForeground( const wxColour &col ) void wxWindowDC::SetTextBackground( const wxColour &col ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_textBackgroundColour == col) return; @@ -1143,7 +1143,7 @@ void wxWindowDC::SetTextBackground( const wxColour &col ) void wxWindowDC::SetBackgroundMode( int mode ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); m_backgroundMode = mode; @@ -1161,12 +1161,12 @@ void wxWindowDC::SetBackgroundMode( int mode ) void wxWindowDC::SetPalette( const wxPalette& WXUNUSED(palette) ) { - wxFAIL_MSG( T("wxWindowDC::SetPalette not implemented") ); + wxFAIL_MSG( wxT("wxWindowDC::SetPalette not implemented") ); } void wxWindowDC::DoSetClippingRegion( long x, long y, long width, long height ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); wxDC::DoSetClippingRegion( x, y, width, height ); @@ -1185,7 +1185,7 @@ void wxWindowDC::DoSetClippingRegion( long x, long y, long width, long height ) void wxWindowDC::DoSetClippingRegionAsRegion( const wxRegion ®ion ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (region.Empty()) { @@ -1203,7 +1203,7 @@ void wxWindowDC::DoSetClippingRegionAsRegion( const wxRegion ®ion ) void wxWindowDC::DestroyClippingRegion() { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); wxDC::DestroyClippingRegion(); @@ -1306,7 +1306,7 @@ wxSize wxWindowDC::GetPPI() const int wxWindowDC::GetDepth() const { - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return -1; } @@ -1429,7 +1429,7 @@ static void wx_spline_draw_point_array(wxDC *dc) void wxWindowDC::DoDrawSpline( wxList *points ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); wxPoint *p; double cx1, cy1, cx2, cy2, cx3, cy3, cx4, cy4; diff --git a/src/gtk/dialog.cpp b/src/gtk/dialog.cpp index 275b1eb4e9..138fb5e769 100644 --- a/src/gtk/dialog.cpp +++ b/src/gtk/dialog.cpp @@ -288,7 +288,7 @@ bool wxDialog::Create( wxWindow *parent, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxDialog creation failed") ); + wxFAIL_MSG( wxT("wxDialog creation failed") ); return FALSE; } @@ -356,7 +356,7 @@ wxDialog::~wxDialog() void wxDialog::SetTitle( const wxString& title ) { m_title = title; - if (m_title.IsNull()) m_title = T(""); + if (m_title.IsNull()) m_title = wxT(""); gtk_window_set_title( GTK_WINDOW(m_widget), m_title.mbc_str() ); } @@ -442,7 +442,7 @@ bool wxDialog::Destroy() void wxDialog::OnSize( wxSizeEvent &WXUNUSED(event) ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid dialog") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid dialog") ); #if wxUSE_CONSTRAINTS if (GetAutoLayout()) @@ -477,8 +477,8 @@ void wxDialog::OnSize( wxSizeEvent &WXUNUSED(event) ) void wxDialog::DoSetSize( int x, int y, int width, int height, int sizeFlags ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid dialog") ); - wxASSERT_MSG( (m_wxwindow != NULL), T("invalid dialog") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid dialog") ); + wxASSERT_MSG( (m_wxwindow != NULL), wxT("invalid dialog") ); if (m_resizing) return; /* I don't like recursions */ m_resizing = TRUE; @@ -567,7 +567,7 @@ void wxDialog::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int heigh void wxDialog::Centre( int direction ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid dialog") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid dialog") ); int x = 0; int y = 0; @@ -623,14 +623,14 @@ void wxDialog::SetModal( bool WXUNUSED(flag) ) else if (m_windowStyle & wxDIALOG_MODAL) m_windowStyle -= wxDIALOG_MODAL; */ - wxFAIL_MSG( T("wxDialog:SetModal obsolete now") ); + wxFAIL_MSG( wxT("wxDialog:SetModal obsolete now") ); } int wxDialog::ShowModal() { if (IsModal()) { - wxFAIL_MSG( T("wxDialog:ShowModal called twice") ); + wxFAIL_MSG( wxT("wxDialog:ShowModal called twice") ); return GetReturnCode(); } @@ -653,7 +653,7 @@ void wxDialog::EndModal( int retCode ) if (!IsModal()) { - wxFAIL_MSG( T("wxDialog:EndModal called twice") ); + wxFAIL_MSG( wxT("wxDialog:EndModal called twice") ); return; } diff --git a/src/gtk/dnd.cpp b/src/gtk/dnd.cpp index 7189c1286b..6f3cd22a25 100644 --- a/src/gtk/dnd.cpp +++ b/src/gtk/dnd.cpp @@ -367,9 +367,9 @@ bool wxDropTarget::RequestData( wxDataFormat format ) if (!m_dragWidget) return FALSE; /* - wxPrintf( T("format: %s.\n"), format.GetId().c_str() ); - if (format.GetType() == wxDF_PRIVATE) wxPrintf( T("private data.\n") ); - if (format.GetType() == wxDF_TEXT) wxPrintf( T("text data.\n") ); + wxPrintf( wxT("format: %s.\n"), format.GetId().c_str() ); + if (format.GetType() == wxDF_PRIVATE) wxPrintf( wxT("private data.\n") ); + if (format.GetType() == wxDF_TEXT) wxPrintf( wxT("text data.\n") ); */ #if wxUSE_THREADS @@ -437,7 +437,7 @@ bool wxDropTarget::GetData( wxDataObject *data_object ) void wxDropTarget::UnregisterWidget( GtkWidget *widget ) { - wxCHECK_RET( widget != NULL, T("unregister widget is NULL") ); + wxCHECK_RET( widget != NULL, wxT("unregister widget is NULL") ); gtk_drag_dest_unset( widget ); @@ -456,7 +456,7 @@ void wxDropTarget::UnregisterWidget( GtkWidget *widget ) void wxDropTarget::RegisterWidget( GtkWidget *widget ) { - wxCHECK_RET( widget != NULL, T("register widget is NULL") ); + wxCHECK_RET( widget != NULL, wxT("register widget is NULL") ); /* gtk_drag_dest_set() determines what default behaviour we'd like GTK to supply. we don't want to specify out targets (=formats) @@ -817,7 +817,7 @@ wxDropSource::~wxDropSource(void) wxDragResult wxDropSource::DoDragDrop( bool WXUNUSED(bAllowMove) ) { - wxASSERT_MSG( m_data, T("wxDragSource: no data") ); + wxASSERT_MSG( m_data, wxT("wxDragSource: no data") ); if (!m_data) return (wxDragResult) wxDragNone; diff --git a/src/gtk/filedlg.cpp b/src/gtk/filedlg.cpp index 65552158fd..17d9087884 100644 --- a/src/gtk/filedlg.cpp +++ b/src/gtk/filedlg.cpp @@ -117,14 +117,14 @@ wxFileDialog::wxFileDialog( wxWindow *parent, const wxString& message, m_needParent = FALSE; if (!PreCreation( parent, pos, wxDefaultSize ) || - !CreateBase( parent, -1, pos, wxDefaultSize, style | wxDIALOG_MODAL, wxDefaultValidator, T("filedialog") )) + !CreateBase( parent, -1, pos, wxDefaultSize, style | wxDIALOG_MODAL, wxDefaultValidator, wxT("filedialog") )) { - wxFAIL_MSG( T("wxXX creation failed") ); + wxFAIL_MSG( wxT("wxXX creation failed") ); return; } m_message = message; - m_path = T(""); + m_path = wxT(""); m_fileName = defaultFileName; m_dir = defaultDir; m_wildCard = wildCard; @@ -141,7 +141,7 @@ wxFileDialog::wxFileDialog( wxWindow *parent, const wxString& message, gtk_file_selection_hide_fileop_buttons( sel ); // they don't work anyway m_path.Append(m_dir); - if( ! m_path.IsEmpty() && m_path.Last()!=T('/') ) + if( ! m_path.IsEmpty() && m_path.Last()!=wxT('/') ) m_path.Append('/'); m_path.Append(m_fileName); @@ -173,7 +173,7 @@ void wxFileDialog::SetPath(const wxString& path) wxSplitPath(path, &m_dir, &m_fileName, &ext); if (!ext.IsEmpty()) { - m_fileName += T("."); + m_fileName += wxT("."); m_fileName += ext; } } @@ -194,7 +194,7 @@ wxFileSelectorEx(const wxChar *message, int x, int y) { // TODO: implement this somehow - return wxFileSelector(message, default_path, default_filename, T(""), + return wxFileSelector(message, default_path, default_filename, wxT(""), wildcard, flags, parent, x, y); } @@ -205,7 +205,7 @@ wxString wxFileSelector( const wxChar *title, { wxString filter2; if ( defaultExtension && !filter ) - filter2 = wxString(T("*.")) + wxString(defaultExtension) ; + filter2 = wxString(wxT("*.")) + wxString(defaultExtension) ; else if ( filter ) filter2 = filter; @@ -237,9 +237,9 @@ wxString wxLoadFileSelector( const wxChar *what, const wxChar *extension, const wxString str = _("Load %s file"); wxSprintf(prompt, str, what); - if (*ext == T('.')) ext++; + if (*ext == wxT('.')) ext++; wxChar wild[60]; - wxSprintf(wild, T("*.%s"), ext); + wxSprintf(wild, wxT("*.%s"), ext); return wxFileSelector (prompt, (const wxChar *) NULL, default_name, ext, wild, 0, parent); } @@ -253,9 +253,9 @@ wxString wxSaveFileSelector(const wxChar *what, const wxChar *extension, const w wxString str = _("Save %s file"); wxSprintf(prompt, str, what); - if (*ext == T('.')) ext++; + if (*ext == wxT('.')) ext++; wxChar wild[60]; - wxSprintf(wild, T("*.%s"), ext); + wxSprintf(wild, wxT("*.%s"), ext); return wxFileSelector (prompt, (const wxChar *) NULL, default_name, ext, wild, 0, parent); } diff --git a/src/gtk/font.cpp b/src/gtk/font.cpp index c27134680f..72348fda2c 100644 --- a/src/gtk/font.cpp +++ b/src/gtk/font.cpp @@ -162,18 +162,18 @@ wxFont::wxFont( GdkFont *WXUNUSED(font), char *xFontName ) wxString tmp; wxString fontname( xFontName ); - wxStringTokenizer tn( fontname, T("-") ); + wxStringTokenizer tn( fontname, wxT("-") ); tn.GetNextToken(); // foundry M_FONTDATA->m_faceName = tn.GetNextToken(); // courier tmp = tn.GetNextToken().MakeUpper(); - if (tmp == T("BOLD")) M_FONTDATA->m_weight = wxBOLD; + if (tmp == wxT("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; + if (tmp == wxT("I")) M_FONTDATA->m_style = wxITALIC; + if (tmp == wxT("O")) M_FONTDATA->m_style = wxITALIC; tn.GetNextToken(); // set width tn.GetNextToken(); // ? @@ -187,12 +187,12 @@ wxFont::wxFont( GdkFont *WXUNUSED(font), char *xFontName ) 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; + if (tmp == wxT("M")) M_FONTDATA->m_family = wxMODERN; + else if (M_FONTDATA->m_faceName == wxT("TIMES")) M_FONTDATA->m_family = wxROMAN; + else if (M_FONTDATA->m_faceName == wxT("HELVETICA")) M_FONTDATA->m_family = wxSWISS; + else if (M_FONTDATA->m_faceName == wxT("LUCIDATYPEWRITER")) M_FONTDATA->m_family = wxTELETYPE; + else if (M_FONTDATA->m_faceName == wxT("LUCIDA")) M_FONTDATA->m_family = wxDECORATIVE; + else if (M_FONTDATA->m_faceName == wxT("UTOPIA")) M_FONTDATA->m_family = wxSCRIPT; } bool wxFont::Create( int pointSize, @@ -235,42 +235,42 @@ wxFont::~wxFont() int wxFont::GetPointSize() const { - wxCHECK_MSG( Ok(), 0, T("invalid font") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid font") ); return M_FONTDATA->m_pointSize; } wxString wxFont::GetFaceName() const { - wxCHECK_MSG( Ok(), T(""), T("invalid font") ); + wxCHECK_MSG( Ok(), wxT(""), wxT("invalid font") ); return M_FONTDATA->m_faceName; } int wxFont::GetFamily() const { - wxCHECK_MSG( Ok(), 0, T("invalid font") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid font") ); return M_FONTDATA->m_family; } int wxFont::GetStyle() const { - wxCHECK_MSG( Ok(), 0, T("invalid font") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid font") ); return M_FONTDATA->m_style; } int wxFont::GetWeight() const { - wxCHECK_MSG( Ok(), 0, T("invalid font") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid font") ); return M_FONTDATA->m_weight; } bool wxFont::GetUnderlined() const { - wxCHECK_MSG( Ok(), FALSE, T("invalid font") ); + wxCHECK_MSG( Ok(), FALSE, wxT("invalid font") ); return M_FONTDATA->m_underlined; } @@ -278,7 +278,7 @@ bool wxFont::GetUnderlined() const wxFontEncoding wxFont::GetEncoding() const { - wxCHECK_MSG( Ok(), wxFONTENCODING_DEFAULT, T("invalid font") ); + wxCHECK_MSG( Ok(), wxFONTENCODING_DEFAULT, wxT("invalid font") ); return M_FONTDATA->m_encoding; } @@ -344,7 +344,7 @@ GdkFont *wxFont::GetInternalFont( float scale ) const { if (!Ok()) { - wxFAIL_MSG( T("invalid font") ); + wxFAIL_MSG( wxT("invalid font") ); return (GdkFont*) NULL; } @@ -387,7 +387,7 @@ GdkFont *wxFont::GetInternalFont( float scale ) const if (!font) { - wxLogError(T("could not load any font")); + wxLogError(wxT("could not load any font")); } return font; diff --git a/src/gtk/fontdlg.cpp b/src/gtk/fontdlg.cpp index a7808d8ba0..eaa998c383 100644 --- a/src/gtk/fontdlg.cpp +++ b/src/gtk/fontdlg.cpp @@ -106,13 +106,13 @@ wxFontDialog::wxFontDialog( wxWindow *parent, wxFontData *WXUNUSED(data) ) if (!PreCreation( parent, wxDefaultPosition, wxDefaultSize ) || !CreateBase( parent, -1, wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE, - wxDefaultValidator, T("fontdialog") )) + wxDefaultValidator, wxT("fontdialog") )) { - wxFAIL_MSG( T("wxXX creation failed") ); + wxFAIL_MSG( wxT("wxXX creation failed") ); return; } #ifndef __WXGTK12__ - wxFAIL_MSG( T("TODO") ); + wxFAIL_MSG( wxT("TODO") ); #else // GTK+ 1.2 wxString m_message( _("Choose font") ); m_widget = gtk_font_selection_dialog_new( m_message.mbc_str() ); diff --git a/src/gtk/frame.cpp b/src/gtk/frame.cpp index 3065a36071..9cc4171c2d 100644 --- a/src/gtk/frame.cpp +++ b/src/gtk/frame.cpp @@ -365,7 +365,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxFrame creation failed") ); + wxFAIL_MSG( wxT("wxFrame creation failed") ); return FALSE; } @@ -382,7 +382,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title, gtk_window_set_wmclass( GTK_WINDOW(m_widget), name.mb_str(), name.mb_str() ); #ifdef __WXDEBUG__ - debug_focus_in( m_widget, T("wxFrame::m_widget"), name ); + debug_focus_in( m_widget, wxT("wxFrame::m_widget"), name ); #endif gtk_window_set_title( GTK_WINDOW(m_widget), title.mbc_str() ); @@ -398,7 +398,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title, gtk_container_add( GTK_CONTAINER(m_widget), m_mainWidget ); #ifdef __WXDEBUG__ - debug_focus_in( m_mainWidget, T("wxFrame::m_mainWidget"), name ); + debug_focus_in( m_mainWidget, wxT("wxFrame::m_mainWidget"), name ); #endif /* m_wxwindow only represents the client area without toolbar and menubar */ @@ -407,7 +407,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title, gtk_container_add( GTK_CONTAINER(m_mainWidget), m_wxwindow ); #ifdef __WXDEBUG__ - debug_focus_in( m_wxwindow, T("wxFrame::m_wxwindow"), name ); + debug_focus_in( m_wxwindow, wxT("wxFrame::m_wxwindow"), name ); #endif /* we donm't allow the frame to get the focus as otherwise @@ -462,7 +462,7 @@ wxFrame::~wxFrame() bool wxFrame::Show( bool show ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); if (show && !m_sizeSet) { @@ -479,7 +479,7 @@ bool wxFrame::Show( bool show ) bool wxFrame::Destroy() { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); if (!wxPendingDelete.Member(this)) wxPendingDelete.Append(this); @@ -488,10 +488,10 @@ bool wxFrame::Destroy() void wxFrame::DoSetSize( int x, int y, int width, int height, int sizeFlags ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); /* this shouldn't happen: wxFrame, wxMDIParentFrame and wxMDIChildFrame have m_wxwindow */ - wxASSERT_MSG( (m_wxwindow != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_wxwindow != NULL), wxT("invalid frame") ); /* avoid recursions */ if (m_resizing) return; @@ -553,7 +553,7 @@ void wxFrame::DoSetSize( int x, int y, int width, int height, int sizeFlags ) void wxFrame::Centre( int direction ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); int x = 0; int y = 0; @@ -566,7 +566,7 @@ void wxFrame::Centre( int direction ) void wxFrame::DoGetClientSize( int *width, int *height ) const { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); wxWindow::DoGetClientSize( width, height ); if (height) @@ -611,7 +611,7 @@ void wxFrame::DoGetClientSize( int *width, int *height ) const void wxFrame::DoSetClientSize( int width, int height ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); /* menu bar */ if (m_frameMenuBar) @@ -656,7 +656,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height m_resizing = TRUE; /* this shouldn't happen: wxFrame, wxMDIParentFrame and wxMDIChildFrame have m_wxwindow */ - wxASSERT_MSG( (m_wxwindow != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_wxwindow != NULL), wxT("invalid frame") ); m_width = width; m_height = height; @@ -813,7 +813,7 @@ void wxFrame::OnCloseWindow( wxCloseEvent& WXUNUSED(event) ) void wxFrame::OnSize( wxSizeEvent &WXUNUSED(event) ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); #if wxUSE_CONSTRAINTS if (GetAutoLayout()) @@ -853,8 +853,8 @@ void wxFrame::OnSize( wxSizeEvent &WXUNUSED(event) ) void wxFrame::SetMenuBar( wxMenuBar *menuBar ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); - wxASSERT_MSG( (m_wxwindow != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); + wxASSERT_MSG( (m_wxwindow != NULL), wxT("invalid frame") ); m_frameMenuBar = menuBar; @@ -920,9 +920,9 @@ void wxFrame::OnMenuHighlight(wxMenuEvent& event) #if wxUSE_TOOLBAR wxToolBar* wxFrame::CreateToolBar( long style, wxWindowID id, const wxString& name ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); - wxCHECK_MSG( m_frameToolBar == NULL, FALSE, T("recreating toolbar in wxFrame") ); + wxCHECK_MSG( m_frameToolBar == NULL, FALSE, wxT("recreating toolbar in wxFrame") ); m_insertInClientArea = FALSE; @@ -951,9 +951,9 @@ wxToolBar *wxFrame::GetToolBar() const #if wxUSE_STATUSBAR wxStatusBar* wxFrame::CreateStatusBar( int number, long style, wxWindowID id, const wxString& name ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); - wxCHECK_MSG( m_frameStatusBar == NULL, FALSE, T("recreating status bar in wxFrame") ); + wxCHECK_MSG( m_frameStatusBar == NULL, FALSE, wxT("recreating status bar in wxFrame") ); m_frameStatusBar = OnCreateStatusBar( number, style, id, name ); @@ -990,18 +990,18 @@ wxStatusBar *wxFrame::GetStatusBar() const void wxFrame::SetStatusText(const wxString& text, int number) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); - wxCHECK_RET( m_frameStatusBar != NULL, T("no statusbar to set text for") ); + wxCHECK_RET( m_frameStatusBar != NULL, wxT("no statusbar to set text for") ); m_frameStatusBar->SetStatusText(text, number); } void wxFrame::SetStatusWidths(int n, const int widths_field[] ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); - wxCHECK_RET( m_frameStatusBar != NULL, T("no statusbar to set widths for") ); + wxCHECK_RET( m_frameStatusBar != NULL, wxT("no statusbar to set widths for") ); m_frameStatusBar->SetStatusWidths(n, widths_field); } @@ -1029,16 +1029,16 @@ void wxFrame::Command( int id ) void wxFrame::SetTitle( const wxString &title ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); m_title = title; - if (m_title.IsNull()) m_title = T(""); + if (m_title.IsNull()) m_title = wxT(""); gtk_window_set_title( GTK_WINDOW(m_widget), title.mbc_str() ); } void wxFrame::SetIcon( const wxIcon &icon ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); m_icon = icon; if (!icon.Ok()) return; diff --git a/src/gtk/gauge.cpp b/src/gtk/gauge.cpp index 46c3fbdb9f..ecc9b39d77 100644 --- a/src/gtk/gauge.cpp +++ b/src/gtk/gauge.cpp @@ -33,7 +33,7 @@ bool wxGauge::Create( wxWindow *parent, wxWindowID id, int range, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxGauge creation failed") ); + wxFAIL_MSG( wxT("wxGauge creation failed") ); return FALSE; } diff --git a/src/gtk/listbox.cpp b/src/gtk/listbox.cpp index d09bb14fa3..0336ffec91 100644 --- a/src/gtk/listbox.cpp +++ b/src/gtk/listbox.cpp @@ -259,7 +259,7 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxListBox creation failed") ); + wxFAIL_MSG( wxT("wxListBox creation failed") ); return FALSE; } @@ -369,11 +369,11 @@ wxListBox::~wxListBox() void wxListBox::InsertItems(int nItems, const wxString items[], int pos) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); GList *children = m_list->children; int length = g_list_length(children); - wxCHECK_RET( pos <= length, T("invalid index in wxListBox::InsertItems") ); + wxCHECK_RET( pos <= length, wxT("invalid index in wxListBox::InsertItems") ); // VZ: it seems that GTK 1.0.6 doesn't has a function to insert an item // into a listbox at the given position, this is why we first delete @@ -471,7 +471,7 @@ void wxListBox::InsertItems(int nItems, const wxString items[], int pos) void wxListBox::AppendCommon( const wxString &item ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); GtkWidget *list_item; @@ -570,7 +570,7 @@ void wxListBox::Append( const wxString &item, wxClientData *clientData ) void wxListBox::SetClientData( int n, void* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return; @@ -580,7 +580,7 @@ void wxListBox::SetClientData( int n, void* clientData ) void* wxListBox::GetClientData( int n ) { - wxCHECK_MSG( m_widget != NULL, NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return NULL; @@ -590,7 +590,7 @@ void* wxListBox::GetClientData( int n ) void wxListBox::SetClientObject( int n, wxClientData* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientObjectList.Nth( n ); if (!node) return; @@ -603,7 +603,7 @@ void wxListBox::SetClientObject( int n, wxClientData* clientData ) wxClientData* wxListBox::GetClientObject( int n ) { - wxCHECK_MSG( m_widget != NULL, (wxClientData*)NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, (wxClientData*)NULL, wxT("invalid combobox") ); wxNode *node = m_clientObjectList.Nth( n ); if (!node) return (wxClientData*) NULL; @@ -613,7 +613,7 @@ wxClientData* wxListBox::GetClientObject( int n ) void wxListBox::Clear() { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); gtk_list_clear_items( m_list, 0, Number() ); @@ -631,11 +631,11 @@ void wxListBox::Clear() void wxListBox::Delete( int n ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); GList *child = g_list_nth( m_list->children, n ); - wxCHECK_RET( child, T("wrong listbox index") ); + wxCHECK_RET( child, wxT("wrong listbox index") ); GList *list = g_list_append( (GList*) NULL, child->data ); gtk_list_remove_items( m_list, list ); @@ -658,7 +658,7 @@ void wxListBox::Delete( int n ) void wxListBox::Deselect( int n ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); DisableEvents(); @@ -669,7 +669,7 @@ void wxListBox::Deselect( int n ) int wxListBox::FindString( const wxString &item ) const { - wxCHECK_MSG( m_list != NULL, -1, T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, -1, wxT("invalid listbox") ); GList *child = m_list->children; int count = 0; @@ -694,7 +694,7 @@ int wxListBox::FindString( const wxString &item ) const int wxListBox::GetSelection() const { - wxCHECK_MSG( m_list != NULL, -1, T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, -1, wxT("invalid listbox") ); GList *child = m_list->children; int count = 0; @@ -709,7 +709,7 @@ int wxListBox::GetSelection() const int wxListBox::GetSelections( wxArrayInt& aSelections ) const { - wxCHECK_MSG( m_list != NULL, -1, T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, -1, wxT("invalid listbox") ); // get the number of selected items first GList *child = m_list->children; @@ -739,7 +739,7 @@ int wxListBox::GetSelections( wxArrayInt& aSelections ) const wxString wxListBox::GetString( int n ) const { - wxCHECK_MSG( m_list != NULL, T(""), T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, wxT(""), wxT("invalid listbox") ); GList *child = g_list_nth( m_list->children, n ); if (child) @@ -752,14 +752,14 @@ wxString wxListBox::GetString( int n ) const return str; } - wxFAIL_MSG(T("wrong listbox index")); + wxFAIL_MSG(wxT("wrong listbox index")); - return T(""); + return wxT(""); } wxString wxListBox::GetStringSelection() const { - wxCHECK_MSG( m_list != NULL, T(""), T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, wxT(""), wxT("invalid listbox") ); GList *selection = m_list->selection; if (selection) @@ -772,13 +772,13 @@ wxString wxListBox::GetStringSelection() const return str; } - wxFAIL_MSG(T("no listbox selection available")); - return T(""); + wxFAIL_MSG(wxT("no listbox selection available")); + return wxT(""); } int wxListBox::Number() { - wxCHECK_MSG( m_list != NULL, -1, T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, -1, wxT("invalid listbox") ); GList *child = m_list->children; int count = 0; @@ -788,7 +788,7 @@ int wxListBox::Number() bool wxListBox::Selected( int n ) { - wxCHECK_MSG( m_list != NULL, FALSE, T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, FALSE, wxT("invalid listbox") ); GList *target = g_list_nth( m_list->children, n ); if (target) @@ -800,28 +800,28 @@ bool wxListBox::Selected( int n ) child = child->next; } } - wxFAIL_MSG(T("wrong listbox index")); + wxFAIL_MSG(wxT("wrong listbox index")); return FALSE; } void wxListBox::Set( int WXUNUSED(n), const wxString *WXUNUSED(choices) ) { - wxFAIL_MSG(T("wxListBox::Set not implemented")); + wxFAIL_MSG(wxT("wxListBox::Set not implemented")); } void wxListBox::SetFirstItem( int WXUNUSED(n) ) { - wxFAIL_MSG(T("wxListBox::SetFirstItem not implemented")); + wxFAIL_MSG(wxT("wxListBox::SetFirstItem not implemented")); } void wxListBox::SetFirstItem( const wxString &WXUNUSED(item) ) { - wxFAIL_MSG(T("wxListBox::SetFirstItem not implemented")); + wxFAIL_MSG(wxT("wxListBox::SetFirstItem not implemented")); } void wxListBox::SetSelection( int n, bool select ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); DisableEvents(); @@ -835,7 +835,7 @@ void wxListBox::SetSelection( int n, bool select ) void wxListBox::SetString( int n, const wxString &string ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); GList *child = g_list_nth( m_list->children, n ); if (child) @@ -854,13 +854,13 @@ void wxListBox::SetString( int n, const wxString &string ) } else { - wxFAIL_MSG(T("wrong listbox index")); + wxFAIL_MSG(wxT("wrong listbox index")); } } void wxListBox::SetStringSelection( const wxString &string, bool select ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); SetSelection( FindString(string), select ); } @@ -896,7 +896,7 @@ void wxListBox::ApplyToolTip( GtkTooltips *tips, const wxChar *tip ) #if wxUSE_DRAG_AND_DROP void wxListBox::SetDropTarget( wxDropTarget *dropTarget ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); #ifndef NEW_GTK_DND_CODE if (m_dropTarget) diff --git a/src/gtk/mdi.cpp b/src/gtk/mdi.cpp index cb14533ce2..3437436706 100644 --- a/src/gtk/mdi.cpp +++ b/src/gtk/mdi.cpp @@ -319,7 +319,7 @@ void wxMDIChildFrame::AddChild( wxWindowBase *child ) void wxMDIChildFrame::SetMenuBar( wxMenuBar *menu_bar ) { - wxASSERT_MSG( m_menuBar == NULL, T("Only one menubar allowed") ); + wxASSERT_MSG( m_menuBar == NULL, wxT("Only one menubar allowed") ); m_menuBar = menu_bar; @@ -431,9 +431,9 @@ bool wxMDIClientWindow::CreateClient( wxMDIParentFrame *parent, long style ) m_insertCallback = (wxInsertChildFunction)wxInsertChildInMDI; if (!PreCreation( parent, wxDefaultPosition, wxDefaultSize ) || - !CreateBase( parent, -1, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, T("wxMDIClientWindow") )) + !CreateBase( parent, -1, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, wxT("wxMDIClientWindow") )) { - wxFAIL_MSG( T("wxMDIClientWindow creation failed") ); + wxFAIL_MSG( wxT("wxMDIClientWindow creation failed") ); return FALSE; } diff --git a/src/gtk/menu.cpp b/src/gtk/menu.cpp index d3ebf032d7..c56045a78d 100644 --- a/src/gtk/menu.cpp +++ b/src/gtk/menu.cpp @@ -41,9 +41,9 @@ wxMenuBar::wxMenuBar( long style ) m_invokingWindow = (wxWindow*) NULL; if (!PreCreation( (wxWindow*) NULL, wxDefaultPosition, wxDefaultSize ) || - !CreateBase( (wxWindow*) NULL, -1, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, T("menubar") )) + !CreateBase( (wxWindow*) NULL, -1, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, wxT("menubar") )) { - wxFAIL_MSG( T("wxMenuBar creation failed") ); + wxFAIL_MSG( wxT("wxMenuBar creation failed") ); return; } @@ -80,9 +80,9 @@ wxMenuBar::wxMenuBar() m_invokingWindow = (wxWindow*) NULL; if (!PreCreation( (wxWindow*) NULL, wxDefaultPosition, wxDefaultSize ) || - !CreateBase( (wxWindow*) NULL, -1, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, T("menubar") )) + !CreateBase( (wxWindow*) NULL, -1, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, wxT("menubar") )) { - wxFAIL_MSG( T("wxMenuBar creation failed") ); + wxFAIL_MSG( wxT("wxMenuBar creation failed") ); return; } @@ -202,22 +202,22 @@ void wxMenuBar::Append( wxMenu *menu, const wxString &title ) /* GTK 1.2 wants to have "_" instead of "&" for accelerators */ wxString str; - for ( pc = title; *pc != T('\0'); pc++ ) + for ( pc = title; *pc != wxT('\0'); pc++ ) { - if (*pc == T('&')) + if (*pc == wxT('&')) { #if (GTK_MINOR_VERSION > 0) && (GTK_MICRO_VERSION > 0) - str << T('_'); + str << wxT('_'); } - else if (*pc == T('/')) + else if (*pc == wxT('/')) { - str << T('\\'); + str << wxT('\\'); #endif } else { #if __WXGTK12__ - if ( *pc == T('_') ) + if ( *pc == wxT('_') ) { // underscores must be doubled to prevent them from being // interpreted as accelerator character prefix by GTK @@ -237,7 +237,7 @@ void wxMenuBar::Append( wxMenu *menu, const wxString &title ) /* local buffer in multibyte form */ wxString buf; - buf << T('/') << str.c_str(); + buf << wxT('/') << str.c_str(); char *cbuf = new char[buf.Length()+1]; strcpy(cbuf, buf.mbc_str()); @@ -251,13 +251,13 @@ void wxMenuBar::Append( wxMenu *menu, const wxString &title ) gtk_item_factory_create_item( m_factory, &entry, (gpointer) this, 2 ); /* what is 2 ? */ /* in order to get the pointer to the item we need the item text _without_ underscores */ - wxString tmp = T("
/"); - for ( pc = str; *pc != T('\0'); pc++ ) + wxString tmp = wxT("
/"); + for ( pc = str; *pc != wxT('\0'); pc++ ) { // contrary to the common sense, we must throw out _all_ underscores, // (i.e. "Hello__World" => "HelloWorld" and not "Hello_World" as we // might naively think). IMHO it's a bug in GTK+ (VZ) - while (*pc == T('_')) + while (*pc == wxT('_')) pc++; tmp << *pc; } @@ -364,7 +364,7 @@ void wxMenuBar::Check( int id, bool check ) { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_RET( item, T("wxMenuBar::Check: no such item") ); + wxCHECK_RET( item, wxT("wxMenuBar::Check: no such item") ); item->Check(check); } @@ -373,7 +373,7 @@ bool wxMenuBar::IsChecked( int id ) const { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_MSG( item, FALSE, T("wxMenuBar::IsChecked: no such item") ); + wxCHECK_MSG( item, FALSE, wxT("wxMenuBar::IsChecked: no such item") ); return item->IsChecked(); } @@ -382,7 +382,7 @@ void wxMenuBar::Enable( int id, bool enable ) { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_RET( item, T("wxMenuBar::Enable: no such item") ); + wxCHECK_RET( item, wxT("wxMenuBar::Enable: no such item") ); item->Enable(enable); } @@ -391,7 +391,7 @@ bool wxMenuBar::IsEnabled( int id ) const { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_MSG( item, FALSE, T("wxMenuBar::IsEnabled: no such item") ); + wxCHECK_MSG( item, FALSE, wxT("wxMenuBar::IsEnabled: no such item") ); return item->IsEnabled(); } @@ -400,7 +400,7 @@ wxString wxMenuBar::GetLabel( int id ) const { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_MSG( item, T(""), T("wxMenuBar::GetLabel: no such item") ); + wxCHECK_MSG( item, wxT(""), wxT("wxMenuBar::GetLabel: no such item") ); return item->GetText(); } @@ -409,7 +409,7 @@ void wxMenuBar::SetLabel( int id, const wxString &label ) { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_RET( item, T("wxMenuBar::SetLabel: no such item") ); + wxCHECK_RET( item, wxT("wxMenuBar::SetLabel: no such item") ); item->SetText( label ); } @@ -418,7 +418,7 @@ void wxMenuBar::EnableTop( int pos, bool flag ) { wxNode *node = m_menus.Nth( pos ); - wxCHECK_RET( node, T("menu not found") ); + wxCHECK_RET( node, wxT("menu not found") ); wxMenu* menu = (wxMenu*)node->Data(); @@ -430,7 +430,7 @@ wxString wxMenuBar::GetLabelTop( int pos ) const { wxNode *node = m_menus.Nth( pos ); - wxCHECK_MSG( node, T("invalid"), T("menu not found") ); + wxCHECK_MSG( node, wxT("invalid"), wxT("menu not found") ); wxMenu* menu = (wxMenu*)node->Data(); @@ -441,7 +441,7 @@ void wxMenuBar::SetLabelTop( int pos, const wxString& label ) { wxNode *node = m_menus.Nth( pos ); - wxCHECK_RET( node, T("menu not found") ); + wxCHECK_RET( node, wxT("menu not found") ); wxMenu* menu = (wxMenu*)node->Data(); @@ -452,7 +452,7 @@ void wxMenuBar::SetHelpString( int id, const wxString& helpString ) { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_RET( item, T("wxMenuBar::SetHelpString: no such item") ); + wxCHECK_RET( item, wxT("wxMenuBar::SetHelpString: no such item") ); item->SetHelp( helpString ); } @@ -461,7 +461,7 @@ wxString wxMenuBar::GetHelpString( int id ) const { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_MSG( item, T(""), T("wxMenuBar::GetHelpString: no such item") ); + wxCHECK_MSG( item, wxT(""), wxT("wxMenuBar::GetHelpString: no such item") ); return item->GetHelp(); } @@ -483,7 +483,7 @@ static void gtk_menu_clicked_callback( GtkWidget *widget, wxMenu *menu ) return; wxMenuItem* item = menu->FindItem( id ); - wxCHECK_RET( item, T("error in menu item callback") ); + wxCHECK_RET( item, wxT("error in menu item callback") ); if (item->IsCheckable()) { @@ -588,22 +588,22 @@ wxMenuItem::wxMenuItem() void wxMenuItem::SetName( const wxString& str ) { /* '\t' is the deliminator indicating a hot key */ - m_text = T(""); + m_text = wxT(""); const wxChar *pc = str; - for (; (*pc != T('\0')) && (*pc != T('\t')); pc++ ) + for (; (*pc != wxT('\0')) && (*pc != wxT('\t')); pc++ ) { - if (*pc == T('&')) + if (*pc == wxT('&')) { #if (GTK_MINOR_VERSION > 0) - m_text << T('_'); + m_text << wxT('_'); } - else if ( *pc == T('_') ) // escape underscores + else if ( *pc == wxT('_') ) // escape underscores { - m_text << T("__"); + m_text << wxT("__"); } - else if (*pc == T('/')) /* we have to filter out slashes ... */ + else if (*pc == wxT('/')) /* we have to filter out slashes ... */ { - m_text << T('\\'); /* ... and replace them with back slashes */ + m_text << wxT('\\'); /* ... and replace them with back slashes */ #endif } else @@ -611,9 +611,9 @@ void wxMenuItem::SetName( const wxString& str ) } /* only GTK 1.2 knows about hot keys */ - m_hotKey = T(""); + m_hotKey = wxT(""); #if (GTK_MINOR_VERSION > 0) - if(*pc == T('\t')) + if(*pc == wxT('\t')) { pc++; m_hotKey = pc; @@ -629,9 +629,9 @@ void wxMenuItem::SetName( const wxString& str ) void wxMenuItem::Check( bool check ) { - wxCHECK_RET( m_menuItem, T("invalid menu item") ); + wxCHECK_RET( m_menuItem, wxT("invalid menu item") ); - wxCHECK_RET( IsCheckable(), T("Can't check uncheckable item!") ) + wxCHECK_RET( IsCheckable(), wxT("Can't check uncheckable item!") ) if (check == m_isChecked) return; @@ -641,7 +641,7 @@ void wxMenuItem::Check( bool check ) void wxMenuItem::Enable( bool enable ) { - wxCHECK_RET( m_menuItem, T("invalid menu item") ); + wxCHECK_RET( m_menuItem, wxT("invalid menu item") ); gtk_widget_set_sensitive( m_menuItem, enable ); m_isEnabled = enable; @@ -649,7 +649,7 @@ void wxMenuItem::Enable( bool enable ) bool wxMenuItem::IsChecked() const { - wxCHECK_MSG( m_menuItem, FALSE, T("invalid menu item") ); + wxCHECK_MSG( m_menuItem, FALSE, wxT("invalid menu item") ); wxCHECK( IsCheckable(), FALSE ); // can't get state of uncheckable item! @@ -688,8 +688,8 @@ wxMenu::Init( const wxString& title, m_eventHandler = this; m_clientData = (void*) NULL; - if (m_title.IsNull()) m_title = T(""); - if (m_title != T("")) + if (m_title.IsNull()) m_title = wxT(""); + if (m_title != wxT("")) { Append(-2, m_title); AppendSeparator(); @@ -767,27 +767,27 @@ static char* GetHotKey( const wxString &hotkey, char *hotbuf ) switch (hotkey[0]) { - case T('a'): /* Alt */ - case T('A'): - case T('m'): /* Meta */ - case T('M'): + case wxT('a'): /* Alt */ + case wxT('A'): + case wxT('m'): /* Meta */ + case wxT('M'): { strcpy( hotbuf, "" ); wxString last = hotkey.Right(1); strcat( hotbuf, last.mb_str() ); return hotbuf; } - case T('c'): /* Ctrl */ - case T('C'): - case T('s'): /* Strg, yeah man, I'm German */ - case T('S'): + case wxT('c'): /* Ctrl */ + case wxT('C'): + case wxT('s'): /* Strg, yeah man, I'm German */ + case wxT('S'): { strcpy( hotbuf, "" ); wxString last = hotkey.Right(1); strcat( hotbuf, last.mb_str() ); return hotbuf; } - case T('F'): /* function keys */ + case wxT('F'): /* function keys */ { strcpy( hotbuf, hotkey.mb_str() ); return hotbuf; @@ -832,10 +832,10 @@ void wxMenu::Append( int id, const wxString &item, const wxString &helpStr, bool gtk_item_factory_create_item( m_factory, &entry, (gpointer) this, 2 ); /* what is 2 ? */ /* in order to get the pointer to the item we need the item text _without_ underscores */ - wxString s = T("
/"); - for ( const wxChar *pc = text; *pc != T('\0'); pc++ ) + wxString s = wxT("
/"); + for ( const wxChar *pc = text; *pc != wxT('\0'); pc++ ) { - while (*pc == T('_')) pc++; /* skip it */ + while (*pc == wxT('_')) pc++; /* skip it */ s << *pc; } @@ -893,10 +893,10 @@ void wxMenu::Append( int id, const wxString &item, wxMenu *subMenu, const wxStri gtk_item_factory_create_item( m_factory, &entry, (gpointer) this, 2 ); /* what is 2 ? */ /* in order to get the pointer to the item we need the item text _without_ underscores */ - wxString s = T("
/"); - for ( const wxChar *pc = text; *pc != T('\0'); pc++ ) + wxString s = wxT("
/"); + for ( const wxChar *pc = text; *pc != wxT('\0'); pc++ ) { - if (*pc == T('_')) pc++; /* skip it */ + if (*pc == wxT('_')) pc++; /* skip it */ s << *pc; } @@ -966,14 +966,14 @@ void wxMenu::Append( wxMenuItem *item ) int wxMenu::FindItem( const wxString itemString ) const { - wxString s = T(""); - for ( const wxChar *pc = itemString; *pc != T('\0'); pc++ ) + wxString s = wxT(""); + for ( const wxChar *pc = itemString; *pc != wxT('\0'); pc++ ) { - if (*pc == T('&')) + if (*pc == wxT('&')) { pc++; /* skip it */ #if (GTK_MINOR_VERSION > 0) - s << T('_'); + s << wxT('_'); #endif } s << *pc; @@ -997,7 +997,7 @@ void wxMenu::Enable( int id, bool enable ) { wxMenuItem *item = FindItem(id); - wxCHECK_RET( item, T("wxMenu::Enable: no such item") ); + wxCHECK_RET( item, wxT("wxMenu::Enable: no such item") ); item->Enable(enable); } @@ -1006,7 +1006,7 @@ bool wxMenu::IsEnabled( int id ) const { wxMenuItem *item = FindItem(id); - wxCHECK_MSG( item, FALSE, T("wxMenu::IsEnabled: no such item") ); + wxCHECK_MSG( item, FALSE, wxT("wxMenu::IsEnabled: no such item") ); return item->IsEnabled(); } @@ -1015,7 +1015,7 @@ void wxMenu::Check( int id, bool enable ) { wxMenuItem *item = FindItem(id); - wxCHECK_RET( item, T("wxMenu::Check: no such item") ); + wxCHECK_RET( item, wxT("wxMenu::Check: no such item") ); item->Check(enable); } @@ -1024,7 +1024,7 @@ bool wxMenu::IsChecked( int id ) const { wxMenuItem *item = FindItem(id); - wxCHECK_MSG( item, FALSE, T("wxMenu::IsChecked: no such item") ); + wxCHECK_MSG( item, FALSE, wxT("wxMenu::IsChecked: no such item") ); return item->IsChecked(); } @@ -1033,7 +1033,7 @@ void wxMenu::SetLabel( int id, const wxString &label ) { wxMenuItem *item = FindItem(id); - wxCHECK_RET( item, T("wxMenu::SetLabel: no such item") ); + wxCHECK_RET( item, wxT("wxMenu::SetLabel: no such item") ); item->SetText(label); } @@ -1042,7 +1042,7 @@ wxString wxMenu::GetLabel( int id ) const { wxMenuItem *item = FindItem(id); - wxCHECK_MSG( item, T(""), T("wxMenu::GetLabel: no such item") ); + wxCHECK_MSG( item, wxT(""), wxT("wxMenu::GetLabel: no such item") ); return item->GetText(); } @@ -1051,7 +1051,7 @@ void wxMenu::SetHelpString( int id, const wxString& helpString ) { wxMenuItem *item = FindItem(id); - wxCHECK_RET( item, T("wxMenu::SetHelpString: no such item") ); + wxCHECK_RET( item, wxT("wxMenu::SetHelpString: no such item") ); item->SetHelp( helpString ); } @@ -1060,7 +1060,7 @@ wxString wxMenu::GetHelpString( int id ) const { wxMenuItem *item = FindItem(id); - wxCHECK_MSG( item, T(""), T("wxMenu::GetHelpString: no such item") ); + wxCHECK_MSG( item, wxT(""), wxT("wxMenu::GetHelpString: no such item") ); return item->GetHelp(); } diff --git a/src/gtk/notebook.cpp b/src/gtk/notebook.cpp index 157bd90001..7dae078001 100644 --- a/src/gtk/notebook.cpp +++ b/src/gtk/notebook.cpp @@ -186,7 +186,7 @@ bool wxNotebook::Create(wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxNoteBook creation failed") ); + wxFAIL_MSG( wxT("wxNoteBook creation failed") ); return FALSE; } @@ -194,7 +194,7 @@ bool wxNotebook::Create(wxWindow *parent, wxWindowID id, m_widget = gtk_notebook_new(); #ifdef __WXDEBUG__ - debug_focus_in( m_widget, T("wxNotebook::m_widget"), name ); + debug_focus_in( m_widget, wxT("wxNotebook::m_widget"), name ); #endif gtk_notebook_set_scrollable( GTK_NOTEBOOK(m_widget), 1 ); @@ -233,7 +233,7 @@ void wxNotebook::SetFocus() int wxNotebook::GetSelection() const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid notebook") ); GList *pages = GTK_NOTEBOOK(m_widget)->children; @@ -258,18 +258,18 @@ int wxNotebook::GetRowCount() const wxString wxNotebook::GetPageText( int page ) const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid notebook") ); wxNotebookPage* nb_page = GetNotebookPage(page); if (nb_page) return nb_page->m_text; else - return T(""); + return wxT(""); } int wxNotebook::GetPageImage( int page ) const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid notebook") ); wxNotebookPage* nb_page = GetNotebookPage(page); if (nb_page) @@ -280,9 +280,9 @@ int wxNotebook::GetPageImage( int page ) const wxNotebookPage* wxNotebook::GetNotebookPage( int page ) const { - wxCHECK_MSG( m_widget != NULL, (wxNotebookPage*) NULL, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, (wxNotebookPage*) NULL, wxT("invalid notebook") ); - wxCHECK_MSG( page < (int)m_pages.GetCount(), (wxNotebookPage*) NULL, T("invalid notebook index") ); + wxCHECK_MSG( page < (int)m_pages.GetCount(), (wxNotebookPage*) NULL, wxT("invalid notebook index") ); wxNode *node = m_pages.Nth( page ); @@ -291,9 +291,9 @@ wxNotebookPage* wxNotebook::GetNotebookPage( int page ) const int wxNotebook::SetSelection( int page ) { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid notebook") ); - wxCHECK_MSG( page < (int)m_pages.GetCount(), -1, T("invalid notebook index") ); + wxCHECK_MSG( page < (int)m_pages.GetCount(), -1, wxT("invalid notebook index") ); int selOld = GetSelection(); @@ -304,7 +304,7 @@ int wxNotebook::SetSelection( int page ) void wxNotebook::AdvanceSelection( bool forward ) { - wxCHECK_RET( m_widget != NULL, T("invalid notebook") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid notebook") ); int sel = GetSelection(); int max = GetPageCount(); @@ -322,11 +322,11 @@ void wxNotebook::SetImageList( wxImageList* imageList ) bool wxNotebook::SetPageText( int page, const wxString &text ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid notebook") ); wxNotebookPage* nb_page = GetNotebookPage(page); - wxCHECK_MSG( nb_page, FALSE, T("SetPageText: invalid page index") ); + wxCHECK_MSG( nb_page, FALSE, wxT("SetPageText: invalid page index") ); nb_page->m_text = text; @@ -422,22 +422,22 @@ bool wxNotebook::SetPageImage( int page, int image ) void wxNotebook::SetPageSize( const wxSize &WXUNUSED(size) ) { - wxFAIL_MSG( T("wxNotebook::SetPageSize not implemented") ); + wxFAIL_MSG( wxT("wxNotebook::SetPageSize not implemented") ); } void wxNotebook::SetPadding( const wxSize &WXUNUSED(padding) ) { - wxFAIL_MSG( T("wxNotebook::SetPadding not implemented") ); + wxFAIL_MSG( wxT("wxNotebook::SetPadding not implemented") ); } void wxNotebook::SetTabSize(const wxSize& WXUNUSED(sz)) { - wxFAIL_MSG( T("wxNotebook::SetTabSize not implemented") ); + wxFAIL_MSG( wxT("wxNotebook::SetTabSize not implemented") ); } bool wxNotebook::DeleteAllPages() { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid notebook") ); while (m_pages.GetCount() > 0) DeletePage( m_pages.GetCount()-1 ); @@ -478,10 +478,10 @@ bool wxNotebook::RemovePage( int page ) bool wxNotebook::InsertPage( int position, wxWindow* win, const wxString& text, bool select, int imageId ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid notebook") ); wxCHECK_MSG( win->GetParent() == this, FALSE, - T("Can't add a page whose parent is not the notebook!") ); + wxT("Can't add a page whose parent is not the notebook!") ); /* don't receive switch page during addition */ gtk_signal_disconnect_by_func( GTK_OBJECT(m_widget), @@ -535,7 +535,7 @@ bool wxNotebook::InsertPage( int position, wxWindow* win, const wxString& text, /* set the label text */ page->m_text = text; - if (page->m_text.IsEmpty()) page->m_text = T(""); + if (page->m_text.IsEmpty()) page->m_text = wxT(""); page->m_label = GTK_LABEL( gtk_label_new(page->m_text.mbc_str()) ); gtk_box_pack_end( GTK_BOX(page->m_box), GTK_WIDGET(page->m_label), FALSE, FALSE, 3 ); @@ -573,7 +573,7 @@ void wxNotebook::OnNavigationKey(wxNavigationKeyEvent& event) wxWindow *wxNotebook::GetPage( int page ) const { - wxCHECK_MSG( m_widget != NULL, (wxWindow*) NULL, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, (wxWindow*) NULL, wxT("invalid notebook") ); wxNotebookPage* nb_page = GetNotebookPage(page); if (!nb_page) diff --git a/src/gtk/palette.cpp b/src/gtk/palette.cpp index 2a86eb1ba2..e3ae71acf2 100644 --- a/src/gtk/palette.cpp +++ b/src/gtk/palette.cpp @@ -93,7 +93,7 @@ bool wxPalette::Create( int WXUNUSED(n), const unsigned char *WXUNUSED(green), const unsigned char *WXUNUSED(blue) ) { - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return FALSE; } @@ -102,7 +102,7 @@ int wxPalette::GetPixel( const unsigned char WXUNUSED(red), const unsigned char WXUNUSED(green), const unsigned char WXUNUSED(blue) ) const { - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return 0; } @@ -112,7 +112,7 @@ bool wxPalette::GetRGB( int WXUNUSED(pixel), unsigned char *WXUNUSED(green), unsigned char *WXUNUSED(blue) ) const { - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return 0; } diff --git a/src/gtk/pen.cpp b/src/gtk/pen.cpp index a4fef2c642..f928f2fe54 100644 --- a/src/gtk/pen.cpp +++ b/src/gtk/pen.cpp @@ -171,35 +171,35 @@ wxDash* wxPen::GetDash() const int wxPen::GetCap() const { - wxCHECK_MSG( Ok(), -1, T("invalid pen") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_capStyle; } int wxPen::GetJoin() const { - wxCHECK_MSG( Ok(), -1, T("invalid pen") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_joinStyle; } int wxPen::GetStyle() const { - wxCHECK_MSG( Ok(), -1, T("invalid pen") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_style; } int wxPen::GetWidth() const { - wxCHECK_MSG( Ok(), -1, T("invalid pen") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_width; } wxColour &wxPen::GetColour() const { - wxCHECK_MSG( Ok(), wxNullColour, T("invalid pen") ); + wxCHECK_MSG( Ok(), wxNullColour, wxT("invalid pen") ); return M_PENDATA->m_colour; } diff --git a/src/gtk/radiobox.cpp b/src/gtk/radiobox.cpp index b1ecb3fc79..43b4ae7803 100644 --- a/src/gtk/radiobox.cpp +++ b/src/gtk/radiobox.cpp @@ -88,7 +88,7 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxRadioBox creation failed") ); + wxFAIL_MSG( wxT("wxRadioBox creation failed") ); return FALSE; } @@ -108,7 +108,7 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title, label.Empty(); for ( const wxChar *pc = choices[i]; *pc; pc++ ) { - if ( *pc != T('&') ) + if ( *pc != wxT('&') ) label += *pc; } @@ -176,7 +176,7 @@ wxSize wxRadioBox::LayoutItems() if ( m_majorDim == 0 ) { // avoid dividing by 0 below - wxFAIL_MSG( T("dimension of radiobox should not be 0!") ); + wxFAIL_MSG( wxT("dimension of radiobox should not be 0!") ); m_majorDim = 1; } @@ -279,7 +279,7 @@ wxSize wxRadioBox::LayoutItems() bool wxRadioBox::Show( bool show ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid radiobox") ); wxWindow::Show( show ); @@ -301,7 +301,7 @@ bool wxRadioBox::Show( bool show ) int wxRadioBox::FindString( const wxString &s ) const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid radiobox") ); int count = 0; @@ -322,7 +322,7 @@ int wxRadioBox::FindString( const wxString &s ) const void wxRadioBox::SetFocus() { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); if (m_boxes.GetCount() == 0) return; @@ -343,11 +343,11 @@ void wxRadioBox::SetFocus() void wxRadioBox::SetSelection( int n ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); wxNode *node = m_boxes.Nth( n ); - wxCHECK_RET( node, T("radiobox wrong index") ); + wxCHECK_RET( node, wxT("radiobox wrong index") ); GtkToggleButton *button = GTK_TOGGLE_BUTTON( node->Data() ); @@ -360,7 +360,7 @@ void wxRadioBox::SetSelection( int n ) int wxRadioBox::GetSelection(void) const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid radiobox") ); int count = 0; @@ -373,18 +373,18 @@ int wxRadioBox::GetSelection(void) const node = node->Next(); } - wxFAIL_MSG( T("wxRadioBox none selected") ); + wxFAIL_MSG( wxT("wxRadioBox none selected") ); return -1; } wxString wxRadioBox::GetString( int n ) const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid radiobox") ); wxNode *node = m_boxes.Nth( n ); - wxCHECK_MSG( node, T(""), T("radiobox wrong index") ); + wxCHECK_MSG( node, wxT(""), wxT("radiobox wrong index") ); GtkButton *button = GTK_BUTTON( node->Data() ); GtkLabel *label = GTK_LABEL( button->child ); @@ -394,14 +394,14 @@ wxString wxRadioBox::GetString( int n ) const wxString wxRadioBox::GetLabel( int item ) const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid radiobox") ); return GetString( item ); } void wxRadioBox::SetLabel( const wxString& label ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); wxControl::SetLabel( label ); @@ -410,11 +410,11 @@ void wxRadioBox::SetLabel( const wxString& label ) void wxRadioBox::SetLabel( int item, const wxString& label ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); wxNode *node = m_boxes.Nth( item ); - wxCHECK_RET( node, T("radiobox wrong index") ); + wxCHECK_RET( node, wxT("radiobox wrong index") ); GtkButton *button = GTK_BUTTON( node->Data() ); GtkLabel *g_label = GTK_LABEL( button->child ); @@ -424,7 +424,7 @@ void wxRadioBox::SetLabel( int item, const wxString& label ) void wxRadioBox::SetLabel( int WXUNUSED(item), wxBitmap *WXUNUSED(bitmap) ) { - wxFAIL_MSG(T("wxRadioBox::SetLabel not implemented.")); + wxFAIL_MSG(wxT("wxRadioBox::SetLabel not implemented.")); } bool wxRadioBox::Enable( bool enable ) @@ -447,11 +447,11 @@ bool wxRadioBox::Enable( bool enable ) void wxRadioBox::Enable( int item, bool enable ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); wxNode *node = m_boxes.Nth( item ); - wxCHECK_RET( node, T("radiobox wrong index") ); + wxCHECK_RET( node, wxT("radiobox wrong index") ); GtkButton *button = GTK_BUTTON( node->Data() ); GtkWidget *label = button->child; @@ -461,11 +461,11 @@ void wxRadioBox::Enable( int item, bool enable ) void wxRadioBox::Show( int item, bool show ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); wxNode *node = m_boxes.Nth( item ); - wxCHECK_RET( node, T("radiobox wrong index") ); + wxCHECK_RET( node, wxT("radiobox wrong index") ); GtkWidget *button = GTK_WIDGET( node->Data() ); @@ -477,7 +477,7 @@ void wxRadioBox::Show( int item, bool show ) wxString wxRadioBox::GetStringSelection() const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid radiobox") ); wxNode *node = m_boxes.First(); while (node) @@ -491,13 +491,13 @@ wxString wxRadioBox::GetStringSelection() const node = node->Next(); } - wxFAIL_MSG( T("wxRadioBox none selected") ); - return T(""); + wxFAIL_MSG( wxT("wxRadioBox none selected") ); + return wxT(""); } bool wxRadioBox::SetStringSelection( const wxString &s ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid radiobox") ); int res = FindString( s ); if (res == -1) return FALSE; @@ -518,7 +518,7 @@ int wxRadioBox::GetNumberOfRowsOrCols() const void wxRadioBox::SetNumberOfRowsOrCols( int WXUNUSED(n) ) { - wxFAIL_MSG(T("wxRadioBox::SetNumberOfRowsOrCols not implemented.")); + wxFAIL_MSG(wxT("wxRadioBox::SetNumberOfRowsOrCols not implemented.")); } void wxRadioBox::DisableEvents() diff --git a/src/gtk/radiobut.cpp b/src/gtk/radiobut.cpp index fa026715f6..909c1ebf6d 100644 --- a/src/gtk/radiobut.cpp +++ b/src/gtk/radiobut.cpp @@ -68,7 +68,7 @@ bool wxRadioButton::Create( wxWindow *parent, wxWindowID id, const wxString& lab if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxRadioButton creation failed") ); + wxFAIL_MSG( wxT("wxRadioButton creation failed") ); return FALSE; } @@ -131,7 +131,7 @@ bool wxRadioButton::Create( wxWindow *parent, wxWindowID id, const wxString& lab void wxRadioButton::SetLabel( const wxString& label ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobutton") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobutton") ); wxControl::SetLabel( label ); GtkButton *bin = GTK_BUTTON( m_widget ); @@ -141,7 +141,7 @@ void wxRadioButton::SetLabel( const wxString& label ) void wxRadioButton::SetValue( bool val ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobutton") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobutton") ); if (val == GetValue()) return; @@ -164,7 +164,7 @@ void wxRadioButton::SetValue( bool val ) bool wxRadioButton::GetValue() const { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid radiobutton") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid radiobutton") ); return GTK_TOGGLE_BUTTON(m_widget)->active; } diff --git a/src/gtk/scrolbar.cpp b/src/gtk/scrolbar.cpp index 4d21168158..c678145ef0 100644 --- a/src/gtk/scrolbar.cpp +++ b/src/gtk/scrolbar.cpp @@ -129,7 +129,7 @@ bool wxScrollBar::Create(wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxScrollBar creation failed") ); + wxFAIL_MSG( wxT("wxScrollBar creation failed") ); return FALSE; } diff --git a/src/gtk/settings.cpp b/src/gtk/settings.cpp index 5ff2d5c61a..61810194c3 100644 --- a/src/gtk/settings.cpp +++ b/src/gtk/settings.cpp @@ -191,7 +191,7 @@ int wxSystemSettings::GetSystemMetric( int index ) case wxSYS_VSCROLL_X: return 15; } - wxCHECK_MSG( index, 0, T("wxSystemSettings::GetSystemMetric not fully implemented") ); + wxCHECK_MSG( index, 0, wxT("wxSystemSettings::GetSystemMetric not fully implemented") ); return 0; } diff --git a/src/gtk/slider.cpp b/src/gtk/slider.cpp index adc016c88f..bdbc509ceb 100644 --- a/src/gtk/slider.cpp +++ b/src/gtk/slider.cpp @@ -97,7 +97,7 @@ bool wxSlider::Create(wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxSlider creation failed") ); + wxFAIL_MSG( wxT("wxSlider creation failed") ); return FALSE; } diff --git a/src/gtk/spinbutt.cpp b/src/gtk/spinbutt.cpp index fd5e0cd865..1901da14bf 100644 --- a/src/gtk/spinbutt.cpp +++ b/src/gtk/spinbutt.cpp @@ -106,7 +106,7 @@ bool wxSpinButton::Create(wxWindow *parent, if (!PreCreation( parent, pos, new_size ) || !CreateBase( parent, id, pos, new_size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxXX creation failed") ); + wxFAIL_MSG( wxT("wxXX creation failed") ); return FALSE; } @@ -140,28 +140,28 @@ wxSpinButton::~wxSpinButton() int wxSpinButton::GetMin() const { - wxCHECK_MSG( (m_widget != NULL), 0, T("invalid spin button") ); + wxCHECK_MSG( (m_widget != NULL), 0, wxT("invalid spin button") ); return (int)ceil(m_adjust->lower); } int wxSpinButton::GetMax() const { - wxCHECK_MSG( (m_widget != NULL), 0, T("invalid spin button") ); + wxCHECK_MSG( (m_widget != NULL), 0, wxT("invalid spin button") ); return (int)ceil(m_adjust->upper); } int wxSpinButton::GetValue() const { - wxCHECK_MSG( (m_widget != NULL), 0, T("invalid spin button") ); + wxCHECK_MSG( (m_widget != NULL), 0, wxT("invalid spin button") ); return (int)ceil(m_adjust->value); } void wxSpinButton::SetValue( int value ) { - wxCHECK_RET( (m_widget != NULL), T("invalid spin button") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid spin button") ); float fpos = (float)value; m_oldPos = fpos; @@ -174,7 +174,7 @@ void wxSpinButton::SetValue( int value ) void wxSpinButton::SetRange(int minVal, int maxVal) { - wxCHECK_RET( (m_widget != NULL), T("invalid spin button") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid spin button") ); float fmin = (float)minVal; float fmax = (float)maxVal; @@ -197,7 +197,7 @@ void wxSpinButton::SetRange(int minVal, int maxVal) void wxSpinButton::OnSize( wxSizeEvent &WXUNUSED(event) ) { - wxCHECK_RET( (m_widget != NULL), T("invalid spin button") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid spin button") ); m_width = 15; gtk_widget_set_usize( m_widget, m_width, m_height ); diff --git a/src/gtk/statbmp.cpp b/src/gtk/statbmp.cpp index 186947afb2..74f494f6e9 100644 --- a/src/gtk/statbmp.cpp +++ b/src/gtk/statbmp.cpp @@ -37,7 +37,7 @@ wxStaticBitmap::wxStaticBitmap( wxWindow *parent, wxWindowID id, const wxBitmap void wxStaticBitmap::CreatePixmapWidget() { - wxCHECK_RET( m_bitmap.Ok(), T("should only be called if we have a bitmap") ); + wxCHECK_RET( m_bitmap.Ok(), wxT("should only be called if we have a bitmap") ); GdkBitmap *mask = (GdkBitmap *) NULL; if ( m_bitmap.GetMask() ) @@ -61,7 +61,7 @@ bool wxStaticBitmap::Create( wxWindow *parent, wxWindowID id, const wxBitmap &bi if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxXX creation failed") ); + wxFAIL_MSG( wxT("wxXX creation failed") ); return FALSE; } diff --git a/src/gtk/statbox.cpp b/src/gtk/statbox.cpp index 0d4f598a2a..d6a4a6852b 100644 --- a/src/gtk/statbox.cpp +++ b/src/gtk/statbox.cpp @@ -44,7 +44,7 @@ bool wxStaticBox::Create( wxWindow *parent, wxWindowID id, const wxString &label if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxStaticBox creation failed") ); + wxFAIL_MSG( wxT("wxStaticBox creation failed") ); return FALSE; } diff --git a/src/gtk/statline.cpp b/src/gtk/statline.cpp index 6129db4500..60970765ed 100644 --- a/src/gtk/statline.cpp +++ b/src/gtk/statline.cpp @@ -44,7 +44,7 @@ bool wxStaticLine::Create( wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxStaticLine creation failed") ); + wxFAIL_MSG( wxT("wxStaticLine creation failed") ); return FALSE; } diff --git a/src/gtk/stattext.cpp b/src/gtk/stattext.cpp index 81cf98c3a8..eb35971c6a 100644 --- a/src/gtk/stattext.cpp +++ b/src/gtk/stattext.cpp @@ -51,7 +51,7 @@ bool wxStaticText::Create(wxWindow *parent, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxXX creation failed") ); + wxFAIL_MSG( wxT("wxXX creation failed") ); return FALSE; } diff --git a/src/gtk/tbargtk.cpp b/src/gtk/tbargtk.cpp index 6ef6151733..6e5b301d48 100644 --- a/src/gtk/tbargtk.cpp +++ b/src/gtk/tbargtk.cpp @@ -151,7 +151,7 @@ bool wxToolBar::Create( wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxToolBar creation failed") ); + wxFAIL_MSG( wxT("wxToolBar creation failed") ); return FALSE; } @@ -263,13 +263,13 @@ wxToolBarTool *wxToolBar::AddTool( int toolIndex, const wxBitmap& bitmap, m_hasToolAlready = TRUE; wxCHECK_MSG( bitmap.Ok(), (wxToolBarTool *)NULL, - T("invalid bitmap for wxToolBar icon") ); + wxT("invalid bitmap for wxToolBar icon") ); wxCHECK_MSG( bitmap.GetBitmap() == NULL, (wxToolBarTool *)NULL, - T("wxToolBar doesn't support GdkBitmap") ); + wxT("wxToolBar doesn't support GdkBitmap") ); wxCHECK_MSG( bitmap.GetPixmap() != NULL, (wxToolBarTool *)NULL, - T("wxToolBar::Add needs a wxBitmap") ); + wxT("wxToolBar::Add needs a wxBitmap") ); GtkWidget *tool_pixmap = (GtkWidget *)NULL; @@ -326,7 +326,7 @@ void wxToolBar::AddSeparator() void wxToolBar::ClearTools() { - wxFAIL_MSG( T("wxToolBar::ClearTools not implemented") ); + wxFAIL_MSG( wxT("wxToolBar::ClearTools not implemented") ); } bool wxToolBar::Realize() @@ -376,7 +376,7 @@ void wxToolBar::EnableTool(int toolIndex, bool enable) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); } void wxToolBar::ToggleTool( int toolIndex, bool toggle ) @@ -418,7 +418,7 @@ void wxToolBar::ToggleTool( int toolIndex, bool toggle ) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); } wxObject *wxToolBar::GetToolClientData( int index ) const @@ -431,7 +431,7 @@ wxObject *wxToolBar::GetToolClientData( int index ) const node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); return (wxObject*)NULL; } @@ -446,7 +446,7 @@ bool wxToolBar::GetToolState(int toolIndex) const node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); return FALSE; } @@ -461,14 +461,14 @@ bool wxToolBar::GetToolEnabled(int toolIndex) const node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); return FALSE; } void wxToolBar::SetMargins( int x, int y ) { - wxCHECK_RET( !m_hasToolAlready, T("wxToolBar::SetMargins must be called before adding tool.") ); + wxCHECK_RET( !m_hasToolAlready, wxT("wxToolBar::SetMargins must be called before adding tool.") ); if (x > 2) gtk_toolbar_append_space( m_toolbar ); // oh well @@ -478,7 +478,7 @@ void wxToolBar::SetMargins( int x, int y ) void wxToolBar::SetToolPacking( int WXUNUSED(packing) ) { - wxFAIL_MSG( T("wxToolBar::SetToolPacking not implemented") ); + wxFAIL_MSG( wxT("wxToolBar::SetToolPacking not implemented") ); } void wxToolBar::SetToolSeparation( int separation ) @@ -510,9 +510,9 @@ wxString wxToolBar::GetToolLongHelp(int toolIndex) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); - return T(""); + return wxT(""); } wxString wxToolBar::GetToolShortHelp(int toolIndex) @@ -528,9 +528,9 @@ wxString wxToolBar::GetToolShortHelp(int toolIndex) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); - return T(""); + return wxT(""); } void wxToolBar::SetToolLongHelp(int toolIndex, const wxString& helpString) @@ -547,7 +547,7 @@ void wxToolBar::SetToolLongHelp(int toolIndex, const wxString& helpString) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); return; } @@ -566,7 +566,7 @@ void wxToolBar::SetToolShortHelp(int toolIndex, const wxString& helpString) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); return; } diff --git a/src/gtk/textctrl.cpp b/src/gtk/textctrl.cpp index 1e4d3a3ceb..db100d48ec 100644 --- a/src/gtk/textctrl.cpp +++ b/src/gtk/textctrl.cpp @@ -118,7 +118,7 @@ bool wxTextCtrl::Create( wxWindow *parent, wxWindowID id, const wxString &value, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxTextCtrl creation failed") ); + wxFAIL_MSG( wxT("wxTextCtrl creation failed") ); return FALSE; } @@ -282,7 +282,7 @@ void wxTextCtrl::CalculateScrollbar() wxString wxTextCtrl::GetValue() const { - wxCHECK_MSG( m_text != NULL, T(""), T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, wxT(""), wxT("invalid text ctrl") ); wxString tmp; if (m_windowStyle & wxTE_MULTILINE) @@ -301,9 +301,9 @@ wxString wxTextCtrl::GetValue() const void wxTextCtrl::SetValue( const wxString &value ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); - wxString tmp = T(""); + wxString tmp = wxT(""); if (!value.IsNull()) tmp = value; if (m_windowStyle & wxTE_MULTILINE) { @@ -325,7 +325,7 @@ void wxTextCtrl::SetValue( const wxString &value ) void wxTextCtrl::WriteText( const wxString &text ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (text.IsEmpty()) return; @@ -365,7 +365,7 @@ void wxTextCtrl::WriteText( const wxString &text ) void wxTextCtrl::AppendText( const wxString &text ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (text.IsEmpty()) return; @@ -413,7 +413,7 @@ wxString wxTextCtrl::GetLineText( long lineNo ) const if (text) { - wxString buf(T("")); + wxString buf(wxT("")); long i; int currentLine = 0; for (i = 0; currentLine != lineNo && text[i]; i++ ) @@ -441,7 +441,7 @@ void wxTextCtrl::OnDropFiles( wxDropFilesEvent &WXUNUSED(event) ) { /* If you implement this, don't forget to update the documentation! * (file docs/latex/wx/text.tex) */ - wxFAIL_MSG( T("wxTextCtrl::OnDropFiles not implemented") ); + wxFAIL_MSG( wxT("wxTextCtrl::OnDropFiles not implemented") ); } bool wxTextCtrl::PositionToXY(long pos, long *x, long *y ) const @@ -460,7 +460,7 @@ bool wxTextCtrl::PositionToXY(long pos, long *x, long *y ) const const wxChar* stop = text.c_str() + pos; for ( const wxChar *p = text.c_str(); p < stop; p++ ) { - if (*p == T('\n')) + if (*p == wxT('\n')) { (*y)++; *x=0; @@ -536,7 +536,7 @@ int wxTextCtrl::GetNumberOfLines() const void wxTextCtrl::SetInsertionPoint( long pos ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (m_windowStyle & wxTE_MULTILINE) { @@ -573,7 +573,7 @@ void wxTextCtrl::SetInsertionPoint( long pos ) void wxTextCtrl::SetInsertionPointEnd() { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (m_windowStyle & wxTE_MULTILINE) SetInsertionPoint(gtk_text_get_length(GTK_TEXT(m_text))); @@ -583,7 +583,7 @@ void wxTextCtrl::SetInsertionPointEnd() void wxTextCtrl::SetEditable( bool editable ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (m_windowStyle & wxTE_MULTILINE) gtk_text_set_editable( GTK_TEXT(m_text), editable ); @@ -598,7 +598,7 @@ void wxTextCtrl::DiscardEdits() void wxTextCtrl::SetSelection( long from, long to ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); gtk_editable_select_region( GTK_EDITABLE(m_text), (gint)from, (gint)to ); } @@ -610,14 +610,14 @@ void wxTextCtrl::ShowPosition( long WXUNUSED(pos) ) long wxTextCtrl::GetInsertionPoint() const { - wxCHECK_MSG( m_text != NULL, 0, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, 0, wxT("invalid text ctrl") ); return (long) GTK_EDITABLE(m_text)->current_pos; } long wxTextCtrl::GetLastPosition() const { - wxCHECK_MSG( m_text != NULL, 0, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, 0, wxT("invalid text ctrl") ); int pos = 0; if (m_windowStyle & wxTE_MULTILINE) @@ -630,14 +630,14 @@ long wxTextCtrl::GetLastPosition() const void wxTextCtrl::Remove( long from, long to ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); gtk_editable_delete_text( GTK_EDITABLE(m_text), (gint)from, (gint)to ); } void wxTextCtrl::Replace( long from, long to, const wxString &value ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); gtk_editable_delete_text( GTK_EDITABLE(m_text), (gint)from, (gint)to ); @@ -655,7 +655,7 @@ void wxTextCtrl::Replace( long from, long to, const wxString &value ) void wxTextCtrl::Cut() { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); #if (GTK_MINOR_VERSION > 0) gtk_editable_cut_clipboard( GTK_EDITABLE(m_text) ); @@ -666,7 +666,7 @@ void wxTextCtrl::Cut() void wxTextCtrl::Copy() { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); #if (GTK_MINOR_VERSION > 0) gtk_editable_copy_clipboard( GTK_EDITABLE(m_text) ); @@ -677,7 +677,7 @@ void wxTextCtrl::Copy() void wxTextCtrl::Paste() { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); #if (GTK_MINOR_VERSION > 0) gtk_editable_paste_clipboard( GTK_EDITABLE(m_text) ); @@ -711,26 +711,26 @@ bool wxTextCtrl::CanPaste() const void wxTextCtrl::Undo() { // TODO - wxFAIL_MSG( T("wxTextCtrl::Undo not implemented") ); + wxFAIL_MSG( wxT("wxTextCtrl::Undo not implemented") ); } void wxTextCtrl::Redo() { // TODO - wxFAIL_MSG( T("wxTextCtrl::Redo not implemented") ); + wxFAIL_MSG( wxT("wxTextCtrl::Redo not implemented") ); } bool wxTextCtrl::CanUndo() const { // TODO - wxFAIL_MSG( T("wxTextCtrl::CanUndo not implemented") ); + wxFAIL_MSG( wxT("wxTextCtrl::CanUndo not implemented") ); return FALSE; } bool wxTextCtrl::CanRedo() const { // TODO - wxFAIL_MSG( T("wxTextCtrl::CanRedo not implemented") ); + wxFAIL_MSG( wxT("wxTextCtrl::CanRedo not implemented") ); return FALSE; } @@ -738,7 +738,7 @@ bool wxTextCtrl::CanRedo() const // selection. void wxTextCtrl::GetSelection(long* from, long* to) const { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (!(GTK_EDITABLE(m_text)->has_selection)) { @@ -753,7 +753,7 @@ void wxTextCtrl::GetSelection(long* from, long* to) const bool wxTextCtrl::IsEditable() const { - wxCHECK_MSG( m_text != NULL, FALSE, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, FALSE, wxT("invalid text ctrl") ); return GTK_EDITABLE(m_text)->editable; } @@ -765,12 +765,12 @@ bool wxTextCtrl::IsModified() const void wxTextCtrl::Clear() { - SetValue( T("") ); + SetValue( wxT("") ); } void wxTextCtrl::OnChar( wxKeyEvent &key_event ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if ((key_event.KeyCode() == WXK_RETURN) && (m_windowStyle & wxPROCESS_ENTER)) { @@ -798,7 +798,7 @@ bool wxTextCtrl::IsOwnGtkWindow( GdkWindow *window ) // the font will change for subsequent text insertiongs bool wxTextCtrl::SetFont( const wxFont &font ) { - wxCHECK_MSG( m_text != NULL, FALSE, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, FALSE, wxT("invalid text ctrl") ); if ( !wxWindowBase::SetFont(font) ) { @@ -824,7 +824,7 @@ bool wxTextCtrl::SetFont( const wxFont &font ) bool wxTextCtrl::SetForegroundColour( const wxColour &WXUNUSED(colour) ) { - wxCHECK_MSG( m_text != NULL, FALSE, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, FALSE, wxT("invalid text ctrl") ); // doesn't work return FALSE; @@ -832,7 +832,7 @@ bool wxTextCtrl::SetForegroundColour( const wxColour &WXUNUSED(colour) ) bool wxTextCtrl::SetBackgroundColour( const wxColour &colour ) { - wxCHECK_MSG( m_text != NULL, FALSE, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, FALSE, wxT("invalid text ctrl") ); wxControl::SetBackgroundColour( colour ); diff --git a/src/gtk/utilsres.cpp b/src/gtk/utilsres.cpp index d165c8adf6..c12f461e11 100644 --- a/src/gtk/utilsres.cpp +++ b/src/gtk/utilsres.cpp @@ -40,9 +40,9 @@ // Yuck this is really BOTH site and platform dependent // so we should use some other strategy! #ifdef __SUN__ - #define DEFAULT_XRESOURCE_DIR T("/usr/openwin/lib/app-defaults") + #define DEFAULT_XRESOURCE_DIR wxT("/usr/openwin/lib/app-defaults") #else - #define DEFAULT_XRESOURCE_DIR T("/usr/lib/X11/app-defaults") + #define DEFAULT_XRESOURCE_DIR wxT("/usr/lib/X11/app-defaults") #endif //----------------------------------------------------------------------------- @@ -63,13 +63,13 @@ static wxChar *GetResourcePath(wxChar *buf, wxChar *name, bool create) wxStrcpy(buf, name); return buf; // Exists so ... } - if (*name == T('/')) + if (*name == wxT('/')) wxStrcpy(buf, name); else { // Put in standard place for resource files if not absolute wxStrcpy(buf, DEFAULT_XRESOURCE_DIR); - wxStrcat(buf, T("/")); + wxStrcat(buf, wxT("/")); wxStrcat(buf, FileNameFromPath(name)); } if (create) @@ -96,18 +96,18 @@ static wxChar *GetIniFile(wxChar *dest, const wxChar *filename) if ((home = wxGetUserHome(wxString())) != NULL) { wxStrcpy(dest, home); - if (dest[wxStrlen(dest) - 1] != T('/')) wxStrcat(dest, T("/")); + if (dest[wxStrlen(dest) - 1] != wxT('/')) wxStrcat(dest, wxT("/")); if (filename == NULL) { - if ((filename = wxGetenv(T("XENVIRONMENT"))) == NULL) filename = T(".Xdefaults"); + if ((filename = wxGetenv(wxT("XENVIRONMENT"))) == NULL) filename = wxT(".Xdefaults"); } else - if (*filename != T('.')) wxStrcat(dest, T(".")); + if (*filename != wxT('.')) wxStrcat(dest, wxT(".")); wxStrcat(dest, filename); } else { - dest[0] = T('\0'); + dest[0] = wxT('\0'); } } return dest; @@ -148,7 +148,7 @@ static void wxXMergeDatabases() // Open XENVIRONMENT file, or if not defined, the .Xdefaults, // and merge into existing database - if ((environment = wxGetenv(T("XENVIRONMENT"))) == NULL) + if ((environment = wxGetenv(wxT("XENVIRONMENT"))) == NULL) { size_t len; #if wxUSE_UNICODE @@ -203,7 +203,7 @@ void wxFlushResources() void wxDeleteResources(const wxChar *file) { - wxLogTrace(wxTraceResAlloc, T("Delete: Number = %d"), wxTheResourceCache->Number()); + wxLogTrace(wxTraceResAlloc, wxT("Delete: Number = %d"), wxTheResourceCache->Number()); wxChar buffer[500]; (void)GetIniFile(buffer, file); @@ -233,7 +233,7 @@ bool wxWriteResource(const wxString& section, const wxString& entry, const wxStr database = (XrmDatabase)node->Data(); else { database = XrmGetFileDatabase(wxConvCurrent->cWX2MB(buffer)); - wxLogTrace(wxTraceResAlloc, T("Write: Number = %d"), wxTheResourceCache->Number()); + wxLogTrace(wxTraceResAlloc, wxT("Write: Number = %d"), wxTheResourceCache->Number()); wxTheResourceCache->Append(buffer, (wxObject *)database); } char resName[300]; @@ -287,7 +287,7 @@ bool wxGetResource(const wxString& section, const wxString& entry, char **value, else { database = XrmGetFileDatabase(wxConvCurrent->cWX2MB(buffer)); - wxLogTrace(wxTraceResAlloc, T("Get: Number = %d"), wxTheResourceCache->Number()); + wxLogTrace(wxTraceResAlloc, wxT("Get: Number = %d"), wxTheResourceCache->Number()); wxTheResourceCache->Append(buffer, (wxObject *)database); } } else diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index 7fc92ca687..0df4401e32 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -155,7 +155,7 @@ static gint gtk_debug_focus_in_callback( GtkWidget *WXUNUSED(widget), wxLog::AddTraceMask("focus"); s_done = TRUE; } - wxLogTrace(T("FOCUS NOW AT: %s"), name); + wxLogTrace(wxT("FOCUS NOW AT: %s"), name); */ return FALSE; @@ -164,7 +164,7 @@ static gint gtk_debug_focus_in_callback( GtkWidget *WXUNUSED(widget), void debug_focus_in( GtkWidget* widget, const wxChar* name, const wxChar *window ) { wxString tmp = name; - tmp += T(" FROM "); + tmp += wxT(" FROM "); tmp += window; wxChar *s = new wxChar[tmp.Length()+1]; @@ -977,10 +977,10 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton wxapp_install_idle_handler(); /* - wxPrintf( T("1) OnButtonPress from ") ); + wxPrintf( wxT("1) OnButtonPress from ") ); if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) wxPrintf( win->GetClassInfo()->GetClassName() ); - wxPrintf( T(".\n") ); + wxPrintf( wxT(".\n") ); */ if (!win->m_hasVMT) return FALSE; if (g_blockEventsOnDrag) return TRUE; @@ -995,20 +995,20 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton gtk_widget_grab_focus (win->m_wxwindow); /* - wxPrintf( T("GrabFocus from ") ); + wxPrintf( wxT("GrabFocus from ") ); if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) wxPrintf( win->GetClassInfo()->GetClassName() ); - wxPrintf( T(".\n") ); + wxPrintf( wxT(".\n") ); */ } } /* - wxPrintf( T("2) OnButtonPress from ") ); + wxPrintf( wxT("2) OnButtonPress from ") ); if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) wxPrintf( win->GetClassInfo()->GetClassName() ); - wxPrintf( T(".\n") ); + wxPrintf( wxT(".\n") ); */ wxEventType event_type = wxEVT_LEFT_DOWN; @@ -1809,7 +1809,7 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxWindow creation failed") ); + wxFAIL_MSG( wxT("wxWindow creation failed") ); return FALSE; } @@ -1819,14 +1819,14 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id, GTK_WIDGET_UNSET_FLAGS( m_widget, GTK_CAN_FOCUS ); #ifdef __WXDEBUG__ - debug_focus_in( m_widget, T("wxWindow::m_widget"), name ); + debug_focus_in( m_widget, wxT("wxWindow::m_widget"), name ); #endif GtkScrolledWindow *scrolledWindow = GTK_SCROLLED_WINDOW(m_widget); #ifdef __WXDEBUG__ - debug_focus_in( scrolledWindow->hscrollbar, T("wxWindow::hsrcollbar"), name ); - debug_focus_in( scrolledWindow->vscrollbar, T("wxWindow::vsrcollbar"), name ); + debug_focus_in( scrolledWindow->hscrollbar, wxT("wxWindow::hsrcollbar"), name ); + debug_focus_in( scrolledWindow->vscrollbar, wxT("wxWindow::vsrcollbar"), name ); #endif GtkScrolledWindowClass *scroll_class = GTK_SCROLLED_WINDOW_CLASS( GTK_OBJECT(m_widget)->klass ); @@ -1840,7 +1840,7 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id, m_wxwindow = gtk_myfixed_new(); #ifdef __WXDEBUG__ - debug_focus_in( m_wxwindow, T("wxWindow::m_wxwindow"), name ); + debug_focus_in( m_wxwindow, wxT("wxWindow::m_wxwindow"), name ); #endif gtk_container_add( GTK_CONTAINER(m_widget), m_wxwindow ); @@ -1998,7 +1998,7 @@ wxWindow::~wxWindow() bool wxWindow::PreCreation( wxWindow *parent, const wxPoint &pos, const wxSize &size ) { - wxCHECK_MSG( !m_needParent || parent, FALSE, T("Need complete parent.") ); + wxCHECK_MSG( !m_needParent || parent, FALSE, wxT("Need complete parent.") ); /* this turns -1 into 20 so that a minimal window is visible even although -1,-1 has been given as the @@ -2030,7 +2030,7 @@ bool wxWindow::PreCreation( wxWindow *parent, const wxPoint &pos, const wxSize void wxWindow::PostCreation() { - wxASSERT_MSG( (m_widget != NULL), T("invalid window") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid window") ); if (m_wxwindow) { @@ -2095,7 +2095,7 @@ void wxWindow::ConnectWidget( GtkWidget *widget ) bool wxWindow::Destroy() { - wxASSERT_MSG( (m_widget != NULL), T("invalid window") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid window") ); m_hasVMT = FALSE; @@ -2104,8 +2104,8 @@ bool wxWindow::Destroy() void wxWindow::DoSetSize( int x, int y, int width, int height, int sizeFlags ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid window") ); - wxASSERT_MSG( (m_parent != NULL), T("wxWindow::SetSize requires parent.\n") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid window") ); + wxASSERT_MSG( (m_parent != NULL), wxT("wxWindow::SetSize requires parent.\n") ); if (m_resizing) return; /* I don't like recursions */ m_resizing = TRUE; @@ -2239,7 +2239,7 @@ void wxWindow::OnInternalIdle() void wxWindow::DoGetSize( int *width, int *height ) const { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (width) (*width) = m_width; if (height) (*height) = m_height; @@ -2247,7 +2247,7 @@ void wxWindow::DoGetSize( int *width, int *height ) const void wxWindow::DoSetClientSize( int width, int height ) { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_wxwindow) { @@ -2321,7 +2321,7 @@ void wxWindow::DoSetClientSize( int width, int height ) void wxWindow::DoGetClientSize( int *width, int *height ) const { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_wxwindow) { @@ -2396,7 +2396,7 @@ void wxWindow::DoGetClientSize( int *width, int *height ) const void wxWindow::DoGetPosition( int *x, int *y ) const { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (x) (*x) = m_x; if (y) (*y) = m_y; @@ -2404,7 +2404,7 @@ void wxWindow::DoGetPosition( int *x, int *y ) const void wxWindow::DoClientToScreen( int *x, int *y ) const { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_widget->window) return; @@ -2433,7 +2433,7 @@ void wxWindow::DoClientToScreen( int *x, int *y ) const void wxWindow::DoScreenToClient( int *x, int *y ) const { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_widget->window) return; @@ -2462,7 +2462,7 @@ void wxWindow::DoScreenToClient( int *x, int *y ) const bool wxWindow::Show( bool show ) { - wxCHECK_MSG( (m_widget != NULL), FALSE, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), FALSE, wxT("invalid window") ); if (!wxWindowBase::Show(show)) { @@ -2480,7 +2480,7 @@ bool wxWindow::Show( bool show ) bool wxWindow::Enable( bool enable ) { - wxCHECK_MSG( (m_widget != NULL), FALSE, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), FALSE, wxT("invalid window") ); if (!wxWindowBase::Enable(enable)) { @@ -2497,9 +2497,9 @@ bool wxWindow::Enable( bool enable ) int wxWindow::GetCharHeight() const { - wxCHECK_MSG( (m_widget != NULL), 12, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), 12, wxT("invalid window") ); - wxCHECK_MSG( m_font.Ok(), 12, T("invalid font") ); + wxCHECK_MSG( m_font.Ok(), 12, wxT("invalid font") ); GdkFont *font = m_font.GetInternalFont( 1.0 ); @@ -2508,9 +2508,9 @@ int wxWindow::GetCharHeight() const int wxWindow::GetCharWidth() const { - wxCHECK_MSG( (m_widget != NULL), 8, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), 8, wxT("invalid window") ); - wxCHECK_MSG( m_font.Ok(), 8, T("invalid font") ); + wxCHECK_MSG( m_font.Ok(), 8, wxT("invalid font") ); GdkFont *font = m_font.GetInternalFont( 1.0 ); @@ -2527,7 +2527,7 @@ void wxWindow::GetTextExtent( const wxString& string, wxFont fontToUse = m_font; if (theFont) fontToUse = *theFont; - wxCHECK_RET( fontToUse.Ok(), T("invalid font") ); + wxCHECK_RET( fontToUse.Ok(), wxT("invalid font") ); GdkFont *font = fontToUse.GetInternalFont( 1.0 ); if (x) (*x) = gdk_string_width( font, string.mbc_str() ); @@ -2538,7 +2538,7 @@ void wxWindow::GetTextExtent( const wxString& string, void wxWindow::SetFocus() { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); GtkWidget *connect_widget = GetConnectWidget(); if (connect_widget) @@ -2564,7 +2564,7 @@ bool wxWindow::AcceptsFocus() const bool wxWindow::Reparent( wxWindowBase *newParentBase ) { - wxCHECK_MSG( (m_widget != NULL), FALSE, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), FALSE, wxT("invalid window") ); wxWindow *oldParent = m_parent, *newParent = (wxWindow *)newParentBase; @@ -2600,11 +2600,11 @@ bool wxWindow::Reparent( wxWindowBase *newParentBase ) void wxWindow::DoAddChild(wxWindow *child) { - wxASSERT_MSG( (m_widget != NULL), T("invalid window") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid window") ); - wxASSERT_MSG( (child != NULL), T("invalid child window") ); + wxASSERT_MSG( (child != NULL), wxT("invalid child window") ); - wxASSERT_MSG( (m_insertCallback != NULL), T("invalid child insertion function") ); + wxASSERT_MSG( (m_insertCallback != NULL), wxT("invalid child insertion function") ); /* add to list */ AddChild( child ); @@ -2615,7 +2615,7 @@ void wxWindow::DoAddChild(wxWindow *child) void wxWindow::Raise() { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_widget->window) return; @@ -2624,7 +2624,7 @@ void wxWindow::Raise() void wxWindow::Lower() { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_widget->window) return; @@ -2633,14 +2633,14 @@ void wxWindow::Lower() bool wxWindow::SetCursor( const wxCursor &cursor ) { - wxCHECK_MSG( (m_widget != NULL), FALSE, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), FALSE, wxT("invalid window") ); return wxWindowBase::SetCursor( cursor ); } void wxWindow::WarpPointer( int x, int y ) { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); GtkWidget *connect_widget = GetConnectWidget(); if (connect_widget->window) @@ -2653,7 +2653,7 @@ void wxWindow::WarpPointer( int x, int y ) void wxWindow::Refresh( bool eraseBackground, const wxRect *rect ) { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_widget->window) return; @@ -2720,7 +2720,7 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *rect ) void wxWindow::Clear() { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); if (!m_widget->window) return; @@ -2747,7 +2747,7 @@ void wxWindow::ApplyToolTip( GtkTooltips *tips, const wxChar *tip ) bool wxWindow::SetBackgroundColour( const wxColour &colour ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid window") ); if (!wxWindowBase::SetBackgroundColour(colour)) { @@ -2794,7 +2794,7 @@ bool wxWindow::SetBackgroundColour( const wxColour &colour ) bool wxWindow::SetForegroundColour( const wxColour &colour ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid window") ); if (!wxWindowBase::SetForegroundColour(colour)) { @@ -2910,9 +2910,9 @@ static void pop_pos_callback( GtkMenu * WXUNUSED(menu), bool wxWindow::DoPopupMenu( wxMenu *menu, int x, int y ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid window") ); - wxCHECK_MSG( menu != NULL, FALSE, T("invalid popup-menu") ); + wxCHECK_MSG( menu != NULL, FALSE, wxT("invalid popup-menu") ); SetInvokingWindow( menu, this ); @@ -2949,7 +2949,7 @@ bool wxWindow::DoPopupMenu( wxMenu *menu, int x, int y ) void wxWindow::SetDropTarget( wxDropTarget *dropTarget ) { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); GtkWidget *dnd_widget = GetConnectWidget(); @@ -2979,7 +2979,7 @@ bool wxWindow::IsOwnGtkWindow( GdkWindow *window ) bool wxWindow::SetFont( const wxFont &font ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid window") ); if (!wxWindowBase::SetFont(font)) { @@ -3017,9 +3017,9 @@ bool wxWindow::SetFont( const wxFont &font ) void wxWindow::CaptureMouse() { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); - wxCHECK_RET( g_captureWindow == NULL, T("CaptureMouse called twice") ); + wxCHECK_RET( g_captureWindow == NULL, wxT("CaptureMouse called twice") ); GtkWidget *connect_widget = GetConnectWidget(); if (!connect_widget->window) return; @@ -3038,9 +3038,9 @@ void wxWindow::CaptureMouse() void wxWindow::ReleaseMouse() { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); - wxCHECK_RET( g_captureWindow, T("ReleaseMouse called twice") ); + wxCHECK_RET( g_captureWindow, wxT("ReleaseMouse called twice") ); GtkWidget *connect_widget = GetConnectWidget(); if (!connect_widget->window) return; @@ -3057,9 +3057,9 @@ bool wxWindow::IsRetained() const void wxWindow::SetScrollbar( int orient, int pos, int thumbVisible, int range, bool refresh ) { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); - wxCHECK_RET( m_wxwindow != NULL, T("window needs client area for scrolling") ); + wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") ); m_hasScrolling = TRUE; @@ -3120,9 +3120,9 @@ void wxWindow::SetScrollbar( int orient, int pos, int thumbVisible, void wxWindow::SetScrollPos( int orient, int pos, bool WXUNUSED(refresh) ) { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); - wxCHECK_RET( m_wxwindow != NULL, T("window needs client area for scrolling") ); + wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") ); if (orient == wxHORIZONTAL) { @@ -3163,9 +3163,9 @@ void wxWindow::SetScrollPos( int orient, int pos, bool WXUNUSED(refresh) ) int wxWindow::GetScrollThumb( int orient ) const { - wxCHECK_MSG( m_widget != NULL, 0, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid window") ); - wxCHECK_MSG( m_wxwindow != NULL, 0, T("window needs client area for scrolling") ); + wxCHECK_MSG( m_wxwindow != NULL, 0, wxT("window needs client area for scrolling") ); if (orient == wxHORIZONTAL) return (int)(m_hAdjust->page_size+0.5); @@ -3175,9 +3175,9 @@ int wxWindow::GetScrollThumb( int orient ) const int wxWindow::GetScrollPos( int orient ) const { - wxCHECK_MSG( m_widget != NULL, 0, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid window") ); - wxCHECK_MSG( m_wxwindow != NULL, 0, T("window needs client area for scrolling") ); + wxCHECK_MSG( m_wxwindow != NULL, 0, wxT("window needs client area for scrolling") ); if (orient == wxHORIZONTAL) return (int)(m_hAdjust->value+0.5); @@ -3187,9 +3187,9 @@ int wxWindow::GetScrollPos( int orient ) const int wxWindow::GetScrollRange( int orient ) const { - wxCHECK_MSG( m_widget != NULL, 0, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid window") ); - wxCHECK_MSG( m_wxwindow != NULL, 0, T("window needs client area for scrolling") ); + wxCHECK_MSG( m_wxwindow != NULL, 0, wxT("window needs client area for scrolling") ); if (orient == wxHORIZONTAL) return (int)(m_hAdjust->upper+0.5); @@ -3199,9 +3199,9 @@ int wxWindow::GetScrollRange( int orient ) const void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) ) { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); - wxCHECK_RET( m_wxwindow != NULL, T("window needs client area for scrolling") ); + wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") ); if (!m_scrollGC) { diff --git a/src/gtk1/app.cpp b/src/gtk1/app.cpp index 2572ce4997..d262df2ecb 100644 --- a/src/gtk1/app.cpp +++ b/src/gtk1/app.cpp @@ -206,7 +206,7 @@ gint wxapp_idle_callback( gpointer WXUNUSED(data) ) void wxapp_install_idle_handler() { - wxASSERT_MSG( wxTheApp->m_idleTag == 0, T("attempt to install idle handler twice") ); + wxASSERT_MSG( wxTheApp->m_idleTag == 0, wxT("attempt to install idle handler twice") ); /* this routine gets called by all event handlers indicating that the idle is over. */ @@ -397,7 +397,7 @@ bool wxApp::OnInitGui() index |= (g >> (5 - vis->green_prec)) << vis->green_shift; index |= (b >> (5 - vis->blue_prec)) << vis->blue_shift; #else - wxFAIL_MSG( T("Unsupported graphics hardware") ); + wxFAIL_MSG( wxT("Unsupported graphics hardware") ); #endif } m_colorCube[ (r*1024) + (g*32) + b ] = index; @@ -640,7 +640,7 @@ void wxApp::CleanUp() #if (defined(__WXDEBUG__) && wxUSE_MEMORY_TRACING) || wxUSE_DEBUG_CONTEXT if (wxDebugContext::CountObjectsLeft() > 0) { - wxLogDebug(T("There were memory leaks.\n")); + wxLogDebug(wxT("There were memory leaks.\n")); wxDebugContext::Dump(); wxDebugContext::PrintStatistics(); } @@ -681,7 +681,7 @@ int wxEntry( int argc, char *argv[] ) if (!wxTheApp) { wxCHECK_MSG( wxApp::GetInitializerFunction(), -1, - T("wxWindows error: No initializer - use IMPLEMENT_APP macro.\n") ); + wxT("wxWindows error: No initializer - use IMPLEMENT_APP macro.\n") ); wxAppInitializerFunction app_ini = wxApp::GetInitializerFunction(); @@ -690,7 +690,7 @@ int wxEntry( int argc, char *argv[] ) wxTheApp = (wxApp*) test_app; } - wxCHECK_MSG( wxTheApp, -1, T("wxWindows error: no application object") ); + wxCHECK_MSG( wxTheApp, -1, wxT("wxWindows error: no application object") ); wxTheApp->argc = argc; #if wxUSE_UNICODE @@ -794,7 +794,7 @@ wxApp::GetStdIcon(int which) const return wxIcon(warning_xpm); default: - wxFAIL_MSG(T("requested non existent standard icon")); + wxFAIL_MSG(wxT("requested non existent standard icon")); // still fall through case wxICON_HAND: diff --git a/src/gtk1/bitmap.cpp b/src/gtk1/bitmap.cpp index 707e07e951..0918af1707 100644 --- a/src/gtk1/bitmap.cpp +++ b/src/gtk1/bitmap.cpp @@ -60,7 +60,7 @@ bool wxMask::Create( const wxBitmap& WXUNUSED(bitmap), m_bitmap = (GdkBitmap*) NULL; } - wxFAIL_MSG( T("TODO") ); + wxFAIL_MSG( wxT("TODO") ); return FALSE; } @@ -74,7 +74,7 @@ bool wxMask::Create( const wxBitmap& WXUNUSED(bitmap), m_bitmap = (GdkBitmap*) NULL; } - wxFAIL_MSG( T("not implemented") ); + wxFAIL_MSG( wxT("not implemented") ); return FALSE; } @@ -89,7 +89,7 @@ bool wxMask::Create( const wxBitmap& bitmap ) if (!bitmap.Ok()) return FALSE; - wxCHECK_MSG( bitmap.GetBitmap(), FALSE, T("Cannot create mask from colour bitmap") ); + wxCHECK_MSG( bitmap.GetBitmap(), FALSE, wxT("Cannot create mask from colour bitmap") ); m_bitmap = gdk_pixmap_new( (GdkWindow*) &gdk_root_parent, bitmap.GetWidth(), bitmap.GetHeight(), 1 ); @@ -160,13 +160,13 @@ wxBitmap::wxBitmap() wxBitmap::wxBitmap( int width, int height, int depth ) { - wxCHECK_RET( (width > 0) && (height > 0), T("invalid bitmap size") ) + wxCHECK_RET( (width > 0) && (height > 0), wxT("invalid bitmap size") ) GdkWindow *parent = (GdkWindow*) &gdk_root_parent; if (depth == -1) depth = gdk_window_get_visual( parent )->depth; wxCHECK_RET( (depth == gdk_window_get_visual( parent )->depth) || - (depth == 1), T("invalid bitmap depth") ) + (depth == 1), wxT("invalid bitmap depth") ) m_refData = new wxBitmapRefData(); M_BMPDATA->m_mask = (wxMask *) NULL; @@ -188,7 +188,7 @@ wxBitmap::wxBitmap( int width, int height, int depth ) wxBitmap::wxBitmap( const char **bits ) { - wxCHECK_RET( bits != NULL, T("invalid bitmap data") ) + wxCHECK_RET( bits != NULL, wxT("invalid bitmap data") ) m_refData = new wxBitmapRefData(); @@ -211,7 +211,7 @@ wxBitmap::wxBitmap( const char **bits ) wxBitmap::wxBitmap( char **bits ) { - wxCHECK_RET( bits != NULL, T("invalid bitmap data") ) + wxCHECK_RET( bits != NULL, wxT("invalid bitmap data") ) m_refData = new wxBitmapRefData(); @@ -220,7 +220,7 @@ wxBitmap::wxBitmap( char **bits ) M_BMPDATA->m_pixmap = gdk_pixmap_create_from_xpm_d( parent, &mask, NULL, (gchar **) bits ); - wxCHECK_RET( M_BMPDATA->m_pixmap, T("couldn't create pixmap") ); + wxCHECK_RET( M_BMPDATA->m_pixmap, wxT("couldn't create pixmap") ); if (mask) { @@ -259,7 +259,7 @@ wxBitmap::wxBitmap( const char bits[], int width, int height, int WXUNUSED(depth M_BMPDATA->m_height = height; M_BMPDATA->m_bpp = 1; - wxCHECK_RET( M_BMPDATA->m_bitmap, T("couldn't create bitmap") ); + wxCHECK_RET( M_BMPDATA->m_bitmap, wxT("couldn't create bitmap") ); if (wxTheBitmapList) wxTheBitmapList->AddBitmap(this); } @@ -293,35 +293,35 @@ bool wxBitmap::Ok() const int wxBitmap::GetHeight() const { - wxCHECK_MSG( Ok(), -1, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid bitmap") ); return M_BMPDATA->m_height; } int wxBitmap::GetWidth() const { - wxCHECK_MSG( Ok(), -1, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid bitmap") ); return M_BMPDATA->m_width; } int wxBitmap::GetDepth() const { - wxCHECK_MSG( Ok(), -1, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid bitmap") ); return M_BMPDATA->m_bpp; } wxMask *wxBitmap::GetMask() const { - wxCHECK_MSG( Ok(), (wxMask *) NULL, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), (wxMask *) NULL, wxT("invalid bitmap") ); return M_BMPDATA->m_mask; } void wxBitmap::SetMask( wxMask *mask ) { - wxCHECK_RET( Ok(), T("invalid bitmap") ); + wxCHECK_RET( Ok(), wxT("invalid bitmap") ); if (M_BMPDATA->m_mask) delete M_BMPDATA->m_mask; @@ -330,7 +330,7 @@ void wxBitmap::SetMask( wxMask *mask ) bool wxBitmap::SaveFile( const wxString &name, int type, wxPalette *WXUNUSED(palette) ) { - wxCHECK_MSG( Ok(), FALSE, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), FALSE, wxT("invalid bitmap") ); if (type == wxBITMAP_TYPE_PNG) { @@ -420,14 +420,14 @@ void wxBitmap::SetPixmap( GdkPixmap *pixmap ) GdkPixmap *wxBitmap::GetPixmap() const { - wxCHECK_MSG( Ok(), (GdkPixmap *) NULL, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), (GdkPixmap *) NULL, wxT("invalid bitmap") ); return M_BMPDATA->m_pixmap; } GdkBitmap *wxBitmap::GetBitmap() const { - wxCHECK_MSG( Ok(), (GdkBitmap *) NULL, T("invalid bitmap") ); + wxCHECK_MSG( Ok(), (GdkBitmap *) NULL, wxT("invalid bitmap") ); return M_BMPDATA->m_bitmap; } diff --git a/src/gtk1/bmpbuttn.cpp b/src/gtk1/bmpbuttn.cpp index 47f6662935..691e6912d7 100644 --- a/src/gtk1/bmpbuttn.cpp +++ b/src/gtk1/bmpbuttn.cpp @@ -121,7 +121,7 @@ bool wxBitmapButton::Create( wxWindow *parent, wxWindowID id, const wxBitmap &bi if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxBitmapButton creation failed") ); + wxFAIL_MSG( wxT("wxBitmapButton creation failed") ); return FALSE; } @@ -190,14 +190,14 @@ void wxBitmapButton::SetDefault() void wxBitmapButton::SetLabel( const wxString &label ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); wxControl::SetLabel( label ); } wxString wxBitmapButton::GetLabel() const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid button") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid button") ); return wxControl::GetLabel(); } @@ -208,7 +208,7 @@ void wxBitmapButton::ApplyWidgetStyle() void wxBitmapButton::SetBitmap() { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); wxBitmap the_one; @@ -243,7 +243,7 @@ void wxBitmapButton::SetBitmap() void wxBitmapButton::SetBitmapDisabled( const wxBitmap& bitmap ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); if ( ! m_disabled.Ok() ) return; m_disabled = bitmap; @@ -253,7 +253,7 @@ void wxBitmapButton::SetBitmapDisabled( const wxBitmap& bitmap ) void wxBitmapButton::SetBitmapFocus( const wxBitmap& bitmap ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); if ( ! m_focus.Ok() ) return; m_focus = bitmap; @@ -263,7 +263,7 @@ void wxBitmapButton::SetBitmapFocus( const wxBitmap& bitmap ) void wxBitmapButton::SetBitmapLabel( const wxBitmap& bitmap ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); if (!m_bitmap.Ok()) return; m_bitmap = bitmap; @@ -273,7 +273,7 @@ void wxBitmapButton::SetBitmapLabel( const wxBitmap& bitmap ) void wxBitmapButton::SetBitmapSelected( const wxBitmap& bitmap ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); if ( ! m_selected.Ok() ) return; m_selected = bitmap; @@ -314,5 +314,5 @@ void wxBitmapButton::EndSelect() m_isSelected = FALSE; SetBitmap(); } +#endif -#endif \ No newline at end of file diff --git a/src/gtk1/brush.cpp b/src/gtk1/brush.cpp index a324ecea66..b86a7615bc 100644 --- a/src/gtk1/brush.cpp +++ b/src/gtk1/brush.cpp @@ -111,7 +111,7 @@ int wxBrush::GetStyle() const { if (m_refData == NULL) { - wxFAIL_MSG( T("invalid brush") ); + wxFAIL_MSG( wxT("invalid brush") ); return 0; } @@ -122,7 +122,7 @@ wxColour &wxBrush::GetColour() const { if (m_refData == NULL) { - wxFAIL_MSG( T("invalid brush") ); + wxFAIL_MSG( wxT("invalid brush") ); return wxNullColour; } @@ -133,7 +133,7 @@ wxBitmap *wxBrush::GetStipple() const { if (m_refData == NULL) { - wxFAIL_MSG( T("invalid brush") ); + wxFAIL_MSG( wxT("invalid brush") ); return &wxNullBitmap; } diff --git a/src/gtk1/button.cpp b/src/gtk1/button.cpp index 0d2353b918..39d94b37b1 100644 --- a/src/gtk1/button.cpp +++ b/src/gtk1/button.cpp @@ -78,7 +78,7 @@ bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxButton creation failed") ); + wxFAIL_MSG( wxT("wxButton creation failed") ); return FALSE; } @@ -142,7 +142,7 @@ wxSize wxButton::GetDefaultSize() void wxButton::SetLabel( const wxString &label ) { - wxCHECK_RET( m_widget != NULL, T("invalid button") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid button") ); wxControl::SetLabel( label ); diff --git a/src/gtk1/checkbox.cpp b/src/gtk1/checkbox.cpp index a7763349d2..1426171b56 100644 --- a/src/gtk1/checkbox.cpp +++ b/src/gtk1/checkbox.cpp @@ -75,7 +75,7 @@ bool wxCheckBox::Create(wxWindow *parent, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxCheckBox creation failed") ); + wxFAIL_MSG( wxT("wxCheckBox creation failed") ); return FALSE; } @@ -136,7 +136,7 @@ bool wxCheckBox::Create(wxWindow *parent, void wxCheckBox::SetValue( bool state ) { - wxCHECK_RET( m_widgetCheckbox != NULL, T("invalid checkbox") ); + wxCHECK_RET( m_widgetCheckbox != NULL, wxT("invalid checkbox") ); if (state == GetValue()) return; @@ -155,14 +155,14 @@ void wxCheckBox::SetValue( bool state ) bool wxCheckBox::GetValue() const { - wxCHECK_MSG( m_widgetCheckbox != NULL, FALSE, T("invalid checkbox") ); + wxCHECK_MSG( m_widgetCheckbox != NULL, FALSE, wxT("invalid checkbox") ); return GTK_TOGGLE_BUTTON(m_widgetCheckbox)->active; } void wxCheckBox::SetLabel( const wxString& label ) { - wxCHECK_RET( m_widgetLabel != NULL, T("invalid checkbox") ); + wxCHECK_RET( m_widgetLabel != NULL, wxT("invalid checkbox") ); wxControl::SetLabel( label ); diff --git a/src/gtk1/checklst.cpp b/src/gtk1/checklst.cpp index 5730929a86..de5d961859 100644 --- a/src/gtk1/checklst.cpp +++ b/src/gtk1/checklst.cpp @@ -44,7 +44,7 @@ wxCheckListBox::wxCheckListBox(wxWindow *parent, wxWindowID id, bool wxCheckListBox::IsChecked( int index ) const { - wxCHECK_MSG( m_list != NULL, FALSE, T("invalid checklistbox") ); + wxCHECK_MSG( m_list != NULL, FALSE, wxT("invalid checklistbox") ); GList *child = g_list_nth( m_list->children, index ); if (child) @@ -54,16 +54,16 @@ bool wxCheckListBox::IsChecked( int index ) const wxString str = wxString(label->label,*wxConvCurrent); - return (str[1] == T('X')); + return (str[1] == wxT('X')); } - wxFAIL_MSG(T("wrong checklistbox index")); + wxFAIL_MSG(wxT("wrong checklistbox index")); return FALSE; } void wxCheckListBox::Check( int index, bool check ) { - wxCHECK_RET( m_list != NULL, T("invalid checklistbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid checklistbox") ); GList *child = g_list_nth( m_list->children, index ); if (child) @@ -73,19 +73,19 @@ void wxCheckListBox::Check( int index, bool check ) wxString str = wxString(label->label,*wxConvCurrent); - if (check == (str[1] == T('X'))) return; + if (check == (str[1] == wxT('X'))) return; if (check) - str.SetChar( 1, T('X') ); + str.SetChar( 1, wxT('X') ); else - str.SetChar( 1, T('-') ); + str.SetChar( 1, wxT('-') ); gtk_label_set( label, str.mbc_str() ); return; } - wxFAIL_MSG(T("wrong checklistbox index")); + wxFAIL_MSG(wxT("wrong checklistbox index")); } int wxCheckListBox::GetItemHeight() const diff --git a/src/gtk1/choice.cpp b/src/gtk1/choice.cpp index 21a697ce57..32322e0a7f 100644 --- a/src/gtk1/choice.cpp +++ b/src/gtk1/choice.cpp @@ -75,7 +75,7 @@ bool wxChoice::Create( wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxChoice creation failed") ); + wxFAIL_MSG( wxT("wxChoice creation failed") ); return FALSE; } @@ -125,7 +125,7 @@ wxChoice::~wxChoice() void wxChoice::AppendCommon( const wxString &item ) { - wxCHECK_RET( m_widget != NULL, T("invalid choice") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid choice") ); GtkWidget *menu = gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) ); GtkWidget *menu_item = gtk_menu_item_new_with_label( item.mbc_str() ); @@ -172,7 +172,7 @@ void wxChoice::Append( const wxString &item, wxClientData *clientData ) void wxChoice::SetClientData( int n, void* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return; @@ -182,7 +182,7 @@ void wxChoice::SetClientData( int n, void* clientData ) void* wxChoice::GetClientData( int n ) { - wxCHECK_MSG( m_widget != NULL, NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return NULL; @@ -192,7 +192,7 @@ void* wxChoice::GetClientData( int n ) void wxChoice::SetClientObject( int n, wxClientData* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientObjectList.Nth( n ); if (!node) return; @@ -205,7 +205,7 @@ void wxChoice::SetClientObject( int n, wxClientData* clientData ) wxClientData* wxChoice::GetClientObject( int n ) { - wxCHECK_MSG( m_widget != NULL, (wxClientData*) NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, (wxClientData*) NULL, wxT("invalid combobox") ); wxNode *node = m_clientObjectList.Nth( n ); if (!node) return (wxClientData*) NULL; @@ -215,7 +215,7 @@ wxClientData* wxChoice::GetClientObject( int n ) void wxChoice::Clear() { - wxCHECK_RET( m_widget != NULL, T("invalid choice") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid choice") ); gtk_option_menu_remove_menu( GTK_OPTION_MENU(m_widget) ); GtkWidget *menu = gtk_menu_new(); @@ -235,12 +235,12 @@ void wxChoice::Clear() void wxChoice::Delete( int WXUNUSED(n) ) { - wxFAIL_MSG( T("wxChoice:Delete not implemented") ); + wxFAIL_MSG( wxT("wxChoice:Delete not implemented") ); } int wxChoice::FindString( const wxString &string ) const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid choice") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid choice") ); // If you read this code once and you think you understand // it, then you are very wrong. Robert Roebling. @@ -255,7 +255,7 @@ int wxChoice::FindString( const wxString &string ) const if (bin->child) label = GTK_LABEL(bin->child); if (!label) label = GTK_LABEL( GTK_BUTTON(m_widget)->child ); - wxASSERT_MSG( label != NULL , T("wxChoice: invalid label") ); + wxASSERT_MSG( label != NULL , wxT("wxChoice: invalid label") ); if (string == wxString(label->label,*wxConvCurrent)) return count; @@ -274,7 +274,7 @@ int wxChoice::GetColumns() const int wxChoice::GetSelection() { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid choice") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid choice") ); GtkMenuShell *menu_shell = GTK_MENU_SHELL( gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) ) ); int count = 0; @@ -292,7 +292,7 @@ int wxChoice::GetSelection() wxString wxChoice::GetString( int n ) const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid choice") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid choice") ); GtkMenuShell *menu_shell = GTK_MENU_SHELL( gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) ) ); int count = 0; @@ -306,7 +306,7 @@ wxString wxChoice::GetString( int n ) const if (bin->child) label = GTK_LABEL(bin->child); if (!label) label = GTK_LABEL( GTK_BUTTON(m_widget)->child ); - wxASSERT_MSG( label != NULL , T("wxChoice: invalid label") ); + wxASSERT_MSG( label != NULL , wxT("wxChoice: invalid label") ); return wxString(label->label,*wxConvCurrent); } @@ -314,25 +314,25 @@ wxString wxChoice::GetString( int n ) const count++; } - wxFAIL_MSG( T("wxChoice: invalid index in GetString()") ); + wxFAIL_MSG( wxT("wxChoice: invalid index in GetString()") ); - return T(""); + return wxT(""); } wxString wxChoice::GetStringSelection() const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid choice") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid choice") ); GtkLabel *label = GTK_LABEL( GTK_BUTTON(m_widget)->child ); - wxASSERT_MSG( label != NULL , T("wxChoice: invalid label") ); + wxASSERT_MSG( label != NULL , wxT("wxChoice: invalid label") ); return wxString(label->label,*wxConvCurrent); } int wxChoice::Number() const { - wxCHECK_MSG( m_widget != NULL, 0, T("invalid choice") ); + wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid choice") ); GtkMenuShell *menu_shell = GTK_MENU_SHELL( gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) ) ); int count = 0; @@ -351,7 +351,7 @@ void wxChoice::SetColumns( int WXUNUSED(n) ) void wxChoice::SetSelection( int n ) { - wxCHECK_RET( m_widget != NULL, T("invalid choice") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid choice") ); int tmp = n; gtk_option_menu_set_history( GTK_OPTION_MENU(m_widget), (gint)tmp ); @@ -359,7 +359,7 @@ void wxChoice::SetSelection( int n ) void wxChoice::SetStringSelection( const wxString &string ) { - wxCHECK_RET( m_widget != NULL, T("invalid choice") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid choice") ); int n = FindString( string ); if (n != -1) SetSelection( n ); diff --git a/src/gtk1/clipbrd.cpp b/src/gtk1/clipbrd.cpp index 29442366dc..d981a17e76 100644 --- a/src/gtk1/clipbrd.cpp +++ b/src/gtk1/clipbrd.cpp @@ -450,7 +450,7 @@ void wxClipboard::Clear() bool wxClipboard::Open() { - wxCHECK_MSG( !m_open, FALSE, T("clipboard already open") ); + wxCHECK_MSG( !m_open, FALSE, wxT("clipboard already open") ); m_open = TRUE; @@ -459,9 +459,9 @@ bool wxClipboard::Open() bool wxClipboard::SetData( wxDataObject *data ) { - wxCHECK_MSG( m_open, FALSE, T("clipboard not open") ); + wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") ); - wxCHECK_MSG( data, FALSE, T("data is invalid") ); + wxCHECK_MSG( data, FALSE, wxT("data is invalid") ); Clear(); @@ -470,9 +470,9 @@ bool wxClipboard::SetData( wxDataObject *data ) bool wxClipboard::AddData( wxDataObject *data ) { - wxCHECK_MSG( m_open, FALSE, T("clipboard not open") ); + wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") ); - wxCHECK_MSG( data, FALSE, T("data is invalid") ); + wxCHECK_MSG( data, FALSE, wxT("data is invalid") ); /* if clipboard has been cleared before, create new data broker */ if (!m_dataBroker) m_dataBroker = new wxDataBroker(); @@ -483,7 +483,7 @@ bool wxClipboard::AddData( wxDataObject *data ) /* get native format id of new data object */ GdkAtom format = data->GetFormat().GetAtom(); - wxCHECK_MSG( format, FALSE, T("data has invalid format") ); + wxCHECK_MSG( format, FALSE, wxT("data has invalid format") ); /* This should happen automatically, but to be on the safe side */ m_ownsClipboard = FALSE; @@ -563,20 +563,20 @@ bool wxClipboard::AddData( wxDataObject *data ) void wxClipboard::Close() { - wxCHECK_RET( m_open, T("clipboard not open") ); + wxCHECK_RET( m_open, wxT("clipboard not open") ); m_open = FALSE; } bool wxClipboard::IsSupported( wxDataFormat format ) { - wxCHECK_MSG( m_open, FALSE, T("clipboard not open") ); + wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") ); /* store requested format to be asked for by callbacks */ m_targetRequested = format.GetAtom(); - wxCHECK_MSG( m_targetRequested, FALSE, T("invalid clipboard format") ); + wxCHECK_MSG( m_targetRequested, FALSE, wxT("invalid clipboard format") ); m_formatSupported = FALSE; @@ -604,7 +604,7 @@ bool wxClipboard::IsSupported( wxDataFormat format ) bool wxClipboard::GetData( wxDataObject *data ) { - wxCHECK_MSG( m_open, FALSE, T("clipboard not open") ); + wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") ); /* is data supported by clipboard ? */ @@ -618,7 +618,7 @@ bool wxClipboard::GetData( wxDataObject *data ) m_targetRequested = data->GetFormat().GetAtom(); - wxCHECK_MSG( m_targetRequested, FALSE, T("invalid clipboard format") ); + wxCHECK_MSG( m_targetRequested, FALSE, wxT("invalid clipboard format") ); /* start query */ @@ -644,7 +644,7 @@ bool wxClipboard::GetData( wxDataObject *data ) /* this is a true error as we checked for the presence of such data before */ - wxCHECK_MSG( m_formatSupported, FALSE, T("error retrieving data from clipboard") ); + wxCHECK_MSG( m_formatSupported, FALSE, wxT("error retrieving data from clipboard") ); return TRUE; } diff --git a/src/gtk1/colour.cpp b/src/gtk1/colour.cpp index ac8a7022dd..a4ca937116 100644 --- a/src/gtk1/colour.cpp +++ b/src/gtk1/colour.cpp @@ -91,8 +91,8 @@ void wxColour::InitFromName( const wxString &colourName ) m_refData = new wxColourRefData(); if (!gdk_color_parse( colourName.mb_str(), &M_COLDATA->m_color )) { - wxFAIL_MSG( T("wxColour: couldn't find colour") ); - wxPrintf( T("Colourname %s.\n"), WXSTRINGCAST colourName ); + wxFAIL_MSG( wxT("wxColour: couldn't find colour") ); + wxPrintf( wxT("Colourname %s.\n"), WXSTRINGCAST colourName ); delete m_refData; m_refData = (wxObjectRefData *) NULL; @@ -149,21 +149,21 @@ void wxColour::Set( unsigned char red, unsigned char green, unsigned char blue ) unsigned char wxColour::Red() const { - wxCHECK_MSG( Ok(), 0, T("invalid colour") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid colour") ); return (unsigned char)(M_COLDATA->m_color.red >> SHIFT); } unsigned char wxColour::Green() const { - wxCHECK_MSG( Ok(), 0, T("invalid colour") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid colour") ); return (unsigned char)(M_COLDATA->m_color.green >> SHIFT); } unsigned char wxColour::Blue() const { - wxCHECK_MSG( Ok(), 0, T("invalid colour") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid colour") ); return (unsigned char)(M_COLDATA->m_color.blue >> SHIFT); } @@ -211,14 +211,14 @@ void wxColour::CalcPixel( GdkColormap *cmap ) int wxColour::GetPixel() const { - wxCHECK_MSG( Ok(), 0, T("invalid colour") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid colour") ); return M_COLDATA->m_color.pixel; } GdkColor *wxColour::GetColor() const { - wxCHECK_MSG( Ok(), (GdkColor *) NULL, T("invalid colour") ); + wxCHECK_MSG( Ok(), (GdkColor *) NULL, wxT("invalid colour") ); return &M_COLDATA->m_color; } diff --git a/src/gtk1/combobox.cpp b/src/gtk1/combobox.cpp index 74ca53348b..a0a91e6a58 100644 --- a/src/gtk1/combobox.cpp +++ b/src/gtk1/combobox.cpp @@ -104,7 +104,7 @@ bool wxComboBox::Create( wxWindow *parent, wxWindowID id, const wxString& value, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxComboBox creation failed") ); + wxFAIL_MSG( wxT("wxComboBox creation failed") ); return FALSE; } @@ -180,7 +180,7 @@ wxComboBox::~wxComboBox() void wxComboBox::AppendCommon( const wxString &item ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -228,7 +228,7 @@ void wxComboBox::Append( const wxString &item, wxClientData *clientData ) void wxComboBox::SetClientData( int n, void* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return; @@ -238,7 +238,7 @@ void wxComboBox::SetClientData( int n, void* clientData ) void* wxComboBox::GetClientData( int n ) { - wxCHECK_MSG( m_widget != NULL, NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return NULL; @@ -248,7 +248,7 @@ void* wxComboBox::GetClientData( int n ) void wxComboBox::SetClientObject( int n, wxClientData* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientObjectList.Nth( n ); if (!node) return; @@ -261,7 +261,7 @@ void wxComboBox::SetClientObject( int n, wxClientData* clientData ) wxClientData* wxComboBox::GetClientObject( int n ) { - wxCHECK_MSG( m_widget != NULL, (wxClientData*)NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, (wxClientData*)NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return (wxClientData*) NULL; @@ -271,7 +271,7 @@ wxClientData* wxComboBox::GetClientObject( int n ) void wxComboBox::Clear() { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; gtk_list_clear_items( GTK_LIST(list), 0, Number() ); @@ -290,7 +290,7 @@ void wxComboBox::Clear() void wxComboBox::Delete( int n ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkList *listbox = GTK_LIST( GTK_COMBO(m_widget)->list ); @@ -298,7 +298,7 @@ void wxComboBox::Delete( int n ) if (!child) { - wxFAIL_MSG(T("wrong index")); + wxFAIL_MSG(wxT("wrong index")); return; } @@ -323,7 +323,7 @@ void wxComboBox::Delete( int n ) int wxComboBox::FindString( const wxString &item ) { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -344,7 +344,7 @@ int wxComboBox::FindString( const wxString &item ) int wxComboBox::GetSelection() const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -366,7 +366,7 @@ int wxComboBox::GetSelection() const wxString wxComboBox::GetString( int n ) const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -380,7 +380,7 @@ wxString wxComboBox::GetString( int n ) const } else { - wxFAIL_MSG( T("wxComboBox: wrong index") ); + wxFAIL_MSG( wxT("wxComboBox: wrong index") ); } return str; @@ -388,7 +388,7 @@ wxString wxComboBox::GetString( int n ) const wxString wxComboBox::GetStringSelection() const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -400,14 +400,14 @@ wxString wxComboBox::GetStringSelection() const return tmp; } - wxFAIL_MSG( T("wxComboBox: no selection") ); + wxFAIL_MSG( wxT("wxComboBox: no selection") ); - return T(""); + return wxT(""); } int wxComboBox::Number() const { - wxCHECK_MSG( m_widget != NULL, 0, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid combobox") ); GtkWidget *list = GTK_COMBO(m_widget)->list; @@ -419,7 +419,7 @@ int wxComboBox::Number() const void wxComboBox::SetSelection( int n ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); DisableEvents(); @@ -431,7 +431,7 @@ void wxComboBox::SetSelection( int n ) void wxComboBox::SetStringSelection( const wxString &string ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); int res = FindString( string ); if (res == -1) return; @@ -447,17 +447,17 @@ wxString wxComboBox::GetValue() const void wxComboBox::SetValue( const wxString& value ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; - wxString tmp = T(""); + wxString tmp = wxT(""); if (!value.IsNull()) tmp = value; gtk_entry_set_text( GTK_ENTRY(entry), tmp.mbc_str() ); } void wxComboBox::Copy() { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; #if (GTK_MINOR_VERSION > 0) @@ -469,7 +469,7 @@ void wxComboBox::Copy() void wxComboBox::Cut() { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; #if (GTK_MINOR_VERSION > 0) @@ -481,7 +481,7 @@ void wxComboBox::Cut() void wxComboBox::Paste() { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; #if (GTK_MINOR_VERSION > 0) @@ -493,7 +493,7 @@ void wxComboBox::Paste() void wxComboBox::SetInsertionPoint( long pos ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; gtk_entry_set_position( GTK_ENTRY(entry), (int)pos ); @@ -501,7 +501,7 @@ void wxComboBox::SetInsertionPoint( long pos ) void wxComboBox::SetInsertionPointEnd() { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); SetInsertionPoint( -1 ); } @@ -521,7 +521,7 @@ long wxComboBox::GetLastPosition() const void wxComboBox::Replace( long from, long to, const wxString& value ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); // FIXME: not quite sure how to do this method right in multibyte mode GtkWidget *entry = GTK_COMBO(m_widget)->entry; @@ -533,7 +533,7 @@ void wxComboBox::Replace( long from, long to, const wxString& value ) void wxComboBox::Remove(long from, long to) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); GtkWidget *entry = GTK_COMBO(m_widget)->entry; gtk_editable_delete_text( GTK_EDITABLE(entry), (gint)from, (gint)to ); diff --git a/src/gtk1/control.cpp b/src/gtk1/control.cpp index d69fae8dc1..12cc6a70df 100644 --- a/src/gtk1/control.cpp +++ b/src/gtk1/control.cpp @@ -39,13 +39,13 @@ wxControl::wxControl( wxWindow *parent, void wxControl::SetLabel( const wxString &label ) { m_label.Empty(); - for ( const wxChar *pc = label; *pc != T('\0'); pc++ ) + for ( const wxChar *pc = label; *pc != wxT('\0'); pc++ ) { - if ( *pc == T('&') ) + if ( *pc == wxT('&') ) { pc++; // skip it #if 0 // it would be unused anyhow for now - kbd interface not done yet - if ( *pc != T('&') ) m_chAccel = *pc; + if ( *pc != wxT('&') ) m_chAccel = *pc; #endif } m_label << *pc; diff --git a/src/gtk1/cursor.cpp b/src/gtk1/cursor.cpp index 17646128c6..3eca3593ef 100644 --- a/src/gtk1/cursor.cpp +++ b/src/gtk1/cursor.cpp @@ -95,7 +95,7 @@ wxCursor::wxCursor( int cursorId ) case wxCURSOR_BASED_ARROW_DOWN: gdk_cur = GDK_BASED_ARROW_DOWN; break; */ default: - wxFAIL_MSG(T("unsupported cursor type")); + wxFAIL_MSG(wxT("unsupported cursor type")); // will use the standard one case wxCURSOR_ARROW: @@ -170,7 +170,7 @@ void wxBeginBusyCursor( wxCursor *WXUNUSED(cursor) ) return; wxASSERT_MSG( !gs_savedCursor.Ok(), - T("forgot to call wxEndBusyCursor, will leak memory") ); + wxT("forgot to call wxEndBusyCursor, will leak memory") ); gs_savedCursor = g_globalCursor; diff --git a/src/gtk1/data.cpp b/src/gtk1/data.cpp index 063c74c4fe..3d2f42a354 100644 --- a/src/gtk1/data.cpp +++ b/src/gtk1/data.cpp @@ -142,45 +142,45 @@ wxColour wxNullColour; wxPalette wxNullPalette; /* Default window names */ -const wxChar *wxButtonNameStr = T("button"); -const wxChar *wxCanvasNameStr = T("canvas"); -const wxChar *wxCheckBoxNameStr = T("check"); -const wxChar *wxChoiceNameStr = T("choice"); -const wxChar *wxComboBoxNameStr = T("comboBox"); -const wxChar *wxDialogNameStr = T("dialog"); -const wxChar *wxFrameNameStr = T("frame"); -const wxChar *wxGaugeNameStr = T("gauge"); -const wxChar *wxStaticBoxNameStr = T("groupBox"); -const wxChar *wxListBoxNameStr = T("listBox"); -const wxChar *wxStaticTextNameStr = T("message"); -const wxChar *wxStaticBitmapNameStr = T("message"); -const wxChar *wxMultiTextNameStr = T("multitext"); -const wxChar *wxPanelNameStr = T("panel"); -const wxChar *wxRadioBoxNameStr = T("radioBox"); -const wxChar *wxRadioButtonNameStr = T("radioButton"); -const wxChar *wxBitmapRadioButtonNameStr = T("radioButton"); -const wxChar *wxScrollBarNameStr = T("scrollBar"); -const wxChar *wxSliderNameStr = T("slider"); -const wxChar *wxStaticNameStr = T("static"); -const wxChar *wxTextCtrlWindowNameStr = T("textWindow"); -const wxChar *wxTextCtrlNameStr = T("text"); -const wxChar *wxVirtListBoxNameStr = T("virtListBox"); -const wxChar *wxButtonBarNameStr = T("buttonbar"); -const wxChar *wxEnhDialogNameStr = T("Shell"); -const wxChar *wxToolBarNameStr = T("toolbar"); -const wxChar *wxStatusLineNameStr = T("status_line"); -const wxChar *wxGetTextFromUserPromptStr = T("Input Text"); -const wxChar *wxMessageBoxCaptionStr = T("Message"); -const wxChar *wxFileSelectorPromptStr = T("Select a file"); -const wxChar *wxFileSelectorDefaultWildcardStr = T("*"); -const wxChar *wxInternalErrorStr = T("wxWindows Internal Error"); -const wxChar *wxFatalErrorStr = T("wxWindows Fatal Error"); -const wxChar *wxDirDialogNameStr = T("wxDirCtrl"); -const wxChar *wxDirDialogDefaultFolderStr = T("/"); +const wxChar *wxButtonNameStr = wxT("button"); +const wxChar *wxCanvasNameStr = wxT("canvas"); +const wxChar *wxCheckBoxNameStr = wxT("check"); +const wxChar *wxChoiceNameStr = wxT("choice"); +const wxChar *wxComboBoxNameStr = wxT("comboBox"); +const wxChar *wxDialogNameStr = wxT("dialog"); +const wxChar *wxFrameNameStr = wxT("frame"); +const wxChar *wxGaugeNameStr = wxT("gauge"); +const wxChar *wxStaticBoxNameStr = wxT("groupBox"); +const wxChar *wxListBoxNameStr = wxT("listBox"); +const wxChar *wxStaticTextNameStr = wxT("message"); +const wxChar *wxStaticBitmapNameStr = wxT("message"); +const wxChar *wxMultiTextNameStr = wxT("multitext"); +const wxChar *wxPanelNameStr = wxT("panel"); +const wxChar *wxRadioBoxNameStr = wxT("radioBox"); +const wxChar *wxRadioButtonNameStr = wxT("radioButton"); +const wxChar *wxBitmapRadioButtonNameStr = wxT("radioButton"); +const wxChar *wxScrollBarNameStr = wxT("scrollBar"); +const wxChar *wxSliderNameStr = wxT("slider"); +const wxChar *wxStaticNameStr = wxT("static"); +const wxChar *wxTextCtrlWindowNameStr = wxT("textWindow"); +const wxChar *wxTextCtrlNameStr = wxT("text"); +const wxChar *wxVirtListBoxNameStr = wxT("virtListBox"); +const wxChar *wxButtonBarNameStr = wxT("buttonbar"); +const wxChar *wxEnhDialogNameStr = wxT("Shell"); +const wxChar *wxToolBarNameStr = wxT("toolbar"); +const wxChar *wxStatusLineNameStr = wxT("status_line"); +const wxChar *wxGetTextFromUserPromptStr = wxT("Input Text"); +const wxChar *wxMessageBoxCaptionStr = wxT("Message"); +const wxChar *wxFileSelectorPromptStr = wxT("Select a file"); +const wxChar *wxFileSelectorDefaultWildcardStr = wxT("*"); +const wxChar *wxInternalErrorStr = wxT("wxWindows Internal Error"); +const wxChar *wxFatalErrorStr = wxT("wxWindows Fatal Error"); +const wxChar *wxDirDialogNameStr = wxT("wxDirCtrl"); +const wxChar *wxDirDialogDefaultFolderStr = wxT("/"); /* See wx/utils.h */ -const wxChar *wxFloatToStringStr = T("%.2f"); -const wxChar *wxDoubleToStringStr = T("%.2f"); +const wxChar *wxFloatToStringStr = wxT("%.2f"); +const wxChar *wxDoubleToStringStr = wxT("%.2f"); /* Dafaults for wxWindow etc. */ const wxSize wxDefaultSize(-1, -1); diff --git a/src/gtk1/dataobj.cpp b/src/gtk1/dataobj.cpp index 8b217e7bc4..d1668eb212 100644 --- a/src/gtk1/dataobj.cpp +++ b/src/gtk1/dataobj.cpp @@ -87,7 +87,7 @@ wxDataFormat::wxDataFormat( const GdkAtom atom ) m_type = wxDF_PRIVATE; m_id = gdk_atom_name( m_atom ); - if (m_id == T("file:ALL")) + if (m_id == wxT("file:ALL")) { m_type = wxDF_FILENAME; } @@ -100,21 +100,21 @@ void wxDataFormat::SetType( wxDataFormatId type ) if (m_type == wxDF_TEXT) { - m_id = T("STRING"); + m_id = wxT("STRING"); } else if (m_type == wxDF_BITMAP) { - m_id = T("image/png"); + m_id = wxT("image/png"); } else if (m_type == wxDF_FILENAME) { - m_id = T("file:ALL"); + m_id = wxT("file:ALL"); } else { - wxFAIL_MSG( T("invalid dataformat") ); + wxFAIL_MSG( wxT("invalid dataformat") ); } m_hasAtom = FALSE; @@ -484,7 +484,7 @@ void wxPrivateDataObject::Free() wxPrivateDataObject::wxPrivateDataObject() { - wxString id = T("application/"); + wxString id = wxT("application/"); id += wxTheApp->GetAppName(); m_format.SetId( id ); diff --git a/src/gtk1/dcclient.cpp b/src/gtk1/dcclient.cpp index d0d94aaaf4..668155d07c 100644 --- a/src/gtk1/dcclient.cpp +++ b/src/gtk1/dcclient.cpp @@ -112,11 +112,11 @@ wxWindowDC::wxWindowDC( wxWindow *window ) m_isMemDC = FALSE; m_font = window->GetFont(); - wxASSERT_MSG( window, T("DC needs a window") ); + wxASSERT_MSG( window, wxT("DC needs a window") ); GtkWidget *widget = window->m_wxwindow; - wxASSERT_MSG( widget, T("DC needs a widget") ); + wxASSERT_MSG( widget, wxT("DC needs a widget") ); m_window = widget->window; @@ -154,18 +154,18 @@ wxWindowDC::~wxWindowDC() void wxWindowDC::DoFloodFill( long WXUNUSED(x), long WXUNUSED(y), const wxColour &WXUNUSED(col), int WXUNUSED(style) ) { - wxFAIL_MSG( T("wxWindowDC::DoFloodFill not implemented") ); + wxFAIL_MSG( wxT("wxWindowDC::DoFloodFill not implemented") ); } bool wxWindowDC::DoGetPixel( long WXUNUSED(x1), long WXUNUSED(y1), wxColour *WXUNUSED(col) ) const { - wxFAIL_MSG( T("wxWindowDC::DoGetPixel not implemented") ); + wxFAIL_MSG( wxT("wxWindowDC::DoGetPixel not implemented") ); return FALSE; } void wxWindowDC::DoDrawLine( long x1, long y1, long x2, long y2 ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_pen.GetStyle() != wxTRANSPARENT) { @@ -179,7 +179,7 @@ void wxWindowDC::DoDrawLine( long x1, long y1, long x2, long y2 ) void wxWindowDC::DoCrossHair( long x, long y ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_pen.GetStyle() != wxTRANSPARENT) { @@ -199,7 +199,7 @@ void wxWindowDC::DoCrossHair( long x, long y ) void wxWindowDC::DoDrawArc( long x1, long y1, long x2, long y2, long xc, long yc ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); long xx1 = XLOG2DEV(x1); long yy1 = YLOG2DEV(y1); @@ -252,7 +252,7 @@ void wxWindowDC::DoDrawArc( long x1, long y1, long x2, long y2, void wxWindowDC::DoDrawEllipticArc( long x, long y, long width, long height, double sa, double ea ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); long xx = XLOG2DEV(x); long yy = YLOG2DEV(y); @@ -281,7 +281,7 @@ void wxWindowDC::DoDrawEllipticArc( long x, long y, long width, long height, dou void wxWindowDC::DoDrawPoint( long x, long y ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if ((m_pen.GetStyle() != wxTRANSPARENT) && m_window) gdk_draw_point( m_window, m_penGC, XLOG2DEV(x), YLOG2DEV(y) ); @@ -291,7 +291,7 @@ void wxWindowDC::DoDrawPoint( long x, long y ) void wxWindowDC::DoDrawLines( int n, wxPoint points[], long xoffset, long yoffset ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_pen.GetStyle() == wxTRANSPARENT) return; if (n <= 0) return; @@ -314,7 +314,7 @@ void wxWindowDC::DoDrawLines( int n, wxPoint points[], long xoffset, long yoffse void wxWindowDC::DoDrawPolygon( int n, wxPoint points[], long xoffset, long yoffset, int WXUNUSED(fillStyle) ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (n <= 0) return; @@ -350,7 +350,7 @@ void wxWindowDC::DoDrawPolygon( int n, wxPoint points[], long xoffset, long yoff void wxWindowDC::DoDrawRectangle( long x, long y, long width, long height ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); long xx = XLOG2DEV(x); long yy = YLOG2DEV(y); @@ -379,7 +379,7 @@ void wxWindowDC::DoDrawRectangle( long x, long y, long width, long height ) void wxWindowDC::DoDrawRoundedRectangle( long x, long y, long width, long height, double radius ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (radius < 0.0) radius = - radius * ((width < height) ? width : height); @@ -451,7 +451,7 @@ void wxWindowDC::DoDrawRoundedRectangle( long x, long y, long width, long height void wxWindowDC::DoDrawEllipse( long x, long y, long width, long height ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); long xx = XLOG2DEV(x); long yy = YLOG2DEV(y); @@ -485,9 +485,9 @@ void wxWindowDC::DoDrawBitmap( const wxBitmap &bitmap, long x, long y, bool useMask ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); - wxCHECK_RET( bitmap.Ok(), T("invalid bitmap") ); + wxCHECK_RET( bitmap.Ok(), wxT("invalid bitmap") ); /* scale/translate size and position */ @@ -566,9 +566,9 @@ bool wxWindowDC::DoBlit( long xdest, long ydest, long width, long height, of the source dc, but scales correctly on the target dc and knows about possible mask information in a memory dc. */ - wxCHECK_MSG( Ok(), FALSE, T("invalid window dc") ); + wxCHECK_MSG( Ok(), FALSE, wxT("invalid window dc") ); - wxCHECK_MSG( source, FALSE, T("invalid source dc") ); + wxCHECK_MSG( source, FALSE, wxT("invalid source dc") ); if (!m_window) return FALSE; @@ -754,7 +754,7 @@ bool wxWindowDC::DoBlit( long xdest, long ydest, long width, long height, void wxWindowDC::DoDrawText( const wxString &text, long x, long y ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (!m_window) return; @@ -819,7 +819,7 @@ long wxWindowDC::GetCharHeight() const void wxWindowDC::Clear() { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (!m_window) return; @@ -854,7 +854,7 @@ void wxWindowDC::SetFont( const wxFont &font ) void wxWindowDC::SetPen( const wxPen &pen ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_pen == pen) return; @@ -985,7 +985,7 @@ void wxWindowDC::SetPen( const wxPen &pen ) void wxWindowDC::SetBrush( const wxBrush &brush ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_brush == brush) return; @@ -1027,7 +1027,7 @@ void wxWindowDC::SetBackground( const wxBrush &brush ) /* CMB 21/7/98: Added SetBackground. Sets background brush * for Clear() and bg colour for shapes filled with cross-hatch brush */ - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_backgroundBrush == brush) return; @@ -1069,7 +1069,7 @@ void wxWindowDC::SetBackground( const wxBrush &brush ) void wxWindowDC::SetLogicalFunction( int function ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_logicalFunction == function) return; @@ -1097,7 +1097,7 @@ void wxWindowDC::SetLogicalFunction( int function ) #endif default: { - wxFAIL_MSG( T("unsupported logical function") ); + wxFAIL_MSG( wxT("unsupported logical function") ); break; } } @@ -1113,7 +1113,7 @@ void wxWindowDC::SetLogicalFunction( int function ) void wxWindowDC::SetTextForeground( const wxColour &col ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_textForegroundColour == col) return; @@ -1128,7 +1128,7 @@ void wxWindowDC::SetTextForeground( const wxColour &col ) void wxWindowDC::SetTextBackground( const wxColour &col ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (m_textBackgroundColour == col) return; @@ -1143,7 +1143,7 @@ void wxWindowDC::SetTextBackground( const wxColour &col ) void wxWindowDC::SetBackgroundMode( int mode ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); m_backgroundMode = mode; @@ -1161,12 +1161,12 @@ void wxWindowDC::SetBackgroundMode( int mode ) void wxWindowDC::SetPalette( const wxPalette& WXUNUSED(palette) ) { - wxFAIL_MSG( T("wxWindowDC::SetPalette not implemented") ); + wxFAIL_MSG( wxT("wxWindowDC::SetPalette not implemented") ); } void wxWindowDC::DoSetClippingRegion( long x, long y, long width, long height ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); wxDC::DoSetClippingRegion( x, y, width, height ); @@ -1185,7 +1185,7 @@ void wxWindowDC::DoSetClippingRegion( long x, long y, long width, long height ) void wxWindowDC::DoSetClippingRegionAsRegion( const wxRegion ®ion ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); if (region.Empty()) { @@ -1203,7 +1203,7 @@ void wxWindowDC::DoSetClippingRegionAsRegion( const wxRegion ®ion ) void wxWindowDC::DestroyClippingRegion() { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); wxDC::DestroyClippingRegion(); @@ -1306,7 +1306,7 @@ wxSize wxWindowDC::GetPPI() const int wxWindowDC::GetDepth() const { - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return -1; } @@ -1429,7 +1429,7 @@ static void wx_spline_draw_point_array(wxDC *dc) void wxWindowDC::DoDrawSpline( wxList *points ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); wxPoint *p; double cx1, cy1, cx2, cy2, cx3, cy3, cx4, cy4; diff --git a/src/gtk1/dialog.cpp b/src/gtk1/dialog.cpp index 275b1eb4e9..138fb5e769 100644 --- a/src/gtk1/dialog.cpp +++ b/src/gtk1/dialog.cpp @@ -288,7 +288,7 @@ bool wxDialog::Create( wxWindow *parent, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxDialog creation failed") ); + wxFAIL_MSG( wxT("wxDialog creation failed") ); return FALSE; } @@ -356,7 +356,7 @@ wxDialog::~wxDialog() void wxDialog::SetTitle( const wxString& title ) { m_title = title; - if (m_title.IsNull()) m_title = T(""); + if (m_title.IsNull()) m_title = wxT(""); gtk_window_set_title( GTK_WINDOW(m_widget), m_title.mbc_str() ); } @@ -442,7 +442,7 @@ bool wxDialog::Destroy() void wxDialog::OnSize( wxSizeEvent &WXUNUSED(event) ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid dialog") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid dialog") ); #if wxUSE_CONSTRAINTS if (GetAutoLayout()) @@ -477,8 +477,8 @@ void wxDialog::OnSize( wxSizeEvent &WXUNUSED(event) ) void wxDialog::DoSetSize( int x, int y, int width, int height, int sizeFlags ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid dialog") ); - wxASSERT_MSG( (m_wxwindow != NULL), T("invalid dialog") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid dialog") ); + wxASSERT_MSG( (m_wxwindow != NULL), wxT("invalid dialog") ); if (m_resizing) return; /* I don't like recursions */ m_resizing = TRUE; @@ -567,7 +567,7 @@ void wxDialog::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int heigh void wxDialog::Centre( int direction ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid dialog") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid dialog") ); int x = 0; int y = 0; @@ -623,14 +623,14 @@ void wxDialog::SetModal( bool WXUNUSED(flag) ) else if (m_windowStyle & wxDIALOG_MODAL) m_windowStyle -= wxDIALOG_MODAL; */ - wxFAIL_MSG( T("wxDialog:SetModal obsolete now") ); + wxFAIL_MSG( wxT("wxDialog:SetModal obsolete now") ); } int wxDialog::ShowModal() { if (IsModal()) { - wxFAIL_MSG( T("wxDialog:ShowModal called twice") ); + wxFAIL_MSG( wxT("wxDialog:ShowModal called twice") ); return GetReturnCode(); } @@ -653,7 +653,7 @@ void wxDialog::EndModal( int retCode ) if (!IsModal()) { - wxFAIL_MSG( T("wxDialog:EndModal called twice") ); + wxFAIL_MSG( wxT("wxDialog:EndModal called twice") ); return; } diff --git a/src/gtk1/dnd.cpp b/src/gtk1/dnd.cpp index 7189c1286b..6f3cd22a25 100644 --- a/src/gtk1/dnd.cpp +++ b/src/gtk1/dnd.cpp @@ -367,9 +367,9 @@ bool wxDropTarget::RequestData( wxDataFormat format ) if (!m_dragWidget) return FALSE; /* - wxPrintf( T("format: %s.\n"), format.GetId().c_str() ); - if (format.GetType() == wxDF_PRIVATE) wxPrintf( T("private data.\n") ); - if (format.GetType() == wxDF_TEXT) wxPrintf( T("text data.\n") ); + wxPrintf( wxT("format: %s.\n"), format.GetId().c_str() ); + if (format.GetType() == wxDF_PRIVATE) wxPrintf( wxT("private data.\n") ); + if (format.GetType() == wxDF_TEXT) wxPrintf( wxT("text data.\n") ); */ #if wxUSE_THREADS @@ -437,7 +437,7 @@ bool wxDropTarget::GetData( wxDataObject *data_object ) void wxDropTarget::UnregisterWidget( GtkWidget *widget ) { - wxCHECK_RET( widget != NULL, T("unregister widget is NULL") ); + wxCHECK_RET( widget != NULL, wxT("unregister widget is NULL") ); gtk_drag_dest_unset( widget ); @@ -456,7 +456,7 @@ void wxDropTarget::UnregisterWidget( GtkWidget *widget ) void wxDropTarget::RegisterWidget( GtkWidget *widget ) { - wxCHECK_RET( widget != NULL, T("register widget is NULL") ); + wxCHECK_RET( widget != NULL, wxT("register widget is NULL") ); /* gtk_drag_dest_set() determines what default behaviour we'd like GTK to supply. we don't want to specify out targets (=formats) @@ -817,7 +817,7 @@ wxDropSource::~wxDropSource(void) wxDragResult wxDropSource::DoDragDrop( bool WXUNUSED(bAllowMove) ) { - wxASSERT_MSG( m_data, T("wxDragSource: no data") ); + wxASSERT_MSG( m_data, wxT("wxDragSource: no data") ); if (!m_data) return (wxDragResult) wxDragNone; diff --git a/src/gtk1/filedlg.cpp b/src/gtk1/filedlg.cpp index 65552158fd..17d9087884 100644 --- a/src/gtk1/filedlg.cpp +++ b/src/gtk1/filedlg.cpp @@ -117,14 +117,14 @@ wxFileDialog::wxFileDialog( wxWindow *parent, const wxString& message, m_needParent = FALSE; if (!PreCreation( parent, pos, wxDefaultSize ) || - !CreateBase( parent, -1, pos, wxDefaultSize, style | wxDIALOG_MODAL, wxDefaultValidator, T("filedialog") )) + !CreateBase( parent, -1, pos, wxDefaultSize, style | wxDIALOG_MODAL, wxDefaultValidator, wxT("filedialog") )) { - wxFAIL_MSG( T("wxXX creation failed") ); + wxFAIL_MSG( wxT("wxXX creation failed") ); return; } m_message = message; - m_path = T(""); + m_path = wxT(""); m_fileName = defaultFileName; m_dir = defaultDir; m_wildCard = wildCard; @@ -141,7 +141,7 @@ wxFileDialog::wxFileDialog( wxWindow *parent, const wxString& message, gtk_file_selection_hide_fileop_buttons( sel ); // they don't work anyway m_path.Append(m_dir); - if( ! m_path.IsEmpty() && m_path.Last()!=T('/') ) + if( ! m_path.IsEmpty() && m_path.Last()!=wxT('/') ) m_path.Append('/'); m_path.Append(m_fileName); @@ -173,7 +173,7 @@ void wxFileDialog::SetPath(const wxString& path) wxSplitPath(path, &m_dir, &m_fileName, &ext); if (!ext.IsEmpty()) { - m_fileName += T("."); + m_fileName += wxT("."); m_fileName += ext; } } @@ -194,7 +194,7 @@ wxFileSelectorEx(const wxChar *message, int x, int y) { // TODO: implement this somehow - return wxFileSelector(message, default_path, default_filename, T(""), + return wxFileSelector(message, default_path, default_filename, wxT(""), wildcard, flags, parent, x, y); } @@ -205,7 +205,7 @@ wxString wxFileSelector( const wxChar *title, { wxString filter2; if ( defaultExtension && !filter ) - filter2 = wxString(T("*.")) + wxString(defaultExtension) ; + filter2 = wxString(wxT("*.")) + wxString(defaultExtension) ; else if ( filter ) filter2 = filter; @@ -237,9 +237,9 @@ wxString wxLoadFileSelector( const wxChar *what, const wxChar *extension, const wxString str = _("Load %s file"); wxSprintf(prompt, str, what); - if (*ext == T('.')) ext++; + if (*ext == wxT('.')) ext++; wxChar wild[60]; - wxSprintf(wild, T("*.%s"), ext); + wxSprintf(wild, wxT("*.%s"), ext); return wxFileSelector (prompt, (const wxChar *) NULL, default_name, ext, wild, 0, parent); } @@ -253,9 +253,9 @@ wxString wxSaveFileSelector(const wxChar *what, const wxChar *extension, const w wxString str = _("Save %s file"); wxSprintf(prompt, str, what); - if (*ext == T('.')) ext++; + if (*ext == wxT('.')) ext++; wxChar wild[60]; - wxSprintf(wild, T("*.%s"), ext); + wxSprintf(wild, wxT("*.%s"), ext); return wxFileSelector (prompt, (const wxChar *) NULL, default_name, ext, wild, 0, parent); } diff --git a/src/gtk1/font.cpp b/src/gtk1/font.cpp index c27134680f..72348fda2c 100644 --- a/src/gtk1/font.cpp +++ b/src/gtk1/font.cpp @@ -162,18 +162,18 @@ wxFont::wxFont( GdkFont *WXUNUSED(font), char *xFontName ) wxString tmp; wxString fontname( xFontName ); - wxStringTokenizer tn( fontname, T("-") ); + wxStringTokenizer tn( fontname, wxT("-") ); tn.GetNextToken(); // foundry M_FONTDATA->m_faceName = tn.GetNextToken(); // courier tmp = tn.GetNextToken().MakeUpper(); - if (tmp == T("BOLD")) M_FONTDATA->m_weight = wxBOLD; + if (tmp == wxT("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; + if (tmp == wxT("I")) M_FONTDATA->m_style = wxITALIC; + if (tmp == wxT("O")) M_FONTDATA->m_style = wxITALIC; tn.GetNextToken(); // set width tn.GetNextToken(); // ? @@ -187,12 +187,12 @@ wxFont::wxFont( GdkFont *WXUNUSED(font), char *xFontName ) 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; + if (tmp == wxT("M")) M_FONTDATA->m_family = wxMODERN; + else if (M_FONTDATA->m_faceName == wxT("TIMES")) M_FONTDATA->m_family = wxROMAN; + else if (M_FONTDATA->m_faceName == wxT("HELVETICA")) M_FONTDATA->m_family = wxSWISS; + else if (M_FONTDATA->m_faceName == wxT("LUCIDATYPEWRITER")) M_FONTDATA->m_family = wxTELETYPE; + else if (M_FONTDATA->m_faceName == wxT("LUCIDA")) M_FONTDATA->m_family = wxDECORATIVE; + else if (M_FONTDATA->m_faceName == wxT("UTOPIA")) M_FONTDATA->m_family = wxSCRIPT; } bool wxFont::Create( int pointSize, @@ -235,42 +235,42 @@ wxFont::~wxFont() int wxFont::GetPointSize() const { - wxCHECK_MSG( Ok(), 0, T("invalid font") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid font") ); return M_FONTDATA->m_pointSize; } wxString wxFont::GetFaceName() const { - wxCHECK_MSG( Ok(), T(""), T("invalid font") ); + wxCHECK_MSG( Ok(), wxT(""), wxT("invalid font") ); return M_FONTDATA->m_faceName; } int wxFont::GetFamily() const { - wxCHECK_MSG( Ok(), 0, T("invalid font") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid font") ); return M_FONTDATA->m_family; } int wxFont::GetStyle() const { - wxCHECK_MSG( Ok(), 0, T("invalid font") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid font") ); return M_FONTDATA->m_style; } int wxFont::GetWeight() const { - wxCHECK_MSG( Ok(), 0, T("invalid font") ); + wxCHECK_MSG( Ok(), 0, wxT("invalid font") ); return M_FONTDATA->m_weight; } bool wxFont::GetUnderlined() const { - wxCHECK_MSG( Ok(), FALSE, T("invalid font") ); + wxCHECK_MSG( Ok(), FALSE, wxT("invalid font") ); return M_FONTDATA->m_underlined; } @@ -278,7 +278,7 @@ bool wxFont::GetUnderlined() const wxFontEncoding wxFont::GetEncoding() const { - wxCHECK_MSG( Ok(), wxFONTENCODING_DEFAULT, T("invalid font") ); + wxCHECK_MSG( Ok(), wxFONTENCODING_DEFAULT, wxT("invalid font") ); return M_FONTDATA->m_encoding; } @@ -344,7 +344,7 @@ GdkFont *wxFont::GetInternalFont( float scale ) const { if (!Ok()) { - wxFAIL_MSG( T("invalid font") ); + wxFAIL_MSG( wxT("invalid font") ); return (GdkFont*) NULL; } @@ -387,7 +387,7 @@ GdkFont *wxFont::GetInternalFont( float scale ) const if (!font) { - wxLogError(T("could not load any font")); + wxLogError(wxT("could not load any font")); } return font; diff --git a/src/gtk1/fontdlg.cpp b/src/gtk1/fontdlg.cpp index a7808d8ba0..eaa998c383 100644 --- a/src/gtk1/fontdlg.cpp +++ b/src/gtk1/fontdlg.cpp @@ -106,13 +106,13 @@ wxFontDialog::wxFontDialog( wxWindow *parent, wxFontData *WXUNUSED(data) ) if (!PreCreation( parent, wxDefaultPosition, wxDefaultSize ) || !CreateBase( parent, -1, wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE, - wxDefaultValidator, T("fontdialog") )) + wxDefaultValidator, wxT("fontdialog") )) { - wxFAIL_MSG( T("wxXX creation failed") ); + wxFAIL_MSG( wxT("wxXX creation failed") ); return; } #ifndef __WXGTK12__ - wxFAIL_MSG( T("TODO") ); + wxFAIL_MSG( wxT("TODO") ); #else // GTK+ 1.2 wxString m_message( _("Choose font") ); m_widget = gtk_font_selection_dialog_new( m_message.mbc_str() ); diff --git a/src/gtk1/frame.cpp b/src/gtk1/frame.cpp index 3065a36071..9cc4171c2d 100644 --- a/src/gtk1/frame.cpp +++ b/src/gtk1/frame.cpp @@ -365,7 +365,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxFrame creation failed") ); + wxFAIL_MSG( wxT("wxFrame creation failed") ); return FALSE; } @@ -382,7 +382,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title, gtk_window_set_wmclass( GTK_WINDOW(m_widget), name.mb_str(), name.mb_str() ); #ifdef __WXDEBUG__ - debug_focus_in( m_widget, T("wxFrame::m_widget"), name ); + debug_focus_in( m_widget, wxT("wxFrame::m_widget"), name ); #endif gtk_window_set_title( GTK_WINDOW(m_widget), title.mbc_str() ); @@ -398,7 +398,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title, gtk_container_add( GTK_CONTAINER(m_widget), m_mainWidget ); #ifdef __WXDEBUG__ - debug_focus_in( m_mainWidget, T("wxFrame::m_mainWidget"), name ); + debug_focus_in( m_mainWidget, wxT("wxFrame::m_mainWidget"), name ); #endif /* m_wxwindow only represents the client area without toolbar and menubar */ @@ -407,7 +407,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title, gtk_container_add( GTK_CONTAINER(m_mainWidget), m_wxwindow ); #ifdef __WXDEBUG__ - debug_focus_in( m_wxwindow, T("wxFrame::m_wxwindow"), name ); + debug_focus_in( m_wxwindow, wxT("wxFrame::m_wxwindow"), name ); #endif /* we donm't allow the frame to get the focus as otherwise @@ -462,7 +462,7 @@ wxFrame::~wxFrame() bool wxFrame::Show( bool show ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); if (show && !m_sizeSet) { @@ -479,7 +479,7 @@ bool wxFrame::Show( bool show ) bool wxFrame::Destroy() { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); if (!wxPendingDelete.Member(this)) wxPendingDelete.Append(this); @@ -488,10 +488,10 @@ bool wxFrame::Destroy() void wxFrame::DoSetSize( int x, int y, int width, int height, int sizeFlags ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); /* this shouldn't happen: wxFrame, wxMDIParentFrame and wxMDIChildFrame have m_wxwindow */ - wxASSERT_MSG( (m_wxwindow != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_wxwindow != NULL), wxT("invalid frame") ); /* avoid recursions */ if (m_resizing) return; @@ -553,7 +553,7 @@ void wxFrame::DoSetSize( int x, int y, int width, int height, int sizeFlags ) void wxFrame::Centre( int direction ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); int x = 0; int y = 0; @@ -566,7 +566,7 @@ void wxFrame::Centre( int direction ) void wxFrame::DoGetClientSize( int *width, int *height ) const { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); wxWindow::DoGetClientSize( width, height ); if (height) @@ -611,7 +611,7 @@ void wxFrame::DoGetClientSize( int *width, int *height ) const void wxFrame::DoSetClientSize( int width, int height ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); /* menu bar */ if (m_frameMenuBar) @@ -656,7 +656,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height m_resizing = TRUE; /* this shouldn't happen: wxFrame, wxMDIParentFrame and wxMDIChildFrame have m_wxwindow */ - wxASSERT_MSG( (m_wxwindow != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_wxwindow != NULL), wxT("invalid frame") ); m_width = width; m_height = height; @@ -813,7 +813,7 @@ void wxFrame::OnCloseWindow( wxCloseEvent& WXUNUSED(event) ) void wxFrame::OnSize( wxSizeEvent &WXUNUSED(event) ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); #if wxUSE_CONSTRAINTS if (GetAutoLayout()) @@ -853,8 +853,8 @@ void wxFrame::OnSize( wxSizeEvent &WXUNUSED(event) ) void wxFrame::SetMenuBar( wxMenuBar *menuBar ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); - wxASSERT_MSG( (m_wxwindow != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); + wxASSERT_MSG( (m_wxwindow != NULL), wxT("invalid frame") ); m_frameMenuBar = menuBar; @@ -920,9 +920,9 @@ void wxFrame::OnMenuHighlight(wxMenuEvent& event) #if wxUSE_TOOLBAR wxToolBar* wxFrame::CreateToolBar( long style, wxWindowID id, const wxString& name ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); - wxCHECK_MSG( m_frameToolBar == NULL, FALSE, T("recreating toolbar in wxFrame") ); + wxCHECK_MSG( m_frameToolBar == NULL, FALSE, wxT("recreating toolbar in wxFrame") ); m_insertInClientArea = FALSE; @@ -951,9 +951,9 @@ wxToolBar *wxFrame::GetToolBar() const #if wxUSE_STATUSBAR wxStatusBar* wxFrame::CreateStatusBar( int number, long style, wxWindowID id, const wxString& name ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); - wxCHECK_MSG( m_frameStatusBar == NULL, FALSE, T("recreating status bar in wxFrame") ); + wxCHECK_MSG( m_frameStatusBar == NULL, FALSE, wxT("recreating status bar in wxFrame") ); m_frameStatusBar = OnCreateStatusBar( number, style, id, name ); @@ -990,18 +990,18 @@ wxStatusBar *wxFrame::GetStatusBar() const void wxFrame::SetStatusText(const wxString& text, int number) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); - wxCHECK_RET( m_frameStatusBar != NULL, T("no statusbar to set text for") ); + wxCHECK_RET( m_frameStatusBar != NULL, wxT("no statusbar to set text for") ); m_frameStatusBar->SetStatusText(text, number); } void wxFrame::SetStatusWidths(int n, const int widths_field[] ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); - wxCHECK_RET( m_frameStatusBar != NULL, T("no statusbar to set widths for") ); + wxCHECK_RET( m_frameStatusBar != NULL, wxT("no statusbar to set widths for") ); m_frameStatusBar->SetStatusWidths(n, widths_field); } @@ -1029,16 +1029,16 @@ void wxFrame::Command( int id ) void wxFrame::SetTitle( const wxString &title ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); m_title = title; - if (m_title.IsNull()) m_title = T(""); + if (m_title.IsNull()) m_title = wxT(""); gtk_window_set_title( GTK_WINDOW(m_widget), title.mbc_str() ); } void wxFrame::SetIcon( const wxIcon &icon ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid frame") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); m_icon = icon; if (!icon.Ok()) return; diff --git a/src/gtk1/gauge.cpp b/src/gtk1/gauge.cpp index 46c3fbdb9f..ecc9b39d77 100644 --- a/src/gtk1/gauge.cpp +++ b/src/gtk1/gauge.cpp @@ -33,7 +33,7 @@ bool wxGauge::Create( wxWindow *parent, wxWindowID id, int range, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxGauge creation failed") ); + wxFAIL_MSG( wxT("wxGauge creation failed") ); return FALSE; } diff --git a/src/gtk1/listbox.cpp b/src/gtk1/listbox.cpp index d09bb14fa3..0336ffec91 100644 --- a/src/gtk1/listbox.cpp +++ b/src/gtk1/listbox.cpp @@ -259,7 +259,7 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxListBox creation failed") ); + wxFAIL_MSG( wxT("wxListBox creation failed") ); return FALSE; } @@ -369,11 +369,11 @@ wxListBox::~wxListBox() void wxListBox::InsertItems(int nItems, const wxString items[], int pos) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); GList *children = m_list->children; int length = g_list_length(children); - wxCHECK_RET( pos <= length, T("invalid index in wxListBox::InsertItems") ); + wxCHECK_RET( pos <= length, wxT("invalid index in wxListBox::InsertItems") ); // VZ: it seems that GTK 1.0.6 doesn't has a function to insert an item // into a listbox at the given position, this is why we first delete @@ -471,7 +471,7 @@ void wxListBox::InsertItems(int nItems, const wxString items[], int pos) void wxListBox::AppendCommon( const wxString &item ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); GtkWidget *list_item; @@ -570,7 +570,7 @@ void wxListBox::Append( const wxString &item, wxClientData *clientData ) void wxListBox::SetClientData( int n, void* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return; @@ -580,7 +580,7 @@ void wxListBox::SetClientData( int n, void* clientData ) void* wxListBox::GetClientData( int n ) { - wxCHECK_MSG( m_widget != NULL, NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, NULL, wxT("invalid combobox") ); wxNode *node = m_clientDataList.Nth( n ); if (!node) return NULL; @@ -590,7 +590,7 @@ void* wxListBox::GetClientData( int n ) void wxListBox::SetClientObject( int n, wxClientData* clientData ) { - wxCHECK_RET( m_widget != NULL, T("invalid combobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") ); wxNode *node = m_clientObjectList.Nth( n ); if (!node) return; @@ -603,7 +603,7 @@ void wxListBox::SetClientObject( int n, wxClientData* clientData ) wxClientData* wxListBox::GetClientObject( int n ) { - wxCHECK_MSG( m_widget != NULL, (wxClientData*)NULL, T("invalid combobox") ); + wxCHECK_MSG( m_widget != NULL, (wxClientData*)NULL, wxT("invalid combobox") ); wxNode *node = m_clientObjectList.Nth( n ); if (!node) return (wxClientData*) NULL; @@ -613,7 +613,7 @@ wxClientData* wxListBox::GetClientObject( int n ) void wxListBox::Clear() { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); gtk_list_clear_items( m_list, 0, Number() ); @@ -631,11 +631,11 @@ void wxListBox::Clear() void wxListBox::Delete( int n ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); GList *child = g_list_nth( m_list->children, n ); - wxCHECK_RET( child, T("wrong listbox index") ); + wxCHECK_RET( child, wxT("wrong listbox index") ); GList *list = g_list_append( (GList*) NULL, child->data ); gtk_list_remove_items( m_list, list ); @@ -658,7 +658,7 @@ void wxListBox::Delete( int n ) void wxListBox::Deselect( int n ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); DisableEvents(); @@ -669,7 +669,7 @@ void wxListBox::Deselect( int n ) int wxListBox::FindString( const wxString &item ) const { - wxCHECK_MSG( m_list != NULL, -1, T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, -1, wxT("invalid listbox") ); GList *child = m_list->children; int count = 0; @@ -694,7 +694,7 @@ int wxListBox::FindString( const wxString &item ) const int wxListBox::GetSelection() const { - wxCHECK_MSG( m_list != NULL, -1, T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, -1, wxT("invalid listbox") ); GList *child = m_list->children; int count = 0; @@ -709,7 +709,7 @@ int wxListBox::GetSelection() const int wxListBox::GetSelections( wxArrayInt& aSelections ) const { - wxCHECK_MSG( m_list != NULL, -1, T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, -1, wxT("invalid listbox") ); // get the number of selected items first GList *child = m_list->children; @@ -739,7 +739,7 @@ int wxListBox::GetSelections( wxArrayInt& aSelections ) const wxString wxListBox::GetString( int n ) const { - wxCHECK_MSG( m_list != NULL, T(""), T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, wxT(""), wxT("invalid listbox") ); GList *child = g_list_nth( m_list->children, n ); if (child) @@ -752,14 +752,14 @@ wxString wxListBox::GetString( int n ) const return str; } - wxFAIL_MSG(T("wrong listbox index")); + wxFAIL_MSG(wxT("wrong listbox index")); - return T(""); + return wxT(""); } wxString wxListBox::GetStringSelection() const { - wxCHECK_MSG( m_list != NULL, T(""), T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, wxT(""), wxT("invalid listbox") ); GList *selection = m_list->selection; if (selection) @@ -772,13 +772,13 @@ wxString wxListBox::GetStringSelection() const return str; } - wxFAIL_MSG(T("no listbox selection available")); - return T(""); + wxFAIL_MSG(wxT("no listbox selection available")); + return wxT(""); } int wxListBox::Number() { - wxCHECK_MSG( m_list != NULL, -1, T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, -1, wxT("invalid listbox") ); GList *child = m_list->children; int count = 0; @@ -788,7 +788,7 @@ int wxListBox::Number() bool wxListBox::Selected( int n ) { - wxCHECK_MSG( m_list != NULL, FALSE, T("invalid listbox") ); + wxCHECK_MSG( m_list != NULL, FALSE, wxT("invalid listbox") ); GList *target = g_list_nth( m_list->children, n ); if (target) @@ -800,28 +800,28 @@ bool wxListBox::Selected( int n ) child = child->next; } } - wxFAIL_MSG(T("wrong listbox index")); + wxFAIL_MSG(wxT("wrong listbox index")); return FALSE; } void wxListBox::Set( int WXUNUSED(n), const wxString *WXUNUSED(choices) ) { - wxFAIL_MSG(T("wxListBox::Set not implemented")); + wxFAIL_MSG(wxT("wxListBox::Set not implemented")); } void wxListBox::SetFirstItem( int WXUNUSED(n) ) { - wxFAIL_MSG(T("wxListBox::SetFirstItem not implemented")); + wxFAIL_MSG(wxT("wxListBox::SetFirstItem not implemented")); } void wxListBox::SetFirstItem( const wxString &WXUNUSED(item) ) { - wxFAIL_MSG(T("wxListBox::SetFirstItem not implemented")); + wxFAIL_MSG(wxT("wxListBox::SetFirstItem not implemented")); } void wxListBox::SetSelection( int n, bool select ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); DisableEvents(); @@ -835,7 +835,7 @@ void wxListBox::SetSelection( int n, bool select ) void wxListBox::SetString( int n, const wxString &string ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); GList *child = g_list_nth( m_list->children, n ); if (child) @@ -854,13 +854,13 @@ void wxListBox::SetString( int n, const wxString &string ) } else { - wxFAIL_MSG(T("wrong listbox index")); + wxFAIL_MSG(wxT("wrong listbox index")); } } void wxListBox::SetStringSelection( const wxString &string, bool select ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); SetSelection( FindString(string), select ); } @@ -896,7 +896,7 @@ void wxListBox::ApplyToolTip( GtkTooltips *tips, const wxChar *tip ) #if wxUSE_DRAG_AND_DROP void wxListBox::SetDropTarget( wxDropTarget *dropTarget ) { - wxCHECK_RET( m_list != NULL, T("invalid listbox") ); + wxCHECK_RET( m_list != NULL, wxT("invalid listbox") ); #ifndef NEW_GTK_DND_CODE if (m_dropTarget) diff --git a/src/gtk1/mdi.cpp b/src/gtk1/mdi.cpp index cb14533ce2..3437436706 100644 --- a/src/gtk1/mdi.cpp +++ b/src/gtk1/mdi.cpp @@ -319,7 +319,7 @@ void wxMDIChildFrame::AddChild( wxWindowBase *child ) void wxMDIChildFrame::SetMenuBar( wxMenuBar *menu_bar ) { - wxASSERT_MSG( m_menuBar == NULL, T("Only one menubar allowed") ); + wxASSERT_MSG( m_menuBar == NULL, wxT("Only one menubar allowed") ); m_menuBar = menu_bar; @@ -431,9 +431,9 @@ bool wxMDIClientWindow::CreateClient( wxMDIParentFrame *parent, long style ) m_insertCallback = (wxInsertChildFunction)wxInsertChildInMDI; if (!PreCreation( parent, wxDefaultPosition, wxDefaultSize ) || - !CreateBase( parent, -1, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, T("wxMDIClientWindow") )) + !CreateBase( parent, -1, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, wxT("wxMDIClientWindow") )) { - wxFAIL_MSG( T("wxMDIClientWindow creation failed") ); + wxFAIL_MSG( wxT("wxMDIClientWindow creation failed") ); return FALSE; } diff --git a/src/gtk1/menu.cpp b/src/gtk1/menu.cpp index d3ebf032d7..c56045a78d 100644 --- a/src/gtk1/menu.cpp +++ b/src/gtk1/menu.cpp @@ -41,9 +41,9 @@ wxMenuBar::wxMenuBar( long style ) m_invokingWindow = (wxWindow*) NULL; if (!PreCreation( (wxWindow*) NULL, wxDefaultPosition, wxDefaultSize ) || - !CreateBase( (wxWindow*) NULL, -1, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, T("menubar") )) + !CreateBase( (wxWindow*) NULL, -1, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, wxT("menubar") )) { - wxFAIL_MSG( T("wxMenuBar creation failed") ); + wxFAIL_MSG( wxT("wxMenuBar creation failed") ); return; } @@ -80,9 +80,9 @@ wxMenuBar::wxMenuBar() m_invokingWindow = (wxWindow*) NULL; if (!PreCreation( (wxWindow*) NULL, wxDefaultPosition, wxDefaultSize ) || - !CreateBase( (wxWindow*) NULL, -1, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, T("menubar") )) + !CreateBase( (wxWindow*) NULL, -1, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, wxT("menubar") )) { - wxFAIL_MSG( T("wxMenuBar creation failed") ); + wxFAIL_MSG( wxT("wxMenuBar creation failed") ); return; } @@ -202,22 +202,22 @@ void wxMenuBar::Append( wxMenu *menu, const wxString &title ) /* GTK 1.2 wants to have "_" instead of "&" for accelerators */ wxString str; - for ( pc = title; *pc != T('\0'); pc++ ) + for ( pc = title; *pc != wxT('\0'); pc++ ) { - if (*pc == T('&')) + if (*pc == wxT('&')) { #if (GTK_MINOR_VERSION > 0) && (GTK_MICRO_VERSION > 0) - str << T('_'); + str << wxT('_'); } - else if (*pc == T('/')) + else if (*pc == wxT('/')) { - str << T('\\'); + str << wxT('\\'); #endif } else { #if __WXGTK12__ - if ( *pc == T('_') ) + if ( *pc == wxT('_') ) { // underscores must be doubled to prevent them from being // interpreted as accelerator character prefix by GTK @@ -237,7 +237,7 @@ void wxMenuBar::Append( wxMenu *menu, const wxString &title ) /* local buffer in multibyte form */ wxString buf; - buf << T('/') << str.c_str(); + buf << wxT('/') << str.c_str(); char *cbuf = new char[buf.Length()+1]; strcpy(cbuf, buf.mbc_str()); @@ -251,13 +251,13 @@ void wxMenuBar::Append( wxMenu *menu, const wxString &title ) gtk_item_factory_create_item( m_factory, &entry, (gpointer) this, 2 ); /* what is 2 ? */ /* in order to get the pointer to the item we need the item text _without_ underscores */ - wxString tmp = T("
/"); - for ( pc = str; *pc != T('\0'); pc++ ) + wxString tmp = wxT("
/"); + for ( pc = str; *pc != wxT('\0'); pc++ ) { // contrary to the common sense, we must throw out _all_ underscores, // (i.e. "Hello__World" => "HelloWorld" and not "Hello_World" as we // might naively think). IMHO it's a bug in GTK+ (VZ) - while (*pc == T('_')) + while (*pc == wxT('_')) pc++; tmp << *pc; } @@ -364,7 +364,7 @@ void wxMenuBar::Check( int id, bool check ) { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_RET( item, T("wxMenuBar::Check: no such item") ); + wxCHECK_RET( item, wxT("wxMenuBar::Check: no such item") ); item->Check(check); } @@ -373,7 +373,7 @@ bool wxMenuBar::IsChecked( int id ) const { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_MSG( item, FALSE, T("wxMenuBar::IsChecked: no such item") ); + wxCHECK_MSG( item, FALSE, wxT("wxMenuBar::IsChecked: no such item") ); return item->IsChecked(); } @@ -382,7 +382,7 @@ void wxMenuBar::Enable( int id, bool enable ) { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_RET( item, T("wxMenuBar::Enable: no such item") ); + wxCHECK_RET( item, wxT("wxMenuBar::Enable: no such item") ); item->Enable(enable); } @@ -391,7 +391,7 @@ bool wxMenuBar::IsEnabled( int id ) const { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_MSG( item, FALSE, T("wxMenuBar::IsEnabled: no such item") ); + wxCHECK_MSG( item, FALSE, wxT("wxMenuBar::IsEnabled: no such item") ); return item->IsEnabled(); } @@ -400,7 +400,7 @@ wxString wxMenuBar::GetLabel( int id ) const { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_MSG( item, T(""), T("wxMenuBar::GetLabel: no such item") ); + wxCHECK_MSG( item, wxT(""), wxT("wxMenuBar::GetLabel: no such item") ); return item->GetText(); } @@ -409,7 +409,7 @@ void wxMenuBar::SetLabel( int id, const wxString &label ) { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_RET( item, T("wxMenuBar::SetLabel: no such item") ); + wxCHECK_RET( item, wxT("wxMenuBar::SetLabel: no such item") ); item->SetText( label ); } @@ -418,7 +418,7 @@ void wxMenuBar::EnableTop( int pos, bool flag ) { wxNode *node = m_menus.Nth( pos ); - wxCHECK_RET( node, T("menu not found") ); + wxCHECK_RET( node, wxT("menu not found") ); wxMenu* menu = (wxMenu*)node->Data(); @@ -430,7 +430,7 @@ wxString wxMenuBar::GetLabelTop( int pos ) const { wxNode *node = m_menus.Nth( pos ); - wxCHECK_MSG( node, T("invalid"), T("menu not found") ); + wxCHECK_MSG( node, wxT("invalid"), wxT("menu not found") ); wxMenu* menu = (wxMenu*)node->Data(); @@ -441,7 +441,7 @@ void wxMenuBar::SetLabelTop( int pos, const wxString& label ) { wxNode *node = m_menus.Nth( pos ); - wxCHECK_RET( node, T("menu not found") ); + wxCHECK_RET( node, wxT("menu not found") ); wxMenu* menu = (wxMenu*)node->Data(); @@ -452,7 +452,7 @@ void wxMenuBar::SetHelpString( int id, const wxString& helpString ) { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_RET( item, T("wxMenuBar::SetHelpString: no such item") ); + wxCHECK_RET( item, wxT("wxMenuBar::SetHelpString: no such item") ); item->SetHelp( helpString ); } @@ -461,7 +461,7 @@ wxString wxMenuBar::GetHelpString( int id ) const { wxMenuItem* item = FindMenuItemById( id ); - wxCHECK_MSG( item, T(""), T("wxMenuBar::GetHelpString: no such item") ); + wxCHECK_MSG( item, wxT(""), wxT("wxMenuBar::GetHelpString: no such item") ); return item->GetHelp(); } @@ -483,7 +483,7 @@ static void gtk_menu_clicked_callback( GtkWidget *widget, wxMenu *menu ) return; wxMenuItem* item = menu->FindItem( id ); - wxCHECK_RET( item, T("error in menu item callback") ); + wxCHECK_RET( item, wxT("error in menu item callback") ); if (item->IsCheckable()) { @@ -588,22 +588,22 @@ wxMenuItem::wxMenuItem() void wxMenuItem::SetName( const wxString& str ) { /* '\t' is the deliminator indicating a hot key */ - m_text = T(""); + m_text = wxT(""); const wxChar *pc = str; - for (; (*pc != T('\0')) && (*pc != T('\t')); pc++ ) + for (; (*pc != wxT('\0')) && (*pc != wxT('\t')); pc++ ) { - if (*pc == T('&')) + if (*pc == wxT('&')) { #if (GTK_MINOR_VERSION > 0) - m_text << T('_'); + m_text << wxT('_'); } - else if ( *pc == T('_') ) // escape underscores + else if ( *pc == wxT('_') ) // escape underscores { - m_text << T("__"); + m_text << wxT("__"); } - else if (*pc == T('/')) /* we have to filter out slashes ... */ + else if (*pc == wxT('/')) /* we have to filter out slashes ... */ { - m_text << T('\\'); /* ... and replace them with back slashes */ + m_text << wxT('\\'); /* ... and replace them with back slashes */ #endif } else @@ -611,9 +611,9 @@ void wxMenuItem::SetName( const wxString& str ) } /* only GTK 1.2 knows about hot keys */ - m_hotKey = T(""); + m_hotKey = wxT(""); #if (GTK_MINOR_VERSION > 0) - if(*pc == T('\t')) + if(*pc == wxT('\t')) { pc++; m_hotKey = pc; @@ -629,9 +629,9 @@ void wxMenuItem::SetName( const wxString& str ) void wxMenuItem::Check( bool check ) { - wxCHECK_RET( m_menuItem, T("invalid menu item") ); + wxCHECK_RET( m_menuItem, wxT("invalid menu item") ); - wxCHECK_RET( IsCheckable(), T("Can't check uncheckable item!") ) + wxCHECK_RET( IsCheckable(), wxT("Can't check uncheckable item!") ) if (check == m_isChecked) return; @@ -641,7 +641,7 @@ void wxMenuItem::Check( bool check ) void wxMenuItem::Enable( bool enable ) { - wxCHECK_RET( m_menuItem, T("invalid menu item") ); + wxCHECK_RET( m_menuItem, wxT("invalid menu item") ); gtk_widget_set_sensitive( m_menuItem, enable ); m_isEnabled = enable; @@ -649,7 +649,7 @@ void wxMenuItem::Enable( bool enable ) bool wxMenuItem::IsChecked() const { - wxCHECK_MSG( m_menuItem, FALSE, T("invalid menu item") ); + wxCHECK_MSG( m_menuItem, FALSE, wxT("invalid menu item") ); wxCHECK( IsCheckable(), FALSE ); // can't get state of uncheckable item! @@ -688,8 +688,8 @@ wxMenu::Init( const wxString& title, m_eventHandler = this; m_clientData = (void*) NULL; - if (m_title.IsNull()) m_title = T(""); - if (m_title != T("")) + if (m_title.IsNull()) m_title = wxT(""); + if (m_title != wxT("")) { Append(-2, m_title); AppendSeparator(); @@ -767,27 +767,27 @@ static char* GetHotKey( const wxString &hotkey, char *hotbuf ) switch (hotkey[0]) { - case T('a'): /* Alt */ - case T('A'): - case T('m'): /* Meta */ - case T('M'): + case wxT('a'): /* Alt */ + case wxT('A'): + case wxT('m'): /* Meta */ + case wxT('M'): { strcpy( hotbuf, "" ); wxString last = hotkey.Right(1); strcat( hotbuf, last.mb_str() ); return hotbuf; } - case T('c'): /* Ctrl */ - case T('C'): - case T('s'): /* Strg, yeah man, I'm German */ - case T('S'): + case wxT('c'): /* Ctrl */ + case wxT('C'): + case wxT('s'): /* Strg, yeah man, I'm German */ + case wxT('S'): { strcpy( hotbuf, "" ); wxString last = hotkey.Right(1); strcat( hotbuf, last.mb_str() ); return hotbuf; } - case T('F'): /* function keys */ + case wxT('F'): /* function keys */ { strcpy( hotbuf, hotkey.mb_str() ); return hotbuf; @@ -832,10 +832,10 @@ void wxMenu::Append( int id, const wxString &item, const wxString &helpStr, bool gtk_item_factory_create_item( m_factory, &entry, (gpointer) this, 2 ); /* what is 2 ? */ /* in order to get the pointer to the item we need the item text _without_ underscores */ - wxString s = T("
/"); - for ( const wxChar *pc = text; *pc != T('\0'); pc++ ) + wxString s = wxT("
/"); + for ( const wxChar *pc = text; *pc != wxT('\0'); pc++ ) { - while (*pc == T('_')) pc++; /* skip it */ + while (*pc == wxT('_')) pc++; /* skip it */ s << *pc; } @@ -893,10 +893,10 @@ void wxMenu::Append( int id, const wxString &item, wxMenu *subMenu, const wxStri gtk_item_factory_create_item( m_factory, &entry, (gpointer) this, 2 ); /* what is 2 ? */ /* in order to get the pointer to the item we need the item text _without_ underscores */ - wxString s = T("
/"); - for ( const wxChar *pc = text; *pc != T('\0'); pc++ ) + wxString s = wxT("
/"); + for ( const wxChar *pc = text; *pc != wxT('\0'); pc++ ) { - if (*pc == T('_')) pc++; /* skip it */ + if (*pc == wxT('_')) pc++; /* skip it */ s << *pc; } @@ -966,14 +966,14 @@ void wxMenu::Append( wxMenuItem *item ) int wxMenu::FindItem( const wxString itemString ) const { - wxString s = T(""); - for ( const wxChar *pc = itemString; *pc != T('\0'); pc++ ) + wxString s = wxT(""); + for ( const wxChar *pc = itemString; *pc != wxT('\0'); pc++ ) { - if (*pc == T('&')) + if (*pc == wxT('&')) { pc++; /* skip it */ #if (GTK_MINOR_VERSION > 0) - s << T('_'); + s << wxT('_'); #endif } s << *pc; @@ -997,7 +997,7 @@ void wxMenu::Enable( int id, bool enable ) { wxMenuItem *item = FindItem(id); - wxCHECK_RET( item, T("wxMenu::Enable: no such item") ); + wxCHECK_RET( item, wxT("wxMenu::Enable: no such item") ); item->Enable(enable); } @@ -1006,7 +1006,7 @@ bool wxMenu::IsEnabled( int id ) const { wxMenuItem *item = FindItem(id); - wxCHECK_MSG( item, FALSE, T("wxMenu::IsEnabled: no such item") ); + wxCHECK_MSG( item, FALSE, wxT("wxMenu::IsEnabled: no such item") ); return item->IsEnabled(); } @@ -1015,7 +1015,7 @@ void wxMenu::Check( int id, bool enable ) { wxMenuItem *item = FindItem(id); - wxCHECK_RET( item, T("wxMenu::Check: no such item") ); + wxCHECK_RET( item, wxT("wxMenu::Check: no such item") ); item->Check(enable); } @@ -1024,7 +1024,7 @@ bool wxMenu::IsChecked( int id ) const { wxMenuItem *item = FindItem(id); - wxCHECK_MSG( item, FALSE, T("wxMenu::IsChecked: no such item") ); + wxCHECK_MSG( item, FALSE, wxT("wxMenu::IsChecked: no such item") ); return item->IsChecked(); } @@ -1033,7 +1033,7 @@ void wxMenu::SetLabel( int id, const wxString &label ) { wxMenuItem *item = FindItem(id); - wxCHECK_RET( item, T("wxMenu::SetLabel: no such item") ); + wxCHECK_RET( item, wxT("wxMenu::SetLabel: no such item") ); item->SetText(label); } @@ -1042,7 +1042,7 @@ wxString wxMenu::GetLabel( int id ) const { wxMenuItem *item = FindItem(id); - wxCHECK_MSG( item, T(""), T("wxMenu::GetLabel: no such item") ); + wxCHECK_MSG( item, wxT(""), wxT("wxMenu::GetLabel: no such item") ); return item->GetText(); } @@ -1051,7 +1051,7 @@ void wxMenu::SetHelpString( int id, const wxString& helpString ) { wxMenuItem *item = FindItem(id); - wxCHECK_RET( item, T("wxMenu::SetHelpString: no such item") ); + wxCHECK_RET( item, wxT("wxMenu::SetHelpString: no such item") ); item->SetHelp( helpString ); } @@ -1060,7 +1060,7 @@ wxString wxMenu::GetHelpString( int id ) const { wxMenuItem *item = FindItem(id); - wxCHECK_MSG( item, T(""), T("wxMenu::GetHelpString: no such item") ); + wxCHECK_MSG( item, wxT(""), wxT("wxMenu::GetHelpString: no such item") ); return item->GetHelp(); } diff --git a/src/gtk1/notebook.cpp b/src/gtk1/notebook.cpp index 157bd90001..7dae078001 100644 --- a/src/gtk1/notebook.cpp +++ b/src/gtk1/notebook.cpp @@ -186,7 +186,7 @@ bool wxNotebook::Create(wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxNoteBook creation failed") ); + wxFAIL_MSG( wxT("wxNoteBook creation failed") ); return FALSE; } @@ -194,7 +194,7 @@ bool wxNotebook::Create(wxWindow *parent, wxWindowID id, m_widget = gtk_notebook_new(); #ifdef __WXDEBUG__ - debug_focus_in( m_widget, T("wxNotebook::m_widget"), name ); + debug_focus_in( m_widget, wxT("wxNotebook::m_widget"), name ); #endif gtk_notebook_set_scrollable( GTK_NOTEBOOK(m_widget), 1 ); @@ -233,7 +233,7 @@ void wxNotebook::SetFocus() int wxNotebook::GetSelection() const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid notebook") ); GList *pages = GTK_NOTEBOOK(m_widget)->children; @@ -258,18 +258,18 @@ int wxNotebook::GetRowCount() const wxString wxNotebook::GetPageText( int page ) const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid notebook") ); wxNotebookPage* nb_page = GetNotebookPage(page); if (nb_page) return nb_page->m_text; else - return T(""); + return wxT(""); } int wxNotebook::GetPageImage( int page ) const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid notebook") ); wxNotebookPage* nb_page = GetNotebookPage(page); if (nb_page) @@ -280,9 +280,9 @@ int wxNotebook::GetPageImage( int page ) const wxNotebookPage* wxNotebook::GetNotebookPage( int page ) const { - wxCHECK_MSG( m_widget != NULL, (wxNotebookPage*) NULL, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, (wxNotebookPage*) NULL, wxT("invalid notebook") ); - wxCHECK_MSG( page < (int)m_pages.GetCount(), (wxNotebookPage*) NULL, T("invalid notebook index") ); + wxCHECK_MSG( page < (int)m_pages.GetCount(), (wxNotebookPage*) NULL, wxT("invalid notebook index") ); wxNode *node = m_pages.Nth( page ); @@ -291,9 +291,9 @@ wxNotebookPage* wxNotebook::GetNotebookPage( int page ) const int wxNotebook::SetSelection( int page ) { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid notebook") ); - wxCHECK_MSG( page < (int)m_pages.GetCount(), -1, T("invalid notebook index") ); + wxCHECK_MSG( page < (int)m_pages.GetCount(), -1, wxT("invalid notebook index") ); int selOld = GetSelection(); @@ -304,7 +304,7 @@ int wxNotebook::SetSelection( int page ) void wxNotebook::AdvanceSelection( bool forward ) { - wxCHECK_RET( m_widget != NULL, T("invalid notebook") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid notebook") ); int sel = GetSelection(); int max = GetPageCount(); @@ -322,11 +322,11 @@ void wxNotebook::SetImageList( wxImageList* imageList ) bool wxNotebook::SetPageText( int page, const wxString &text ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid notebook") ); wxNotebookPage* nb_page = GetNotebookPage(page); - wxCHECK_MSG( nb_page, FALSE, T("SetPageText: invalid page index") ); + wxCHECK_MSG( nb_page, FALSE, wxT("SetPageText: invalid page index") ); nb_page->m_text = text; @@ -422,22 +422,22 @@ bool wxNotebook::SetPageImage( int page, int image ) void wxNotebook::SetPageSize( const wxSize &WXUNUSED(size) ) { - wxFAIL_MSG( T("wxNotebook::SetPageSize not implemented") ); + wxFAIL_MSG( wxT("wxNotebook::SetPageSize not implemented") ); } void wxNotebook::SetPadding( const wxSize &WXUNUSED(padding) ) { - wxFAIL_MSG( T("wxNotebook::SetPadding not implemented") ); + wxFAIL_MSG( wxT("wxNotebook::SetPadding not implemented") ); } void wxNotebook::SetTabSize(const wxSize& WXUNUSED(sz)) { - wxFAIL_MSG( T("wxNotebook::SetTabSize not implemented") ); + wxFAIL_MSG( wxT("wxNotebook::SetTabSize not implemented") ); } bool wxNotebook::DeleteAllPages() { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid notebook") ); while (m_pages.GetCount() > 0) DeletePage( m_pages.GetCount()-1 ); @@ -478,10 +478,10 @@ bool wxNotebook::RemovePage( int page ) bool wxNotebook::InsertPage( int position, wxWindow* win, const wxString& text, bool select, int imageId ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid notebook") ); wxCHECK_MSG( win->GetParent() == this, FALSE, - T("Can't add a page whose parent is not the notebook!") ); + wxT("Can't add a page whose parent is not the notebook!") ); /* don't receive switch page during addition */ gtk_signal_disconnect_by_func( GTK_OBJECT(m_widget), @@ -535,7 +535,7 @@ bool wxNotebook::InsertPage( int position, wxWindow* win, const wxString& text, /* set the label text */ page->m_text = text; - if (page->m_text.IsEmpty()) page->m_text = T(""); + if (page->m_text.IsEmpty()) page->m_text = wxT(""); page->m_label = GTK_LABEL( gtk_label_new(page->m_text.mbc_str()) ); gtk_box_pack_end( GTK_BOX(page->m_box), GTK_WIDGET(page->m_label), FALSE, FALSE, 3 ); @@ -573,7 +573,7 @@ void wxNotebook::OnNavigationKey(wxNavigationKeyEvent& event) wxWindow *wxNotebook::GetPage( int page ) const { - wxCHECK_MSG( m_widget != NULL, (wxWindow*) NULL, T("invalid notebook") ); + wxCHECK_MSG( m_widget != NULL, (wxWindow*) NULL, wxT("invalid notebook") ); wxNotebookPage* nb_page = GetNotebookPage(page); if (!nb_page) diff --git a/src/gtk1/palette.cpp b/src/gtk1/palette.cpp index 2a86eb1ba2..e3ae71acf2 100644 --- a/src/gtk1/palette.cpp +++ b/src/gtk1/palette.cpp @@ -93,7 +93,7 @@ bool wxPalette::Create( int WXUNUSED(n), const unsigned char *WXUNUSED(green), const unsigned char *WXUNUSED(blue) ) { - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return FALSE; } @@ -102,7 +102,7 @@ int wxPalette::GetPixel( const unsigned char WXUNUSED(red), const unsigned char WXUNUSED(green), const unsigned char WXUNUSED(blue) ) const { - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return 0; } @@ -112,7 +112,7 @@ bool wxPalette::GetRGB( int WXUNUSED(pixel), unsigned char *WXUNUSED(green), unsigned char *WXUNUSED(blue) ) const { - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); return 0; } diff --git a/src/gtk1/pen.cpp b/src/gtk1/pen.cpp index a4fef2c642..f928f2fe54 100644 --- a/src/gtk1/pen.cpp +++ b/src/gtk1/pen.cpp @@ -171,35 +171,35 @@ wxDash* wxPen::GetDash() const int wxPen::GetCap() const { - wxCHECK_MSG( Ok(), -1, T("invalid pen") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_capStyle; } int wxPen::GetJoin() const { - wxCHECK_MSG( Ok(), -1, T("invalid pen") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_joinStyle; } int wxPen::GetStyle() const { - wxCHECK_MSG( Ok(), -1, T("invalid pen") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_style; } int wxPen::GetWidth() const { - wxCHECK_MSG( Ok(), -1, T("invalid pen") ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_width; } wxColour &wxPen::GetColour() const { - wxCHECK_MSG( Ok(), wxNullColour, T("invalid pen") ); + wxCHECK_MSG( Ok(), wxNullColour, wxT("invalid pen") ); return M_PENDATA->m_colour; } diff --git a/src/gtk1/radiobox.cpp b/src/gtk1/radiobox.cpp index b1ecb3fc79..43b4ae7803 100644 --- a/src/gtk1/radiobox.cpp +++ b/src/gtk1/radiobox.cpp @@ -88,7 +88,7 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxRadioBox creation failed") ); + wxFAIL_MSG( wxT("wxRadioBox creation failed") ); return FALSE; } @@ -108,7 +108,7 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title, label.Empty(); for ( const wxChar *pc = choices[i]; *pc; pc++ ) { - if ( *pc != T('&') ) + if ( *pc != wxT('&') ) label += *pc; } @@ -176,7 +176,7 @@ wxSize wxRadioBox::LayoutItems() if ( m_majorDim == 0 ) { // avoid dividing by 0 below - wxFAIL_MSG( T("dimension of radiobox should not be 0!") ); + wxFAIL_MSG( wxT("dimension of radiobox should not be 0!") ); m_majorDim = 1; } @@ -279,7 +279,7 @@ wxSize wxRadioBox::LayoutItems() bool wxRadioBox::Show( bool show ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid radiobox") ); wxWindow::Show( show ); @@ -301,7 +301,7 @@ bool wxRadioBox::Show( bool show ) int wxRadioBox::FindString( const wxString &s ) const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid radiobox") ); int count = 0; @@ -322,7 +322,7 @@ int wxRadioBox::FindString( const wxString &s ) const void wxRadioBox::SetFocus() { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); if (m_boxes.GetCount() == 0) return; @@ -343,11 +343,11 @@ void wxRadioBox::SetFocus() void wxRadioBox::SetSelection( int n ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); wxNode *node = m_boxes.Nth( n ); - wxCHECK_RET( node, T("radiobox wrong index") ); + wxCHECK_RET( node, wxT("radiobox wrong index") ); GtkToggleButton *button = GTK_TOGGLE_BUTTON( node->Data() ); @@ -360,7 +360,7 @@ void wxRadioBox::SetSelection( int n ) int wxRadioBox::GetSelection(void) const { - wxCHECK_MSG( m_widget != NULL, -1, T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid radiobox") ); int count = 0; @@ -373,18 +373,18 @@ int wxRadioBox::GetSelection(void) const node = node->Next(); } - wxFAIL_MSG( T("wxRadioBox none selected") ); + wxFAIL_MSG( wxT("wxRadioBox none selected") ); return -1; } wxString wxRadioBox::GetString( int n ) const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid radiobox") ); wxNode *node = m_boxes.Nth( n ); - wxCHECK_MSG( node, T(""), T("radiobox wrong index") ); + wxCHECK_MSG( node, wxT(""), wxT("radiobox wrong index") ); GtkButton *button = GTK_BUTTON( node->Data() ); GtkLabel *label = GTK_LABEL( button->child ); @@ -394,14 +394,14 @@ wxString wxRadioBox::GetString( int n ) const wxString wxRadioBox::GetLabel( int item ) const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid radiobox") ); return GetString( item ); } void wxRadioBox::SetLabel( const wxString& label ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); wxControl::SetLabel( label ); @@ -410,11 +410,11 @@ void wxRadioBox::SetLabel( const wxString& label ) void wxRadioBox::SetLabel( int item, const wxString& label ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); wxNode *node = m_boxes.Nth( item ); - wxCHECK_RET( node, T("radiobox wrong index") ); + wxCHECK_RET( node, wxT("radiobox wrong index") ); GtkButton *button = GTK_BUTTON( node->Data() ); GtkLabel *g_label = GTK_LABEL( button->child ); @@ -424,7 +424,7 @@ void wxRadioBox::SetLabel( int item, const wxString& label ) void wxRadioBox::SetLabel( int WXUNUSED(item), wxBitmap *WXUNUSED(bitmap) ) { - wxFAIL_MSG(T("wxRadioBox::SetLabel not implemented.")); + wxFAIL_MSG(wxT("wxRadioBox::SetLabel not implemented.")); } bool wxRadioBox::Enable( bool enable ) @@ -447,11 +447,11 @@ bool wxRadioBox::Enable( bool enable ) void wxRadioBox::Enable( int item, bool enable ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); wxNode *node = m_boxes.Nth( item ); - wxCHECK_RET( node, T("radiobox wrong index") ); + wxCHECK_RET( node, wxT("radiobox wrong index") ); GtkButton *button = GTK_BUTTON( node->Data() ); GtkWidget *label = button->child; @@ -461,11 +461,11 @@ void wxRadioBox::Enable( int item, bool enable ) void wxRadioBox::Show( int item, bool show ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobox") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobox") ); wxNode *node = m_boxes.Nth( item ); - wxCHECK_RET( node, T("radiobox wrong index") ); + wxCHECK_RET( node, wxT("radiobox wrong index") ); GtkWidget *button = GTK_WIDGET( node->Data() ); @@ -477,7 +477,7 @@ void wxRadioBox::Show( int item, bool show ) wxString wxRadioBox::GetStringSelection() const { - wxCHECK_MSG( m_widget != NULL, T(""), T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid radiobox") ); wxNode *node = m_boxes.First(); while (node) @@ -491,13 +491,13 @@ wxString wxRadioBox::GetStringSelection() const node = node->Next(); } - wxFAIL_MSG( T("wxRadioBox none selected") ); - return T(""); + wxFAIL_MSG( wxT("wxRadioBox none selected") ); + return wxT(""); } bool wxRadioBox::SetStringSelection( const wxString &s ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid radiobox") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid radiobox") ); int res = FindString( s ); if (res == -1) return FALSE; @@ -518,7 +518,7 @@ int wxRadioBox::GetNumberOfRowsOrCols() const void wxRadioBox::SetNumberOfRowsOrCols( int WXUNUSED(n) ) { - wxFAIL_MSG(T("wxRadioBox::SetNumberOfRowsOrCols not implemented.")); + wxFAIL_MSG(wxT("wxRadioBox::SetNumberOfRowsOrCols not implemented.")); } void wxRadioBox::DisableEvents() diff --git a/src/gtk1/radiobut.cpp b/src/gtk1/radiobut.cpp index fa026715f6..909c1ebf6d 100644 --- a/src/gtk1/radiobut.cpp +++ b/src/gtk1/radiobut.cpp @@ -68,7 +68,7 @@ bool wxRadioButton::Create( wxWindow *parent, wxWindowID id, const wxString& lab if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxRadioButton creation failed") ); + wxFAIL_MSG( wxT("wxRadioButton creation failed") ); return FALSE; } @@ -131,7 +131,7 @@ bool wxRadioButton::Create( wxWindow *parent, wxWindowID id, const wxString& lab void wxRadioButton::SetLabel( const wxString& label ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobutton") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobutton") ); wxControl::SetLabel( label ); GtkButton *bin = GTK_BUTTON( m_widget ); @@ -141,7 +141,7 @@ void wxRadioButton::SetLabel( const wxString& label ) void wxRadioButton::SetValue( bool val ) { - wxCHECK_RET( m_widget != NULL, T("invalid radiobutton") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid radiobutton") ); if (val == GetValue()) return; @@ -164,7 +164,7 @@ void wxRadioButton::SetValue( bool val ) bool wxRadioButton::GetValue() const { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid radiobutton") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid radiobutton") ); return GTK_TOGGLE_BUTTON(m_widget)->active; } diff --git a/src/gtk1/scrolbar.cpp b/src/gtk1/scrolbar.cpp index 4d21168158..c678145ef0 100644 --- a/src/gtk1/scrolbar.cpp +++ b/src/gtk1/scrolbar.cpp @@ -129,7 +129,7 @@ bool wxScrollBar::Create(wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxScrollBar creation failed") ); + wxFAIL_MSG( wxT("wxScrollBar creation failed") ); return FALSE; } diff --git a/src/gtk1/settings.cpp b/src/gtk1/settings.cpp index 5ff2d5c61a..61810194c3 100644 --- a/src/gtk1/settings.cpp +++ b/src/gtk1/settings.cpp @@ -191,7 +191,7 @@ int wxSystemSettings::GetSystemMetric( int index ) case wxSYS_VSCROLL_X: return 15; } - wxCHECK_MSG( index, 0, T("wxSystemSettings::GetSystemMetric not fully implemented") ); + wxCHECK_MSG( index, 0, wxT("wxSystemSettings::GetSystemMetric not fully implemented") ); return 0; } diff --git a/src/gtk1/slider.cpp b/src/gtk1/slider.cpp index adc016c88f..bdbc509ceb 100644 --- a/src/gtk1/slider.cpp +++ b/src/gtk1/slider.cpp @@ -97,7 +97,7 @@ bool wxSlider::Create(wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxSlider creation failed") ); + wxFAIL_MSG( wxT("wxSlider creation failed") ); return FALSE; } diff --git a/src/gtk1/spinbutt.cpp b/src/gtk1/spinbutt.cpp index fd5e0cd865..1901da14bf 100644 --- a/src/gtk1/spinbutt.cpp +++ b/src/gtk1/spinbutt.cpp @@ -106,7 +106,7 @@ bool wxSpinButton::Create(wxWindow *parent, if (!PreCreation( parent, pos, new_size ) || !CreateBase( parent, id, pos, new_size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxXX creation failed") ); + wxFAIL_MSG( wxT("wxXX creation failed") ); return FALSE; } @@ -140,28 +140,28 @@ wxSpinButton::~wxSpinButton() int wxSpinButton::GetMin() const { - wxCHECK_MSG( (m_widget != NULL), 0, T("invalid spin button") ); + wxCHECK_MSG( (m_widget != NULL), 0, wxT("invalid spin button") ); return (int)ceil(m_adjust->lower); } int wxSpinButton::GetMax() const { - wxCHECK_MSG( (m_widget != NULL), 0, T("invalid spin button") ); + wxCHECK_MSG( (m_widget != NULL), 0, wxT("invalid spin button") ); return (int)ceil(m_adjust->upper); } int wxSpinButton::GetValue() const { - wxCHECK_MSG( (m_widget != NULL), 0, T("invalid spin button") ); + wxCHECK_MSG( (m_widget != NULL), 0, wxT("invalid spin button") ); return (int)ceil(m_adjust->value); } void wxSpinButton::SetValue( int value ) { - wxCHECK_RET( (m_widget != NULL), T("invalid spin button") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid spin button") ); float fpos = (float)value; m_oldPos = fpos; @@ -174,7 +174,7 @@ void wxSpinButton::SetValue( int value ) void wxSpinButton::SetRange(int minVal, int maxVal) { - wxCHECK_RET( (m_widget != NULL), T("invalid spin button") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid spin button") ); float fmin = (float)minVal; float fmax = (float)maxVal; @@ -197,7 +197,7 @@ void wxSpinButton::SetRange(int minVal, int maxVal) void wxSpinButton::OnSize( wxSizeEvent &WXUNUSED(event) ) { - wxCHECK_RET( (m_widget != NULL), T("invalid spin button") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid spin button") ); m_width = 15; gtk_widget_set_usize( m_widget, m_width, m_height ); diff --git a/src/gtk1/statbmp.cpp b/src/gtk1/statbmp.cpp index 186947afb2..74f494f6e9 100644 --- a/src/gtk1/statbmp.cpp +++ b/src/gtk1/statbmp.cpp @@ -37,7 +37,7 @@ wxStaticBitmap::wxStaticBitmap( wxWindow *parent, wxWindowID id, const wxBitmap void wxStaticBitmap::CreatePixmapWidget() { - wxCHECK_RET( m_bitmap.Ok(), T("should only be called if we have a bitmap") ); + wxCHECK_RET( m_bitmap.Ok(), wxT("should only be called if we have a bitmap") ); GdkBitmap *mask = (GdkBitmap *) NULL; if ( m_bitmap.GetMask() ) @@ -61,7 +61,7 @@ bool wxStaticBitmap::Create( wxWindow *parent, wxWindowID id, const wxBitmap &bi if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxXX creation failed") ); + wxFAIL_MSG( wxT("wxXX creation failed") ); return FALSE; } diff --git a/src/gtk1/statbox.cpp b/src/gtk1/statbox.cpp index 0d4f598a2a..d6a4a6852b 100644 --- a/src/gtk1/statbox.cpp +++ b/src/gtk1/statbox.cpp @@ -44,7 +44,7 @@ bool wxStaticBox::Create( wxWindow *parent, wxWindowID id, const wxString &label if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxStaticBox creation failed") ); + wxFAIL_MSG( wxT("wxStaticBox creation failed") ); return FALSE; } diff --git a/src/gtk1/statline.cpp b/src/gtk1/statline.cpp index 6129db4500..60970765ed 100644 --- a/src/gtk1/statline.cpp +++ b/src/gtk1/statline.cpp @@ -44,7 +44,7 @@ bool wxStaticLine::Create( wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxStaticLine creation failed") ); + wxFAIL_MSG( wxT("wxStaticLine creation failed") ); return FALSE; } diff --git a/src/gtk1/stattext.cpp b/src/gtk1/stattext.cpp index 81cf98c3a8..eb35971c6a 100644 --- a/src/gtk1/stattext.cpp +++ b/src/gtk1/stattext.cpp @@ -51,7 +51,7 @@ bool wxStaticText::Create(wxWindow *parent, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxXX creation failed") ); + wxFAIL_MSG( wxT("wxXX creation failed") ); return FALSE; } diff --git a/src/gtk1/tbargtk.cpp b/src/gtk1/tbargtk.cpp index 6ef6151733..6e5b301d48 100644 --- a/src/gtk1/tbargtk.cpp +++ b/src/gtk1/tbargtk.cpp @@ -151,7 +151,7 @@ bool wxToolBar::Create( wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxToolBar creation failed") ); + wxFAIL_MSG( wxT("wxToolBar creation failed") ); return FALSE; } @@ -263,13 +263,13 @@ wxToolBarTool *wxToolBar::AddTool( int toolIndex, const wxBitmap& bitmap, m_hasToolAlready = TRUE; wxCHECK_MSG( bitmap.Ok(), (wxToolBarTool *)NULL, - T("invalid bitmap for wxToolBar icon") ); + wxT("invalid bitmap for wxToolBar icon") ); wxCHECK_MSG( bitmap.GetBitmap() == NULL, (wxToolBarTool *)NULL, - T("wxToolBar doesn't support GdkBitmap") ); + wxT("wxToolBar doesn't support GdkBitmap") ); wxCHECK_MSG( bitmap.GetPixmap() != NULL, (wxToolBarTool *)NULL, - T("wxToolBar::Add needs a wxBitmap") ); + wxT("wxToolBar::Add needs a wxBitmap") ); GtkWidget *tool_pixmap = (GtkWidget *)NULL; @@ -326,7 +326,7 @@ void wxToolBar::AddSeparator() void wxToolBar::ClearTools() { - wxFAIL_MSG( T("wxToolBar::ClearTools not implemented") ); + wxFAIL_MSG( wxT("wxToolBar::ClearTools not implemented") ); } bool wxToolBar::Realize() @@ -376,7 +376,7 @@ void wxToolBar::EnableTool(int toolIndex, bool enable) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); } void wxToolBar::ToggleTool( int toolIndex, bool toggle ) @@ -418,7 +418,7 @@ void wxToolBar::ToggleTool( int toolIndex, bool toggle ) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); } wxObject *wxToolBar::GetToolClientData( int index ) const @@ -431,7 +431,7 @@ wxObject *wxToolBar::GetToolClientData( int index ) const node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); return (wxObject*)NULL; } @@ -446,7 +446,7 @@ bool wxToolBar::GetToolState(int toolIndex) const node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); return FALSE; } @@ -461,14 +461,14 @@ bool wxToolBar::GetToolEnabled(int toolIndex) const node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); return FALSE; } void wxToolBar::SetMargins( int x, int y ) { - wxCHECK_RET( !m_hasToolAlready, T("wxToolBar::SetMargins must be called before adding tool.") ); + wxCHECK_RET( !m_hasToolAlready, wxT("wxToolBar::SetMargins must be called before adding tool.") ); if (x > 2) gtk_toolbar_append_space( m_toolbar ); // oh well @@ -478,7 +478,7 @@ void wxToolBar::SetMargins( int x, int y ) void wxToolBar::SetToolPacking( int WXUNUSED(packing) ) { - wxFAIL_MSG( T("wxToolBar::SetToolPacking not implemented") ); + wxFAIL_MSG( wxT("wxToolBar::SetToolPacking not implemented") ); } void wxToolBar::SetToolSeparation( int separation ) @@ -510,9 +510,9 @@ wxString wxToolBar::GetToolLongHelp(int toolIndex) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); - return T(""); + return wxT(""); } wxString wxToolBar::GetToolShortHelp(int toolIndex) @@ -528,9 +528,9 @@ wxString wxToolBar::GetToolShortHelp(int toolIndex) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); - return T(""); + return wxT(""); } void wxToolBar::SetToolLongHelp(int toolIndex, const wxString& helpString) @@ -547,7 +547,7 @@ void wxToolBar::SetToolLongHelp(int toolIndex, const wxString& helpString) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); return; } @@ -566,7 +566,7 @@ void wxToolBar::SetToolShortHelp(int toolIndex, const wxString& helpString) node = node->Next(); } - wxFAIL_MSG( T("wrong toolbar index") ); + wxFAIL_MSG( wxT("wrong toolbar index") ); return; } diff --git a/src/gtk1/textctrl.cpp b/src/gtk1/textctrl.cpp index 1e4d3a3ceb..db100d48ec 100644 --- a/src/gtk1/textctrl.cpp +++ b/src/gtk1/textctrl.cpp @@ -118,7 +118,7 @@ bool wxTextCtrl::Create( wxWindow *parent, wxWindowID id, const wxString &value, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, validator, name )) { - wxFAIL_MSG( T("wxTextCtrl creation failed") ); + wxFAIL_MSG( wxT("wxTextCtrl creation failed") ); return FALSE; } @@ -282,7 +282,7 @@ void wxTextCtrl::CalculateScrollbar() wxString wxTextCtrl::GetValue() const { - wxCHECK_MSG( m_text != NULL, T(""), T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, wxT(""), wxT("invalid text ctrl") ); wxString tmp; if (m_windowStyle & wxTE_MULTILINE) @@ -301,9 +301,9 @@ wxString wxTextCtrl::GetValue() const void wxTextCtrl::SetValue( const wxString &value ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); - wxString tmp = T(""); + wxString tmp = wxT(""); if (!value.IsNull()) tmp = value; if (m_windowStyle & wxTE_MULTILINE) { @@ -325,7 +325,7 @@ void wxTextCtrl::SetValue( const wxString &value ) void wxTextCtrl::WriteText( const wxString &text ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (text.IsEmpty()) return; @@ -365,7 +365,7 @@ void wxTextCtrl::WriteText( const wxString &text ) void wxTextCtrl::AppendText( const wxString &text ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (text.IsEmpty()) return; @@ -413,7 +413,7 @@ wxString wxTextCtrl::GetLineText( long lineNo ) const if (text) { - wxString buf(T("")); + wxString buf(wxT("")); long i; int currentLine = 0; for (i = 0; currentLine != lineNo && text[i]; i++ ) @@ -441,7 +441,7 @@ void wxTextCtrl::OnDropFiles( wxDropFilesEvent &WXUNUSED(event) ) { /* If you implement this, don't forget to update the documentation! * (file docs/latex/wx/text.tex) */ - wxFAIL_MSG( T("wxTextCtrl::OnDropFiles not implemented") ); + wxFAIL_MSG( wxT("wxTextCtrl::OnDropFiles not implemented") ); } bool wxTextCtrl::PositionToXY(long pos, long *x, long *y ) const @@ -460,7 +460,7 @@ bool wxTextCtrl::PositionToXY(long pos, long *x, long *y ) const const wxChar* stop = text.c_str() + pos; for ( const wxChar *p = text.c_str(); p < stop; p++ ) { - if (*p == T('\n')) + if (*p == wxT('\n')) { (*y)++; *x=0; @@ -536,7 +536,7 @@ int wxTextCtrl::GetNumberOfLines() const void wxTextCtrl::SetInsertionPoint( long pos ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (m_windowStyle & wxTE_MULTILINE) { @@ -573,7 +573,7 @@ void wxTextCtrl::SetInsertionPoint( long pos ) void wxTextCtrl::SetInsertionPointEnd() { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (m_windowStyle & wxTE_MULTILINE) SetInsertionPoint(gtk_text_get_length(GTK_TEXT(m_text))); @@ -583,7 +583,7 @@ void wxTextCtrl::SetInsertionPointEnd() void wxTextCtrl::SetEditable( bool editable ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (m_windowStyle & wxTE_MULTILINE) gtk_text_set_editable( GTK_TEXT(m_text), editable ); @@ -598,7 +598,7 @@ void wxTextCtrl::DiscardEdits() void wxTextCtrl::SetSelection( long from, long to ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); gtk_editable_select_region( GTK_EDITABLE(m_text), (gint)from, (gint)to ); } @@ -610,14 +610,14 @@ void wxTextCtrl::ShowPosition( long WXUNUSED(pos) ) long wxTextCtrl::GetInsertionPoint() const { - wxCHECK_MSG( m_text != NULL, 0, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, 0, wxT("invalid text ctrl") ); return (long) GTK_EDITABLE(m_text)->current_pos; } long wxTextCtrl::GetLastPosition() const { - wxCHECK_MSG( m_text != NULL, 0, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, 0, wxT("invalid text ctrl") ); int pos = 0; if (m_windowStyle & wxTE_MULTILINE) @@ -630,14 +630,14 @@ long wxTextCtrl::GetLastPosition() const void wxTextCtrl::Remove( long from, long to ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); gtk_editable_delete_text( GTK_EDITABLE(m_text), (gint)from, (gint)to ); } void wxTextCtrl::Replace( long from, long to, const wxString &value ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); gtk_editable_delete_text( GTK_EDITABLE(m_text), (gint)from, (gint)to ); @@ -655,7 +655,7 @@ void wxTextCtrl::Replace( long from, long to, const wxString &value ) void wxTextCtrl::Cut() { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); #if (GTK_MINOR_VERSION > 0) gtk_editable_cut_clipboard( GTK_EDITABLE(m_text) ); @@ -666,7 +666,7 @@ void wxTextCtrl::Cut() void wxTextCtrl::Copy() { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); #if (GTK_MINOR_VERSION > 0) gtk_editable_copy_clipboard( GTK_EDITABLE(m_text) ); @@ -677,7 +677,7 @@ void wxTextCtrl::Copy() void wxTextCtrl::Paste() { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); #if (GTK_MINOR_VERSION > 0) gtk_editable_paste_clipboard( GTK_EDITABLE(m_text) ); @@ -711,26 +711,26 @@ bool wxTextCtrl::CanPaste() const void wxTextCtrl::Undo() { // TODO - wxFAIL_MSG( T("wxTextCtrl::Undo not implemented") ); + wxFAIL_MSG( wxT("wxTextCtrl::Undo not implemented") ); } void wxTextCtrl::Redo() { // TODO - wxFAIL_MSG( T("wxTextCtrl::Redo not implemented") ); + wxFAIL_MSG( wxT("wxTextCtrl::Redo not implemented") ); } bool wxTextCtrl::CanUndo() const { // TODO - wxFAIL_MSG( T("wxTextCtrl::CanUndo not implemented") ); + wxFAIL_MSG( wxT("wxTextCtrl::CanUndo not implemented") ); return FALSE; } bool wxTextCtrl::CanRedo() const { // TODO - wxFAIL_MSG( T("wxTextCtrl::CanRedo not implemented") ); + wxFAIL_MSG( wxT("wxTextCtrl::CanRedo not implemented") ); return FALSE; } @@ -738,7 +738,7 @@ bool wxTextCtrl::CanRedo() const // selection. void wxTextCtrl::GetSelection(long* from, long* to) const { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if (!(GTK_EDITABLE(m_text)->has_selection)) { @@ -753,7 +753,7 @@ void wxTextCtrl::GetSelection(long* from, long* to) const bool wxTextCtrl::IsEditable() const { - wxCHECK_MSG( m_text != NULL, FALSE, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, FALSE, wxT("invalid text ctrl") ); return GTK_EDITABLE(m_text)->editable; } @@ -765,12 +765,12 @@ bool wxTextCtrl::IsModified() const void wxTextCtrl::Clear() { - SetValue( T("") ); + SetValue( wxT("") ); } void wxTextCtrl::OnChar( wxKeyEvent &key_event ) { - wxCHECK_RET( m_text != NULL, T("invalid text ctrl") ); + wxCHECK_RET( m_text != NULL, wxT("invalid text ctrl") ); if ((key_event.KeyCode() == WXK_RETURN) && (m_windowStyle & wxPROCESS_ENTER)) { @@ -798,7 +798,7 @@ bool wxTextCtrl::IsOwnGtkWindow( GdkWindow *window ) // the font will change for subsequent text insertiongs bool wxTextCtrl::SetFont( const wxFont &font ) { - wxCHECK_MSG( m_text != NULL, FALSE, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, FALSE, wxT("invalid text ctrl") ); if ( !wxWindowBase::SetFont(font) ) { @@ -824,7 +824,7 @@ bool wxTextCtrl::SetFont( const wxFont &font ) bool wxTextCtrl::SetForegroundColour( const wxColour &WXUNUSED(colour) ) { - wxCHECK_MSG( m_text != NULL, FALSE, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, FALSE, wxT("invalid text ctrl") ); // doesn't work return FALSE; @@ -832,7 +832,7 @@ bool wxTextCtrl::SetForegroundColour( const wxColour &WXUNUSED(colour) ) bool wxTextCtrl::SetBackgroundColour( const wxColour &colour ) { - wxCHECK_MSG( m_text != NULL, FALSE, T("invalid text ctrl") ); + wxCHECK_MSG( m_text != NULL, FALSE, wxT("invalid text ctrl") ); wxControl::SetBackgroundColour( colour ); diff --git a/src/gtk1/utilsres.cpp b/src/gtk1/utilsres.cpp index d165c8adf6..c12f461e11 100644 --- a/src/gtk1/utilsres.cpp +++ b/src/gtk1/utilsres.cpp @@ -40,9 +40,9 @@ // Yuck this is really BOTH site and platform dependent // so we should use some other strategy! #ifdef __SUN__ - #define DEFAULT_XRESOURCE_DIR T("/usr/openwin/lib/app-defaults") + #define DEFAULT_XRESOURCE_DIR wxT("/usr/openwin/lib/app-defaults") #else - #define DEFAULT_XRESOURCE_DIR T("/usr/lib/X11/app-defaults") + #define DEFAULT_XRESOURCE_DIR wxT("/usr/lib/X11/app-defaults") #endif //----------------------------------------------------------------------------- @@ -63,13 +63,13 @@ static wxChar *GetResourcePath(wxChar *buf, wxChar *name, bool create) wxStrcpy(buf, name); return buf; // Exists so ... } - if (*name == T('/')) + if (*name == wxT('/')) wxStrcpy(buf, name); else { // Put in standard place for resource files if not absolute wxStrcpy(buf, DEFAULT_XRESOURCE_DIR); - wxStrcat(buf, T("/")); + wxStrcat(buf, wxT("/")); wxStrcat(buf, FileNameFromPath(name)); } if (create) @@ -96,18 +96,18 @@ static wxChar *GetIniFile(wxChar *dest, const wxChar *filename) if ((home = wxGetUserHome(wxString())) != NULL) { wxStrcpy(dest, home); - if (dest[wxStrlen(dest) - 1] != T('/')) wxStrcat(dest, T("/")); + if (dest[wxStrlen(dest) - 1] != wxT('/')) wxStrcat(dest, wxT("/")); if (filename == NULL) { - if ((filename = wxGetenv(T("XENVIRONMENT"))) == NULL) filename = T(".Xdefaults"); + if ((filename = wxGetenv(wxT("XENVIRONMENT"))) == NULL) filename = wxT(".Xdefaults"); } else - if (*filename != T('.')) wxStrcat(dest, T(".")); + if (*filename != wxT('.')) wxStrcat(dest, wxT(".")); wxStrcat(dest, filename); } else { - dest[0] = T('\0'); + dest[0] = wxT('\0'); } } return dest; @@ -148,7 +148,7 @@ static void wxXMergeDatabases() // Open XENVIRONMENT file, or if not defined, the .Xdefaults, // and merge into existing database - if ((environment = wxGetenv(T("XENVIRONMENT"))) == NULL) + if ((environment = wxGetenv(wxT("XENVIRONMENT"))) == NULL) { size_t len; #if wxUSE_UNICODE @@ -203,7 +203,7 @@ void wxFlushResources() void wxDeleteResources(const wxChar *file) { - wxLogTrace(wxTraceResAlloc, T("Delete: Number = %d"), wxTheResourceCache->Number()); + wxLogTrace(wxTraceResAlloc, wxT("Delete: Number = %d"), wxTheResourceCache->Number()); wxChar buffer[500]; (void)GetIniFile(buffer, file); @@ -233,7 +233,7 @@ bool wxWriteResource(const wxString& section, const wxString& entry, const wxStr database = (XrmDatabase)node->Data(); else { database = XrmGetFileDatabase(wxConvCurrent->cWX2MB(buffer)); - wxLogTrace(wxTraceResAlloc, T("Write: Number = %d"), wxTheResourceCache->Number()); + wxLogTrace(wxTraceResAlloc, wxT("Write: Number = %d"), wxTheResourceCache->Number()); wxTheResourceCache->Append(buffer, (wxObject *)database); } char resName[300]; @@ -287,7 +287,7 @@ bool wxGetResource(const wxString& section, const wxString& entry, char **value, else { database = XrmGetFileDatabase(wxConvCurrent->cWX2MB(buffer)); - wxLogTrace(wxTraceResAlloc, T("Get: Number = %d"), wxTheResourceCache->Number()); + wxLogTrace(wxTraceResAlloc, wxT("Get: Number = %d"), wxTheResourceCache->Number()); wxTheResourceCache->Append(buffer, (wxObject *)database); } } else diff --git a/src/gtk1/window.cpp b/src/gtk1/window.cpp index 7fc92ca687..0df4401e32 100644 --- a/src/gtk1/window.cpp +++ b/src/gtk1/window.cpp @@ -155,7 +155,7 @@ static gint gtk_debug_focus_in_callback( GtkWidget *WXUNUSED(widget), wxLog::AddTraceMask("focus"); s_done = TRUE; } - wxLogTrace(T("FOCUS NOW AT: %s"), name); + wxLogTrace(wxT("FOCUS NOW AT: %s"), name); */ return FALSE; @@ -164,7 +164,7 @@ static gint gtk_debug_focus_in_callback( GtkWidget *WXUNUSED(widget), void debug_focus_in( GtkWidget* widget, const wxChar* name, const wxChar *window ) { wxString tmp = name; - tmp += T(" FROM "); + tmp += wxT(" FROM "); tmp += window; wxChar *s = new wxChar[tmp.Length()+1]; @@ -977,10 +977,10 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton wxapp_install_idle_handler(); /* - wxPrintf( T("1) OnButtonPress from ") ); + wxPrintf( wxT("1) OnButtonPress from ") ); if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) wxPrintf( win->GetClassInfo()->GetClassName() ); - wxPrintf( T(".\n") ); + wxPrintf( wxT(".\n") ); */ if (!win->m_hasVMT) return FALSE; if (g_blockEventsOnDrag) return TRUE; @@ -995,20 +995,20 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton gtk_widget_grab_focus (win->m_wxwindow); /* - wxPrintf( T("GrabFocus from ") ); + wxPrintf( wxT("GrabFocus from ") ); if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) wxPrintf( win->GetClassInfo()->GetClassName() ); - wxPrintf( T(".\n") ); + wxPrintf( wxT(".\n") ); */ } } /* - wxPrintf( T("2) OnButtonPress from ") ); + wxPrintf( wxT("2) OnButtonPress from ") ); if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) wxPrintf( win->GetClassInfo()->GetClassName() ); - wxPrintf( T(".\n") ); + wxPrintf( wxT(".\n") ); */ wxEventType event_type = wxEVT_LEFT_DOWN; @@ -1809,7 +1809,7 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id, if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { - wxFAIL_MSG( T("wxWindow creation failed") ); + wxFAIL_MSG( wxT("wxWindow creation failed") ); return FALSE; } @@ -1819,14 +1819,14 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id, GTK_WIDGET_UNSET_FLAGS( m_widget, GTK_CAN_FOCUS ); #ifdef __WXDEBUG__ - debug_focus_in( m_widget, T("wxWindow::m_widget"), name ); + debug_focus_in( m_widget, wxT("wxWindow::m_widget"), name ); #endif GtkScrolledWindow *scrolledWindow = GTK_SCROLLED_WINDOW(m_widget); #ifdef __WXDEBUG__ - debug_focus_in( scrolledWindow->hscrollbar, T("wxWindow::hsrcollbar"), name ); - debug_focus_in( scrolledWindow->vscrollbar, T("wxWindow::vsrcollbar"), name ); + debug_focus_in( scrolledWindow->hscrollbar, wxT("wxWindow::hsrcollbar"), name ); + debug_focus_in( scrolledWindow->vscrollbar, wxT("wxWindow::vsrcollbar"), name ); #endif GtkScrolledWindowClass *scroll_class = GTK_SCROLLED_WINDOW_CLASS( GTK_OBJECT(m_widget)->klass ); @@ -1840,7 +1840,7 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id, m_wxwindow = gtk_myfixed_new(); #ifdef __WXDEBUG__ - debug_focus_in( m_wxwindow, T("wxWindow::m_wxwindow"), name ); + debug_focus_in( m_wxwindow, wxT("wxWindow::m_wxwindow"), name ); #endif gtk_container_add( GTK_CONTAINER(m_widget), m_wxwindow ); @@ -1998,7 +1998,7 @@ wxWindow::~wxWindow() bool wxWindow::PreCreation( wxWindow *parent, const wxPoint &pos, const wxSize &size ) { - wxCHECK_MSG( !m_needParent || parent, FALSE, T("Need complete parent.") ); + wxCHECK_MSG( !m_needParent || parent, FALSE, wxT("Need complete parent.") ); /* this turns -1 into 20 so that a minimal window is visible even although -1,-1 has been given as the @@ -2030,7 +2030,7 @@ bool wxWindow::PreCreation( wxWindow *parent, const wxPoint &pos, const wxSize void wxWindow::PostCreation() { - wxASSERT_MSG( (m_widget != NULL), T("invalid window") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid window") ); if (m_wxwindow) { @@ -2095,7 +2095,7 @@ void wxWindow::ConnectWidget( GtkWidget *widget ) bool wxWindow::Destroy() { - wxASSERT_MSG( (m_widget != NULL), T("invalid window") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid window") ); m_hasVMT = FALSE; @@ -2104,8 +2104,8 @@ bool wxWindow::Destroy() void wxWindow::DoSetSize( int x, int y, int width, int height, int sizeFlags ) { - wxASSERT_MSG( (m_widget != NULL), T("invalid window") ); - wxASSERT_MSG( (m_parent != NULL), T("wxWindow::SetSize requires parent.\n") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid window") ); + wxASSERT_MSG( (m_parent != NULL), wxT("wxWindow::SetSize requires parent.\n") ); if (m_resizing) return; /* I don't like recursions */ m_resizing = TRUE; @@ -2239,7 +2239,7 @@ void wxWindow::OnInternalIdle() void wxWindow::DoGetSize( int *width, int *height ) const { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (width) (*width) = m_width; if (height) (*height) = m_height; @@ -2247,7 +2247,7 @@ void wxWindow::DoGetSize( int *width, int *height ) const void wxWindow::DoSetClientSize( int width, int height ) { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_wxwindow) { @@ -2321,7 +2321,7 @@ void wxWindow::DoSetClientSize( int width, int height ) void wxWindow::DoGetClientSize( int *width, int *height ) const { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_wxwindow) { @@ -2396,7 +2396,7 @@ void wxWindow::DoGetClientSize( int *width, int *height ) const void wxWindow::DoGetPosition( int *x, int *y ) const { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (x) (*x) = m_x; if (y) (*y) = m_y; @@ -2404,7 +2404,7 @@ void wxWindow::DoGetPosition( int *x, int *y ) const void wxWindow::DoClientToScreen( int *x, int *y ) const { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_widget->window) return; @@ -2433,7 +2433,7 @@ void wxWindow::DoClientToScreen( int *x, int *y ) const void wxWindow::DoScreenToClient( int *x, int *y ) const { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_widget->window) return; @@ -2462,7 +2462,7 @@ void wxWindow::DoScreenToClient( int *x, int *y ) const bool wxWindow::Show( bool show ) { - wxCHECK_MSG( (m_widget != NULL), FALSE, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), FALSE, wxT("invalid window") ); if (!wxWindowBase::Show(show)) { @@ -2480,7 +2480,7 @@ bool wxWindow::Show( bool show ) bool wxWindow::Enable( bool enable ) { - wxCHECK_MSG( (m_widget != NULL), FALSE, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), FALSE, wxT("invalid window") ); if (!wxWindowBase::Enable(enable)) { @@ -2497,9 +2497,9 @@ bool wxWindow::Enable( bool enable ) int wxWindow::GetCharHeight() const { - wxCHECK_MSG( (m_widget != NULL), 12, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), 12, wxT("invalid window") ); - wxCHECK_MSG( m_font.Ok(), 12, T("invalid font") ); + wxCHECK_MSG( m_font.Ok(), 12, wxT("invalid font") ); GdkFont *font = m_font.GetInternalFont( 1.0 ); @@ -2508,9 +2508,9 @@ int wxWindow::GetCharHeight() const int wxWindow::GetCharWidth() const { - wxCHECK_MSG( (m_widget != NULL), 8, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), 8, wxT("invalid window") ); - wxCHECK_MSG( m_font.Ok(), 8, T("invalid font") ); + wxCHECK_MSG( m_font.Ok(), 8, wxT("invalid font") ); GdkFont *font = m_font.GetInternalFont( 1.0 ); @@ -2527,7 +2527,7 @@ void wxWindow::GetTextExtent( const wxString& string, wxFont fontToUse = m_font; if (theFont) fontToUse = *theFont; - wxCHECK_RET( fontToUse.Ok(), T("invalid font") ); + wxCHECK_RET( fontToUse.Ok(), wxT("invalid font") ); GdkFont *font = fontToUse.GetInternalFont( 1.0 ); if (x) (*x) = gdk_string_width( font, string.mbc_str() ); @@ -2538,7 +2538,7 @@ void wxWindow::GetTextExtent( const wxString& string, void wxWindow::SetFocus() { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); GtkWidget *connect_widget = GetConnectWidget(); if (connect_widget) @@ -2564,7 +2564,7 @@ bool wxWindow::AcceptsFocus() const bool wxWindow::Reparent( wxWindowBase *newParentBase ) { - wxCHECK_MSG( (m_widget != NULL), FALSE, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), FALSE, wxT("invalid window") ); wxWindow *oldParent = m_parent, *newParent = (wxWindow *)newParentBase; @@ -2600,11 +2600,11 @@ bool wxWindow::Reparent( wxWindowBase *newParentBase ) void wxWindow::DoAddChild(wxWindow *child) { - wxASSERT_MSG( (m_widget != NULL), T("invalid window") ); + wxASSERT_MSG( (m_widget != NULL), wxT("invalid window") ); - wxASSERT_MSG( (child != NULL), T("invalid child window") ); + wxASSERT_MSG( (child != NULL), wxT("invalid child window") ); - wxASSERT_MSG( (m_insertCallback != NULL), T("invalid child insertion function") ); + wxASSERT_MSG( (m_insertCallback != NULL), wxT("invalid child insertion function") ); /* add to list */ AddChild( child ); @@ -2615,7 +2615,7 @@ void wxWindow::DoAddChild(wxWindow *child) void wxWindow::Raise() { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_widget->window) return; @@ -2624,7 +2624,7 @@ void wxWindow::Raise() void wxWindow::Lower() { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_widget->window) return; @@ -2633,14 +2633,14 @@ void wxWindow::Lower() bool wxWindow::SetCursor( const wxCursor &cursor ) { - wxCHECK_MSG( (m_widget != NULL), FALSE, T("invalid window") ); + wxCHECK_MSG( (m_widget != NULL), FALSE, wxT("invalid window") ); return wxWindowBase::SetCursor( cursor ); } void wxWindow::WarpPointer( int x, int y ) { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); GtkWidget *connect_widget = GetConnectWidget(); if (connect_widget->window) @@ -2653,7 +2653,7 @@ void wxWindow::WarpPointer( int x, int y ) void wxWindow::Refresh( bool eraseBackground, const wxRect *rect ) { - wxCHECK_RET( (m_widget != NULL), T("invalid window") ); + wxCHECK_RET( (m_widget != NULL), wxT("invalid window") ); if (!m_widget->window) return; @@ -2720,7 +2720,7 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *rect ) void wxWindow::Clear() { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); if (!m_widget->window) return; @@ -2747,7 +2747,7 @@ void wxWindow::ApplyToolTip( GtkTooltips *tips, const wxChar *tip ) bool wxWindow::SetBackgroundColour( const wxColour &colour ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid window") ); if (!wxWindowBase::SetBackgroundColour(colour)) { @@ -2794,7 +2794,7 @@ bool wxWindow::SetBackgroundColour( const wxColour &colour ) bool wxWindow::SetForegroundColour( const wxColour &colour ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid window") ); if (!wxWindowBase::SetForegroundColour(colour)) { @@ -2910,9 +2910,9 @@ static void pop_pos_callback( GtkMenu * WXUNUSED(menu), bool wxWindow::DoPopupMenu( wxMenu *menu, int x, int y ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid window") ); - wxCHECK_MSG( menu != NULL, FALSE, T("invalid popup-menu") ); + wxCHECK_MSG( menu != NULL, FALSE, wxT("invalid popup-menu") ); SetInvokingWindow( menu, this ); @@ -2949,7 +2949,7 @@ bool wxWindow::DoPopupMenu( wxMenu *menu, int x, int y ) void wxWindow::SetDropTarget( wxDropTarget *dropTarget ) { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); GtkWidget *dnd_widget = GetConnectWidget(); @@ -2979,7 +2979,7 @@ bool wxWindow::IsOwnGtkWindow( GdkWindow *window ) bool wxWindow::SetFont( const wxFont &font ) { - wxCHECK_MSG( m_widget != NULL, FALSE, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid window") ); if (!wxWindowBase::SetFont(font)) { @@ -3017,9 +3017,9 @@ bool wxWindow::SetFont( const wxFont &font ) void wxWindow::CaptureMouse() { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); - wxCHECK_RET( g_captureWindow == NULL, T("CaptureMouse called twice") ); + wxCHECK_RET( g_captureWindow == NULL, wxT("CaptureMouse called twice") ); GtkWidget *connect_widget = GetConnectWidget(); if (!connect_widget->window) return; @@ -3038,9 +3038,9 @@ void wxWindow::CaptureMouse() void wxWindow::ReleaseMouse() { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); - wxCHECK_RET( g_captureWindow, T("ReleaseMouse called twice") ); + wxCHECK_RET( g_captureWindow, wxT("ReleaseMouse called twice") ); GtkWidget *connect_widget = GetConnectWidget(); if (!connect_widget->window) return; @@ -3057,9 +3057,9 @@ bool wxWindow::IsRetained() const void wxWindow::SetScrollbar( int orient, int pos, int thumbVisible, int range, bool refresh ) { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); - wxCHECK_RET( m_wxwindow != NULL, T("window needs client area for scrolling") ); + wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") ); m_hasScrolling = TRUE; @@ -3120,9 +3120,9 @@ void wxWindow::SetScrollbar( int orient, int pos, int thumbVisible, void wxWindow::SetScrollPos( int orient, int pos, bool WXUNUSED(refresh) ) { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); - wxCHECK_RET( m_wxwindow != NULL, T("window needs client area for scrolling") ); + wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") ); if (orient == wxHORIZONTAL) { @@ -3163,9 +3163,9 @@ void wxWindow::SetScrollPos( int orient, int pos, bool WXUNUSED(refresh) ) int wxWindow::GetScrollThumb( int orient ) const { - wxCHECK_MSG( m_widget != NULL, 0, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid window") ); - wxCHECK_MSG( m_wxwindow != NULL, 0, T("window needs client area for scrolling") ); + wxCHECK_MSG( m_wxwindow != NULL, 0, wxT("window needs client area for scrolling") ); if (orient == wxHORIZONTAL) return (int)(m_hAdjust->page_size+0.5); @@ -3175,9 +3175,9 @@ int wxWindow::GetScrollThumb( int orient ) const int wxWindow::GetScrollPos( int orient ) const { - wxCHECK_MSG( m_widget != NULL, 0, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid window") ); - wxCHECK_MSG( m_wxwindow != NULL, 0, T("window needs client area for scrolling") ); + wxCHECK_MSG( m_wxwindow != NULL, 0, wxT("window needs client area for scrolling") ); if (orient == wxHORIZONTAL) return (int)(m_hAdjust->value+0.5); @@ -3187,9 +3187,9 @@ int wxWindow::GetScrollPos( int orient ) const int wxWindow::GetScrollRange( int orient ) const { - wxCHECK_MSG( m_widget != NULL, 0, T("invalid window") ); + wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid window") ); - wxCHECK_MSG( m_wxwindow != NULL, 0, T("window needs client area for scrolling") ); + wxCHECK_MSG( m_wxwindow != NULL, 0, wxT("window needs client area for scrolling") ); if (orient == wxHORIZONTAL) return (int)(m_hAdjust->upper+0.5); @@ -3199,9 +3199,9 @@ int wxWindow::GetScrollRange( int orient ) const void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) ) { - wxCHECK_RET( m_widget != NULL, T("invalid window") ); + wxCHECK_RET( m_widget != NULL, wxT("invalid window") ); - wxCHECK_RET( m_wxwindow != NULL, T("window needs client area for scrolling") ); + wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") ); if (!m_scrollGC) { diff --git a/src/html/htmlfilt.cpp b/src/html/htmlfilt.cpp index c0a56d9891..bb55c450cc 100644 --- a/src/html/htmlfilt.cpp +++ b/src/html/htmlfilt.cpp @@ -129,7 +129,7 @@ bool wxHtmlFilterHTML::CanRead(const wxFSFile& file) const // This is true in most case but some page can return: // "text/html; char-encoding=...." // So we use Find instead - return (file.GetMimeType().Find(T("text/html")) == 0); + return (file.GetMimeType().Find(wxT("text/html")) == 0); } diff --git a/src/html/htmlpars.cpp b/src/html/htmlpars.cpp index 8692fccc95..d3f772440f 100644 --- a/src/html/htmlpars.cpp +++ b/src/html/htmlpars.cpp @@ -166,5 +166,5 @@ wxHtmlParser::~wxHtmlParser() //----------------------------------------------------------------------------- IMPLEMENT_ABSTRACT_CLASS(wxHtmlTagHandler,wxObject) +#endif -#endif \ No newline at end of file diff --git a/src/html/winpars.cpp b/src/html/winpars.cpp index 88bf5cc529..684e5a755b 100644 --- a/src/html/winpars.cpp +++ b/src/html/winpars.cpp @@ -285,5 +285,5 @@ bool wxHtmlTagsModule::OnInit() void wxHtmlTagsModule::OnExit() { } +#endif -#endif \ No newline at end of file diff --git a/src/jpeg/makefile.b32 b/src/jpeg/makefile.b32 index 35d923f954..878ff96b7c 100644 --- a/src/jpeg/makefile.b32 +++ b/src/jpeg/makefile.b32 @@ -74,4 +74,3 @@ DOBJECTS= djpeg.obj wrppm.obj wrgif.obj wrtarga.obj wrrle.obj wrbmp.obj \ rdcolmap.obj cdjpeg.obj TROBJECTS= jpegtran.obj rdswitch.obj cdjpeg.obj transupp.obj -!include $(WXWIN)\src\makelib.b32 \ No newline at end of file diff --git a/src/mac/apprsrc.r b/src/mac/apprsrc.r index 6a9530632a..408a135a9f 100644 --- a/src/mac/apprsrc.r +++ b/src/mac/apprsrc.r @@ -624,4 +624,3 @@ resource 'MENU' (1, preload) resource 'MBAR' (1,preload) { { 1 } ; -} ; \ No newline at end of file diff --git a/src/mac/carbon/apprsrc.r b/src/mac/carbon/apprsrc.r index 6a9530632a..408a135a9f 100644 --- a/src/mac/carbon/apprsrc.r +++ b/src/mac/carbon/apprsrc.r @@ -624,4 +624,3 @@ resource 'MENU' (1, preload) resource 'MBAR' (1,preload) { { 1 } ; -} ; \ No newline at end of file diff --git a/src/mac/carbon/corersrc.r b/src/mac/carbon/corersrc.r index 46850cfcc3..a37b064b21 100644 --- a/src/mac/carbon/corersrc.r +++ b/src/mac/carbon/corersrc.r @@ -536,4 +536,3 @@ resource 'STR#' (251) { } }; -// end of get file \ No newline at end of file diff --git a/src/mac/carbon/menuitem.cpp b/src/mac/carbon/menuitem.cpp index bd2f876a38..38d31737e7 100644 --- a/src/mac/carbon/menuitem.cpp +++ b/src/mac/carbon/menuitem.cpp @@ -93,4 +93,3 @@ void wxMenuItem::Check(bool bDoCheck) // TODO m_bChecked = bDoCheck; } -} \ No newline at end of file diff --git a/src/mac/corersrc.r b/src/mac/corersrc.r index 46850cfcc3..a37b064b21 100644 --- a/src/mac/corersrc.r +++ b/src/mac/corersrc.r @@ -536,4 +536,3 @@ resource 'STR#' (251) { } }; -// end of get file \ No newline at end of file diff --git a/src/mac/macsock/sock_PPC.lib b/src/mac/macsock/sock_PPC.lib index a85c82aabf..e69de29bb2 100644 --- a/src/mac/macsock/sock_PPC.lib +++ b/src/mac/macsock/sock_PPC.lib @@ -1 +0,0 @@ -(This file must be converted with BinHex 4.0) :!!"08%a'3eG*43!!!!-3A!!!!4ijQ8eA6d*38%-J!*!(!3!![XJ!!#4S!!!!#V# XlYd!!!$N!!!!mJ!!!e`!!#2bXQAFf3!!!5B!!!%f!!!R8!!!Y4ka,F84!!!"E!! !!AJ!!0a`!!!B@,*Pi@S!!!'U!!!"YJ!!p-J!!&Q!XQ-ZeJ!!!HJ!!!(e!!&15!! !GFk[r%YD!!!#+!!!!M3!!F3B!!!RbUj'*kS!!!*Q!!!#G!!"kq3!!"b+XQAX)3! !!UJ!!!+c!!))F!!!CV#`V2#X!!!#j!!!!Zm!!QmJ!!"!3,#pbM)!!!-J!!!$+`! #Vf!!!'$m4e9658*eCQCPFLjMF!"%CACPE'p`E@9ZG$T%CA0VG'p`)%C[E'4PFMT $9dG98dNkFh*M1NG98dP#G@CQCA)ZBh!!4e96584TFh"KG'0S,Q0`!%4PGQ9XEh" YC@jd1N4PFfYdEh!J4QpXC'9b1N0A4e9656TcFQ-k4e96584TFh"KG'0S,Q0`!%G 98dP(E'pL,Q0`!%4PGQ9XEh"YC@jd1N4PFfYdEh!J4QpXC'9b1N0A4e9656TcFQ- k4e9658GXEf)ZBh!!4e9658P1493ZBh!!4'9fC@a[F'ePER3k4'9cDh4[F#"'Efa NCA)k3eG(990*1R0bBcT(990*58j&9#jMF!"(990*6Q9d4%)ZBh!!4'9fC@a[F'e PER3k4'9cDh4[F#"'EfaNCA)k3eG(990*1R0bBcT(990*6Q9d4%)ZBh!!4e9658j eE'`ZBh!!4'9fC@a[F'ePER3k4'9cDh4[F#"'EfaNCA)k3eG(990*1R0bBcT(990 *6R9XE#jMF!"(990*8fpMDf9d,Q0`!%4PGQ9XEh"YC@jd1N4PFfYdEh!J4QpXC'9 b1N0A4e9656TcFQ-k4e96590[BfYPG#jMF!"(990*9%03,Q0`!%4PGQ9XEh"YC@j d1N4PFfYdEh!J4QpXC'9b1N0A4e9656TcFQ-k4e96594$8#jMF!"(990*9843,Q0 `!%4PGQ9XEh"YC@jd1N4PFfYdEh!J4QpXC'9b1N0A4e9656TcFQ-k4e96599%8#j MF!"(990*4P0`,Q0`!%4PGQ9XEh"YC@jd1N4PFfYdEh!J4QpXC'9b1N0A4e9656T cFQ-k4e9658C6F#jMF!"36eG5!*!'&5!!!"hd!!!!EJ!!&B`!!!KS!!!*m!#3"J' c!!!!$!#33%9R!!"&D3#3"3&&DJ!%!!!!!J!!!(3!!!!J!!!$Zh`)!UDrBIrXN!! "!!L8)Iq`1i-!!$ZN!!!la3!!1qB!!(`Hq%"!J3!i1(`!!$LG!!!i[!!!10m!!%J !!!%lB`!!1(`!!$LG!!!i[J!!10d!!%J!!!&mBpS85!!!#(aqq&#!!3"B1#%!8(` )!kDlBIrX6S!!)%9e!*!&!J!!!$K&G3#3"3)!!!"34@i-"!!!!!F!!!!-J!#3#i! !!(3S!!!!4AF!N!8#!*!%4@X!"!!!!!J!!!#-!!!!I!!!"@am#!+QNq(rr*2"rrL 3!!%!#*3Krm!li`!!1m3!!&5$"$j)!!!"B!!!!*!!I`!!J(m!!&I!"$jm!`)8N!! I!!5!(`!!N!!I!!L!(`!!N!!I!!bch`!31!!!!,!I!")i!!!!X"m!&$J!!!#B(`! @1!!!!*!!(`!B1(m!!)!"!%Ji)3"!I!J$TS2Krrb$`Iri6S!!)%9e!*!!!!#" &EJ`%!!!!&`!!!!b!!*!,J!!!M"!!!!"&G`#3"3J!N!4&D`!%!!!!'!!!!'`!!!# d!!!'FR`)!UD6iIrmN!!"!!L8)Ir!I(mEHE#"!&j"JJ!m1!!!!CJI!"D!(`!!+!! !!%'#!"#!I`!!5!!!!@!!!!#S!3"H,!!!!%#"!"!iI`!!5!!!!@!!!!!iI`!!J!% !5$JK!%"m#!1QJq(rr%k!!#"&G3#3"4N!!!!d4A8!N!8D!!!!6%9Z$!3!!!!E!!! !$)!!N!Z!!!"X#!!!!%9h!*!&'!#3"%9V!!3!!!!F!!!")!!!!1B!!!DqI!J#TT2 Krrb6`IriNk(rp*1"rr#3!!%!#*3Krl!li`!!1i3!!$J!!!'B!`!@S!-!%LJ!!!" !JJ!FJ"m!!*!!(`!-J"m!!*!!(`!)1!!!!,!I!"5!I`!-J"m!"(r$!&#$[`!-9m- %2U!I!""m!`"!3B!!$+2I!"")!!"-9m-%2U!I!""m!!j`I!-!!%#!!$KA``3qJ"` !!(`$!!"!J!!SXpm!&)!I!!#3!"m!$+"r!"5J(`!3I!-!8,!I!"#Mh`!3Jlm!$)" m!!"A`!3qI!-!!%#"!!aA`!3qN!!F!!!i!!!!Q"m!&S!I!"JS!!!!3B)!&)"r!"b "R`!B5!!!!@!!!!!iI3!!J!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrdJi(rm%k!!#" &G3#3"4d!!!$d4@i-"!!!!#%!!!!-J!#3#i!!!5!J!!!!4AF!N!8F!*!%4@X!"!! !!#)!!!#i!!!"HJ!!#-Ym#!+QNq(rr*2"rrL6SIrdNi(rm*!!!3!)P#(rX$[M!!! lK!!!1!!!!CJ$!"DJJ`!8J'-!#)!I!!4m!`"3Im3!8)1r!!KA``3qS"m!%R`$!%" !J3!)Spm!%S"m!!"A`!3qI!-!!%#"!!aA`!3qN!!F!!!i!!!!Q"m!&S!I!"JS!!! !3B)!&)"r!"b"R`!B5!!!!@!!!!!iI3!!J!%!@$JK!&"m#!1QJq(rr)2"rrL$SIr dJi(rm%k!!#"&G3#3"4d!!!#-4@i-"!!!!#-!!!!-J!#3#i!!!,JJ!!!!4AF!N!8 L!*!%4@X!"!!!!#3!!!#F!!!"lJ!!#J&m#!+QNq(rr*2"rrL3!!%!#*3Krm!li`! !1m3!!$J!!!'B!`!@S!-!%R`!mK5`!`!5S!-!%(`H!&#`!`!3J!-!$(`!mK53!!- !$)"M!!b!(`!%I!-!3%##!!b!(`!!N!!I!!`i!!!!Q"m!&S!I!"JS!!!!3B)!&)" r!"b"R`!B5!!!!@!!!!#!!3")1#%!3(`)!kD$iIrmJm(rq%k!!#"&G3#3"4d!!!" m4@i-"!!!!#8!!!!-J!#3#i!!!*`3!!!!4AF!N!8N!*!%4@X!"!!!!#B!!!$B!!! #0J!!#YCm#!+QNq(rr*2"rrL3!!%!#*3Krm!li`!!1m3!!$J!!!'B!`!@S!-!%(` !mK5`!`!3S!-!%R`H!&#`!`!5J!-!#(`!mK53!!-!#)#$!!LJB`!8J"m!"(`$!&" m"!"!3))!')!I!!#3!"m!#$J!!!#`(`!85!!!,+!I!")S!!!!3))!)+!I!""m!2! !3))!&)!I!!#3!"m!#)!I!!#3!"m!$$J!!!#B(`!@J"m!'#J!!!""JJ!8J(m!()' I!"K)!!!"B!!!!)!"!%Ji)3"!I!J$TS2Krrb$`Iri6S!!)%9e!*!&(3!!!,K&EJ` %!!!!*`!!!!b!!*!,J!!!f"!!!!"&G`#3"5B!N!4&D`!%!!!!+!!!!*3!!!+1!!! -1A`)!UDrBIrXN!!"!!L8)IqJ1q-!!$Z%!!!lC3!!Jm8!!%J!!$`iI`!!1)%!1%J !!!%iR!!!J+%!1%J!!!&J!!!!1(m!!)#"!$K)!!!"J!%!1(qF!K5!!3!iIm$`8*2 "!$JX(J!!3B)!%+!I!")S!!!!3),rY)!E!!"m(J"3N!!E!!#!!3"S1#%!B(`)!kD lBIrX6S!!)%9e!*!&)J!!!#a&G3#3"5N!!!!i4A8!N!8Q!!!!5%9Z$!3!!!!Y!!! !$)!!N!Z!!!#8+!!!!%9h!*!&+!#3"%9V!!3!!!!Z!!!!R!!!!bi!!!fdI!J#TVp Krqb3!!%!#*3Krk!li`!!1i3!!$YP!!#$a3!!5!!!4$Kr!!!iJ3!i5!!!!6ZM!!! iI!!!1*d!!)#K!$K)!!!"B!!!!$Kr!!#!J3!i5!!!!B!"!$KrR!)8J!%!1(r!m&# 6`3!i,"i!!%'#!"#J(`!3+!!!!%##rkb!'`!!I"i!8*!!'`!!J!%!D$JK!'"m#!1 QZf(rl%k!!#"&G3#3"4`!!!!X4A8!N!8T!!!!3%9e!*!&*!!!!&"&EJ`%!!!!,`! !!!b!!*!,J!!!R#J!!!"&G`#3"5i!N!4&D`!%!!!!-!!!!4!!!!21!!!2Jh`)!UD 6iIrmNm(rq*1Krr53!!%!#*3Krl!li`!!1m3!!$ZP!!#!!J!!N!!$!"56``!3Nk- !$)!$!!`X!!!"3)!!)$J!!!#3!"m!"$J!!!#3!"m!#$J!!!#3!"m!!%J!!*L!(`! -,!!!!8##!##!(J!!N!!I!!5!(J!%N!!I!!Ji!!!!N!!I!!")!!"`1!!!!*!!(`! )5!!!')"r!!L!(J!%I!-#&*!!(`!)1pi!##`G!!!l[Irr3),rj)"r!!K)!!!"B!! !!*!!I`!!J"m!!#J!!!""JJ!JJ(m!!%J!!!&J!!!!J(m!!)!$!!#3!"m!"%J!!!` i!!!!N!!I!!3iI`!!J!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrd6S!!)%9d!`#3"$% !!!!N4A8!N!8b!!!!Y%9e!*!&-`!!!0"&EJ`%!!!!2J!!!!b!!*!,J!!"%"J!!!" &G`#3"6!!N!4&D`!%!!!!2`!!!'`!!!4F!!!44(`)!UD6iIrmN!!"!!L8)Ir!I(m EHE#"!&j"JJ!mJ!)!!*!!(`!8J"m!!#J!!!""JJ!3J(m!!%J!!!&J!!!!U!%!AL` !!!"!J3!31(m!!%J!!!&J!!!!1(m!!)!"!%Ji)3"!I!J$TS2Krra1J!!J4A3$!*! %-3!!!"a&G3#3"8!!!!!d4A8!N!8D!!!!6%9Z$!3!!!""!!!!$)!!N!Z!!!"X#!! !!%9h!*!&2`#3"%9V!!3!!!"#!!!!5!!!")B!!"'*I!J#TT2Krrb3!!%!#*3Krm! li`!!N!#"!&b3!+%!B)#"!&b!S3"J5!!!!B!#!!#3!"m!&$Kr!!#!!3")1#%!3(` )!kD$iIrm6S!!)%9e!*!&-!!!!#4&G!-!N!4$!!!!+%9Z$!3!!!"'!!!!$)!!N!Z !!!")#!!!!%9h!*!&3J#3"%9V!!3!!!"(!!!"#!!!"-3!!"(KI!J#TT2Krrb6`Ir iNk(rp*!!!3!)P#(rX(ar'hQ`J3"Z3B)!b)!#!!#3!"m!&)!I!!`X!!!"3)%!N!# !(`!%+!!!!%'#!)5$[`!%5!!!A)#I!!L!I`!3J!-!"(`%!!"!J!!-Jpm!#%J!!!b !I`!3Jm-!")"r!"#!B`!!1*d!!$Lq!!")!!!"B!!!!(qpmK5!(`!)I"i!8*!!(`! )J(m!%$J$!!L3!"m!%)"r!!`i!rrrN!!I!!`X!`!!3B)!%)!I!!JX!!!!3),rM$K r!!!iJ!!!5!!!!DJ"!'iX!!!!3)%!%$Kr!!")!!!"B!!!!$Kr!!#!!3"B1#%!8(` )!kD$iIrmJm(rq)1Krr41J!!J4A3$!*!%3`!!!#4&G3#3"8J!!!#!4A8!N!8r!!! !c%9e!*!&'J!!!1"&EJ`%!!!!5`!!!!b!!*!,J!!"#"J!!!"&G`#3"8F!N!4&D`! %!!!!6!!!!+!!!!8U!!!5dA`)!UD6iIrmNm(rq*1Krr56JIr`N!!"!!L8)Iq`1i- !!$[N!!!lT3!!5!!!!B!#!!#3!"`!&#`G!!&!J3"%J"`!"#J!!!""JJ!iJp`!"%J !!#3iIJ!!J*m!!)#r!!4)!!!"B!!!!)!I!!4rhJ)81rm!##`G!!!l[Irr3),rf$K m!!#!!3"B1#%!8(`)!kD$iIrmJm(rq)1Krr5$JIr`6S!!)%9e!*!&-!!!!#K&G!- !N!40!!!!,%9e!*!&5!!!!&a&EJd#!!!!6`!!!"D!!*!()!!!B!"J!!S!!)D!!"` !N!T&GJUF!!!!8!!!!"*&EJ`%!!!!83!!!!b!!*!1S!#3"%9h!*!&6!#3"%9h$3# 3"%m!!!!)4@X!"!!!!&)!!!"J!!!&RJ!!%m*m#!+QNq(rr*!!!3!)P#(r`(ar'hQ `J3"H3B)!-)!#!!#3!"m!&$Kr!!!iJ!!!5!!!!DJ"!&iX!!!!3)%!%$Kr!!")!!! "B!!!!$Kr!!#!!3")1#%!3(`)!kD$iIrm6S!!)%9d!`#3"%d!!!!F4A8!N!8r!!! !,%9e!*!&'J!!!%"&EJ`%!!!!8`!!!!b!!*!,J!!!B!J!!!"&G`#3"9)!N!4&D`! %!!!!9!!!!$`!!!A!!!!6hC2Krr`li!!!5!!!&)J$!!!lr`!"I!6jVMKM!!')!`! !I!!(G8'#!!`X(`$r3B$ri*[N!!#$iIrm6S!!)%9Z"3%!!!"A!!!!#Irrrr-!!"2 G4f&dD'9bCA)!!"334@i&!3!!!&J!!!!+rrrrmJ!!%pe6Bf&dG%GKG'J!!!"&EJ8 %!!!!@3!!!!Mrrrra!!!6h3#3#%9f"3#3"&J!N!4&EJ8%!!!!@J!!!!crrrr`!!! 6h3#3$%9f"3#3"&N!N!4&EJ8%!!!!@`!!!!Mrrrr[!!!6h3#3#%9f"3#3"&F!N!4 &GJ8!N!4D!!!!"%9["33!!!"0!!!!$2rrrqi!!"2G!*!-4AB&!*!%@`#3"%9f#J# 3"&`!!!!)4@i&!3!!!&d!!!!+rrrrl3!!%pe6Bf&dG'9bCA)!&""&EJ8%!!!!AJ! !!!crrrrX!!!6h3#3$%9f"3#3"&N!N!4&EJ8%!!!!A`!!!!MrrrrV!!!6h3#3#%9 f"3#3"&d!N!4&GJ8!N!4H!!!!"%9["33!!!"$!!!!$2rrrqS!!"2G!*!-4AB&!*! %A`#3"%9f#J#3"'!!!!!)4@m&"!!!!$%!!!!-rrrrk3!!%pd!N!a&GJ8!N!4C!*! %4AB+!*!%8!!!!!K&E`S%!!!!B3!!!!L!!*!24AB!N!98!*!%4AB2!*!%BJ!!!!4 &E`S%!!!!A!!!!!L!!*!24AB!N!95!*!%4AB2!*!%BJ!!!!4&E`S%!!!!B`!!!!L !!*!24AB!N!9-!*!%4AB2!*!%BJ!!!!4&E`S%!!!!B!!!!!L!!*!24AB!N!9(!*! %4AB2!*!%BJ!!!!4&E`S%!!!!C!!!!!L!!*!24AB!N!9#!*!%4AB2!*!%BJ!!!!4 &E`S%!!!!8!!!!!L!!*!24AB!N!8r!*!%4AB2!*!%BJ!!!!4&E`S%!!!!C3!!!!L !!*!24AB!N!8`!*!%4AB2!*!%BJ!!!!4&E`S%!!!!CJ!!!!L!!*!24AB!N!8Z!*! %4AB2!*!%BJ!!!!4&E`S%!!!!C`!!!!L!!*!24AB!N!8S!*!%4AB2!*!%BJ!!!!4 &E`S%!!!!D!!!!!L!!*!24AB!N!8Q!*!%4AB2!*!%BJ!!!!4&E`S%!!!!D3!!!!L !!*!24AB!N!8N!*!%4AB2!*!%BJ!!!!4&E`S%!!!!DJ!!!!L!!*!24AB!N!8L!*! %4AB2!*!%BJ!!!!4&E`S%!!!!D`!!!!L!!*!24AB!N!8F!*!%4AB2!*!%BJ!!!!4 &E`S%!!!!E!!!!!L!!*!24AB!N!8B!*!%4AB2!*!%BJ!!!!4&E`S%!!!!E3!!!!L !!*!24AB!N!8)!*!%4AB2!*!%BJ!!!!4&E`-%!!!!63!!!!5!!*!,4AB&!*!%63# 3"%9[!`3!!!"$!!!!")!!N!Y&GJ8!N!4$!*!%4@m$"!!!!$%!!!!%J!#3#d9f"3# 3"$%!N!4&E`m%!!!!BJ#3")!!N!G&D!!!8eP05!!!"Ki!!!!A!!!!#!#3%3%!N!B $p3!!!#J!!!3*!!!!A!!!"&RrN!3!!!4T!!3!!!!$!!!!CJ%!N!3F!!!!"!!!!'B "!*!%(3!!!!8!!!"Q!3#3""i!!!!'!!!!CJ%!N!3I!!%!N!B&N`!!!#!!!!@@rj! %!!!'E`!#!!!!#[q3"!%!N!3I!!!!&J!!!!S"!*!%(J!"!*!'"S`!!!!F!!!'M`! !!$!!!!DRrj!%!!!'Z`!"!!!!#[q3"!%!N!3I!!%!N!B'i`!!!$J!!!FY!!!!8!! !"fJ!!!"`!!!(ZJ!!!(J!!!I2!!!!R!!!"rd!!!$!!!!)A`!!!0!!!!Kc!!!!f!! !#+i!!!$m!!!)[2q3"!!!#-J!"!!!!!VrN!3"!*!%(`!!!"lrrrrm!3#3""`!!!! I!!!!CJ#3"4d!!!!J!!!!#J#3"4i!!3#3"JM`!!!!9!!!#B3!!!"B!!!*P3!!!'J !!!QT!!!!F!!!#H3!!!#8!!!*m[q3"!!!#Ii!"!!!!!VrN!3"!*!%(`!!!"lrrrr m!3#3""`!!!!I!!!!CJ#3"4d!!!!J!!!!#J#3"4i!N!J+*3!!!&J!!!UK!!!!B!! !#XJ!!!#%!!!+drq3"!!!#Y-!!J!!!!VrN!3"!*!%(`!!!"i!!!!$!3#3""i!N!J +r!!!!'!!!!Z"!!!!G!!!#kN!!!#-!!!,l3!!!*`!!!`V!!!!`!!!$$ErN!3!!!` f!!)!!!!+rj!%!3#3""m!!!!H!!!!!`%!N!3H!*!)$'B!!!!N!!!0"3!!!$J!!!d G!!!!3!!!$6N!!!"-!!!063!!!&`!!!eE!!!!G!!!$@!!!!#!!!!0XIq3"!!!$E% !"J!!!!VrN!3"!*!%(`!!!!B!!!"Q!3#3""`!!!!Hrrrrr!%!N!3E!!!!+J!!!'B !N!8G!!!!+`!!!!-!N!8H!!!!,!!!!!-!!`!!!$J!N!J0i`!!!#3!!!k%!!!!3!! !$T`!!!")!!!1ZJ!!!&3!!!l2!!!!C!!!$Yi!!!"m!!!1i`!!!)J!!!mirj!%!!! 21!!'!!!!#[q3"!%!N!3I!!!!"3!!!'B"!*!%(!!!!"lrrrrm!3#3""X!!!!U!!! !CJ#3"4d!!!!V!!!!!`#3"4i!!!!X!!!!!`!$!!!!1!!"!*!'$lS!!!"!!!!2k`! !!&`!!"!F!!!!D!!!%$%!!!#%!!!3LJ!!!*!!!!!3U3!!!,!!!"$*!!!!c!!!%2S !!!$B!!!4$3!!!1J!!"%b!!!!m!!!%8(rN!3!!"&"!!-!!!!+rrrrq`%!N!3I!!! !22rrrrN"!*!%(J!!!$d!!!!$!3#3""d!!3#3"K&F!!!!-!!!%@lrN!3!!"''!!% !!!!+rrrrq`%!N!3I!!%!N!B4a2q3"!!!%Gi!!`!!!!Vrrrrh!3#3""m!!!!mrrr rq3%$!!!!A!!!!$B!!!!$!3-!!!"J!!%!N!B4q3!!!$J!!")*!!!!4!!!%LB!!!" -!!!5A3!!!(!!!"+#!!!!T!!!%XcrN!3!!",1!!-!!!!+rrrrp`%!N!3I!!!!53! !!'B!N!8G!!!!5J!!!!-!N!8H!!%!N!B6#J!!!$`!!"-P!!!!5!!!%d)!!!"3!!! 6F`!!!(!!!"1p!!!!I!!!%lrrN!3!!"1r!!3!!!!+rrrrp3%!N!3F!!!!22rrrrN "!*!%(`!!!$B!!!!$!3#3""d!!!"*!!!!CJ#3"4i!!3#3"K2Brj!%!!!6fJ!"!!! !#[rrrr8"!*!%(`#3#"33!!!!"!!!&"m!!!!-!!!8@!!!!$!!!"4G!!!!0!!!&'c rN!3!!"4X!!-!!!"9!!!!CJ%!N!3$!!!!9J!!!'X"!*!%"!!!!"i!!!!$!*!&(`! !rrrrr3!"!!!!DJ!#rrrrrJ!!!!X!!!!J!!S!!!!-!!!!CJ#3"`d!!!"Q!!!!"!! !!!i!!!"Q!!!!#!!!!!m!!!"Q!!!!$!!!!"!!!!!+!!!!%!!!!"%!!!!+!!!!%J! !!")!!!!+!!!!&!!!!"-!!!!'!!!!&J!!!"6rrrrp!!!!'!!!!"8!!!"N!!!!(!! !rj!%!!(rrrrq!!$rrrrm!!%!!!!$!!,rrrri!!!!1!!!!!J!!J!!!$N!!!"Q!*! (1J!!!!-!!!!%!!$rrrrj!!(rrrri!!,rrrrk!!!!0!!!!"J!"J!!!$8!!!"R!*! (+J!!!'3!!!!%!!!!(J!!!!-!!!!)!!!!0J!!!!-!!!!-!!!!0rrrrrN!!!!3!!! !1`!!!'3!!!!8!!$rrrrl!!(rrrrk!!,rrrrf!!!!4!!!!"J!!3!!!%Arrrrk!*! 'rrrrp`!"rrrrpJ!#rrrrp!!!!%i!!!!B!!%!!!"&rrrrqJ#3"[rrrr8!!Irrrr3 !!Irrrr-!!!!*!!!!!3!!!!F!!Irrrr)!!!!+!!!!!3!!!!F!![rrrr(rN!3!!!! )!!!!![rrrr$rN!3!!!!-!!!!![rrrqrrN!3!!!!)!!!!![rrrqlrN!3!!!!-!!! !!Irrrqd!!!!+!!!!!3!!!!F!![rrrqcrN!3!!!!-!!!!![rrrq[rN!3!!!!)!!! !![rrrqVrN!3!!!!-!!!!![rrrqRrN!3!!!!-!!!%U%G98dN!"'`Z8QPZCd4TFh4 IAdC3Be"M8'03B`!&QA0dBA*d!!1RC@jN!!3cCR*[E3!#rA4[!!5F3$Fd13!'9#j IAf0dAema-&*TEQG#G@CQCA*'9A-!"p8Z6Q9h8(4b!!4EG'KTF`!#K&*TEQG#G@C QCA)!"J0LG@CQCA)!"NePEQ4LG@B!"d"MEfjcG@eP!!F`F(*[C(9MC3!%kQCbC@8 !"GCfB@aTC!!&T(0`BA*P!!5VE'pMD`!(('4PCR"bEf-!!cTKFQF!"U"LG@CcDAS !",4!0c8a!!A%,PpIC(4IAc%`8QPZCd*eCQCPFNCf!!-),N4TFh"[Ff93G()!!Nm ZAepNE&pI4P"f!!5l3$Fe1!!#Abj3FQpNG@0PFPpI-6"5D@jR3R9QCQ9b4P*X!!1 8,PpIF(4bAfGXG@8!!maXC@i!!qPbCA-!"R"cG(*PB@X!"2C!0cFc!!)5,N0[ER0 eE@9bAema-&*TEQG#G@CQCA*'8Q`!""9!0cJb!!(L,PCKE'PNBA4PAema-&*TEQG #G@CQCA*'E!!%(%!h1$N!!e8Z5@jfB@aTC'&dC9pI-6"5D@jR3R9QCQ9b4Q`!"$G !1$!`!!--,N0[ER0eE@9IAc%`8QPZCd*eCQCPFNC3Be*X!!)[,N*XEf0V6@pfC3! $RQ*eCJ!%XA*PFh3!"&p`BA*d!!3r3$J`1!!$D#j3FQpNG@0PAema-&*TEQG#G@C QCA*'8'05E!!%A8!i-6B!!m!ZAepMG&pI190MBA4d4f&dD%C33c9TEhCPBfN!!,0 IAhCdAemj8f0KG(4(BA4S!!+(,NjPGdKKEQ4XC3!'L#j)6'pMD`!"aP0MBA4d4f& dD!!((A0MFQ&dBfJ!"39MEh9ZG!!#R'P[!!8cD@pfC@-!!(*TEhCIBQ&cC3!($'P [GPpXC@i!"r0IAhC`G()N!!-*D@pf!!22Bfjd!!5C3$Jc-J!$R#jIAf4dAemj8f0 KG(4(BA4S4RB!"X-Z4'PcF'pcC8KKEQ4XC3!%Rd!i-cJ!!i-ZAepMG&pI190MBA4 dCA*PFNC33c9TEhCPBfN!!%jIAhCdAemj8f0KG(4PFQ9b!!&"8f0KG(4PFQ9b!!) q*&0MBA4d4f&dD!!%Yd!i0$!!!bdZAepNG&pI190MBA4dCA*PFNCf!!GP,QePE@0 `H3!%df*`G()!"#pcC@0d!!6D3$Je-`!#hLjIAf0dAemi4f&dD'9bCA*'8%-eD@p fC@0T!!GTAepfG&pI1%GKG'KPFQ9b!!"-4f&dD'9bCA)!"2T!1$Bc!!*lAepNG&p I190MBA4d4f&dD%Cf!!6l3$Jf0!!#0LjIAf4dAemi4f&dD'9bCA*'GJ!%rd!i0MJ !"#%Z3fp`H8-b8&0dFPpI4P"$Be"9B`!%Af0cG()!"!C`Fh4b!!3G3$Jh0J!%(d! i0cJ!!P0IAe*89%PIAcP6Bf&dG%GKG'J!""j!1$Fh!!'MAep59&4*Aemi4f&dD'9 bCA)!!DjIAf4dAemi4f&dD'9bCA*'GJ!%)%!i0cN!"$K!1$J`!!*ZAep59&4*Aem j8f0KG(4PFQ9b!!)-AepNG&pI190MBA4dCA*PFNCf!!0Q3fp`H8-b8&0dFPpI4P" $Be"9B`!$IP423`!")&pIBh4IAcK(BA4SCA*PFNC33c9TEhCPBfN!!PpIAf0dAem j8f0KG(4PFQ9b4P"$0@P[GQ9MD3!#N9pIBh4IAcP6Bf&dG%GKG'K'8%-eD@pfC@0 T!!,48(*[C(9MC9pI-6"5D@jR3R9QCQ9b4P"M8Q`!!QT$EfjcG@ePAema-&*TEQG #G@CQCA*'8'05E!!#ZNPZGQ&XD@4KG'9IAc%`8QPZCd*eCQCPFNCX!!#&9Q&XD@4 KG'9IAc%`8QPZCd*eCQCPFNCX!!(l3fpZFh9YCA*IAc%`8QPZCd*eCQCPFNC5E!! "I&"bEf4eBf9bAema-&*TEQG#G@CQCA*'8Q`!"1aIAf4dAema-&*TEQG#G@CQCA* 'GJ!&%&pIBh4IAc%`8QPZCd*eCQCPFNC9F`!!45K36eG5!*!'Df`!!*@B!!!#E!! !DpJ!!#R!!!!`D!!!!Ed!!!@a!!!!R!#33%9R!!"&D3#3"3&&E`8%!!!!(3!!!!6 rrrrf!!!$&!#3"%9f#J#3""i!N!4&E`8%!!!!(`!!!!6rrrrf!!!$33#3"%9f#J# 3"#!!N!4&E`8%!!!!)J!!!!3!!!!$!!!$Q!!!!!&&EK!%!!!!*3!!!!3!!!!$!!! $q[q3"%9V!!3!!!!f!!!!'!!!!#!!!!LY,!-!!%'#!!b!JJ!!N!"N!!!iB2rr6S! !)%9d!`#3"$F!!!!)4@X!"!!!!$N!!!!B!!!!8J!!#4-X!`!!3B)!$)##!!#3!'3 !!$KJ!!"1J!!J4A3$!*!%0`!!!!K&EK!"!!!!2!!!!!,rrrrd!!!+%MS!!!"&D`! %!!!!23!!!qJ!!!#%!!!+%R`)!UDr)IrNN!!"!!L8)IqJ1m-!!)0#!!")!!!"B!! !!$XM!!#)'J!!+!!!!%##!"#!BJ!!Xb-!!%J!!"5!BJ!!U'-!!%J!!!&J!!!!2'" (9ML!+!!iBlG*5!!!!@!!!!"mI"Yj3B)!&$Km!!")!!!"B!!!!%J!!!JiB!!!1f- !!#`E!!4"J!!BJ(`!!)!$!!#3!"i!!#J!!!"!JJ!32'"846KM@&53!(i!!#`E!!K "J!!BJ(`!!)!$!!53!"i!"#J!!!"!JJ!32'"08$KM8b#3!(i!"#`E!!P!J!!31!! !!CJH!!K)!!!3J(`!!)J$!!LB(J!),"X!$N#!!"3mB$!a1'-`-T!!IJ!35!!!%)" m!!#!!`!+N!!H!"!X'`!+3)!!3$J!!!#B(J!*1!!!!*JH!!Si!!!!Q"i!#cJ!!!# B(J!-1!!!!*JH!!di!!!!Q"i!$MJ!!!#B(J!25!!"5)"m!!#)!`!*9!-'-$J!!!" mB`"3-!2rrh`!'4#B(J!*J(`!!)J$!!P8!`Cb1!!!!(aM!&!`!rrrI!!C%*JH!!S iJ!!!J"i!%$aJ-$%iBc8`I!!B3%'!!#b!(J!32'!`-6KM1$"m!"K!3B%!')"m!!# )!`!*9!!(18'#!!JiJ!!"Q*i!#cL!!!#!(J!32'!`-6KM1$&m!"K!3B!!')"m!!# )!`!*9!!(18'#!!JiJ!!"Q*i!$cL!!!#!(J!32'!`-6KM0c4m!"K!3B!!')"m!!# )!`!*9!!(Hd'#!!JiJ!!"Q*i!$$L!!!#!(J!32'!`-6KM0c4m!"K!3B!!')"m!!# )!`!*9!!([8'#!!JiJ!!"Q*i!$6L!!!#!(J!32'!`-6KM0c4m!"K!3B!!')"m!!# )!`!*9!!(rd'#!!JiJ!!"Q*i!$S!H!"!mB$!a1'-b-(`!'%""J!!-,"X!%%#!!"! i!!!!X"i!&%J!!"#!I!!!U!-!$V!H!"5S(J!8,!!!!%##!"!i!!!!N!!H!"C)!!# NU"i!&"aJ!!a)!!!"B!!!!*!!IJ!@+!-!!%'#!)JiI!!!5!!!!@!!!!#!IJ!@J*` !!$L%!"#S(J!8(+!!$%J!!!&J!!!!1k!!!%J!!%`li!!!5!!!1)"q!"BF(3!-I!$ k&(`$!+jm!!Gd,!!!)%##!"JiJ!!!J(i!&K`G!!am!2S8I)-"VM[r!!%X(`!%3B$ rb$Zp!!'S(J!8I"d!!%'!rl#)'J!!+!!!!%##!#Ji!!!"Q"S!!)JH!!NS!!!!3)) !)$KL!!")!!!"B!!!!%J!!"!iH3!!5!!!!@!!!!!iI!!!5!!!!@!!!!!iIJ!!J!% !D$JK!'"m#!1QZb(rj%k!!#"&G!-!N!3k!!!!&%9e!*!&2J!!!"K&G!-!N!3l!!! !-%9d!`#3"$X!!!!m4A8!N!8r!!!!4%9e!*!&3!!!!&K&G3#3"8%!!!"X4A8!N!9 #!!!#m%9e!*!&3`!!!`K&G3#3"83!!!-N4A-3!*!%2!!!!kK&G3#3"88!!!1X4A8 !N!8r!!!$[%9e!*!&4J!!!mK&EJ`%!!!!6`!!!!b!!*!,J!!$k$J!!!"&G`#3"6d !N!4&D`!%!!!!8!!!!A`!!!(m!!!4eR`)!UD6iIrmNm(rq*1Krr56JIr`N!!"!!L 8)IqJ1m-!!$ZN!!#!BJ!!J!-!!#J!!!""JJ!J1(d!!)##!!#"K!!!5!!!!@!!!!" 8B!Br3))"%+Kp!!#!R3!#1,d!"MM"!%")!!!"B!!!!(aJ"c9!JJ$`1(d!"ML!!#j )!!!"B!!!!(am'hP"JJ#N1"d!"RaJi&#)(3!'I!-!8#`!!!4"J3#-1'%!1$LF!!% i(3!'I+$J8)JG!!CmT3"35!!!!@!!!!!li!!!5!!!@)"q!"BF(`!-I'-#&$L"!$J iS!!%5!!!!@!!!!!X!`!!3))!-)#H!"BFI`!-1!-!"(`%!#k3!!%!3)#H!"BFI`! -1!-!#(`%!#k3!!%!4%J!!$!lr`!"U"i!&(`I!!""J2qNJ"i!!*!!!3"!J"i!"*! !!3"%S!%!5&3!"Lb`!3")U(d!!)#G!!)i[3!'1-%!3%J!!!&J!!!!J!%!D$JK!'" m#!1QJq(rr)2"rrL$SIrdJi(rm%k!!#"&G!-!N!3K!!!!*%9d!`#3"#%!!!!i4A8 !N!94!!!!3%9e!*!&8J!!!'"&G3#3"9-!!!"i4A8!N!98!!!!Z%9e!*!&93!!!0a &G3#3"9B!!!&84@i-"!!!!'N!!!!-J!#3#i!!!A`J!!!!4AF!N!93!*!%4@X!"!! !!'S!!!"B!!!#[!!!&6Gm#!+QN!!"!!L8)Ir!N!"K!&K)!!!"B!!!!)#$!!#!BJ! !1!-!bR`%!%""JJ!8J')!!$KM!-T)!!!"B!!!!$J!!!'!B3"BQ!-!$)!"!%Ji)3" !I!J$TNk!!#"&G3#3"@X!!!!34A3$!*!%E!!!!"a&G!-!N!4X!!!!,%9e!*!&E3! !!$4&EJ`%!!!!EJ!!!!b!!*!,J!!!@!#3"%9h!*!&DJ#3"%9U!!3!!!"[!!!!"!! !![i!!"D96S!!)%9V!!3!!!"`!!!!3!!!!a)!!"JcI!J#TT2Krrb3!!%!#*3Krm! li`!!L!-"!#J!!!""JJ!31!!!!*JI!3")!!!"J!%!5$JK!%"m#!1QJq(rr%k!!#" &G3#3"@m!!!!S4@i-"!!!!(%!!!!-J!#3#i!!!%!)!!!!4AF!N!9`!*!%4@X!"!! !!()!!!!)!!!$6!!!'2diB!"!6S!!)%9V!!3!!!"c!!!!k!!!!f!!!"NVI!J#TT2 Krrb6`IriNk(rp*!!!3!)P#(rX*!!B3"SN!#"!'b3!+%!F)"L!!")!!!"J'%!D%J !!!&J!!!!I(iEH8'#!(!iIJ!!J)%!E)#K!(#"RJ!!JB`!$%J!!!&J!!!!I(mEH8' #!%b!BJ!!1*m!!$LJ!!")!!!"B!!!!$ZM!!!X(Irr3B)!$$Kp!!")!!"%,"m!!%' #!"`iI`!!1)!!!B'I!!+"M!"J5!!!!@!!!!#!BJ!!J!-!!#`!!!"!JJ!31'!!$%J !!!&)!!!)1'$rri!"!&Ji)3"3I!J$TS2Krrb$`IriJk(rp%k!!#"&G!-!N!3@!!! !*%9e!*!&F!!!!#K&G3#3"A3!!!!`4A8!N!94!!!!9%9d!`#3""B!!!"N4A8!N!9 e!!!!F%9e!*!&83!!!+4&G!-!N!3h!!!!V%9e!*!&0J!!!-"&EJ`%!!!!I3!!!!b !!*!,J!!!k"J!!!"&G`#3"A-!N!4&D`!%!!!!IJ!!!83!!!33!!!DNA`)!UD6iIr mNm(rq*1Krr53!!%!#*3Krl#3!'%!D*!!J3"XN!#K!(!laJ!!Jq)!!$Kr!!")!!! "J'%!D%J!!!&J!!!!I(dEH8'#!-3iI3!!J)%!E)#K!(!i`3!iJCd!!)'-!"")!!! "B!!!!#`$!!"!JJ#F1(m!!)#"!$JiS!!!5!!!!@!!!!#3!(i!!#`$rrp"JJ!m1(m !!)#"!$`iS!!!5!!!!@!!!!#3!(i!"#`$rrp"JJ!-1'!!!%J!!(3iI`!!J*i!!%J !!!&J!!!!J'%!1#`$!!""JJ!B1)!!!B'$!!+"M!"J5!!!!@!!!!#!B3!m,!-!!%' #!"JiJ!!"JB-!!S'-!'")!!!"B!!!!)"L!!#!!`!!,!!!!%##!"!iB!!-5!!!!8J !!!JiB2rrJ!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrd6S!!)%9d!`#3""B!!!!S4A8 !N!9`!!!!-%9e!*!&G!!!!$K&G3#3"9%!!!"J4A8!N!9e!!!!I%9e!*!&G3!!!*a &G3#3"Am!!!$!4A8!N!94!!!!i%9e!*!&83!!!3"&G!-!N!3h!!!"#%9e!*!&0J! !!4a&EJ`%!!!!J3!!!!b!!*!,J!!"4"J!!!"&G`#3"Ai!N!4&D`!%!!!!JJ!!!(J !!!6B!!!FVh`)!UD6iIrmN!!"!!L8)Ir!1q-!!%J!!!&J!!!!1'!!!6L!!!%iS!! !10m!!%J!!!%X!`!!3B)!$$KJrrp)!!!SJ(m!!$L!!!&)!!!"B!!!!)"r!!3iJ!! !5!!!!@!!!!!iB!!!J!%!5$JK!%"m#!1QJq(rr%k!!#"&G3#3"B-!!!!84A8!N!9 q!!!!,%9e!*!&K!!!!%K&G3#3"B3!!!"B4@i-"!!!!)8!!!!-J!#3#i!!!(J)!!! !4AF!N!@#!*!%4@X!"!!!!)B!!!#)!!!&)J!!(90m#!+QNq(rr*!!!3!)P#(r`*! !B3"BN!#"!&b3!+%!B*!!`3"NN!$K!'L4!3"XN5%!F)"K!&K)!!!"B!!!!(ar'hP "JJ!d1(m!!)#"!&b!S3"JJ-%!C)$K!'L"!3"XJ5%!F)'I!!#"M!!85!!!!@!!!!" )!!!)1'$rri!"!%Ji)3"!I!J$TS2Krra1J!!J4A8!N!9d!!!!-%9e!*!&83!!!'4 &EJ`%!!!!LJ!!!!b!!*!,J!!!L!J!!!"&G`#3"BB!N!4&D`!%!!!!L`!!!'`!!!@ q!!!H9(`)!UD6iIrmN!!"!!L8)Ir!N!"K!&L3!)%!A*!!S3"JJ')!!)#"!&K)!!! "B!!!!(ar'hP"JJ!N1(m!!)#"!&b!S3"JJCm!!S'-!!K)!!!"B!!!!%J!!!JiB2r rJ!%!5$JK!%"m#!1QJq(rr%k!!#"&G!-!N!3@!!!!(%9e!*!&M!!!!#4&G3#3"9% !!!")4@i-"!!!!*)!!!!-J!#3#i!!!'`)!!!!4AF!N!@,!*!%4@X!"!!!!*-!!!" X!!!'%J!!(ZPm#!+QNq(rr*!!!3!)P#(r`*!!B3"BN!#"!&b3!+%!B)"L!!#!J3" B5!!!!@!!!!"mIaYj3B)!*$Kr!!#!J3"FJ+%!B)'I!!+"M!!-5!!!!@!!!!")!!! )1'$rri!"!%Ji)3"!I!J$TS2Krra1J!!J4A3$!*!%&J!!!"a&G3#3"B`!!!!N4A8 !N!94!!!!5%9Z$!3!!!#@!!!!$)!!N!Z!!!"X#!!!!%9h!*!&N`#3"%9V!!3!!!# A!!!!C!!!"QB!!"q%I!J#TT2Krrb3!!%!#*3Krm#3!'%!@*!!J3"FJ')!!)#"!&K )!!!"B!!!!(ar'hP"JJ!J1(m!!)#"!&b"R`!#JB`!%%J!!!&J!!!!5!!!#$KJrrq !!3")1#%!3(`)!kD$iIrm6S!!)%9d!`#3""B!!!!B4A8!N!@-!!!!)%9e!*!&83! !!%"&EJ`%!!!!Q3!!!!b!!*!,J!!!C!J!!!"&G`#3"CF!N!4&D`!%!!!!QJ!!!-! !!!DX!!!Ikh`)!UD6iIrmNm(rq*!!!3!)P#(r`$[$!!#3!)%!A*!!S3"JJ')!!$L H!!")!!!"B!!!!(ar'hP"JJ"`1(m!!)#"!&b!S3"JJCm!!S'-!"4)!!!"B!!!!(a r'hP"JJ"-J')!!$LI!!!iS!!!5!!!!@!!!!!l``!!,"lrrd'#!!`iIJ!!5!!!+#` I!!""JJ!F1(m!!$L!!!'"R`!#JB`!B%J!!!&J!!!!1'$rri!"!%Ji)3"!I!J$TS2 Krrb$`Iri6S!!)%9d!`#3""B!!!!J4A8!N!@-!!!!+%9e!*!&83!!!%a&G!-!N!3 @!!!!A%9e!*!&G3!!!'K&G3#3"9%!!!#F4@i-"!!!!*X!!!!-J!#3#i!!!-!3!!! !4AF!N!@D!*!%4@X!"!!!!*`!!!!i!!!(+!!!)2Ym#!+QN!!"!!L8)Ir!N!"K!&J i!2rrN!!#!!#!BJ!!J)%!@%J!!!&J!!!!J!%!5$JK!%"m#!1Q6S!!)%9c%!#3"#8 !!!!84A3$!*!%&J!!!"K&G3#3"Am!!!!J4@i-"!!!!*d!!!!-J!#3#i!!!$J!N!4 &G`#3"C`!N!4&D`!%!!!!RJ!!!33!!!G5!!!MDR`)!UD6iIrmNm(rq*1Krr56JIr `N!!"!!L8)Iq`N!"K!'L3!)%!E*!!S3"`N!$"!(5$iJ!!Jm)!!)1L!!#)(J!)I!! (G8'#!&4)!!!"B!!!!#`$!!"!JJ!`J"m!!#J!!!""JJ!`1'!!#BLH!!KmK!GdJCm !!%J!!!&J!!!!,!-!!%'#!"!iB!!%5!!!!8J!!!`i!!!!N!!G!!!i!!!!N!!"!$L !BJ!!J)%!D%J!!!&J!!!!I(`EH8'#!$!iI!!!J)%!E)#K!(#!`3"d11!!!$N"!$L "R!!#JB`!)%J!!!&J!!!!5!!!#$KJrrq!!3"B1#%!8(`)!kD$iIrmJm(rq)1Krr5 $JIr`6S!!)%9d!`#3""d!!!!X4A3$!*!%!J!!!$"&G!-!N!3h!!!!0%9e!*!&R`! !!%4&G3#3"9%!!!"`4A8!N!8f!!!!K%9d!`#3""B!!!#F4A8!N!@-!!!!T%9e!*! &83!!!04&EJ`%!!!!S`!!!!b!!*!,J!!""#!!!!"&G`#3"Ci!N!4&D`!%!!!!T!! !!33!!!I5!!!N2R`)!UD6iIrmNm(rq*1Krr56JIr`N!!"!!L8)Iq`N!"K!'L3!)% !E*!!S3"`N!$"!(53!1%!H*%"!(b$iJ!!Jm)!!)1L!!#)(J!)I!!(G8'#!&4)!!! "B!!!!#`$!!"!JJ!`J"m!!#J!!!""JJ!`1'!!#BLH!!KmK!GdJCm!!%J!!!&J!!! !,!-!!%'#!"!iB!!%5!!!!8J!!!`i!!!!N!!G!!#!BJ!!J)%!D%J!!!&J!!!!I(` EH8'#!$!iI!!!J)%!E)#K!(#!`3"dJ1%!H)%"!(b"R!!#JB`!)%J!!!&J!!!!5!! !#$KJrrq!!3"B1#%!8(`)!kD$iIrmJm(rq)1Krr5$JIr`6S!!)%9d!`#3""d!!!! d4A3$!*!%!J!!!$K&G!-!N!3h!!!!2%9e!*!&R`!!!%a&G3#3"9%!!!"i4A8!N!8 f!!!!M%9d!`#3""B!!!#F4A8!N!@-!!!!T%9e!*!&83!!!04&EJ`%!!!!TJ!!!!b !!*!,J!!""#!!!!"&G`#3"D3!N!4&D`!%!!!!T`!!!83!!!KB!!!P*A`)!UDr!Ir JN!!"!!L8)Iq3!*!!B3#)1i3!!*!!S3#3!)2L!!#$`J!!Jk)!!)JH!!Km!!Ge3B) !9%J!!!&J!!!!,!-!!%##!$#!(`!!+!!!!%'#!$!iB!!*L*i!#(b%"h5"R`!!5!! !!@!!!!!X!`!!3B)!%$KJ!!4)!!!"5!!!$$J!!!#3!"d!!)"L!!#!J3#)5!!!!@! !!!"mHaYj3B)!P$KK!$L!R!!)J,`!$%J!!!&J!!!!J!%!2#J!!!""JJ"31(X!!)# "!$b!S3"!J-%!N!#!r!!!14`!")'E!!+"M!!J5!!!!@!!!!!l!`!!N`%!3$YB!!! iB3!i1)$rrdJ!!!&J!!!!1(S!!%J!!#`iB!!-5!!!!6XM!!!iB3!i1)$rrdJ!!!& J!!!!1(N!!%J!!!JiB2rrJ!%!H$JK!("m#!1QZ`(ri%k!!#"&G!-!N!3G!!!!(%9 d!`#3"!)!!!!J4A3$!*!%0`!!!#4&G3#3"Cm!!!!d4A8!N!94!!!!B%9e!*!&0J! !!(4&G!-!N!3@!!!!K%9e!*!&M!!!!)a&G3#3"DJ!!!#S4A8!N!94!!!!h%9e!*! &U3!!!2K&G3#3"6B!!!%-4A8!N!@T!!!"(%9Z$3)!!!#r!!!!')!!N!G!!!$J!1! !%!%3!4!!%!!!JJ!!1!#3"%9f#J`!!!$!!!!!&%9Z$!3!!!$"!!!!$)!!N!d"4!# 3"%9h!*!&T`#3"%9h$3#3",m!!!!)4@S!"!!!!-)!!!#!!!!)iJ!!*Xjm#!+QNq( rr*!!!3!)P#(r`$[M!!!X(rrr3))!8)"L!!#!!`!!,!!!#d'#!%"!J!!3,!!!"%' #!$4)!!!8,!!!*N#!!!`X!!!N3)!!))"L!!#)!`!1+!!!!%'#!"!iB!!05!!!!@! !!!!iI`!!J!%!5$JK!%"m#!1QJq(rr%k!!#"&G!-!N!3h!!!!(%9d!`#3"!)!!!" -4A8!N!A$!!!!B%9Z$!3!!!$&!!!!$)!!N!Z!!!#!#!!!!%9h!*!&`J#3"%9V!!3 !!!$'!!!"2!!!#53!!#I0I!J#TVmKrq53!!%!#*3Krj!!N!"K!)L3!)%!M*!!S3# 3!)2L!!#$`J!!Jk)!!)JH!!Km!!Ge3B)!9%J!!!&J!!!!,!-!!%##!$#!(`!!+!! !!%'#!$!iB!!*L*i!#(b%"h5"R`!!5!!!!@!!!!!X!`!!3B)!%$KJ!!4)!!!"5!! !$$J!!!#3!"d!!)"L!!#!J3#)5!!!!@!!!!"mI"Yj3B)!M$KK!$L!J3#-J+%!N!" )!!!"B!!!!)!"!$`S!!!!3B)!5$Km!!#!J3!mJ+%!3)'F!!+"M!!F5!!!!@!!!!! l)`!!Nb%!3%J!!!%lB`!!1'%!1$L!rrp)!!!"B!!!!$Kl!!")!!!X1'!!$%J!!!% l3`!!1'%!1$L!rrp)!!!"B!!!!$Kk!!")!!!)1'$rri!"!(Ji)3"`I!J$TVXKrq4 1J!!J4A3$!*!%(3!!!"a&G!-!N!3#!!!!)%9d!`#3"$F!!!!N4A8!N!@I!!!!0%9 e!*!&83!!!'"&G3#3"6B!!!"d4A3$!*!%&J!!!)4&G3#3"B`!!!#-4A8!N!A(!!! !U%9e!*!&83!!!0"&G3#3"F)!!!$J4A8!N!A)!!!!m%9e!*!&0J!!!34&G3#3"FJ !!!%84@i0!J!!!-`!!!!BJ!#3"cJ!!03!j!!3!3J"#!!3!!##!!!i!*!%4AB+$!! !!-d!!!!84@i-"!!!!-i!!!!-J!#3$3%m!*!%4AF!N!A'!*!%4AF0!*!%c!!!!!K &D`!%!!!!c`!!!3!!!!QZ!!!T#(`)!UD6iIrmNm(rq*1Krr56JIr`N!!"!!L8)Iq `N!"K!'L3!)%!E*!!S3"`N!$"!(5$iJ!!Jm)!!)1L!!#)(J!)I!!(G8'#!&4)!!! "B!!!!#`$!!"!JJ!`J"m!!#J!!!""JJ!`1'!!#BLH!!KmK!GdJCm!!%J!!!&J!!! !,!-!!%'#!"!iB!!%5!!!!8J!!!`i!!!!N!!G!!#!BJ!!J)%!D%J!!!&J!!!!I(` EH8'#!$3iI!!!J)%!E)#K!(#!`3"d11!!!$N!!!#"R!!#JB`!*%J!!!&J!!!!5!! !!8J!!!JiB2rrJ!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrdJi(rm%k!!#"&G!-!N!3 G!!!!,%9d!`#3"!)!!!!`4A3$!*!%0`!!!$4&G3#3"Cm!!!"%4A8!N!94!!!!F%9 e!*!&0J!!!)4&G!-!N!3@!!!!P%9e!*!&M!!!!*a&G3#3"9%!!!$-4A8!N!A#!!! !e%9Z$!3!!!$3!!!!$)!!N!Z!!!%!)!!!!%9h!*!&c`#3"%9V!!3!!!$4!!!"#!! !#KJ!!#RHI!J#TT2Krrb6`IriNk(rp*1"rr#3!!%!#*3Krl#3!'%!D*!!J3"XN!# K!(#3!-%!G*!!i3"iN3%!I)2L!!#$`J!!Jk)!!)JH!!Km!!Ge3B)!9%J!!!&J!!! !,!-!!%##!$#!(`!!+!!!!%'#!$!iB!!*L*i!#(b%"h5"R`!!5!!!!@!!!!!X!`! !3B)!%$KJ!!4)!!!"5!!!$$J!!!#3!"d!!)"L!!#!J3"S5!!!!@!!!!"mI"Yj3B) !0$Km!!#!J3"XJ+%!F)$"!(5!i3"iJ3%!I)'F!!+"M!!N5!!!!@!!!!")!!!"5!! !#$KJrrq!!3"B1#%!8(`)!kD$iIrmJm(rq)1Krr5$JIr`6S!!)%9d!`#3""d!!!! d4A3$!*!%!J!!!$K&G!-!N!3h!!!!2%9e!*!&R`!!!%a&G3#3"9%!!!"i4A8!N!8 f!!!!M%9d!`#3""B!!!#F4A8!N!@-!!!!T%9e!*!&83!!!04&G3#3"F)!!!$F4@i -"!!!!03!!!!-J!#3#i!!!3JJ!!!!4AF!N!A4!*!%4@X!"!!!!08!!!&)!!!+RJ! !+ZKm#!+Q[`(ri*!!!3!)P#(rN!#3!'%!L$Z%!!#3!+%!N!#$iJ!!Jm)!!)1L!!# )(J!)I!!(G8'#!&4)!!!"B!!!!#`$!!"!JJ!`J"m!!#J!!!""JJ!`1'!!#BLH!!K mK!GdJCm!!%J!!!&J!!!!,!-!!%'#!"!iB!!%5!!!!8J!!!`i!!!!N!!G!!#!BJ! !J)%!L%J!!!&J!!!!I(XEH8'#!*JiB3!iJ*`!#)#m!!a)!!!"B!!!!)!"!$`S!!! !3B)!9$Kl!!#!J3!mJ+%!3)$"!*!!J2`!!)%F!!5"Q`!#JB`!*%J!!!&J!!!!1`- !!*-"!%")!!!"1d-!!$KK!$JiJ2rr5!!!!@!!!!!iHJ!!5!!!,$KJ!!a)!!!"1b- !!$KK!$JiJ2rr5!!!!@!!!!!iH3!!5!!!#$KJrrq!!3"i1#%!F(`)!kDl!IrJ6S! !)%9d!`#3""d!!!!F4A3$!*!%!J!!!#"&G!-!N!3h!!!!*%9e!*!&R`!!!$4&G3# 3"9%!!!"J4A8!N!8f!!!!G%9d!`#3""B!!!#%4A8!N!@-!!!!M%9e!*!&a`!!!+K &G3#3"9%!!!$F4A8!N!A#!!!!l%9e!*!&b!!!!2a&G3#3"6B!!!%34A8!N!A)!!! ")%9Z$3)!!!$@!!!!')!!N!G!!!$J!2!!%!%8!43!%!!!JJ!!1!#3"%9f#J`!!!$ 0!!!!&%9Z$!3!!!$A!!!!$)!!N!d"5!#3"%9h!*!&e3#3"%9h$3#3"0B!!!!)4@X !"!!!!0J!!!%)!!!,+!!!,-"m#!+Q[f(rl*!!!3!)P#(rS$YM!!!i!!!!Q!%!1MJ !!!#B!3!j1!!!!*J"!$Jl`!!!1k!!!)"L!!!iQ`!!5!!!!@!!!!!S!`!!3))!%$K J!!P)!!!"5!!!S)"L!!!iQ`!!5!!!!@!!!!!lJ`!!1r`!!+JF!!a8!!Ir3B)!#$[ "!$US(`!-9!!([8'#!!JlS3!j1(`!!$LH!!!i[3!!1-!!!)'F!!+"M!"B5!!!!@! !!!!X!`!!3B)!2)J"!$NS!!!!3B)!&)"r!!BiJ!!#5!!!!@!!!!#)!3!k+!!!!%' #!"5!I`!'1)!!!8J!!!&J!!!!1'!!!)!"!'Ji)3"JI!J$TVYKrqa1J!!J4A3$!*! %&J!!!$4&G3#3"B`!!!!m4A8!N!8f!!!!8%9d!`#3""B!!!"B4A8!N!@-!!!!B%9 e!*!&83!!!+K&G3#3"GN!!!$-4A8!N!AC!!!!k%9Z$!3!!!$j!!!!$)!!N!Z!!!% )+!!!!%9h!*!&f!#3"%9V!!3!!!$k!!!'#!!!$!`!!#pVI!J#TVi"rm#3!!%!#*3 Krf!kJ`!!1b3!!$Y&!!!lCJ!!1JF!!),L!!##SJ!!JX)!!$TJ!!!iB3"31)!!!$L J!!K)!!!"B!!!!$KK!%JiJ!!!1+!!#%J!!!&J!!!!1'%!3$L!!!!iS!!)5!!!!@! !!!!S%!!!3B)!))"`!!3i!%%DI'-$eS!3!!!F!!!mIN-#&%J!!!`q3(Ff1P+8!%J !!!&J!!!!1L-!!$[J!!")!!#B+"N!!%'#!#!iB!!"9q!'rRaJ!$"AiqMkI(NB,R` !'$P!JJ"-+"S!!%'#!#!iB!!"9q!'rRaJ!$"AiqMkI(SB,R`!'$P!JJ!S+"X!!%' #!%3iB!!"9q!'rRaJ!$"AiqMkI(XB,R`!'$P"JJ!S1(8!!$LI!!")!!!"B!!!!#J $!!"!JJ!31'!!#8J!!!&)!!5i1rm!!A`IS!""J2pS1q!!!%J!!23iG3!!1*m!!%J !!!&J!!!!I(JEH8'#!0Ji!!!!+"N!!%'#!#3iB!!"9q3'rRaN)$"AiqMkI(NB,Rb $'$P"JJ!)1!!!!CJ"!$ii!!!!+"S!!%'#!#3iB!!"9q3'rRaN)$"AiqMkI(SB,Rb $'$P"JJ!)1!!!!CJ"!$di!!!!+"X!!%'#!#3iB!!"9q3'rRaN)$"AiqMkI(XB,Rb $'$P"JJ!)1!!!!CJ"!$b)!3!q+!!!!%##!"b)!3!p+!!!!%##!"#)!3!m+!!!!%' #!#3iH!!!L)%!2SLK!$f)`3!mJCJ!!S'-!&4)!!!"B!!!!$[r!!&m(k!!3B$r$$[ J!!")!!')1(8!!$LI!!")!!!"B!!!!(ai'hP"JJ&X1!!!!*J"!$ii!!!!Q!%!26J !!!#B!3!m+"N!!%'#!#Ji!!!"9q-'rR`$'$"Ai1MkI"N!,RaJ!$P"JJ!-1m%!2NJ !!!Jl`!!!+"S!!%'#!#Ji!!!"9q-'rR`$'$"Ai1MkI"S!,RaJ!$P"JJ!-1k%!28J !!!JlS!!!+"X!!%'#!#Ji!!!"9q-'rR`$'$"Ai1MkI"X!,RaJ!$P"JJ!-1i%!2%J !!!JlJ!!!+"i!!%##!"3S(3!!3))!$#JF!!""JJ#X1(J!!$LH!!!i[3!!10`!!)' B!!+"M!"B5!!!!@!!!!"qFaS8L!%!2LJ!!!""JJ!N9q$SqMKK!&"m``!Z1)!!!9I P"[jmK#J`I-3MH(b$!5k)!3!p+!!!!%'#!#4Ai1Mk1'%!5(c$!#iiJ!!"9q8'rRb %+$"ma#0iI)-",SJ"!$`S!!!!3B)!*&IJk2SiB3"!I--!,ML!!!&Aj3EqI)3S-(c %)hKmJ`%Z1rm!!A`IS!""J2ji,"-!!%##!,#!&J!!N!!"!$Ji!!!!N!!@!!")!!! "B!!!!#`$!!"!JJ!XJ"F!!#J!!!""JJ!X1'!!!6L5!!#"P`!!5!!!!@!!!!!X!`! !3B)!%$KJ!!4)!!!"5!!!$$J!!!#3!"B!!)!@!!!X!!!!3B)!)$TJrrq!&J!!,!! !!%##!$L!!3!iN!!@!!")!!!XJ"B!!#`!!!"!JJ!-J!%!1*!!&J!!5!!!!@!!!!" m%4K3I!#3!%""J2fm1q!!!%J!!23iG3!!1*m!!%J!!!&J!!!!I(JEH8'#!0Ji!!! !+"N!!%'#!#3iJ!!"9q-'rRb%'$"AiqMkI(NB,Rb$'$P"JJ!)1!!!!CJ"!$ii!!! !+"S!!%'#!#3iJ!!"9q-'rRb%'$"AiqMkI(SB,Rb$'$P"JJ!)1!!!!CJ"!$di!!! !+"X!!%'#!#3iJ!!"9q-'rRb%'$"AiqMkI(XB,Rb$'$P"JJ!)1!!!!CJ"!$b)!3! q+!!!!%##!"b)!3!p+!!!!%##!"#)!3!m+!!!!%'#!#3iH!!!L)%!2SLK!$f)`3! mJCJ!!S'-!&a)!!!"B!!!!$[r!!&m(k!!3B$r$#`6!!"!J!!31'!!"%J!!!&)!!" 3+"N!!%'#!"5!B3"3J!%!9*!!H3!!N!!C!!3S'J!!3B)!&)"K!%L!!3"-N!"k!!# 3!"S!"#JE!!""JJ!8J'%!3)!"!%53!(X!!*!!'`!%1(-!!)!"!+Ji)3#JI!J$TVS "rm"1J!!J4A3$!*!%(3!!!#4&G!-!N!3@!!!!+%9d!`#3"$F!!!!X4A8!N!Al!!! !3%9e!*!&q`!!!&4&G3#3"IX!!!"S4A8!N!Am!!!!R%9e!*!&M!!!!54&G3#3"6B !!!%i4A8!N!@-!!!"A%9e!*!&83!!!MK&G3#3"B`!!!*F4A8!N!94!!!$4%9e!*! &R`!!!rK&G3#3"9%!!!3J4A8!N!8f!!!%0%9e!*!&r!!!")"&G3#3"B`!!!5N4A8 !N!94!!!&J%9e!*!&0J!!"D"&EJd#!!!"%J!!!"+!!*!(J!!$r!3i!!S!!))!!$J !N!C&GJS-!!!"%`!!!!j&EJ`%!!!"&!!!!!b!!*!0"JJ!N!4&G`#3"IS!N!4&G`d !!!!"%J!!!!K&D`#%!!!"&3!!!'L!!*!(I!J#TT2Krrb3!!%!#*3Krm"mIaYjX)% !AN'#!$L!BJ!!J!-!!#`!!!"!JJ!3J"m!!)"L!!#3!!-!!+J"!&iX!!!!3)%!%$K r!!")!!!"B!!!!$Kr!!#!!3")1#%!3(`)!kD$iIrm6S!!)%9d!`#3"$F!!!!F4A3 $!*!%0`!!!$"&G3#3"!%@!!!!5%9Z$!3!!!%A!!!!$)!!N!Z!!!"S#!!!!%9h!*! %!48!N!4&D`!%!!!"'!!!!'`!!!l3!!!hYA`)!UD6iIrmN!!"!!L8)Ir!N!"K!&L 3!)%!A*!!S3"JJ')!!)#"!&K)!!!"B!!!!(ar'hP"JJ!N1(m!!)#"!&b!S3"JJCm !!S'-!#K)!!!"B!!!!%J!!!JiB2rrJ!%!5$JK!%"m#!1QJq(rr%k!!#"&G!-!N!3 @!!!!(%9e!*!&M!!!!#4&G3#3"9%!!!")4@i-"!!!!4N!!!!-J!#3#i!!!'`)!!! !4AF!N!3"'!#3"%9V!!3!!!%D!!!!E!!!$b3!!$K+I!J#TT2Krrb3!!%!#*3Krm# 3!'%!@*!!J3"FN!#K!'#!BJ!!J)%!@%J!!!&J!!!!I(mEH8'#!#3iI`!!J)%!A)# K!'#"R`!#JB`!,%J!!!&J!!!!5!!!#$KJrrq!!3")1#%!3(`)!kD$iIrm6S!!)%9 d!`#3""B!!!!F4A8!N!@-!!!!*%9e!*!&83!!!%K&EJ`%!!!"'`!!!!b!!*!,J!! !E!J!!!"&G`#3"!%D!*!%4@X!"!!!!)3!!!"N!!!2H!!!10pm#!+QNq(rr*!!!3! )P#(r`*!!B3"BN!#"!&b!BJ!!J)%!@%J!!!&J!!!!I(mEH8'#!#!iI`!!J)%!A)' I!!+"M!"35!!!!@!!!!")!!!)1'$rri!"!%Ji)3"!I!J$TS2Krra1J!!J4A3$!*! %&J!!!"K&G3#3"B`!!!!J4A8!N!94!!!!3%9Z$!3!!!%G!!!!$)!!N!Z!!!"N#!! !!%9h!*!&K!#3"%9V!!3!!!%H!!!!A!!!$li!!$P*I!J#TT2Krrb3!!%!#*3Krm# 3!'%!@)"L!!#!J3"B5!!!!@!!!!"mIaYj3B)!()"L!!!iR`!!1+!!!%J!!!&J!!! !5!!!#$KJrrq!!3")1#%!3(`)!kD$iIrm6S!!)%9d!`#3""B!!!!84A8!N!@-!!! !(%9d!`#3""B!!!!X4A8!N!9e!!!!1%9Z$!3!!!%I!!!!$)!!N!Z!!!"F#!!!!%9 h!*!%!4i!N!4&D`!%!!!")!!!!*`!!!rf!!!jTR`)!UD6iIrmNm(rq*1Krr53!!% !#*3Krl#3!'%!D$ZN!!#$iJ!!1(m!!)#"!'K)!!!"B!!!!(aq'hP!JJ!-1'$rrdJ !!%!iI`!!1*d!!%J!!!&J!!!!+!-!!%'#!"3iI`!!1*d!!%J!!!&J!!!!1(m!!$L H!!!i[3!!5!!!!@!!!!#!!3"B1#%!8(`)!kD$iIrmJm(rq)1Krr41J!!J4A3$!*! %&J!!!#"&G3#3"B`!!!!X4A8!N!@-!!!!6%9e!*!&I`!!!'4&G3#3"A8!!!"i4@i -"!!!!5)!!!!-J!#3#i!!!*`B!!!!4AF!N!3")!#3"%9V!!3!!!%M!!!!E!!!%&` !!$U-I!J#TT2Krrb3!!%!#*3Krm#3!'%!@*!!J3"FN!#K!'#!BJ!!J)%!@%J!!!& J!!!!I(mEH8##!!`iB2rr5!!!)$Kr!!#!J3"FJ+%!B)'I!!+"M!!m5!!!!@!!!!# !!3")1#%!3(`)!kD$iIrm6S!!)%9d!`#3""B!!!!F4A8!N!@-!!!!*%9e!*!&83! !!&"&EJ`%!!!"*J!!!!b!!*!,J!!!E!J!!!"&G`#3"!%M!*!%4@X!"!!!!5F!!!" m!!!3`!!!1bGm#!+QNq(rr*!!!3!)P#(r`*!!B3"BN!#"!&b3!+%!B*!!`3"NN!$ K!'L!BJ!!J)%!@%J!!!&J!!!!I(mEH8'#!#`iI`!!J)%!A)#K!'#!`3"NJ1%!D)' I!!+"M!!`5!!!!@!!!!")!!!)1'$rri!"!%Ji)3"!I!J$TS2Krra1J!!J4A3$!*! %&J!!!#4&G3#3"B`!!!!X4A8!N!94!!!!@%9Z$!3!!!%X!!!!$)!!N!Z!!!"m#!! !!%9h!*!%!5F!N!4&D`!%!!!",3!!!(`!!"%`!!!lfR`)!UD6iIrmN!!"!!L8)Ir !N!"K!&L3!)%!A*!!S3"JN!$"!'53!1%!D)"L!!#!J3"B5!!!!@!!!!"mIaYj3B) !,$Kr!!#!J3"FJ+%!B)$"!'5!i3"SJCm!!S'-!$4)!!!"B!!!!%J!!!JiB2rrJ!% !5$JK!%"m#!1QJq(rr%k!!#"&G!-!N!3@!!!!*%9e!*!&M!!!!#a&G3#3"9%!!!" B4@i-"!!!!5i!!!!-J!#3#i!!!(`)!!!!4AF!N!3",3#3"%9V!!3!!!%[!!!!A!! !%D!!!$bD9'!'2L`!!!*"JJ!m3)!!&#`!!!""JJ!B3)!!)%k!!#!X!!!%6)!!)%J !!#L!SJ!!N!#&!!"1J!!JJ+)!!*!!K3!!6S!!))#L!!#3!)8!!%k!!##!SJ!!N!# &!!"1J!!J4A3$!*!%(3!!!#a&G!-!N!3I!!!!1%9d!`#3"#%!!!"%4A3$!*!%)J! !!&"&D`!%!!!"0`!!!'3!!"(i!!!phP4J"MiX!!!#3B)!2%#!!"3X!!!!3B)!'%# !!#")!!"!,!!!"%#!!$K)!!!SJ))!!)"N!!"1J!!JJ))!!)"N!!"1J!!JJ))!!)" N!!"1J!!JJ))!!)"N!!"1J!!J1'!!!%k!!#"&G!-!N!3G!!!!,%9d!`#3""m!!!! i4A3$!*!%)3!!!%4&G!-!N!3L!!!!8%9V!!3!!!%i!!!!C!!!%N)!!$mFNq(rr*! !BJ!!1!!!!,!#!!!li!!!5!!!1)##!!"ri!Fd9!!31R`%!#iS!!!!3B)!(+LL!!! iJ!!"Iq!(0(b!!$"mS!0iX!)!!$[r!!&ri!Fd,!!!%%'!rm3iB!!!Jq(rr%k!!#" &Fa!!N!3M!!!!"%9c%!#3"#3!!!!-4A-3!*!%)`!!!"K&Fa!!N!3N!!!!-%9c%!# 3"#3!!!"%4@X!"!!!!6X!!!!)!!!5NJ!!2p+!BJ!!6S!!)%9c%!#3"#-!N!4&D`# %!!!!G!!!!'3!!"+Q!!"!e(`)!UD6iIrmN!!"!!L8)Ir!I(mEH8'!!#!X(`!83)! !')"L!!"Ai"!kI!-!,LJ!!!"!JJ!81'!!&NJ!!!%iB!!!5!!!%)"L!!"Ai"!kI'- !,S!"!%Ji)3"!I!J$TS2Krra1J!!J4A3$!!!!!6`!!!!J4A8!N!8f!!!!1%9d!`! !!!%m!!!!4%9Z$!3!!!&"!!!!$)!!N!Z!!!"N#!!!!%9h!*!&G!#3"%9V!!3!!!& #!!!!1!!!%Z!!!%'8I!J#TT!!!3!)P#(r`)"L!!#)!`!!+!!!!%'#!"#!BJ!!5!! !!@!!!!#!!3")1#%!3(`)!kC1J!!J4A3$!*!%,J!!!!a&G!-!!!!"23!!!"a&G3# 3"!&$!!!!)%9Z$!3!!!&%!!!!$)!!N!Z!!!!i!*!%4AF!N!3"3J#3"%9V!!3!!!& &!!!!N!!!!"--!!""ih`)!UD6iIrmNm(rq*1Krr53!!%!#*3Krl!l``!!I*dMHB2 L!!#!!J!!N!!$!!""JJ!3J')!!&HJ%$Tr``%ZJ')!!)J$!!!S!!!!3B)!+)!I!!! S!!!!3))!()!I!!3S!!!!3))!%$Kr!!")!!!"B!!!!$Kq!!#!!3"B1#%!8(`)!kD $iIrmJm(rq)1Krr41J!!J4A3$!!!!!6d!!!!J4A3$!!!!!8B!!!!N4A3$!!!!!6` !!!!`4A3$!*!%,J!!!$a&G3#3"!&(!!!!D%9Z$!3!!!&)!!!!$)!!N!Z!!!#3!"J !!!"&G`#3"!&&!*!%4@X!"!!!!8N!!!"8!!!6A!!!3k0m#!+QNq(rr*!!!3!)P#( r`(ar'hQ`J3"H3B)!*)!#!!#3!"m!!+J"!&iX!!!!3)%!%$Kr!!")!!!"B!!!!$K r!!#!!3")1#%!3(`)!kD$iIrm6S!!)%9d!`!!!!&'!!!!(%9e!*!%!4B!!!!d4@i -"!!!!8S!!!!-J!#3#i!!!&3)!!!!4AF!N!3"53#3"%9V!!3!!!&,!!!!+!!!%hi !!%3%I!J#TT!!!3!)P#(r`$KJ!#e)!!!"1'!!!)!"!%Ji)3"!I!J$TNk!!#"&G3# 3"6B!!!!34@i-"!!!!8`!!!!-J!#3#i!!!#J!N!4&G`#3"!&,!*!%4@X!"!!!!8d !!!!N!!!6QJ!!4(0m#!+QN!!"!!L8)Ir!1'!!,8J!!!'!!3")1#%!3(`)!kC1J!! J4A8!N!8f!!!!%%9Z$!3!!!&1!!!!$)!!N!Z!!!!N!*!%4AF!N!3"63#3"%9V!!3 !!!&2!!!!*!!!%lB!!%60I!J#TT!!!3!)P#(r`$KJ!#e)!!!"J!%!5$JK!%"m#!1 Q6S!!)%9e!*!&0J!!!""&EJ`%!!!"8!!!!!b!!*!,J!!!*!#3"%9h!*!%!8m!N!4 &D`!%!!!"83!!!!3!!"25!!"&0%k!!#"&DJ!%!!!"8J!!!#J!!"2Q!!"&S(`)!UD 3!!%!#*3Krm#!BJ!!5!!!!@!!!!#!!3")1#%!3(`)!kC1J!!J4A3$!!!!!9-!!!! -4A8!N!3"9!!!!""&EJ`%!!!"93!!!!b!!*!,J!!!+!#3"%9h!*!%!9)!N!4&D`! %!!!"9J!!!%!!!"3+!!"&cR`)!UD6iIrmN!!"!!L8)Ir!1q-!!)"L!!")!!!"B!! !!$J!!!'B(`%!1(m!!)!"!%Ji)3"!I!J$TS2Krra1J!!J4A3$!!!!!9F!!!!84A8 !N!3"@!!!!"K&EJ`%!!!"@3!!!!b!!*!,J!!!3!J!!!"&G`#3"!&@!*!%4@X!"!! !!(8!!!#d!!!80!!!4Kam#!+QNq(rr*2"rrL6SIrdNi(rm*!!!3!)P#(rX$ZM!!! la!!!I,`VH8'!!!`X(!"!3B!!%$KJ!"C)!!!"5!!!@$[m!!")!!!mIq!(0&3!%$T m(3!Z+!!!!%##!#4ri!Fd9!!31RrG!5kSIJ!!1!-!!E!H!!"ri`Fd5!!!($[r!!& ri!Fd,!!!3%'!rm!iB!!B5!!!!B!"!&Ji)3"3I!J$TS2Krrb$`IriJk(rp)1"rr" 1J!!J4A8!N!8f!!!!1%9e!*!&0J!!!*!!4@i-"!!!!9X!!!!-J!#3#i!!!,3J!!! !4AF!N!9e!*!%4@X!"!!!!(m!!!#`!!!8Z!!!4cjm#!+QNq(rr*2"rrL6SIrdN!! "!!L8)Iq`1k-!!$[N!!")!!!","m!!%'!!"`X(`"!3)!!&&IJ%$Trh3!Z+"i!!%# #!"!iB!!*5!!!!8J!!%JiB!!!9q!31Rap!5kSIJ!!1!2rrl!H!!"m!!Fe3))!*#` H!!""JJ!F1(i!!$L!!!'"RJ!#JB`!B%J!!!&J!!!!1'!!!)!"!&Ji)3"3I!J$TS2 Krrb$`IriJk(rp%k!!#"&G3#3"A!!!!!J4A8!N!8f!!!!5%9e!*!&83!!!)K&EJ` %!!!"A!!!!!b!!*!,J!!!X"J!!!"&G`#3"Am!N!4&D`!%!!!!M!!!!(3!!"8Q!!" )*(`)!UD6iIrmNm(rq*1Krr53!!%!#*3Krl!lS`!!1q3!!%J!!!%X(`!!3B!!(#` I!%"!J!!89q!31RrG!#iS(J!!3))!&$KJ!!P)!!!"1'!!!%J!!!JiIJ!!J!%!@$J K!&"m#!1QJq(rr)2"rrL$SIrd6S!!)%9e!*!&F!!!!#"&G3#3"6B!!!")4@i-"!! !!9d!!!!-J!#3#i!!!(3B!!!!4AF!N!@-!*!%4@X!"!!!!9i!!!#N!!!9K!!!540 m#!+QNq(rr*2"rrL3!!%!#*3Krm"mIKYjX)%!AN'#!'b!BJ!!5!!!!@!!!!!i!!! !Q"i"!)"L!!")!!!"B!!!!$[J!!")!!!N9q!31R`H!#iS!!!!3B)!%$Kr!!")!!! "B!!!!$[r!!%X(`"!3B$rh+J"!&iX!!!!3)%!%$Kq!!")!!!"B!!!!$Kq!!#!!3" )1#%!3(`)!kD$iIrmJm(rq%k!!#"&G!-!!!!"8`!!!#"&G3#3"!&8!!!!*%9d!`! !!!&I!!!!0%9e!*!%!93!!!!i4A8!N!3"B!!!!&a&G3#3"!%@!!!!J%9Z$!3!!!& K!!!!$)!!N!Z!!!#N%!!!!%9h!*!%!9i!N!4&D`!%!!!!R`!!!&`!!"A8!!",0A` )!UD3!!%!#*3Krm#!!J!!,!!!!%'#!$4)!!!"B!!!!)!#!!"m!`"!3)%!)$J!!!# 3!!)!!$KJ!!j)!!!"B!!!!$KJ!!&)!!!)1'!!!)!"!%Ji)3"!I!J$TNk!!#"&Fa! !!!!"BJ!!!!a&G3#3"I`!!!!B4A-3!!!!!@)!!!!J4A-3!!!!!@)!!!!`4A8!N!A $!!!!1%9Z$!3!!!&M!!!!$)!!N!Z!!!"F!*!%4AF!N!@I!*!%4@X!"!!!!@3!!!# 8!!!@#!!!5m0m#!+QNq(rr*2"rrL3!!%!#*3Krm!l``!!J!)!!#`!!!""JJ!J5!! !!@!!!!#!!J!!I'!B8$J!!$ari`1@5!!!#$[J!!!S(J!!3B)!'%J!!!&J!!!!("i !2(`!'K4)!!!)1!!!!*!!!J!!,"m!!%#!!!`iB!!!5!!!#$Kr!!#!!3")1#%!3(` )!kD$iIrmJm(rq%k!!#"&Fa!!!!!"BJ!!!"K&G3#3"I`!!!!N4A-3!!!!!@)!!!! X4A8!N!Am!!!!6%9c%!!!!!&L!!!!C%9Z$!3!!!&R!!!!$)!!N!Z!!!#8%!!!!%9 h!*!%!@3!N!4&DJ!%!!!"D!!!!0`!!"Bi!!"-P(`)!UD6iIrmNm(rq*1Krr56JIr `N!!"!!L8)Iq`N!"K!'L$`J!!Jk)!!%J!!!&J!!!!J!%!D(rJ'K4)!!!",!-!!%# #!$5!(J!!+!!!!%'#!$4)!!!"B!!!!(b$q&!iB!!)JCi!!%J!!!&J!!!!,!-!!%' #!"!iB!!%5!!!!8J!!"`i!!!!N!!G!!")!!!"B!!!!(`I'%""JIqN5!!!!@!!!!" mIaK31!!!2(q$!jG!J!!-1'!!!%J!!!JiI!!!J!%!@$JK!&"m#!1QJq(rr)2"rrL $SIrdJi(rm%k!!#"&G!-!N!3G!!!!)%9d!`#3"$F!!!!N4A8!N!Am!!!!+%9e!*! &R`!!!$K&G3#3"I`!!!"34A8!N!94!!!!C%9e!*!&0J!!!(K&G3#3"I`!!!#)4A8 !N!Am!!!!Q%9Z$!3!!!&V!!!!$)!!N!Z!!!$F)!!!!%9h!*!%!@J!N!4&D`!%!!! "E!!!!$J!!"D1!!"0LA`)!UD3!!%!#*3Krm#3!'%!@)!"!&JF!!!$2'!!!6KM`e" mB"Z@5!!!!B!"!%Ji)3"!I!J$TNk!!#"&G3#3"!&S!!!!*%9Z$!3!!!&Z!!!!$)! !N!Z!!!!i!*!%4AF!N!3"E!#3"%9U!!3!!!&[!!!"(!!!&X!!!&%(I!J#TVl"rpL 3!!%!#*3Krj!!1q-!!$YJ!!#J!`!!,!!!!d'#!"#J(`!!,!!!"8##!0LJ(`!19!! &ld'#!-b!(`!#9"R'2U!I!!j8!!3XI"V,H$J!!!#3!!%!1$[!!!!iB!!Q5!!!!@! !!!"mI4Yj3))!2$KJ!"C)!!!"B!!!!$L!!#")!!!"B!!!!$V$!!!mB%Y$1*B!!$K M5&*)!!!"B!!!!$[$!!#$S`!!+"d!!%'#!$3iI3!!1*S!!$LK!$K)!!!"B!!!!$Z $!!!S(J!!3B)!'$Kq!!")!!!"B!!!!%J!!!L$R`!#9jJ'2PH!!Kjm&iC`,"J!,N' #!!`X&`!Z3))!#$YJ!!%iH`!!J!%!H$JK!("m#!1QZX(rf%k!!#"&G3#3"!&`!!! !B%9e!*!%!A!!!!"d4A8!N!3"F3!!!)"&G3#3"!&b!!!!Q%9e!*!%!A-!!!#m4A8 !N!9'!!!!e%9Z$!3!!!'&!!!!$)!!N!Z!!!%F8!!!!%9h!*!%!@m!N!4&D`!%!!! "KJ!!!&`!!"IQ!!"@GR`)!UD6iIrmN!!"!!L8)Ir!5!!!!@!!!!#$i`!#5!!!)$K r!!C)!!!"9'!'2d'#!!`iB!!"5!!!&)2r!!!S(`!!3),ri$KJ!!#!!3")1#%!3(` )!kD$iIrm6S!!)%9e!*!%!BF!!!!34A8!N!3"E`!!!#4&EJ`%!!!"N`!!!!b!!*! ,J!!!A!J!!!"&G`#3"!''!*!%4@m&"!!!!C3!!!!%!!!!!`!!9fB!!!!"4@X!"!! !!CJ!!!+i!!!B-!!!9jCm#!+Q[b(rj*!!!3!)P#(rN!!l)`!!1d3!!)1#!!#$`J! !L!)!!(`!"h9!JJ!81!!!!CJ#!!!i!!!"Q!)!!$ZJ!!DS!J!!B"Z%!SJH!!`S!!! !3))!$$Kq!!")!!!"L!)!!#J!!!""JJ"39b!'2LJ!!!P!JJ!-1rS!!%J!!!b!BJ! !Jq-!!)!F!!"m!2S8N!!F!!#!(!!!9!!'rR`!q!"!J!!-1'!!)%J!!!L!I!!!5!! !!@!!!!")!!!"9'!'2d##!G#!BJ!!J!-!!#`!!!"!JJ!`L!)!!#J!!!""JJ!NL"i !$bJ!!!"!JJ!3U!)!!'!E"!")!!!-1'!!!%J!!DaA)!Bq,!!!#%'#!#"!J!!3,!! !!8'#!"4)!!!F,!!!#N#!!"4)!!!-I"VS!%#!!!JlS!!!1(X!!$L"!$Ji[3!!1-! !!%J!!!&J!!!!9'!'2d'#!05J!3!i,!!!$d'#!'a!J!!3,!!!!8'#!"4)!!#i,!! !&d'#!(K)!!#XJ!)!!#J!!!""JJ!8J')!!)!$!!3S!!!!3))!N!#!B3"#1)%!5%J !!!&J!!!!I'!(0#`!!!*!JJ"d1'%!1)#"!%K)!!!"B!!!!%J!!'#!!3!k9!!(rd' #!"!i!!!"Q!)!!%J!!%Ji!!!!Q!)!!%J!!$b!!J!!+!!!!%'#!"5!BJ!!J!-!A#J !!!"!JJ!JJ')!!)J$!!!S!!!!3B)!%$KK!$K)!!!"B!!!!+#"!$Ji!!!!9!!%2MK Jrrpm!#!3I!-"N!#J!3!i+!!!'%#!!%5!!J!!+!!!!%'#!$L!BJ!!S!%!1&3!%$T m!`!Z+!!!!%'#!#!iB3!iJ))!!+!"!$K8!"!kIB3!,NJ!!!&J!!!!1'!!!%J!!"` mB!!"1)!!!$KMrrp)!!!"B!!!!$KJrrq!!3"i1#%!F(`)!kDl)IrN6S!!)%9d!`! !!!'9!!!!'%9d!`#3"!)!!!!F4A-3!!!!!CF!!!!J4A-3!!!!!CB!!!!`4A-3!!! !!CF!!!!i4A-3!*!%*!!!!%"&G3#3"@S!!!"B4A-3!!!!!CB!!!"F4A3$!*!%)J! !!(a&G3#3"!'C!!!!V%9e!*!%!BB!!!#d4A3$!!!!!C3!!!$!4A-3!!!!!CB!!!$ 34A-3!*!%*!!!!1K&G3#3"!'D!!!"3%9c%!#3"#-!!!&i4A-3!*!%)`!!!B4&G3# 3"!'E!!!"R%9e!*!%!C`!!!'i4A-3!!!!!CB!!!(84A-3!!!!!CB!!!(J4A-3!*! %)`!!!HK&Fa!!N!3M!!!"p%9d!`#3"$3!!!)%4A8!N!3"R3!!!KK&Fa!!N!3M!!! #4%9c%!#3"#-!!!*34A-3!*!%)`!!!Qa&G3#3"9%!!!*m4A8!N!3"RJ!!!TK&EJ` %!!!"p!!!!!b!!*!,J!!#Z$J!!!"&G`#3"!'B!*!%4@X!"!!!!I8!!!"d!!!CRJ! !AUGm#!+QNq(rr*2"rrL3!!%!#*3Krm!li`!!X)%!ATLK!'-mB!!"1)!!!6KMU*p )!!!"B!!!!$[$!!#JB3"HL)%!BdJ!!!&J!!!!I'2`8$!$rrpm!"N3Q"m!!$Kr!!# !!3")1#%!3(`)!kD$iIrmJm(rq%k!!#"&G3#3"!(f!!!!,%9e!*!%!IB!!!"!4@i -"!!!!IN!!!!-J!#3#i!!!(33!!!!4AF!N!3"p3#3"%9V!!3!!!(k!!!!F!!!'H3 !!&mlI!J#TT2Krrb6`IriN!!"!!L8)Iq`1q-!!*!!J3"XN!#K!(!l`!!!J'%!E$L "!$K)!!!"B!!!!(aJ"c9!JJ!BJ'%!1)!"!("m!`!!3B!!#$[!!!'Eh`!!1(m!!)! "!&Ji)3"3I!J$TS2Krrb$`Iri6S!!)%9e!*!%!IX!!!!X4@i-"!!!!Ii!!!!-J!# 3#i!!!(!3!!!!4AF!N!3"qJ#3"%9V!!3!!!(r!!!!I!!!'MJ!!&qXI!J#TT2Krrb 6`IriN!!"!!L8)Iq`1q-!!*!!J3"XN!#K!(#3!-%!G$[!!!#!B3"X1)%!1%J!!!& J!!!!I'!(08##!##!J3"dJ'%!1)!"!("mB!!iI!3!!%##!!Jl`!!"Qpm!!$Kr!!# !!3"B1#%!8(`)!kD$iIrmJm(rq%k!!#"&G3#3"!(l!!!!-%9Z$!3!!!)!N!3-J!# 3#i!!!(`3!!!!4AF!N!3"r`#3"%9V!!3!!!)"!!!!E!!!'TS!!'!aI!J#TT2Krrb 6`IriN!!"!!L8)Ir!1q-!!*!!J3"FN!#K!'!l`!!!J'%!A)J$!!!S!!!!3B)!()' "!'")!!!"B!!!!(aJ"c9!JJ!)1m!!!C[I!!!iI`!!J!%!5$JK!%"m#!1QJq(rr)2 "rrK1J!!J4A8!N!94!!!!1%9Z$!3!!!)%!!!!$)!!N!Z!!!"X%!!!!%9h!*!%!J% !N!4&D`!%!!!#"3!!!%`!!"VB!!"JRA`)!UD6iIrmN!!"!!L8)Ir!1q-!!*!!J3" FJB%!A%J!!!&J!!!!I'!(0(`!!$48!0PqQ"m!!$Kr!!#!!3")1#%!3(`)!kD$iIr m6S!!)%9e!*!&83!!!"a&EJ`%!!!#"J!!!!b!!*!,J!!!6!J!!!"&G`#3"!)&!*! %4@X!"!!!!JF!!!"N!!!E%!!!B0Ym#!+QNq(rr*2"rrL3!!%!#*3Krm!li`!!N!# K!'#)"!!!+!!!!%'#!"`i!!!"Q"m!!)'"!'")!!!"B!!!!%J!!!`i!!!!Q"m!!$K r!!#!!3")1#%!3(`)!kD$iIrmJm(rq%k!!#"&G3#3"9%!!!!d4@i-"!!!!JJ!!!! -J!#3#i!!!'33!!!!4AF!N!3#"`#3"%9V!!3!!!)*!!!!4!!!'hB!!'&VI!J#TT2 Krrb3!!%!#*3Krm!li`!!N!#"!&`i!!!"Q!-!!)'"!&a)!!!"B!!!!$Kr!!#!!3" )1#%!3(`)!kD$iIrm6S!!)%9e!*!&83!!!#4&EJ`%!!!##J!!!!b!!*!,J!!!4!J !!!"&G`#3"!)*!*!%4@X!"!!!!JX!!!!S!!!EYJ!!BDii`!!!L!3!!#J!!!""JJ! 8L!8!!#J!!!""JJ!)1-!!!CM$!!"1J!!J4@X!"!!!!K)!!!#3!!!!'r`!!')+I!J #TT!!!3!)P#(r`*!!B3"BN!#"!&b)!J!!I!!(G8##!"3i!!!"X!)!!$J!!!'B!J! !U!)!!#`!!!&!JJ!X5!!!!@!!!!#`BJ!!I'!(08##!"JiBJ!!1))!!%J!!!&J!!! !X')!!+J#!!#!B3"BX!-!!+J#!!#!B3"FX!-!!+KL!!#!!3")1#%!3(`)!kC1J!! J4A-3!!!!!K%!!!!84A-3!!!!!K!!!!!N4A-3!!!!!K%!!!!X4A-3!!!!!K!!!!! `4A8!N!3#%`!!!$a&Fa!!!!!#%!!!!%4&Fa!!!!!#$`!!!&"&Fa!!!!!#$J!!!&4 &G3#3"!)8!!!!@%9c%!!!!!)3!!!!B%9c%!!!!!)1!!!!C%9c%!!!!!)2!!!!F%9 c%!!!!!)3!!!!I%9Z$!3!!!)A!!!!$)!!N!Z!!!#3!!#3"%9h!*!%!K)!N!4&D`! %!!!#'!!!!'3!!"a8!!"MMR`)!UD3!!%!#*3Krm#!BJ!!5!!!!@!!!!#!BJ!!5!! !!@!!!!#!BJ!!5!!!!@!!!!#!BJ!!5!!!!@!!!!#!BJ!!5!!!!@!!!!#!BJ!!5!! !!@!!!!#!!3")1#%!3(`)!kC1J!!J4A3$!!!!!KN!!!!-4A8!N!3#'J!!!""&G!- !!!!#'`!!!"K&G3#3"!)D!!!!(%9d!`!!!!)F!!!!*%9e!*!%!KS!!!!S4A3$!!! !!Kd!!!!`4A8!N!3#'J!!!$4&G!-!!!!#(J!!!$a&G3#3"!)D!!!!3%9d!`!!!!) I!!!!5%9e!*!%!KS!!!"-4@i-"!!!!L!!!!!-J!#3#i!!!'3!N!4&G`#3"!)B!*! %4@X!"!!!!KS!!!!X!!!FS!!!C(Pm#!+QN!!"!!L8)Ir!N!"K!&L"J3"B5!!!!@! !!!#!!3")1#%!3(`)!kC1J!!J4A8!N!94!!!!&%9Z$!3!!!)L!!!!$)!!N!Z!!!! X!*!%4AF!N!3#'J#3"%9Z"3%!!!)M!!!!$Irrrl%!!'4j8fpMDf9d4'pYB@PZ!!! $c89Z"33!!!)N!!!!#2rrrl!!!'4j!*!)4AB&!!!!!L-!N!4&E`8%!!!"4J!!!"M rrrq[!!"NH3#3'%9f"3!!!!)N!*!%4AB+!!!!!L8!!!!84AB+!!!!!LB!!!!34AB +!!!!!LF!!!!-4AB+!!!!!LJ!!!!)4@S!"!!!!LN!!!%SJ!#3"h`)!UD3!!%!#*3 Krm#!BJ!!5!!!!B"L!!")!!!"J))!!)#L!!")!!!"B!!!!)"L!!!mJ'Cc1+!!!MM !!!)iK#!J5!!!!B"L!!!mJ'&X1+!!!6M!!!%iK'Pc5!!!!B"L!!!mJ(0d1+!!!6M !!!%iK'4Q5!!!!B"L!!!mJ'pc1+!!#$M!!!JiK#!J5!!!!B"L!!!mJ'0b1+!!!6M !!!%iK'dJ5!!!!B"L!!#!JJ!!J+)!!%J!!!'!BJ!!J))!!)#L!!")!!!"J')!!$b !EQ`iS!!"1-!!!6L%GA")!!!"J')!!)##!!#!SJ!!5!!!!B"L!!!mJ'9f1+!!!6M !!!%iK'jd5!!!!B"L!!!mJ(4Y1+!!!ML%Ch*)!!!"J!%!5$JK!%"m#!1Q6S!!)%9 d!`#3"!)!!!!-4A8!N!8p!!!!%%9d!`#3""B!!!!84A8!N!3"9J!!!"K&G!-!!!! #+J!!!"a&G!-!N!39!!!!)%9e!*!%!LX!!!!N4A3$!*!%+3!!!#a&G3#3"!(r!!! !3%9d!`#3"#`!!!"%4A8!N!3"r`!!!&K&G!-!N!3Y!!!!A%9e!*!%!Im!!!"`4A3 $!*!%,J!!!(4&G3#3"!(r!!!!L%9d!`#3"#m!!!#-4A8!N!3"r`!!!+"&G!-!N!3 `!!!!T%9d!`#3"#m!!!#S4A3$!!!!!L`!!!#X4A8!N!3#!3!!!,"&G!-!N!3a!!! !Y%9d!`#3"$!!!!#i4A3$!!!!!Ld!!!#m4A8!N!3#!3!!!-"&G!-!N!3b!!!!a%9 e!*!%!Im!!!$B4A3$!*!%-`!!!0a&G!-!N!3a!!!!i%9d!`#3"$)!!!$N4A8!N!3 ##`!!!1K&G!-!N!3d!!!!l%9e!*!%!Im!!!%!4A3$!*!%03!!!34&G3#3"!(k!!! "&%9Z$!3!!!)Z!!!!$)!!N!Z!!!%S!*!%4AF!N!3#+3#3"%9X%!%!!!)4!!!!!3! !!!F!!')+4@`3!J!!!K!!!!!#!!!!#`!!BJT&E"!#!!!#$`!!!!)!!!!,!!"L#N9 X%!)!!!)1!!!!!J!!!!X!!')+4@`3!3!!!CF!!!!"!!!!"`!!9jC&E"!"!!!"PJ! !!!%!!!!'!!"APN9Y"33!!!'9!!!!"!!!!!-!!&Gk4@`3"!!!!@)!!!!%!!!!!`! !5aP&E38%!!!"23!!!!Mrrrr+!!"!U%9Y"33!!!%m!!!!82rrrmX!!%"[4@d&!J! !!$X!!!!#!!!!#`!!#I0&E38"!!!!1J!!!!%!!!!'!!!*a%9Y"3%!!!!e!!!!![r rrr8!!!J'4@d&!3!!!$3!!!!#rrrrp3!!"iP&E38"!!!!-`!!!!,rrrre!!!(B89 Y"3%!!!!b!!!!![rrrr8!!!Ef4@d&!3!!!$%!!!!#rrrrp3!!"Xa&E38"!!!!-!! !!!,rrrre!!!'U89Y"3%!!!![!!!!![rrrr8!!!C+4@d&!3!!!#i!!!!#rrrrp3! !"H"&E38"!!!!,3!!!!,rrrre!!!&F%9Y"3%!!!!X!!!!![rrrr8!!!8"4@d&!3! !!#N!!!!#rrrrp3!!"*9&E38"!!!!+!!!!!%!!!!'!!!%Fd9X%!3!!!!R!!!!"!! !!!-!!!3h4@`3"!!!!#B!!!!%!!!!!`!!""P&E"!#!!!!*!!!!!)!!!!,!!!$h%9 X%!3!!!!M!!!!"!!!!'S!!!1b4@d&"!!!!#%!!!!%rrrrpJ!!!fa&E38%!!!!&J! !!3,rrrrk!!!#dN9X"3%!!!!9!!!!$2rrrrX!!!,54@d&"!!!!!)!!!!Drj!%!!! #Jd9[#J3!!!)[!!!!#)!!N!p&GJ#3"!)D!*!%4AB2!!!!!M!!!!!%4@m+"!!!!M% !!!!)J!#3$d9f!*!%!KJ!N!4&GJm!!!!#-!!!!!4&E`S%!!!#-J!!!!L!!*!24AB !N!3#%J#3"%9f$`!!!!)`!!!!"%9[#J3!!!)c!!!!#)!!N!p&GJ#3"!),!*!%4AB 2!!!!!M!!!!!%4@m+"!!!!M3!!!!)J!#3$d9f!*!%!JN!N!4&GJm!!!!#-!!!!!4 &E`S%!!!#03!!!!L!!*!24AB!N!3#"`#3"%9f$`!!!!)`!!!!"%9[#J3!!!)f!!! !#)!!N!p&GJ#3"!)&!*!%4AB2!!!!!M!!!!!%4@m+"!!!!MF!!!!)J!#3$d9f!*! %!J%!N!4&GJm!!!!#-!!!!!4&E`S%!!!#1!!!!!L!!*!24AB!N!3"r`#3"%9f$`! !!!)`!!!!"%9[#J3!!!)j!!!!#)!!N!p&GJ#3"!(k!*!%4AB2!!!!!M!!!!!%4@m +"!!!!MS!!!!)J!#3$d9f!*!%!I8!N!4&GJm!!!!#-!!!!!4&E`S%!!!#1`!!!!L !!*!24AB!N!3"KJ#3"%9f$`!!!!)`!!!!"%9[#J3!!!)m!!!!#)!!N!p&GJ#3"!& X!*!%4AB2!!!!!M!!!!!%4@m+"!!!!Md!!!!)J!#3$d9f!*!%!@3!N!4&GJm!!!! #-!!!!!4&E`S%!!!#2J!!!!L!!*!24AB!N!@I!*!%4AB2!!!!!M!!!!!%4@m+"!! !!LS!!!!)J!#3$d9f!*!%!9i!N!4&GJm!!!!#-!!!!!4&E`S%!!!#2`!!!!L!!*! 24AB!N!@-!*!%4AB2!!!!!M!!!!!%4@m+"!!!!N!!!!!)J!#3$d9f!*!&I`#3"%9 f$`!!!!)`!!!!"%9[#J3!!!*"!!!!#)!!N!p&GJ#3"A8!N!4&GJm!!!!#-!!!!!4 &E`S%!!!#3J!!!!L!!*!24AB!N!3"9J#3"%9f$`!!!!)`!!!!"%9Z#J3!!!&A!!! !#)!!N!p&GJ#3"!&5!*!%4AB2!!!!!M!!!!!%4@m+"!!!!N-!!!!)J!#3$d9f!*! %!9%!N!4&GJm!!!!#-!!!!!4&E`S%!!!#*3!!!!L!!*!24AB!N!3"6`#3"%9f$`! !!!)`!!!!"%9[#J3!!!)Q!!!!#)!!N!p&GJ#3"!&0!*!%4AB2!!!!!M!!!!!%4@m +"!!!!LF!!!!)J!#3$d9f!*!%!8X!N!4&GJm!!!!#-!!!!!4&E`S%!!!#+!!!!!L !!*!24AB!N!3"53#3"%9f$`!!!!)`!!!!"%9[#J3!!!*%!!!!#)!!N!p&GJ#3"!& &!*!%4AB2!!!!!M!!!!!%4@m+"!!!!N8!!!!)J!#3$d9f!*!%!8)!N!4&GJm!!!! #-!!!!!4&E`U%!!!#4J!!!!L!!*!24AB!N!9d!*!%4AB2!!!!!M!!!!!%4@m+"!! !!NF!!!!)J!#3$d9f!*!%!6X!N!4&GJm!!!!#-!!!!!4&E`S%!!!#5!!!!!L!!*! 24AB!N!3"1!#3"%9f$`!!!!)`!!!!"%9[#J3!!!**!!!!#)!!N!p&GJ#3"!%h!*! %4AB2!!!!!M!!!!!%4@m+"!!!!NS!!!!)J!#3$d9f!*!%!5m!N!4&GJm!!!!#-!! !!!4&E`S%!!!#5`!!!!L!!*!24AB!N!3",3#3"%9f$`!!!!)`!!!!"%9[#J3!!!* -!!!!#)!!N!p&GJ#3"!%R!*!%4AB2!!!!!M!!!!!%4@m+"!!!!Nd!!!!)J!#3$d9 f!*!%!5-!N!4&GJm!!!!#-!!!!!4&E`S%!!!#6J!!!!L!!*!24AB!N!3")!#3"%9 f$`!!!!)`!!!!"%9[#J3!!!*2!!!!#)!!N!p&GJ#3"!%H!*!%4AB2!!!!!M!!!!! %4@m+"!!!!P!!!!!)J!#3$d9f!*!&K!#3"%9f$`!!!!)`!!!!"%9[#J3!!!*4!!! !#)!!N!p&GJ#3"!%D!*!%4AB2!!!!!M!!!!!%4@m+"!!!!P)!!!!)J!#3$d9f!*! %!4J!N!4&GJm!!!!#-!!!!!4&E`U%!!!"%`!!!!L!!*!24AB!N!3"&3#3"%9f$`! !!!)`!!!!"%9[#J3!!!*6!!!!#)!!N!p&GJ#3"IS!N!4&GJm!!!!#-!!!!!4&E`S %!!!#9!!!!!L!!*!24AB!N!AB!*!%4AB2!!!!!M!!!!!%4@m+"!!!!P8!!!!)J!# 3$d9f!*!&e3#3"%9f$`!!!!)`!!!!"%9[#J3!!!*@!!!!#)!!N!p&GJ#3"G%!N!4 &GJm!!!!#-!!!!!4&E`S%!!!#9`!!!!L!!*!24AB!N!A2!*!%4AB2!!!!!M!!!!! %4@m+"!!!!PJ!!!!)J!#3$d9f!*!&aJ#3"%9f$`!!!!)`!!!!"%9[#J3!!!*C!!! !#)!!N!p&GJ#3"DF!N!4&GJm!!!!#-!!!!!4&E`S%!!!#@J!!!!L!!*!24AB!N!@ N!*!%4AB2!!!!!M!!!!!%4@m+"!!!!PX!!!!)J!#3$d9f!*!&RJ#3"%9f$`!!!!) `!!!!"%9[#J3!!!*F!!!!#)!!N!p&GJ#3"C`!N!4&GJm!!!!#-!!!!!4&E`S%!!! #A3!!!!L!!*!24AB!N!@D!*!%4AB2!!!!!M!!!!!%4@m+"!!!!Pi!!!!)J!#3$d9 f!*!&P`#3"%9f$`!!!!)`!!!!"%9[#J3!!!*I!!!!#)!!N!p&GJ#3"C-!N!4&GJm !!!!#-!!!!!4&E`S%!!!#B!!!!!L!!*!24AB!N!@,!*!%4AB2!!!!!M!!!!!%4@m +"!!!!Q%!!!!)J!#3$d9f!*!&KJ#3"%9f$`!!!!)`!!!!"%9[#J3!!!*L!!!!#)! !N!p&GJ#3"B)!N!4&GJm!!!!#-!!!!!4&E`S%!!!#B`!!!!L!!*!24AB!N!9q!*! %4AB2!!!!!M!!!!!%4@m+"!!!!Q3!!!!)J!#3$d9f!*!&F`#3"%9f$`!!!!)`!!! !"%9[#J3!!!*P!!!!#)!!N!p&GJ#3"A)!N!4&GJm!!!!#-!!!!!4&E`S%!!!#CJ! !!!L!!*!24AB!N!9`!*!%4AB2!!!!!M!!!!!%4@m+"!!!!QF!!!!)J!#3$d9f!*! &DJ#3"%9f$`!!!!)`!!!!"%9[#J3!!!*S!!!!#)!!N!p&GJ#3"9!!N!4&GJm!!!! #-!!!!!4&E`S%!!!#D3!!!!L!!*!24AB!N!8p!*!%4AB2!!!!!M!!!!!%4@m+"!! !!QS!!!!)J!#3$d9f!*!&13#3"%9f$`!!!!)`!!!!"%9[#J3!!!*V!!!!#)!!N!p &GJ#3"6B!N!4&GJm!!!!#-!!!!!4&E`S%!!!!(J!!!!L!!*!24AB!N!3"Q!#3"%9 f$`!!!!)`!!!!"%9[!`3!!!!e!!!!")!!N!Y&GJ8!N!3e!*!%4@m$"!!!!$-!!!! %J!#3#d9f"3#3"$-!N!4&E`-%!!!!-J!!!!5!!*!,4AB&!*!%-J#3"%9[!`3!!!) Y!!!!")!!N!Y&GJS!!!!#,3#3"%9[!`3!!!!a!!!!")!!N!Y&GJ8!N!3a!*!%4@m $"!!!!L`!!!!%J!#3#d9f#J!!!!)X!*!%4@m$"!!!!$!!!!!%J!#3#d9f"3#3"$! !N!4&E`-%!!!!,`!!!!5!!*!,4AB&!*!%,`#3"%9[!`3!!!!Y!!!!")!!N!Y&GJ8 !N!3Y!*!%4@m$"!!!!#`!!!!%J!#3#d9f"3#3"#`!N!4&E`-%!!!!+3!!!!5!!*! ,4AB&!*!%+3#3"%9Z!`3!!!!9!!!!")!!N!Y&GJ8!N!39!*!%4@m$"!!!!LS!!!! %J!#3#d9f#J!!!!)U!*!%4@m$"!!!!Km!!!!%J!#3#d9f#J!!!!)I!*!%4@m$"!! !!Ki!!!!%J!#3#d9f#J!!!!)H!*!%4@m$"!!!!Kd!!!!%J!#3#d9f#J!!!!)G!*! %4@m$"!!!!K`!!!!%J!#3#d9f#J!!!!)F!*!%4@m$"!!!!KX!!!!%J!#3#d9f#J! !!!)E!*!%4@m$"!!!!KN!!!!%J!#3#d9f#J!!!!)C!*!%4@m$"!!!!$3!!!!%J!# 3#d9f"3#3"$3!N!4&E`-%!!!"P!!!!!5!!*!,4AB&!!!!!C3!N!4&E`-%!!!"P3! !!!5!!*!,4AB&!!!!!C8!N!4&E`-%!!!"A`!!!!5!!*!,4AB+!!!!!9m!N!4&EJ- %!!!"9`!!!!5!!*!,4AB+!!!!!9F!N!4&E`-%!!!"8`!!!!5!!*!,4AB+!!!!!9- !N!4&E`-%!!!"4J!!!!5!!*!,4AB&!!!!!8B!N!4&E`-%!!!"23!!!!5!!*!,4AB &!!!!!6d!N!4&E`-%!!!!,J!!!!5!!*!,4AB&!*!%,J#3"%9[!`3!!!%m!!!!")! !N!Y&GJ8!!!!"2!#3"%9[!`3!!!!L!!!!")!!N!Y&GJ8!N!3L!*!%4@m$"!!!!"m !!!!%J!#3#d9f"3#3""m!N!4&E`-%!!!!(3!!!!5!!*!,4AB&!*!%(3#3"%9[!`3 !!!!#!!!!")!!N!Y&GJ8!N!3#!*!%4@m$"!!!!"B!!!!%J!#3#d9f"3#3""B!N!4 &E`-%!!!!E!!!!!5!!*!,4AB&!*!%E!#3"%9[!`3!!!!K!!!!")!!N!Y&GJ8!N!3 K!*!%4@m$"!!!!$X!!!!%J!#3#d9f"3#3"$X!N!4&E`-%!!!!1J!!!!5!!*!,4AB &!*!%1J#3"%9[!`3!!!!h!!!!")!!N!Y&GJ8!N!3h!*!%4@m2"!!!!M!!N!5!!*! (4@J!!&0C68J!!"c5!!!!83!!!!)!N"%"!*!'#-J!!!!)!!!)d`!!!"!!!!MLrj! %!!!)l3!"!!!!1!!!!!-"!*!%!`!"!*!'#68!!!!)!!!*3!!!!"!!!!P2rj!%!!! *@`!"!!!!1!!!!!-"!*!%!`!"!*!'#MN!!!!B!!!+C!!!!$!!!!UD!!!!2!!!#V- !!!"-!!!+a`!!!)J!!!Y1!!!!R!!!#id!!!#S!!!,T!!!!-3!!![T!!!!d!!!$!- !!!$B!!!-'!!!!13!!!a6!!!!m!!!$(J!!!$i!!!-M3!!!3J!!!bR!!!"&!!!$-F !!!%F!!!-hJ!!!9J!!!fj!!!#R!!!$iX!!!+i!!!2Y!!!!X3!!!r0!!!#d!!!$rB !!!,F!!!3#J!!!ZJ!!"!J!!!$"!!!%&!!!!-3!!!3D3!!!c3!!"$F!!!$2!!!%2- !!!0B!!!4(`!!!iJ!!"&&!!!$P!!!%9N!!!1S!!!4J3!!!lJ!!"'A!!!$a!!!%E) !!!23!!!4drq3"!!!%G-!"J!!!%Irrrrc!3#3""i!!!")!!!!!`#3"4m!!!"*!!! !!`#3"4d!!!"+!!!!!`#3"4X!!!",rrrrmJ#3"4`!!!"1!!!!#`#3"4N!N!J5(!! !!$3!!"*6!!!!8!!!%US!!!"`!!!5m3!!!)J!!"-C!!!!S!!!%fm!!!$)!!!6hJ! !!1`!!"3A!!!"'!!!&)F!!!%S!!!8MJ!!!83!!"6p!!!"A!!!&66rN!3!!"8d!!B !!!"(rrrrm`%!N!3H!!!!9rrrrqm"!*!%(3!!!%N!!!!$!*!&(`!!!&hrrrrX!!- !!!!i!!!!AJ!!!'B!N!8F!!!!ArrrrqX!!`!!!%!!N!J9CJ!!!"!!!"9T!!!!,!! !&Ci!!!!m!!!9YJ!!!%J!!"Adrj!%!!!9p!!"!!!!4rrrrr-"!`!!!&J!N!JB-2q 3"!!!'$!!N!SB8`!!!#!!!"KX!!!!+!!!')3!!!!X!!!BQ2q3"!!!'*J!!3!!!%I rrrrT!3#3""m!!3#3"KN8rj!%!!!C+!!!!!%!N!BC@J!!!#J!!"Q4!!!!,!!!'DX !!!"!!!!Ce3!!!'3!!"S!N!5%!!!D,!!!!)`!!"T$!!!!V!!!'P)!!!#m!!!DB!! !!-J!!"U$rj!%!!!DMJ!'!!!!GJ!!!!-"!`!!!'J!!!"h!!!!!`%$!!!!E!!!!(J !!!!$!3-!!!"`!!!!H3!!!!-!N!8G!!!!H[rrrrJ!N!8I!!!!HrrrrqJ!N!8H!!% !N!BDcJ!!!$!!!"Vm!!!!0!!!'aB!!!")!!!E3!!!!(!!!"Y[!!!!N!!!!"ZK!!! !X!!!'p3!!!#i!!!ElJ!!!-J!!"a$!!!!k!!!(&F!!!%)!!!FF!!!!4J!!"aq!!! "*!!!(+(rN!3!!"bX!!B!!!"f!!!!!`%$!!!!D!!!!(F!!!!$!3-!!!"X!!!!H!! !!!-"!`!!!(!!!!#!rrrrjJ%!N!3H!!!!H[rrrq8!!`!!!$J!!!"lrrrrk!#3"4d !!3#3"Kc#!!!!&!!!(-8!!!!F!!!Fh`!!!$J!!"d1!!!!3!!!(4S!!!"B!!!G,rq 3"!!!(9!!!3!!!(RrrrrQ!3#3""m!!3#3"Kfp!!!!-!!!(GB!!!"!!!!H!*!%F!! !(NErN!3!!"j4!!J!!!"f!!!!!`%$!!!!@!!!!(F!!!!$!3-!!!"F!!!!K`!!!'B "!`!!!'!!!!#)!!!!C!%$!!!!C!!!!%d!!!!$!3-!!!"S!!!!9`!!!'3"!`!!!'` !!!#*rrrrjJ%$!!!!F!!!!([rrrrS!*!&(`!"!*!'(Si!!!!N!!!HNIq3"!!!(ZB !"!!!!)d!!!!$!3-!!!"B!!!!9rrrrq3"!`!!!&`!!!#*!!!!!`%$!!!!B!!!!(V rrrri!*!&(`!"!*!'(bB!!!!N!!!I+Iq3"!!!(i%!"!!!!)d!!!!$!3-!!!"B!!! !P2rrrq3"!`!!!&`!!!#9!!!!!`%$!!!!B!!!!(Vrrrri!*!&(`!"!*!'(k!!!!! J!!!ISrq3"!!!(qJ!!`!!!)d!!!!$!3-!!!"B!!!!Q!!!!!-"!`!!!&`!!!"krrr rq!#3"4m!!3#3"L!L!!!!+!!!)#8!!!!i!!!J6`!!!&`!!#"k!!!!I!!!)+8!!!# %!!!JZ`!!!+3!!#$+rj!%!!!Je3!%!!!!M3!!!!-"!*!%(J!!!*6rrrrN!3-!!!" F!!!!PIrrrqB"!`!!!'!!!!"krrrrq!#3"4m!!3#3"L%5!!!!)!!!)5MrN!3!!#& #!!%!!!#0!!!!!`%$!!!!@!!"!*!')jm!!!"%!!!MSJ!!!*3!!#1q!!!!T!!!)p2 rN!3!!#3l!!B!!!#0!!!!!`%$!!!!D!!!!+!!!!"N!3-!!!"X!!!!S3!!!!-"!`! !!(!!!!"0!!!!!`%$!!!!G!!!!(Vrrrri!*!&(!!!!+)!!!!$!!-!!!!i!!%!N!B NR!!!!%`!!#5I!!!!R!!!*,[rN!3!!#8L!!F!!!#0!!!!!`%$!!!!D!!!!+!!!!" N!3-!!!"X!!!!S3!!!!-"!`!!!(!!!!"0!!!!!`%$!!!!G!!!!+ArrrrN!3-!!!" i!!!!S[rrrqB"!`!!!(`!!!"krrrrq!#3"4`!!3#3"L9A!!!!0!!!*9S!!!#%!!! PGJ!!!*`!!#@L!!!![!!!*I-!!!%)!!!QQ`!!!5`!!#E!rj!%!!!Qb`!&!!!!M3! !!!-"!`!!!)J!!!#Urrrri3%!N!3F!!!!63!!!!-"!`!!!*!!!!!!Y[rrrpd!!`! !!$J!!!"krrrrq!#3"4X!!3#3"LEh!!!!(!!!*`i!!!"-!!!RIJ!!!&`!!#HD!!! !D!!!*l[rN!3!!#I+!!%!!!$%!!!!!`%!N!3I!!%!N!BS!`!!!$3!!#J'!!!!K!! !+#)!!!#F!!!S6J!!!,`!!#Kj!!!"!!!!+08!!!%N!!!Sq[q3"!!!+38!"3!!!)d !!!!$!3-!!!#)!!!!bIrrrpm"!`!!!)`!!!#p!!!!!`%$!!!!N!!!!!$+rrrrf`! $!!!!1!!!!(Vrrrri!*!&(!!"!*!'+8-!!!"%!!!T4J!!!*3!!#PLrj!%!!!Tf`! &!!!!M3!!!!-"!`!!!'J!!!#J!!!!C!%$!!!!E!!!!+%!!!!$!3-!!!"`!!!!63! !!!-"!`!!!(3!!!"krrrrq!#3"4`!!3#3"LT"!!!!6!!!+N3!!!#F!!!UB2q3"!! !+Z8!"`!!!)d!!!!$!3-!!!"S!!!!S!!!!'3"!`!!!'`!!!#K!!!!!`%$!!!!F!! !!%d!!!!$!3-!!!"d!!!!d[rrrq3"!`!!!(J!!!$6!!!!!`%$!!!!I!!!!(Vrrrr i!*!&(!!"!*!'+b!!!!!d!!!V)`!!!)3!!#Xr!!!!R!!!+fX!!!#m!!!VZJ!!!3` !!#aS!!!"-!!!,)hrN!3!!#bB!!8!!!#0!!!!!`%$!!!!L!!!!+VrrrrK!3#3""` !!!"0!!!!!`%$!!!!N!!!!!$+rrrrf`!$!!!!1!!!!(Vrrrri!*!&'`!"!*!',0J !!!!m!!!YD3!!!%`!!#em!!!!@!!!,CN!!!"m!!!Z&3!!!)!!!#ia!!!!M!!!,Pm !!!#3!!!!,R`!!!#i!!!ZY`!!!-3!!#l,!!!!e!!!,`J!!!$J!!!['`!!!2!!!#p Erj!%!!![D!!)!!!!M3!!!!-"!*!%'`!!!0VrrrrD!*!&(`!!!(Vrrrri!*!&(!! !!23!!!"S!*!&(3!!!28!!!"S!*!&(J!!!2B!!!!'!!-!!!!i!!!!p`!!!!B!!`! !!$N!!!$i!!!!"J!$!!!!1J!"!*!',p!!!!"!!!!`Q`!!!&3!!$#U!!!!D!!!-,N !!!"i!!!`c!!!!*3!!$%0!!!!R!!!-@-!!!#`!!!a[J!!!4`!!$)r!!!"0!!!-P3 !!!&-!!!bF3!!!93!!$+3!!!!!@`!!$+X!!!##!!!-bJ!!!)J!!!c23!!!N!!!$0 D!!!#6!!!-fF!!!*8!!!cLJ!!!Q`!!$1R!!!#Y!!!0"!!!!,N!!!d6J!!!a3!!$5 3!!!!!b`!!$5p!!!$A!!!04)!!!0m!!!e'3!!!iJ!!$8c!!!$U!!!06S!!!1d!!! e9!!!!p3!!$9M!!!$i!!!0@F!!!2S!!!eN`!!!rJ!!$@l!!!%4!!!0F!!!!43!!! ed!!!"'J!!$AM!!!%E!!!0H`!!!5!!!!el`!!"*3!!$BK!!!%R!!!0N!!!!5d!!! fA!!!"9!!!$EB!!!&D!!!0Zd!!!@)!!!h#`!!"C3!!$F4!!!&R!!!0b)!!!@S!!! h3!!!"E!!!$G2!!!&`!!!0em!!!A)!!!hE`!!"GJ!!$H!!!!&i!!!0j%!!!A`!!! hT2q3"!!!0l)!&!!!!2d!!!!$!3#3""3!!!$qrrrrd`%!N!3C!!!"!Irrrp-"!*! %'J!!!3,rrrr6!3#3""X!!!%$rrrrd!%!N!33!!!""rrrrmi!!`!!!$J!!!$f!!! !D!#3"4`!!!$h!!!!D!#3"4d!!!$i!!!!D!#3"4i!!!%+!!!!"J!$!!!!2!!!!3X !!!!'!!-!!!!p!!!"$!!!!!B!!`!!!$i!!!%0rrrrdJ!$!!!!3!!!!3lrrrr5!!- !!!")!!!"$rrrrp)!!`!!!&!!!!%3!!!!!`#3"4)!!!%4!!!!!`#3"4%!!!#0!!! !!`#3"4m!!!#p!!!!!`#3"4-!!!"krrrrq!#3"4J!!3#3"MIa!!!!*!!!0r6rN!3 !!$K(!!3!!!#0!!!!!`%$!!!!@!!!!&IrrrrN!3-!!!"F!!!!LIrrrqB"!`!!!'! !!!"krrrrq!#3"4m!!3#3"ML'!!!!*!!!1)RrN!3!!$MF!!3!!!#0!!!!!`%$!!! !@!!!!&IrrrrN!3-!!!"F!!!!LIrrrqB"!`!!!'!!!!"krrrrq!#3"4m!!3#3"MM m!!!!)!!!12q3"3!!188!!`!!!)d!!!!$!3-!!!"B!!!"(!!!!!-"!`!!!&`!!!" krrrrq!#3"4m!!3#3"MPB!!!!(!!!19[rN!3!!$QM!!)!!!#0!!!!!`%$!!!!@!! !!(Vrrrri!*!&(`!"!*!'1Ei!!!!X!!!j`3!!!$`!!$RX!!!!4!!!1IN!!!"F!!! k$!!!!'`!!$SLrj!%!!!k4!!$!!!!M3!!!!-"!`!!!'J!!!%K!!!!!`%!N!3G!!! !H[rrrrJ!N!8H!!%!N!Bka3!!!#3!!$V)!!!!0!!!1[-!!!!m!!!l!Iq3"!!!1b3 !"!!!!)d!!!!$!3-!!!"B!!!"*!!!!!)"!`!!!&`!!!%Prrrrc3%$!!!!B!!!!(V rrrri!*!&(`!"!*!'1h%!!!!X!!!lG2q3"!!!1pF!"J!!!)d!!!!$!3-!!!"B!!! "+!!!!!-"!`!!!&`!!!%T!!!!!`%$!!!!B!!!!5S!!!"N!3-!!!"N!!!"+rrrrqB "!`!!!'J!!!"krrrrq!#3"4m!!3#3"M`S!!!!,!!!2#[rN!3!!$bA!!B!!!#0!!! !!`%$!!!!@!!!!5J!!!!$!3-!!!"F!!!"+3!!!!-"!`!!!'!!!!%U!!!!C!%$!!! !C!!!!5X!!!!$!3-!!!"S!!!!H[rrrrJ!N!8I!*!)20!!!!!X!!!mp`!!!$J!!$d e!!!!4!!!2A3!!!"3!!!pY3!!!&J!!$hErj!%!!!pf`!#!!!"-2rrrm`"!*!%!`! !!6Errrrf!3#3"!3!!3#3"Mi*!!!!,!!!2M!!!!!i!!!qB`!!!%3!!$kA!!!!8!! !2X`!!!"F!!!qrj!&!!!r'3!"!!!"-2rrrm`"!*!%!`!"!*!'2d)!!!!%!!!r8J! !!"J!!$q@!!!!-!!!2ki!!!"B!!!raIq3"!!!2mm!!J!!!6N!!!"U!3#3"!-!!!% k!!!!#`#3"4m!!3#3"Mrkrj!%!!"!$3!!!!%!N!C""!!!!"J!!%%(!!!!0!!!38` !!!"%!!""HIq3"!!!3C%!!3!!!(B!!!!$!3#3""m!N!K"V`!!!!`!!%'b!!!!(!! !3FF!!!!S!!""i2q3"!!!3H!!!!!"!*!'3JS!!!!`!!"$)!!!!$`!!%-l!!!!C!! !3i-!!!"`!!"$S2q3"!!!3k!!!J!!!%IrrrrS!3#3""i!!!"f!!!!!`%!N!3G!!% !N!C$`Iq3"!!!3m-!!3!!!%IrrrrS!3#3""m!!3#3"N3Z!!!!$!!!4$(rN!3!!%4 A!!!!!3#3"N5R!!!!$!!!4+VrN!3!!%6*!!!!!3#3"N82!!!!$!!!44,rN!3!!%8 a!*!+49ArN!3!!%99!*!+4EN!!!!-!!"&[!!!!"J!!%A,rj!%!!"&b`!!!!%!N!C &k3!!!"J!!%AXrj!%!!"''!!"!!!!4rrrrqN"!*!%(`!"!*!'4Nm!!!!X!!"'AJ! !!$3!!%D&!!!!3!!!4U)!!!")!!"'b3!!!&`!!%EJ!!!!I!!!4a`!!!#-!!"()2q 3"!!!4cX!"!!!!%IrrrrT!3#3""d!!!"krrrrq!%!N!3H!!!"@J!!!!-"!*!%(!! !!(N!!!!,!*!&(`!"!*!'4ei!!!!J!!"(FJ!!!#3!!%H$!!!!4!!!4ld!!!"3!!" (f3!!!(!!!%J)!!!!N!!!!%JArj!%!!"))3!$!!!!4rrrrqN"!*!%(3!!!(N!!!! $!3#3""m!!!"krrrrq!#3"4i!!3#3"NK0!!!!)!!!5'%!!!!N!!")F`!!!%3!!%L [!!!!9!!!50[rN!3!!%MS!!-!!!"(rrrrk3%!N!3G!!!!H3!!!!-"!*!%(`!!!(V rrrri!*!&(J!"!*!'55m!!!!J!!"*E`!!!$J!!%T@!!!!5!!!5Ti!!!"B!!"+XIq 3"!!!5VX!!J!!!%IrrrrT!3#3""i!!!"*!!!!!`#3"4m!!3#3"NY+!!!!$!!!5dd !!!!X!!",I!!!!$J!!%Z0!!!!5!!!5lErN!3!!%[!!!!!!3#3"N[Irj!%!!"-N3! #!!!"C3!!!!)"!*!%(J!!!@B!!!!$!*!&(`!"!*!'6,8!!!!S!!"-Z!!!!$J!!%d I!!!!Q!!!656rN!3!!%f'!!-!!!&T!!!!!`%$!!!!D!!!!@B!!!!$!*!&(!!!!@S !!!!$!*!&(`#3#%fP!!!!*!!!6DJ!!!!S!!"0bIq3"!!!6FN!!3!!!@d!!!!#!3- !!!"B!!%!N!C40`!!!#3!!&(`!!!!-!!!8UF!!!!m!!"5dJ!!!'!!!&2U!!!!F!! !9$S!!!#B!!"8P`!!!+J!!&6M!!!!X!!!92B!!!$3!!"91!!!!0`!!&96!!!!i!! !99i!!!$N!!"9J3!!!2J!!&A8!!!"!!!!9JF!!!%%!!"@A2q3"!!!9R-!#`!!!A6 rrrr*!3#3""m!!!&l!!!!CJ#3"4d!!!&m!!!!C`#3"4i!!!&p!!!!!J!$!!!!1!! !!Ai!!!!$!*!&&J!!!Am!!!!$!*!&&`!!!B!!!!!$!*!&'!!!!B%!!!!$!*!&(!! !!B)!!!!$!*!&'3!!!B-!!!!,!*!&'J!!!B3!!!!'!*!&'`!"!*!'9Si!!!!3!!" @T3!!!#!!!&EN!!!!-!!!9aN!!!!i!!"A-!!!!%3!!&G9rj!%!!"AB`!"!!!"L2r rrmF!N!8I!!%!N!CA`J!!!#`!!&I&!!!!2!!!@"-!!!"8!!"BMJ!!!&`!!&LX!!! !D!!!@-)!!!#%!!"C"J!!!,3!!&QL!!!!`!!!@FX!!!$F!!"D(J!!!1J!!&TU!!! !p!!!@TF!!!$m!!"DV3!!!53!!&VI!!!",!!!@eX!!!%`!!"EM!!!!9!!!&Zm!!! "H!!!@q3!!!'8!!"F%`!!!E!!!&a(!!!"`!!!A')!!!(%!!"FHJ!!!G!!!&b5!!! "h!!!A,-!!!(S!!"FlJ!!!J3!!&dM!!!#&!!!A@i!!!)J!!"G[J!!!QJ!!&i(!!! #K!!!AL-!!!+-!!"H1J!!!U!!!&j3rj!%!!"H@`!(!!!!U[rrrm)"!*!%'3!!!DS !!!!$!3#3""S!!!'V!!!!!`#3"4m!!!'X!!!!#`#3"4X!!!'Y!!!!!`#3"4d!!!' Zrrrrb!!$!!!!1!!!!Drrrrr"!!-!!!")!!%!N!CHh`!!!#`!!&lLrj!%!!"I1!! $!!!!4rrrrl-"!*!%(`!!!IF!!!!+!3-!!!"H!!!"q!!!!!F"!`!!!'-!!3#3"Pp P!!!!,!!!AhErN!3!!&qT!!3!!!"(rrrrX`%!N!3I!!!!G`!!!!)"!`!!!'`!!!( m!!!!!`%$!!!!F!!!!Id!!!!$!!-!!!!i!!%!N!CIi3!!!$!!!&rbrj!%!!"J,J! &!!!!4rrrrl-"!*!%(`!!!(F!!!!#!3-!!!"X!!!"V!!!!!-"!`!!!(!!!!(m!!! !!`%$!!!!G!!!!Id!!!!$!!-!!!!i!!%!N!CJGrq3"!!!B*S!!`!!!%Irrrqc!3# 3""m!!!)#rrrrX`%$!!!!A!!!!J2rrrrf!3-!!!"J!!%!N!CJa3!!!"`!!'$)rj! %!!"Jf!!#!!!!4rrrrl-"!*!%(`!!!J2rrrrf!3-!!!"F!!%!N!CK)!!!!#J!!'% j!!!!0!!!B8J!!!!m!!"K83!!!%!!!'&D!!!!5!!!B@MrN!3!!'&S!!-!!!"(rrr rX`%!N!3I!!!#![rrrl-"!*!%(J!!!J2rrrrf!3-!!!"J!!%!N!CKNJ!!!#3!!'' M!!!!,!!!BD[rN!3!!''V!!)!!!"(rrrrX`%!N!3I!!!#!rrrrrB"!`!!!&`!!3# 3"Q(`!!!!*!!!BJIrN!3!!')(!!-!!!"(rrrrX`%!N!3$!!!#$2rrrl-"!*!%"!! !!Jhrrrqc!3#3"!8!!3#3"Q)p!!!!)!!!BQX!!!!`!!"LJ`!!!$`!!'+6!!!!8!! !BUi!!!"N!!"Lf2q3"!!!B`-!!J!!!KArrrqb!3-!!!"B!!!#&[rrrl)"!`!!!&` !N!KMTJ!!!!`!!'1T!!!!'!!!Bmm!!!!N!!"Mp!!!!$!!!'38!!!!2!!!C$3!!!" )!!"N93!!!&3!!'4frj!%!!"NGJ#3#Q5B!!!!&!!!C*X!!!!F!!"NSrq3"!!!C+- !!3!!!L(rrrrf!3-!!!"B!!(rrrrm!!!!"!!!!!%!!!!(!!,rrrrp!!!!%3!!!!` !!`!!!",rrrrm!*!(%`!!!!)!!!!%!!!!&!!!!!)!!!!)!!$rrrrq!!(rrrrp!!, rN!3!!!!$!!!!'J!0!!!!"!!!!!)!N!F&!!!!!J!!!!3!!!!'!!!!"`!!!!J!!!! (!!!!"J!!!!N!!!!)!!!!"J!!!!S!!!!*!!!!"J!!!!X!!!!+!!!!"J!!!!`!!!! ,!!!!"J!!!!d!!!!-!!!!"J!!!!i!!!!0!!!!"J!!!!m!!!!1!!!!!J!!!"!!!!! 2!!!!#`!!!"3!!!!3rrrrrJ!!!"B!!IrrrrX!!!!-!!!!!3!!!!F!![rrrrF!!!! C!!!!"J!#!!!!'J!!!!X!N!FE!!!!C!!!!!)!!2rrrrJ!!IrrrrF!!IrrrrN!!!% !N!3%rrrrq!!#rrrrqJ!!!"F!!!%#!!)!!!!Brrrrq3#3"a`!!!!'!!!"!!!!rrr rpJ!"!!!!DJ!#rrrrp3!!!#S!!!!#!!%!!!!V!!!!"J#3"3(rrrrd!!!!!J!!!!% !!!!(!!$rrrrc!!(rN!3!!Irrrr!!!!!-!!!!$2rrrrd!![rrrr%!!!"-!!!!(!! (!!!!"!!!!!)!N!F&!!!!!J!!!!3!!!!'!!!!"`!!!!J!!!"0!!!!"J!!!!N!!!! 1!!!!!J!!!!S!!!!2!!!!#`!!!!i!!!!3rrrrm!!!!"!!!2rrrr)!![rrrr%!![r rrqd!!!"D!!!!4J!$!!!!@`!!!!X!N!GF!!!!!`!!!!)!!!"A!!!!!3!!!!B!![r rrqi!!!"B!!!!4J!"!!!!@Irrrqd!N!Errrr[!!(rrrrZ!!(rrrrX!!!!"3!!!!% !!!!(!!,rrrrU!!!!C3!!!!3!!J!!!'B!!!!,!*!(C`!!!!X!!!!#!!,rrrrV!!! !B!!!!"!!"3!!!'%!!!!#!*!(BJ!!!!)!!!!%!!!!B`!!!!S!!!!)!!!!C2rrrqS !!!!+!!!!D!!!!!X!!!!1!!$rrrrT!!(rrrrk!!,rrrrR!!!!I!!!!!3!!3!!!"X !!!"N!*!'rrrrk!!"rrrrj`!!rrrrjJ!"!!!!!`!"rrrrj3!!!!J!!!!%rrrrq!! "rrrriJ!!!!i!!!!"!!!!"`!#rrrri`!!!)i!!!!3!!-!!!#2!!!!"J#3"j!!!!! !"J!!!!%!!!#4rrrriJ!!!!)!!2rrrq3!!Irrrq-!![rrrpi!!!#[!!!!#!!#!!! !X!!!!'B!N!Ha!!!!!`!!!!3!!2rrrpm!!Irrrpi!![rrrq!!!!#V!!!!(!!(!!! !V!!!!'B!N!HY!!!!!J!!!!3!!!#Zrrrrh`!!!!J!!!#b!!!!!J!!!!`!!!#c!!! !CJ!!!"!!!!#d!!!!!J!!!"3!!!#e!!!!!`!!!"J!!2rrrq%!!Irrrq!!![rrrp` !!!#j!!!!'!!'!!!!ZJ!!!'F!N!Hl!!!!C!!!!!3!!!#m!!!!!`!!!!J!!!#p!!! !!`!!!!`!!!#qrrrrh`!!!"!!!!!E!!!!C!!!!"3!![rrrpd!!!#h!!!!'!!"!!! !Z2rrrp`!N!8#rrrrf`!!!-X!!!!B!!%!!!#irrrrh!#3"3,rrrr@!!!!l3!!!!3 !!3!!!1i!!!!#!*!&!Irrrp8!!!!)!!!!!3!!!!F!![rrrpF!!!$S!!!!%!!&!!! !k3!!!!B!N!IU!!!!"J!!!!%!!!$V!!!!#J!!!!)!!!$XrrrreJ!!!!3!!!$[rrr re3!!!!J!![rrrpJ!!!$G!!!!3J!0!!!!h[rrrrF!N!II!!!!C!!!!!B!!!$J!!! !#`!!!!S!!!$K!!!!#`!!!!`!!!$L!!!!!J!!!!i!!!$M!!!!"J!!!")!!!$N!!! !"J!!!"-!!!$P!!!!CJ!!!"3!!!$Q!!!!!`!!!"J!!!$Rrrrre`!!!"`!!!$`rrr re`!!!#`!!!$a!!!!"J!!!$`!!!$b!!!!!`!!!$i!!2rrrp3!![rrrpN!![rrrpN !!!$E!!!!4J!#!!!!h2rrrpJ!N!Icrrrre!!!!%)!!2rrrpS!!IrrrpN!!Irrrp% !!!!)!!!!"!!!!!-!![rrrp)!!!$r!!!!#!!"!!!"!2rrrp%!N!Errrr6!!(rrrr 5!!,rrrr2!!!""!!!!!J!!J!!!38!!!!$!*!'!3B!!!!$!!!!"!!!rrrrd!!"rrr rc`!#rrrrcJ!!!3J!!!!%!!%!!!%*!!!!!`#3"[rrrmd!!3!!!!-!!rrrrm`!!!% a!!B!"!!!!6)!N!B"-`!!!!%!!!%d!!!!!J!!!68!!!!$!!(rrrr,!!!!8!!!!!6 rrrrS!!,rrrr+!!!"2J!!!!J!!J!!!6m!!!!#!*!'!8!!!!!#!!!!"!!#rrrrb!! !!A8!!!!3!!8!!!&f!!!!#J#3"J&h!!!!!J!!!!)!!!&i!!!!!J!!!!B!!!&jrrr rkJ!!!!S!!!&k!!!!#J!!!!i!!2rrrmN!!IrrrmJ!!Irrrm-!!!!#!!!!!J!!!!X !![rrrm3!!!',!!!!#!!$!!!"L[rrrm8!N!B"M!!!!!X!!!!%!!!"MIrrrm-!!!! '!!$rrrr&!!(rrrr%!!,rrrr'!!!"L3!!!"B!"`!!!BVrrrr&!*!'!B`!!!!,!!! !"!!!!Bi!!!!+!!!!"J!!!Bm!!!!#!!!!#!!!!C!!!!!!!J!!!!`!!!'4rrrrkJ! !!"!!!!'5!!!!#J!!!"3!!2rrrmF!!IrrrmB!!rrrrm)!!!'I!!B!#J!!!D!!N!B "S3!!!!%!!!'L!!!!!J!!!D-!!!!$!!!"T!!!!!3!!!'P!!!!"3!!!DB!!!!'!!! "T`!!!!F!!!'S!!!!#!!!!DN!!!!*!!,rrrqq!!!"Y`!!!!J!"!!!!EJ!!!!,!*! '!EN!!!!,!!!!!J!!!ES!!!!,!!!!"!!!!EX!!!!,!!!!"J!#rrrr[`!!!E-!!!! 1!!-!!!'d!!!!CJ#3"J'e!!!!#`!!!!3!!!'frrrr[J!!!!B!![rrrl`!!!'q!!! !#J!#!!!"[`!!!!S!N!B"`2rrrli!!!!#!!$rrrqp!!,rrrqm!!(rrrqk!!!!#!! !!!%!!!!'!!,rrrql!!!"``!!!!J!!3!!!F6rrrqk!*!&![rrrl3!!!(L!!!!&!! (!!!"i`!!!!)!N!B"h3!!!!F!!!!%!!!"j!!!!!F!!!!&!!!"j3!!!!S!!!!'!!! "j[rrrrB!!!!)!!!"hJ!!!!)!!!!-!!!"j`!!!!)!!!!3!!(rrrqe!!!!&!!!!"6 rrrqd!!,rrrqf!!!"fJ!!!#!!#!!!!GX!!!!+!*!($J!!!!F!!!!#!!!"h!!!!!B !!!!$!!!"h3!!!!)!!!!%!!!"hJ!!!!B!!!!)!!!"h`!!!!B!!!!*!!!"i!!!!!S !!!!+!!!"iIrrrl8!!!!-!!$rrrqh!!(rrrqf!!,rrrqi!!!"f!!!!$3!$3!!!GR rrrqh!*!'!HMrrrqh!!!!"!!!!HRrrrqh!!!!#!!!!HVrrrqh!!!!$!!!!H[rrrq h!!!!%!!!!Hcrrrqh!!!!&!!!!Hhrrrqh!!!!'!!!!Hlrrrqh!!!!(!!!!Hrrrrq h!!!!)!!!!I$rrrqh!!!!*!!!!I(rrrqh!!!!+!!!!I,rrrqh!!!!,!!!!I2rrrq h!!!!-!!!rrrrZ3!"rrrrZ!!#rrrr`!!!!E!!!!"X!"N!!!'a!!!!#`#3"J'brrr r[`!!!!)!!!'mrrrr[J!!!"!!!!'prrrr[3!!!"J!!!("rrrr[3!!!"`!!!(#rrr rZ`!!!#!!!!(&rrrrZ`!!!#J!!!('rrrrkJ!!!$!!!!((rrrrkJ!!!$3!!!()!!! !#`!!!$J!!!(*rrrrZ`!!!$S!!!(+!!!!#`!!!%)!!!(,!!!!#`!!!%3!!!(-!!! !"J!!!%B!!!(0!!!!#`!!!%J!!!(1!!!!#`!!!%S!!!(2!!!!!`!!!%`!!!(3!!! !!`!!!&!!!!(4!!!!!`!!!&3!!!(5!!!!#`!!!&J!!!(6!!!!#`!!!&S!!!(8!!! !C`!!!&`!!!(9!!!!C`!!!'!!!!(@!!!!C`!!!'3!!!(ArrrrZ3!!!'J!!2rrrm% !!Irrrm!!!2rrrl-!!Irrrr8!!2rrrl)!!3!!!!X!!Irrrl%!!!!0!!!!!3!!!!F !![rrrl$rN!3!!!!)!!!!![rrrkrrN!3!!!!B!!!%U%G98dN!!ZK(990*3fpZCQP R!!'l4e96580[EQCTCh9bBA4TEfi!!mYNC@CKG@ad9(P`C3!'%'4PCQ&eE(4$FQ9 KG'pb!!!ZBA9dEe0`D@i!"a&ZEd0SC'Pb!!%bB@0MGA*6G'&d!!,qD'&c3fpZFfp XC3!'kQj[3A9dEdPZDA4(FQ&Q!!)(FfKKFQ9N6h"PEJ!(9R0TCe"TF'8!"DTZEd& `F'aP4ACPER4c!!G%GQ9bFfP[EJ!$P'jeE90eCQCTBf9c!!#1Fh9QCQPMCA-!!TC (990*8h9QCQPi!!D`Fh9QCQPi!!#,Fh9QCP4jF'8!!r"cG@CQ3h*PBA4[FJ!%B8! j-6B!"l*6Ef0VCA4c!!0&8fpMDf9d9'&LE'8!"kTcEf0VCA4c!!Ej8fpMDf9d!!! FFQ9Q3fpeER3!"r0IAhC`G()N!!5eEQ9PC(0$EfjcEfaP!!"a4e96590`D@i!"eC (990*4'9QBA9XG&0`D@i!!"j(990*4AKPB`!(!%G98dP%C@CKG@ad4AKPB`!"0%G 98dP'9(P`C3!#f'G(990*8h"PC@3!!J&PGR4)B@jNE'9b!!GaCACd6@&cD`!"I'9 bFQpb8fpMD`!"`'9bFQpb9(P`C3!#Tf9bFQpb3fpeER3!!Lp$BA4MD&0dC%P2!!9 kD'&c6@&VC8C68h"PB`!(SdCPBA4eFQ8!",pREfpN!!!,D'&c3@aTBA-!!#&SBA0 1CAG64J!&XfKKFe"bEf0PFh00Ch)!!%jSBA0$8NeI8!!'a'KKFd0563!'q@KKFd0 83J!$%@KKFe0dC%j#8&p3!!&pD'&c8h4N6N*3!!D`D'&c3A"`E'9&GQ9ZG(-!!Ej SBA05CACTFf9N9'PYC8eRFJ!$V5j(990*Af9bFQpb!!AaCA*bEQm!!c9PFR)!"e` Z4e9659pPFR*[FPpZD@`!"S*QDA*cG&4TE@9IAc%h4e96580[EQCTCh9bBA4TEfi !"eahC9pI-6G(990*3fpZCQPRGA*KG'P[EJ!%!d!j0MJ!"#dZAepMG&pI-6G(990 *3fpZCQPRGA*KG'P[ENCf!!-[,N0eFP*PFdCTE'8!!jFZ9A0P8Q9c4QPXC3!&U#j (CA3a8Q9cEh9bBf8!"XSZ4f9d5'&ZC'aP8fPkC3!$,#jIAfjhB9pI4P9X!!D),NK -Ef0V!!GP,QePE@0`H3!'ibjMD'4TFJ!!p5j5C@aPBA0P8Q9cEh9bBf8!"&YdD'P c!!&UDJ!"D@N!!$PMEfjQ8fPkC3!')Q0[EQCTC`!'-NG98dP$EfjQD@G5Fh*M!!8 "CQaKCh-!!Rj[E'45CA0'D@aP!!3%3$Nf13!$6bj6CA4%C@CKG@ad4P4jF'9IAc% h4e96580[EQCTCh9bBA4TEfj$4P*$194'D@aP8h"PB`!$P#jIAh"dFPpRE(9P!!) (,NK(CA4'5@jQE`!#15j36(0dFR*MD()!!'NZFh4bEQ0`H3!!!#jcG(*ZBfe`!!+ N,NK6CA4'5@jQE`!%UfjKE@8!!AY84QPXC90`C@-!"b8N4P06F'9M!!B)4P06F'9 M!!FHGP*PCNjeE3!&bR"KFNP%!!4)Ff9KFQ0SFh9QCQPi!!2cC'pd!!5UD@jQE`! &INC*EQC[!!CQCQ48HA"P!!&VCQ4$FQ9KG'pb!!HmCQ4'E'&RF`!#"QCN6'pMBA4 TEfi!"D43EfPZG!!"GRB!!@KS!!DfCQ4'E'4b!!4$3$Ni0`!(R#j%Ed&eG'p*EQP d4h*KCPpI-6G(990*3fpZCQPRGA*KG'P[EN0'GJ!(q#j-68GPG%0eFR*PER4"03! #NR&N!!'[,NPZDA4(FQ&Q!!4G3$Nj-3!!!5j*EQPd3fpZFfpXC9pI4RB!"D8Z5@j TG%0[ER0[E'9IAc%a8fpMDf9d9'&LE'9'GJ!&HN!a-$!h!!Ea,QGPG'4dB@*XCA0 THQ8!"fBZFfpMDf9d!!(H,N4[E@&TEPpI-6*6Ef0VCA4%EfeKD@j'D3!"Pbj*ER0 dB@aXAema-90[BfYPG&4KBQaP4P!f8fpMDf9dD3!'Gf4[E@&TEJ!%Eh4jF'8!!,9 `FQpdEf0[E!!#-'CN!!3ZFfpMD`!$l'4[E3!%0&0[BfYPG%4[E@&TEJ!&Y%!a-$) a!!0#,R0[BfYPG("KDA)!!-mZ8Q9YEhCPAema-90[BfYPG&4KBQaP4QN!!Z4cGJ! &h%!a-$-j!!@2,R"TF'8!"%%Z4e965AGTG'K9EQPi8fpMDf9dF`!"1#jcD(9dC'p hEJ!&pN!a-$3c!!HI,Q0SEfpcC3!'mh"bEfe`G!!#Y'0[ER0dFQ&TER3!"k*ZB@e PE'9Z!!Ak3$%`0$F!"8BZBQPZC!!'r#jIAhCMAema-90[BfYPG&4KBQaP4QN!!A0 c!!#IFfpMDf&NC()!"YKcB9pXC@i!!GGcB9pQB@eTE(N!"`KcB9pNBA4K!!Am3$% `0$N!!0JZBfpZEQ9MG!!%3'&NC()!"qaKC'4bE'9Z!!883$%`06%!"aSZE'PcG'9 Z!!5&F@aPEJ!&&N!a-$8c!!HA,Q&MBf9`G!!&0d!a-$Bc!!5S,Q0XEh0PFfpMDf9 d!!8j3$%`0M8!"3mZFQ9MGJ!$@Lj(990*3fKPBfY"E'&bE9pI4RB!"J0LG@CQCA) !"[GLG@CXC@i!"f9QFQpYE'9Z!!9@3$%`0c)!!F3ZFQ9MGQCbEfd!"$0QFQpY!!9 G3$%`0cN!!1iZFQ9MGQecC`!$JbjIAf0dAemj8f0KG(4PFQ9b4P"$0@P[GQ9MD3! $,5jIAf4dAemj8f0KG(4PFQ9b4RB!!fYYFfF!"M9YFfGSC()!!"GYFfGIEQ&YC3! $-fecCepZB@ePE'9Z!!GVEA0RAfP[GJ!&-fP[GQ9M!!"bD@pfAf*KFf8!"`aTEhC IE'9Z!!+#EA0RAfP[GQaPEJ!$X'ecCepMEfjdFQpX!!BNEA0RAf0[ER4bEfaXC@i !!AYYFfGICQaKCh-!"A"cBf&dG!!"390MBA4dCA*PFJ!#2L46Bf&dG%GKG'J!!FC 6Bf&dG%GKG'J!"aecBh*KG'0S!!1HBR9Q!!2-E'9Z!!8&BfpeER3!!TaTE`!&Q8! a-$Ne!!)-AepNG&pI190MBA4dCA*PFNCf!!@D3$%`16B!"JiZ5'&ZC'aP9h*TG'9 &FR*[FR0IAdCT!!BB,R*KDA0P!!ERFQ9dGQ&X!!@I3$%a-$J!"dJZGh*TG'9f!!, H,PpIBh4IAcK(BA4SCA*PFNC33c9TEhCPBfN!!MBZAepNG&pI1%GKG'KPFQ9b4RB !!`PTEhB!"!YRBA4S!!"-4f&dD'9bCA)!"GY!-6%b0!!"VPpIC(4IAcK(BA4SCA* PFNCf!!AF3$%a-M8!"H-ZFf9ZC!!&q8!a-6-b!!H0,R0PEQ4dE`!#rA4[!!A(G'p XC@i!"3"!-6%c13!!I5jcC@jNEA0R!!8p3$%a068!"6j!-6%e0J!&E5jeF'4KG'9 cG'&dGA-!"hJZGhK0B@06Ef0VCA4)B@jNE'9b8(*[B`!(ZA4MF(0[BfX!!Ep83e" 6Ef0VCA3!!lXN58j&9&0[BfYPG!!#c%P14946Ef0VCA3!"rBN8fpMDf9d!!$IGhK bC@CMEfi!"b9hH'9fC@jd!!2RGhKPGQ9ZG'eKFfX!"R*cG(*PB@d!"XjcG'&dGA- !!ieZEfjLE'pMDfPZC`!(pR*PBhC#G@B!"CTbC@0fC!!#ch0K!!2NFfpMDf&NC(* ID@i!"`*cD@jIE'9Z!!,!FfPZAfCKE@PXH3!!@R0TEPp`Eh*d!!!$FfPZAf&NC() !"feTEPpKC'4b!!CpFepKC'4b!!#bFfPZAhTPFQm!"1a`C@9b!!DaFh0dBA4P!!$ (BA0jEQ0PFR)!"%*cC@aQ!!%FBf&Z9h*TG'93!!$ABf&Z8Q9KC&!!!B&PH'0PF(4 TEfi!!'CMB@jAFQPdC3!(2'0KEP*PB@3!"AK!-6%h-!!(FLjcC@aPBh3!"cmZE@9 YFf9d!!0,,Na04f9d9'PMDh-!"3phD@4dD!!(a(*PB@4QC(-!"ReQC&pcCA3!!#" QC(0IBQPdF`!!EAGbDA4PCQ4c!!(iCAKMCA"dCQ4c!!G*G'PYC@peG!!(fh4TE@9 fB@`!"UPdGPpcC@-!"a9dGPpeFf9M!!'BFf&fC89bFQj[!!,'4A*bEQp6BACPFJ! $D@C6BACPC%9bFQj[!!&PC3!"GhF!!A*b!!)3C@3!!P*hC!!#XR*N!!"GGf&TG(4 TE@8!!@KcG'&bG(4TE@8!"9a!-6)f-!!%m&pIC(4IAc%`4A*bEQp6BACPFNCf!!9 G3$%b0M%!"BFZAepNG&pI-6"&FR*ZEe0KGQ9b4RB!!NmZAepNE&pI4P"f!!9K3$% b0M8!"+8ZCf9dFfpMDfjKE@8!"@0!-6)f0`!%@bjRCA4`C@9bEQ&YC3!&C8!a-MB j!!-'D'ph!!9p3$%b0c%!"--ZC(9`!!9r3$%b0c-!"DSZC(9`-J!#Rh-a!!@&3$% b0cN!"(%ZD@pMG'acEf0VCA3!"c"bCA&eCA0d!!5hBA*RF!!&Rd!a-MJc!!2[,QG PG(0[BfY[F(3!"@YXCACPE!!(3'p`G'jKE@8!"[e[F(4fB@`!"MG[F(4XC@i!"D& !-6)i03!$DLjcCA4cEf0VEh"d!!@M3$%b1$F!"$JZ4e96590PG%K[EfX!"'"MEf4 P!!4-4e9658K[EfY$Ef4P!!A[4e9659p6F'PZ5'p[D`!&f%G98dPI4AKPBdK[EfX !"J&(990*AdC8HA"P5'p[D`!'"NG98dPI8h"PC@4)EfpV!!4+D'p[D`!%-5j(990 *4f9d5'p[D`!'0bj(990*8f9d4ACPER4c!!92G'&LE'8!!lKPGR3!"NXZ4e9658G PG%9fC@jdF`!(Mf4[E@&TER0IAc%b8fpMDf9d4'pYB@PZ!!HBF(*[Bf9cFepI-6* 6Ef0VCA4%EfeKD@i!!lY3FQpMCA0c8f9bD@&X6R9YBQ9b!!@-D'PRD%a[EQG2CP" 66J!%H@a[Gda[EQG2CP"66J!&a8!a-c%f!!!R,P*PB@4jAema-P0[BfYPG%4[E@& TENCf!!C2,PGKDf99F&"bEf0PFh-!"Gp!-6-b-!!(kbjIAf0dAema-P0[BfYPG%4 [E@&TENCT!!4JAepfG&pI-6*6Ef0VCA4%EfeKD@i!!M%Z4f9d3h9bFQ9ZG&"bEf0 PFh-!"HG!-6-b1!!(i5jIAf4dAema-P0[BfYPG%4[E@&TENCf!!8"3$%c-c)!!KB ZFfpMDf9dAema-P0[BfYPG%4[E@&TENCTF`!&!d!a-c-d!!H',R0[BfYPG("KDA* IAc%b8fpMDf9d4'pYB@PZ4QPc8&!f8fpMDf9d!!8&3$%c-cB!!T8ZBfK[Eh0PAem a-P0[BfYPG%4[E@&TENCT8'03GQP3GP"T!!8(3$%c-cJ!"(BZ4'pZG&0dFQP`Aem a-P0[BfYPG%4[E@&TENCf!!FL,NCXGA0S8h4ND@pIAdCf!!B&CQCXGA0S!!E-,QC hB@aV!!8J3$%c0$%!"Q%ZAepMG&pI-6&6Ef0VCA48B@*XC8Cf!!Eh4QaeFfK6G'4 TEepI4RB!"j8ZBA4PH'Pd!!8L3$%c0$-!"CPcG'&bG!!&48!a-c8e!!9N3$%c0M3 !"B&!-6-h-3!'V5jIAf4dAema-90[BfYPG&4KBQaP4RB!"MPQBfa[Ff8!"LNZBfa [Ff8!"D*!-6-i-J!"0dG98dP"E'&bE3!&U%!a-cJi!!Bi,Q&XBA*Y!!I1Ff9MEfj NF`!"-h*PE@&TEQPZC`!&`%!a-cN`!!6*,N4[8faPCA"IAdCX!!9PG'PMDh-!"Vj hB@YPGA!!"D4!-63`-3!(G#jeFfaPCA!!!"PeFf9MEfjNF`!&TN!a0$!c!!-H,N0 YC&"PFQP[C&pI4P!a-89fC@jd8Q9MEh*N!!&r,NGPG&0MFQP`G%eKEQ&RCA*@BA* TB@*XC3!#9#j(CA46Bh*TF(4@BA*TB@*XC3!%6bj(CA45CA0[GA*MC3!&##j,CAP 8FQ&ZFfaKG'8!!'adD'9&GQ9ZG!!$T89fC@jd8Q9MEh*N!!6CGfKKG!!(5fePFh0 KCf8!"&0hD'9Z!!92GfKPFQ8!!5aYEf4TCQPPFR-!"mK,3dK58(4b!!9dD%Y$5&) !"FTcG'&dC3!'C'YPH80*C!!!3@KTCfK$D'&b!!HqE'ph3fKKFJ!(YfYPH8PZCQm !!ZGfDA*dG@&X5f9j!!GUDf9j3fpNC3!$j@C8D@eP9'p4G@Pd!!AM3$%d-M!!!PF Z4e9658PZG'9bFR9`G&pI4RB!!28Z6%e(CA4&GQ9ZG&&eCA9P!!CZCACPER44!!9 N4AC44@`!"4Ya6'PZD`!&Ie&&E'9Y!!@DF94jF'8!"Bja4'&dB3!!Ff9fG&&AD'& d!!-*CACd88ePFh0KCf8!!-jPGR449fKPEJ!"[f9fG&&AD'9bC3!&%f9fG&&0Ef4 TCQPPFR-!"30!-63c-!!#rP0dB@jN3@a[EQ8!!,9R4e96590`D@j$EfjdFQpX!!% jD@j'Eh*PCh*[G@jN*$%d-c%!"39!-63c-J!!##j(990*4'9QBA9XG&0`D@i!"98 Z8QpdBA4P3h9bFfpb!!BR,PGKDA41CAKd4ACPER3!!`8Z4QPZC>EQ4[G`!%`5j 6HA0dC@e$E'PMD`!%Cbj"49"bEf0PFh0"F("XC89fC@jd!!39,NCXGA0S4ACPER4 c!!!PFh"TEPpYFfF!"d468&p0590$!!'H8e"I8d9-4808!!IP8e"I6N&043!(8e0 3Ad&%4&)!"M"68&p69&*&38eI8N9"4!!(i&03Ae088N9"69pA8NP843!&"903Ad4 (8N&0Ae*&383!"S*68&p%4e*"69pA8NP843!!aP03Ae0-4893!!498e"I39986ep 68%P1!!-kBA*R!!FaBfpZG(*TBJ!%m@eKFfX!!5pcE'9PF&4TE@8!!L*PGJ!$@(G TEJ!!BdGbB@C3Eh*d!!DaC'9fD@0P!!"0F'pbG%*TG(-!"LC#DA40BA!!!,0LBA0 P3@4NFJ!!IR*[Gd*jG'9c!!BVBQpeEQ4c!!4r8Q9MG!!$,h4[F!!%$'aPCR3!"L* LEh4dEfd!"GCbD@GSG!!!*("[FR45C@0d!!B`GQPc8QGZ!!(&6@&M8Q9RD@pZ!!G "FQGZ8fPkC3!(cR*REN*#EhJ!"k4ME'P`8QGZ!!@CBQY3BA3!"kT3BA4dCA*Z!!0 KF'&d!!F8CQPXE&"KG!!&`("Z6'pM!!DVF'j6DATP!!BCF'j0Ef4P!!ArF'j3BA3 !"4G`EPCTF`!'hR4i4QpZG!!'9A4i4Q&MC3!'-A4i6@pNC3!'ih4i8fPkC3!(Zh0 `4AKdFQ%!"epQCd0[E'pb!!FiBQY$Efa[FJ!([@0[E(*#DA3!!XC`BA46G(*PG'0 S!!GdF'PM8f&fC3!(SA*REP0KGQ8!!!a`Efaj8f&fC3!"-QGbB@C3FQpMF`!()e& %8(*[Bh-!!%GdCAKd8(*[B`!"[e*[GA4TEQ9%CA0MFQP`G'pb!!FRCfp0DAKPC%e [C'98FQ&`!!B)FQpeG'PZC84PFf0bDA"dEh*'E'&RF`!"9R*PFf9bGQ9N-3!"9h* PFf9bGQ9N-J!%Gh0PE'9MG'pb5@jQE`!%+R*[GA4TEQ9$Eh9ZG!!'m(*[GA4TEQ9 5C@0[FQ4c!!8I8QpeG'PZC9*PBfpbC!!![h"bEf0*EQC[!!23590"!!6lFQpeG'P ZC8CXB@Gc!!D%F(*[Bd4PFf0bDA"dEh)!!0GcC@aPBh4[FJ!!M@aTEQ93FQpM!!# jFQ9MG&"bEf-!!3jb8Q9MG&"bEf-!!*&[GQ&X8(*[B`!()@&bBe"bEf-!!2"`Efa j8(*[B`!(JA*REP"bEf-!!+TLDA4c8(*[B`!$lQ0[E@ePER43FQpM!!)lG(K0C@& c8(*[B`!#j'GPG&"TBe"bEf-!!R&`GA43D@03FQpM!!@N3$%d1$!!",-ZAepMG&p I0dCPBA4eFQ9'9A06B`!!Bbj14f9d9(*KF%&NC(*PFh-!"k0dFQ&`6R9Y!!3UG&4 jF!!&TN!a0$Jb!!1k,PpIBh4IAcG'C@&dGA*P4P9XE!!!-5j(CA0dB@ad!!9BGQ& XG@8!")0KG(4b!!@S3$%d1$3!"--ZAepMG&pI0dCPBA4eFQ9'9@aXE!!&UN!a0$J f!!IU,PpIBh4IAcG'C@&dGA*P4P*$0dCPBA4eFQ934RCIF`!%`h"bC@0[EQ4TG'P [EJ!%$fPZDA3!"Da!-63i1!!&$LjIAf0dAemh4Q9KG(9bC8C34RCIF`!&a%!a0$N `!!IY,PpIBh4IAcG'C@&dGA*P4P*$0dCPBA4eFQ934RCIGJ!&b8!a0$Ne!!84,Pp IBh4IAcG'C@&dGA*P4P"'GPpf!!A,3$%d16F!"1dZAepMG&pI0dCPBA4eFQ9'8N- h4Q9KG(9bC9*$0dCPBA4eFQ8!"@9MEfjN-3!&CQ0[EQ3b!!+rEAPZCA3N-63j13! $0fejEQpNC53a06!`!!!aCA*b*$%e-$%!"DP!-68`-J!"ELj"F("XC94KE'Y*C'9 ZG'PdH9pI4P*c8R-!!)iZ69"36h"PEJ!(kLj(CA41Ef4P3@4NFQ9cF`!$ZQjPG!! %iQj[C'8!"E"!-68`13!"q#j(990*4'9QBA9XG&0PG(9`!!$D4e965AGTG'K"F(" XC94KE'Y6Ef0VCA4c!!+Q,NG98dP6CA4eF!!(#%G98dPhDA4S5@jdCA*ZCA46Ef0 VCA4c!!+)4e965AGTG'K339"6Ef0VCA4c!!,b4e965AGTG'K38%06Ef0VCA4c!!2 r4e965AGTG'K9EQPi8fpMDf9dF`!%#%G98dPhDA4S8dP299K6Ef0VCA4c!!A)3$% e-6%!"&*`FQpM!!A+3$%e-6-!"FY!-68a0!!'r&pI8P4859pI-6*6Ef0VCA4%Efe KD@i!!8PMD'p[Ff9IAc%b8fpMDf9d4'pYB@PZ4QP3Be"fD9"f8'N!"SpcEf0VCA4 `B@PbAema-P0[BfYPG%4[E@&TENCTFe"30P0[BfYPG!!"mA0[BfYPG&pI-6*6Ef0 VCA4%EfeKD@j'DA-!"J0IAf4dAema-P0[BfYPG%4[E@&TENCf!!##,PpIFfPZDA4 I4e96584TFh"KG'0SAf0`!!@UAepNG&pI-6&6Ef0VCA48B@*XC8Cf!!($,PpIFQ9 RDA0dCA*ICfa[BQ&XAfpLDQ9MG!!(F%PZDA4$8Nd!!#9*EQPd3e4#9A4TE'PdD@9 c!!A03$%e-6B!!5P(990*8f9dGA!!!hj86d-!!1C(990*4'9QBA9XG&0PG(9`!!$ $3A"`E'98B@aV5@4PER4TG(PIAdC5Fe*c!!1MAepMG&pI0dCPBA4eFQ9'8N-h4Q9 KG(9bC9*$0dCPBA4eFQ8!"&GIAf0dAemh4Q9KG(9bC8C34RCIGJ!'3epIBh4IAcG 'C@&dGA*P4P*$0dCPBA4eFQ934RCIGJ!%9&pIBh4IAcG'C@&dGA*P4P"'GPpc!!C !AepMG&pI0dCPBA4eFQ9'8N-h4Q9KG(9bC9"'GPpc!!25AepMG&pI0dCPBA4eFQ9 '9@aXE!!#-epIBh4IAcG'C@&dGA*P4P9XE!!$iPpIBh4IAcG'C@&dGA*P4P9c8f- !!3T(990*5@jdCA*bGA"dAep'GJ!'fR9cE'9PF!!&E@&XBA*Y!!*,4e96580SC@0 V3@aKFQeIAdCf!!9fAepfBepI-6&6Ef0VCA48B@*XC8CT!!GT8Q9YEhCPAema-90 [BfYPG&4KBQaP4QN!!-G*ER0dB@aXAema-90[BfYPG&4KBQaP4P!f8fpMDf9dD3! &cPpIBh4IAc%a8fpMDf9d9'&LE'9'GJ!$D84[ER46G(*TF&pI-6*6Ef0VCA4%Efe KD@j'GJ!'69pIBh4IAc%b8fpMDf9d4'pYB@PZ4QN!"lT5C@&NH9pI-6*6Ef0VCA4 %EfeKD@j'GJ!!-%4[E@&TEPpI-6*6Ef0VCA4%EfeKD@j'D3!&e%G98dP(CA4&GQ9 ZG(-!"H"(990*8f9d4ACPER4c!!0M4e9658GPG%K[EfX!!fC(990*8f9d5'p[D`! #qR0PG(0[BfY[F(3!!SCRCA4cEf0VEh"d!!-&D@pMG'acEf0VCA3!"%4NGA!b!!1 3!'4eF!!!RR0SGA4NEhGZ!!1LCf9dF'9PFQjKE@8!!jKRCA4cEf0VEQ&YC3!'jA0 PE'9MG!!%M(9`C'&dCA0dBA4eF`!(+h0PEQ4YFfF!"J0cC@jNG'm!")&cC@jN!!D VGh*TG'9f!!GMFQ9MGQecC`!!6R*PBhCQFQpY!!5aFQ9MGJ!$1Q0XEh0PFfpMDf9 d!!BKB@0MCA"d!!CeE'PcG'9Z!!G,BfpZEQ9MG!!%k'*TEQ3!"K9MD'p[Ff8!"$" `DA"P!!,8FfpMDf9dF'&TFJ!'ZA0[BfYPG!!&2QGPG'4dB@*XCA0THQ8!")T*EQP d3fpZFfpXC9pI-6&6Ef0VCA48B@*XC8Cf!!C-4'p"GA4[5@jTG%GbB@CIAc%h4e9 6580[EQCTCh9bBA4TEfj$4RB!!S46CA4%C@CKG@ad4P4jF'9IAc%h4e96580[EQC TCh9bBA4TEfj$4P*$194'D@aP8h"PB`!$U&pIBh4IAc%h4e96580[EQCTCh9bBA4 TEfj'GJ!'$%G98dPICA*bEh*IEQPX!!+L4e9659pPFR*[FJ!!#3P36eG5!*!'$I! !!"4D!!!!4`!!$P`!!!Aq!!!)1!#3"jm!!!!)!*"!4@F!!%9T!*!&!89U!!3!!!! #!!!!6!!!!#!!!!)MNq(rr$[J!!&)!!!XL!-!!#`!!$T!JJ!F1!!!!*J$!!#)!`! "I!!(G8'#!!Jlr`!"1'-!!BJ$!!"m!!Ge3),rd$Kr!!#$iIrm6S!!)%9U!!3!!!! &!!!!H!!!!)!!!!,[L!-!!(`!"h3X!!!U3B)!4%#!!#JX!2r&3B)!1%#!!"!X!2q f3B)!0%J!!%3X!!!!3B)!0%J!!$JX!!"F3B)!(%#!!#`X!!!r3B)!#%J!!#!iB!! "6S!!))`$!!&m!!Ge3))!$$KJ!!"1J!!J1'-!!8[rrj!!6S!!)%9V!!3!!!!'!!! #B!!!!-)!!!3DI!J#TVmKrq53!!%!#*3Krk!li`!!1i3!!$XP!!#$BJ!!1!!!!*! !!`")1!!!!*!!!`"-L!3!!(`!"h9!JJ!31!$rfl!E!!")!!#%L"`!!#`!!$T"JJ! X1(`!!$L!!$T)!!!"B!!!!#J$!!""JJ!81(m!!%J!!!&J!!!!5!!!8#JC!!""JJ! m1,rrq$LCrrJi!!!)I!N$TS4N!!L!"!!%P'8!#*!!"3!%3J$rm)"N!!LJ"!!-N!" P!!L`"3!-5!!!%$Kr!!")!!!"B!!!!)JF!!!X!!!k3))!+)`F!!&m!!Ge3))!($J !!!#B(`"(1!!!!CJI!%BiI`!!5!!"@$Km!!")!!!"B!!!!$Y$!!#S'`!!I!!!0&3 !fAkB(`"'9!!'2d'#!"`iHJ!"5!!!!@!!!!#3!(m!5#J$!!"!JJ!-1(m!!%J!!4# !I`")1*`!!$Lk!!&)!!!"B!!!!)"r!%K)!!!"1k-!!#`G!(p!J3!81!$rfl!E!!! iI`!!5!!!f"ap!!a)!!!"B!!!!*!!I`"-+!-!!%##!!`iI`!!5!!!Z*Zr!%H$h`" )1k!!!%J!!&3iIJ!!5!!!!94J"Mp"JJ!-1)!!!%J!!!JiJ2rrJ(m!6"`G!!amJ`- ZJ*m!6"ap!!`i!`!)Im3",MKq!!!l[3!"5!!!!@!!!!"r`r)81pi!!BJI!%Gm!!G dI"d!!%'!rk3iI`!!5!!!!@!!!!"8B!Br3B)!%$J!!!#!I`"-X!-!!$Kr!!#!R`" -L,m!4hbP"h3i`!!"5!!!!@!!!!#BI`"'1(m!!)!"!'Ji)3"JI!J$TVXKrq41J!! J4A3$!*!%"`!!!"a&G3#3"3J!!!"F4A8!N!8*!!!!F%9e!*!&#J!!!-"&G3#3"3X !!!$m4A8!N!8-!!!"*%9e!*!&$3!!!8a&G3#3"3)!!!&B4A8!N!8-!!!"I%9e!*! &"3!!!Da&G3#3"3X!!!(S4A8!N!81!!!#$%9e!*!&$`!!!Ma&EJ`%!!!!)J!!!!b !!*!,J!!#B$J!!!"&G`#3"3B!N!4&D`!%!!!!)`!!!)`!!!(L!!!)F(`)!UD6iIr mNm(rq*!!!3!)P#(r`$[M!!#,``"(Ipi(G%J!!%!iI`!!J*m!6"`H!!amK!)8L"m !4h`!"h4m[J"31-!!!%J!!!&J!!!!Q(m!4P4J"Mp"JJ!-1'!!!8J!!"JX(J!!1pl rrd##rl`iB!!!Q(m!4S!"!%Ji)3"!I!J$TS2Krrb$`Iri6S!!)%9e!*!&$`!!!%4 &EJ`%!!!!*3!!!!b!!*!,J!!!M"!!!!"&G`#3"5-!N!4&DJ!%!!!!*J!!!BJ!!!) U!!!*%R`)!UDr3IrSN!!"!!L8)Iq`1q-!!$ZN!!!la3!!Jd)!!%J!!35)(3!!I!! (G#`!!#T"JJ$83)!!(#`!rm9"JJ$)3)!!1#`!rlC"JJ!J5!!!,#`!!&a"JJ!83)! !)#`!!$p"JJ#!5!!!&)`G!!&m!!Ge3))!#$Zprrq)(`!!I!-(G)JG!!"m!!GdI!- !!%'#!&5,R`!!Ij`(G#`Frrp!JJ!-1'$rrdJ!!!aAJ!BqI(S!VSYp!!"rH`Gd,"[ rrd##!!`i!2rr5!!!$&GJ"Mjm'J#ZI!-!!%'#!!`iB!!!5!!!Q$[r!!%l[3!"5!! !2#`H!!!lh[rr3)!!$$KJ!!")!!"i1rm!!6Kr!!!iR3!"1,i!!8J!!!&8B!Br3B, re$KJ!!&)!!"8,"i!!$[Hrrp!J[li5!!!0)JG!!"m!!Gd,!!!+N'#!"4!J!!B,!$ ra8'#!!K)!!!-1ld!!8J!!!`iB!!!5!!!&)JG!!"m!!Ge3),rb$KJ!!'!!3"B1#% !8(`)!kDl3IrS6S!!)%9d!`#3"#F!!!!F4A8!N!8Q!!!"%%9Z$!3!!!!T!!!!$)! !N!Z!!!')-!!!!%9h!*!&*J#3"%9Z%!%!!!!U!!!!!IrrrrJ!!!`-!*!%4@X!"!! !!!m!!!(N!!!#q!!!$!am#!+Q[f(rl*!!!3!)P#(qN!!li`!!1m3!!(bm+hNlCJ! !Jk)!!%##!$3iI`!!5!!!!@!!!!"8B!Br3))!$$KJ!!")!!'3!$Kr!!")!!!"B!! !!$KJ!!&)!!&mU"i!!#`!rrp!JJ"i9f!'2d##!!`iB!!!5!!"B)"q!!L)!`!!I!! (G8##!"JiB3%31*m!!%J!!!&J!!!!5!!!'$KK!-JiR`!!J,i!#%J!!!&J!!!!U"d !!(`!"c9"JJ!-1'!!!%J!!43iI`!!1*i!$$Lmrrmi`!!"5!!!!8J!!2aAB!Br3B) !4$KK!)!iR`!!1+)!!%J!!!&J!!!!U"d!!#`!!!""JJ!-1'!!!%J!!-`i!!!!X"i !!+JI!!#`(J!#J"m!!T!!(J!%U"i!!V!I!!#!(J!%N!!I!!)iB3!i1*m!!+Lq!!! i"3!"X"i!!(`&"c4)!!!"B!!!!$LrrrJiJ3!`1!!!#(`*!kD%C!!)J!3!"*4P!!L 3!!8!"%)!rr#!C!!)S!3!$*!!C3!)X!8!$+JG!!!X!!!!3))!3$Kr!!H!RJ!)L,m !"NJ!!!&8B!Br3B,rI$Kr!!!iRJ!-1,crrcM!!!&)!!!"9'!'2d'#rf!iB!!"5!! !#$KJ!!#!!3&i1#%"F(`)!kDlBIrX6S!!)%9d!`#3"!F!!!!J4A8!N!8V!!!!,%9 e!*!&,!!!!%K&G3#3"5d!!!#-4A8!N!8Z!!!!T%9e!*!&$`!!!0"&Fa!!N!3U!!! !k%9e!*!&,J!!!1a&G3#3"5m!!!&)4A8!N!8Q!!!"R%9e!*!&$`!!!EK&EJ`%!!! !-3!!!!b!!*!,J!!"j#J!!!"&G`#3"3m!N!4&D`!%!!!!-J!!!)!!!!2d!!!29A` )!UD6iIrmNm(rq*!!!3!)P#(r`*!!B3"B1'!!8%J!!!&J!!!!I(mEH8'#!"3iI`! !J)%!@$LJ!!")!!!"1pm!!)"L!!#S!`!!,!!!!%##!!`iIJ!!5!!!&$Kq!!")!!! "B!!!!$KJ!!#!!3")1#%!3(`)!kD$iIrmJm(rq%k!!#"&G3#3"6-!!!!F4A8!N!8 '!!!!1%9d!`#3"!F!!!"!4A8!N!8d!!!!A%9Z$3)!!!!f!!!!%S!!N!F3!!!m!$` !#J!!LS!!(`#3"N9f#T`!!!!h!!!!$N9Z$!3!!!!i!!!!$)!!N!k!!*!%4AF!N!8 b!*!%4AF0!*!%0J!!!!K&D`!%!!!!13!!!#J!!!4%!!!2qA`)!UD3!!%!#*3Krm# 3!'%!@)"K!&K)!!!"J!%!5$JK!%"m#!1Q6S!!)%9e!*!&)`!!!"4&EJ`%!!!!1J! !!!b!!*!,J!!!+!#3"%9h!*!&13#3"%9V!!3!!!!l!!!!5!!!"'i!!"!lL!-!4LJ !!!""JJ!i116rq$M$rrJi!!!)I!N$TS5Q!!L!"J!%P+F!#*!!"`!%3J$rm)#Q!!L J"J!-N!#R!!L`"`!-L'-!4Nk!!#"&D`!%!!!!23!!!#`!!!5Z!!!3`h`)!UD3!!% !#*3Krm#3!'%!@)"K!&K)!!!"B!!!!)!"!%Ji)3"!I!J$TNk!!#"&G3#3"63!!!! 84@i-"!!!!$i!!!!-J!#3#i!!!#`!N!4&G`#3"6d!N!4&E`S%!!!!2`!!!!L!!*! 24AB!N!8p!*!%4AB2!*!%3!!!!!4&E`S%!!!!33!!!!L!!*!24AB!N!8l!*!%4AB 2!*!%3!!!!!4&E`S%!!!!3J!!!!L!!*!24AB!N!8j!*!%4AB2!*!%3!!!!!4&E`S %!!!!3`!!!!L!!*!24AB!N!8b!*!%4AB2!*!%3!!!!!4&E`S%!!!!4!!!!!L!!*! 24AB!N!82!*!%4AB2!*!%3!!!!!4&E`S%!!!!43!!!!L!!*!24AB!N!8M!*!%4AB 2!*!%3!!!!!4&E`S%!!!!4J!!!!L!!*!24AB!N!8'!*!%4AB2!*!%3!!!!!4&E`- %!!!!*`!!!!5!!*!,4AB&!*!%*`#3"%9[!`3!!!!(!!!!")!!N!Y&GJ8!N!3(!*! %4@m2"!!!!%!!N!5!!*!(4@J!!&0C68J!!!6J!!!!#3#3&3%!N!B#6!!!!!3!!!* 2!!!!$!!!!S3!!!!B!!!#RJ!!!#`!!!,(!!!!-!!!!Y8!!!"!!!!#frq3"!!!!Z` !!J!!!!-!!!"Q!3#3"!-!!!!%!!!!!`#3"4m!!3#3"J-V!!!!8!!!!fB!!!"B!!! $M`!!!'3!!!22!!!!E!!!!rMrN!3!!!3A!!%!!!!$!!!!CJ%!N!3$!!%!N!B%BJ! !!$`!!!5G!!!!5!!!",8!!!"X!!!%qJ!!!(`!!!8)!!!!K!!!"4J!!!#m!!!&33! !!-J!!!92!!!!e!!!"@J!!!$J!!!&T3!!!2J!!!AJ!!!")!!!"J%!!!%i!!!'2!! !!8!!!!C(!!!"@!!!"Qd!!!&S!!!'VJ!!!AJ!!!E6!!!"N!!!!!Ep!!!"Q!!!"`N !!!'S!!!(J`!!!HJ!!!IK!!!##!!!##!!!!)F!!!)-!!!!LJ!!!K)rj!%!!!)E3! '!!!!%2q3"!%!N!3I!!!!!`!!!'B"!*!%(!!!!"lrrrrj!3#3""N!!!!I!!!!CJ# 3"4i!!!!J!!!!!`#3"4d!!!!K!!!!!`#3"4S!!3#3"JL+!!!!*!!!#,8!!!"B!!! )k3!!!'`!!!Mjrj!%!!!*$`!#!!!!%2q3"!%!N!3I!!!!*!!!!!-!N!8H!!%!N!B *B3!!!#3!!!Pk!!!!D!!!#DS!!!"d!!!*[`!!!(J!!!S1!!!!f!!!#P!!!!$J!!! +J!!!!1`!!!Vd!!!!q!!!#``!!!%!!!!,+`!!!33!!!Y@!!!"(!!!#eX!!!%N!!! ,I3!!!6!!!!Z"!!!"0!!!#j3!!!&8!!!,``!!!9`!!![Q!!!"C!!!#rB!!!&`!!! ,r2q3"!!!$!N!!`!!!"J!!!"Q!3#3""m!!!!$!!!!CJ%!N!3G!!!!+!!!!!-"!*! %(J!"!*!'$&!!!!!S!!!-B`!!!$`!!!ae!!!!4!!!$)8!!!"3!!!-N`!!!&J!!!b Q!!!!C!!!$0%!!!"X!!!-pJ!!!(3!!!d'!!!!K!!!$4m!!!#B!!!0-J!!!+`!!!e 3!!!!f!!!$Bm!!!$J!!!0R3!!!23!!!f[!!!"!!!!$Em!!!%)!!!0dJ!!!5!!!!i X!!!"5!!!$Q8!!!'3!!!!$VB!!!'S!!!1r`!!!F3!!!mQ!!!"c!!!$cRrN!3!!!p (!!3!!!!3rj!%!3#3""m!!!!Errrrq`%!N!3H!!!!*!!!!!-"!*!%(!!!!$!!!!! '!3#3""X!!3#3"Jq$!!!!(!!!$iB!!!"3!!!2bJ!!!&J!!!rD!!!!C!!!$qVrN!3 !!!rf!!)!!!!$!!!!CJ%$!!!!@!!!!$ArN!3!N!8H!!%!N!B3)!!!!"3!!"!Mrj! %!!!31!!"!!!!0Iq3"!%$!!!!@!!"!*!'%(F!!!!-!!!3M!!!!%!!!"#Urj!%!!! 3`!!#!!!!0Iq3"!%!N!3$!!!!22rrrrF"!*!%"!#3#"$U!!!!&!!!%1d!!!!F!!! 3q[q3"!!!%2S!!3!!!$ArN!3"!`!!!&J!![rrrr`!!!!9!!!!4J!$!!!!&J!!!!X !N!FA!!!!!`!!!!)!!!!B!!!!!3!!!!B!![rrrrd!!!!6!!!!4J!"!!!!&2rrrr` !N!8#rrrrqJ!!!"`!!!!-!!3!!!!G!!!!#`#3"aB!!!!,!!!!!J!!!"F!!!!$!!! !"!!!!!-!!!"Q!!!!#!!!rrrrq`!"rrrrqJ!#rrrrrJ!!!"%!!!"3!!8!!!!5rrr rr3#3"aN!!!!'!!!!4J!!!!3!!!!(!!!!4`!!!"S!!!"Q!!!!5!!!!"[rrrrl!!! !6!!!rj!%!!(rrrrq!!$rrrrj!!(rrrrp!!(rrrri!!!!!3!!!!%!!!!(!!$rrrr h!!(rrrrm"+K(990*!!2E,P0XD@0P8f9RE@9ZG(0IAdC3B`!(SR"KG(4PFQi!!!K cC@GYC@jdF`!#Fbj)BA0AD@aN3f&bC(0IAdC3B`!"eLjIAf0dAemj9%CTE'9(E'p L4P"$Be"$194'D@aP8h"PB`!"l'9bFQpbAemj9%CTE'96F'9M!!IG,R0dFQ0SFJ! $H#j5EfpdAemj9%CTE'96F'9M4RB!"Q%Z4'9QBA9XG&pI194'D@aP8h"PBdCf!!H p,R0dFQaPEJ!$,#jIAfjhB9pI4P9X!!GP,QePE@0`H3!&1#j*Fe*[Eh4IAcP84QP XC90`C@0'GJ!%!Lj1CAKdAemj9%CTE'9(E'pL4P"4-MP84QPXC8GXEf)j3Q&MDe4 bB@0VD99M!!4EG'KTF`!"S94'D@aP4fa[BJ!#r5484QPXC90`C@-!!AY84QPXC90 `C@-!"b8N4P06F'9M!!B)4P06F'9M!!FHGP*PCNjeE3!&bR"KFNP%!!5VEQ&YC3! &eRCKE'PN!!DZF'&d3R9Q!!9FG(*KBfX!!F4#B@0V9(*KBfX!"@0TEQ4PH!!!A(0 dBA*d4'Pb!!EaF'&d8f9R!!"#Ff9R3fpeER3!"Re`BA4XC@i!"2T!1$Bc!!0P,Nj PH(4IAcP84QPXC8GXEf*'GJ!&N@4PF(4S!!3C3$Jh-J!%,Lj0BA4MD%jKE@9IAdC 33f033f0T!!-&AepeF("PFPpYBA!!"b&ZB@eP6'9Z!!4"3$N`0J!%Sd!j-cJ!"M- Z4AKTFh4cAemj9%CTE'96F'9M3dCf!!3),N*XCA0cAemj9%CTE'96F'9M4RB!!p3 ZAepYE9pI194'D@aP8h"PBdCf!!Dd,PpIBA"XAemj9%CTE'96F'9M4P"$B`!%)#j IAhCMAemj9%CTE'96F'9M3dCc!!32D@jTG!!%T%!j-cN!",BZ6Q9h4QPXC8GXEf) !!RXZAepZGepI4P9X!!*2,PpIC'aIAdC3GJ!%X@GXEf)!"-"!163e!!&FAepNE&p I4P"f!!6"3$Nd0J!&!Lj1CAKd4QPXC8GXEf)!"-0!163i!!"!,NCTE'9(E'pL-NC 68h"PB`!%Dh0`C@-!!-BZ4'PcF'pcC8CTE'9(E'pL!!6H3$Ne-`!(2d4TFh"[Ff9 'D@aP4fa[BJ!$IP423`!(RNCTE'9(E'pL-NC68h"PB`!%58jPH(4'D@aP4fa[BJ! $@%jPGdCTE'9(E'pL!!0(6Q9iG&pI194'D@aP4fa[BNC386)j9%CTE'9(E'pL18* KBfY8FQ&MDfP9B`!#ZdjPH(4IAcP84QPXC8GXEf*'GJ!!LPpIBh4IAcP84QPXC8G XEf*'8%0M8%-j9%CTE'96F'9M!!"36eG5!*!')J3!!%!%!!!"a!!!)R!!!"f8!!! -q!!!!"i!!!0&!!!!)!#33%9R!!"&D`!%!!!!Z`!!!!3!!!!J!!!'T%k!!#"&D`! %!!!![3!!!!3!!!"#!!!'fdk!!#"&D`!%!!!![J!!!!3!!!"N!!!(&%k!!#"&D`! %!!!!`!!!!!3!!!#'!!!(5dk!!#"&D`!%!!!!`3!!!2`!!!#S!!!)#T2Krrb$iJ! !,!1Q(%'#!*4!J!!d,!1Q&d'#!+"!J!!F,!1Q"d'#!+"!J!#d,!1Q!d'#!+")!!# S,!1Q'8'#!(")!!#F,!1Q)d'#!%"!J!!3,!1Q)8'#!%")!!#%,!-!!%'#!"4!J!" i,!1Q+8#!!(")!!!-1'!!!%J!!(`i!!!'N!!I!!")!!"X1!!!1T!!(`!!5!!!B$J !!$L3!"m!!%J!!&3i!!!jN!!I!!")!!")1!!!2C!!(`!!5!!!2$J!!$#3!"m!!%J !!$!i!!"!N!!I!!")!!!N1!!!3C!!(`!!5!!!'#`$!!"!J3!)5!!!#$KJ!"D3!(m !!$KJrrq$iIrm6S!!)%9d!`#3"-)!!!!%4@X!"!!!!-3!!!#J!!!")J!!$&"m#!+ QNq(rr*!!!3!)P#(r`$[M!!")!!!"B!!!!)!#!!#3!"m!!MKr!"`iJ!!!1+!!%%J !!!&J!!!!1(m!,$L!!!!iS!!35!!!!@!!!!!i!!!#Q"m!(6J!!"#B(`!F1!!!!CJ I!")i!!!!Q"m!%cJ!!!#3!"m!"MJ!!!#`(`!+J')!!%J!!!&J!!!!1(m!!)!"!%J i)3"!I!J$TS2Krra1J!!J4A8!N!A&!!!!&%9d!`#3"-B!!!!F4A8!N!A(!!!!-%9 e!*!&a`!!!%4&G!-!N!3#!!!!I%9e!*!&b!!!!)"&EJd#!!!!bJ!!!"D!!*!(#!! !0!#%!!S!!)D!!"m!N!T&GJS-!!!!b`!!!"*&EJ`%!!!!c!!!!!b!!*!1S!#3"%9 h!*!&a!#3"%9h$3#3"-S!!!!)4@X!"!!!!-d!!!#F!!!"C!!!$S"m#!+QNq(rr*! !!3!)P#(r`$[M!!#3!)%!A%J!!!&J!!!!J!)!!*!!(`!#J!%!A*!!(`!11!!!!TJ I!"di!!!3Q"m!($J!!!+B(`!Y1!!!%*JI!#`i!!!"Q"m!%MJ!!!@B(`!m1!!!!*J I!"-i!!!!N!!I!!Bi!!!!X"m!#S"L!!")!!!"B!!!!$Kr!!#!!3")1#%!3(`)!kD $iIrm6S!!)%9e!*!&a3!!!"K&G!-!N!6'!!!!)%9d!`#3"!)!!!"i4A8!N!A)!!! !I%9Z$3)!!!$1!!!!&S!!N!F)!!#!!)!!#J!!KS!!(`#3#N9f#J`!!!$,!!!!%N9 Z$!3!!!$2!!!!$)!!N!kF!*!%4AF!N!A0!*!%4AF0!*!%cJ!!!!K&D`!%!!!!d!! !!(!!!!'N!!!3*R`)!UD6iIrmN!!"!!L8)Ir!I(mEHE#"!&j"JJ"!J!)!!*!!(`! #J')!!%J!!!&J!!!!1(m!!$L!!!")!!!"B!!!!+J"!&iX!!!!3)%!%$Kr!!")!!! "B!!!!$Kr!!#!!3")1#%!3(`)!kD$iIrm6S!!)%9d!`#3"-B!!!!F4A3$!*!%!J! !!#4&G3#3"G%!!!!S4A8!N!A5!!!!1%9e!*!&d`!!!&"&EJ`%!!!!e!!!!!b!!*! ,J!!!F!J!!!"&G`#3"G!!N!4&D`!%!!!!e3!!!!J!!!(1!!!3B6KJ!!"1J!!J4@X !"!!!!0B!!!$`!!!"iJ!!%*Gm#!+QNq(rr*2"rrL6SIrdNi(rm*!!!3!)P#(rX$[ M!!"mR#0jNi-!"N'#!+!i!!!!Q!%!1MJ!!!#B!3!j1m!!!$ZJ!!#S(`!-9!!(rd' #!!Jl`3!kU"m!$&3!"le"JJ!)1k%!16Kr!!!iRJ!!1,d!!$M!!!#"R`!#JB`!@%J !!!&J!!!!,!-!!%'#!%L)!3!j+!!!!%'#!"5!I`!'1)!!!NJ!!!&J!!!!L!%!1LJ !!!""JJ!JJ(m!"ML!!!&)!!!"B!!!!%J!!!`i!!!!X"m!$)!"!&Ji)3"3I!J$TS2 Krrb$`IriJk(rp)1"rr"1J!!J4A8!N!AA!!!!I%9e!*!&f!!!!+"&G3#3"GJ!!!# m4@i-"!!!!0i!!!!-J!#3#i!!!2!J!!!!4AF!N!A@!*!%4@X!"!!!!0m!!!"B!!! #UJ!!%`Tm#!+QNq(rr*!!!3!)P#(r`,"K!&U`J3"HN!#K!'#!BJ!!U)%!@NJ!!!& J!!!!1!!!!,!$!!US!3"HX!-!$)#"!'")!!!"J!%!5$JK!%"m#!1QJq(rr%k!!#" &G!-!N!6J!!!!(%9e!*!&i3!!!#4&G3#3"GB!!!"!4@i-"!!!!18!!!!-J!#3#i! !!&J)!!!!4AF!N!AI!*!%4@X!"!!!!1B!!!$X!!!$$J!!&bCm#!+QNq(rr*2"rrL 3!!%!#*3Krm!l``!!N!#"!&b3!+%!B)2K!&b!!3"J,!!!%%#!!"3iB!!@5!!!!@! !!!")!!#BL"m!!5J!!!*"JJ!81'!!,dJ!!!&J!!!!5!!!I+!H!"iS!!!!3B)!&$K J!"C)!!!"B!!!!%J!!'#!(`!%+!!!!%'#!$L!I`!%2!1"!#J!!!&"JJ!S5!!!!@! !!!#!(`!%I!!B3%'#!"3iB!!a5!!!!@!!!!")!!!JJ"m!"*!!(J!JS"m!!V!H!"i i!!!3Q"i!($KJ!!#!!3")1#%!3(`)!kD$iIrmJm(rq%k!!#"&G3#3"HF!!!!d4A8 !N!AR!!!!8%9e!*!&j`!!!'a&G3#3"HJ!!!#84A8!N!AR!!!!V%9Z$!3!!!$X!!! !$)!!N!Z!!!$X%!!!!%9h!*!&jJ#3"%9V!!3!!!$Y!!!!J!!!!k)!!"ZlI!J#TT2 Krrb3!!%!#*3Krm#3!'%!@*!!J3"F1q8!!)!&!!!X!!!!3)!!&$KJ!"C)!!!"B!! !!%J!!$L!B3"FJ)%!@$L%!"b!(`!!,!!!%%#!!!b![`!!5!!!#$LJ!"#3!,m!!%J !!!&J!!!!1'!!!)!"!%Ji)3"!I!J$TS2Krra1J!!J4A8!N!AR!!!!,%9e!*!&lJ! !!'"&EJ`%!!!!l`!!!!b!!*!,J!!!J!J!!!"&G`#3"Hd!N!4&D`!%!!!!m!!!!+! !!!2`!!!H5h`)!UD6iIrmNm(rq*!!!3!)P#(r`$[$!!#3!)%!A$[P!!#!"3!!,!! !!%#!!"3iB!!@5!!!!@!!!!")!!"3L"i!,#J!!!"!JJ!81'!!18J!!!&J!!!!5!! !0)"K!&`iRJ!XJ"m!!#`!!""!J!!-J,m!!%J!!!JiS!!3N!#r!!")!!!"B!!!!$K J!!#!!3")1#%!3(`)!kD$iIrmJm(rq%k!!#"&G3#3"HF!!!!`4A8!N!AR!!!!6%9 e!*!&lJ!!!(a&EJ`%!!!!m3!!!!b!!*!,J!!!S"!!!!"&G`#3"I!!N!4&D`!%!!! !mJ!!!*J!!!41!!!JaR`)!UD6iIrmN!!"!!L8)Ir!1q-!!*!!J3"FJ!%!A#`!!!& "JJ!`3)!!%#`!!!"!J!!85!!!3#`!!!0!J!!i5!!!*)JI!"*J!!!#Q"m!%NJ!!$5 )(`!5B!!!"*JI!"*)!!!NL"m!%Q!!!!DB(`!55!!!&$KJ!"C)!!!"B!!!!%J!!!J iB!!!J!%!5$JK!%"m#!1QJq(rr%k!!#"&G3#3"HF!!!"d4@i-"!!!!23!!!!-J!# 3#i!!!*J)!!!!4AF!N!Ab!*!%4@X!"!!!!28!!!#F!!!%TJ!!*5Pm#!+QNq(rr*! !!3!)P#(r`$[M!!#3!)%!A*!!S3"JJ!%!A#`!!!4"JJ!`3)!!9#`!!!0!J!!)5!! !5)JI!"-S!!!!3B)!$$KJ!!4)!!"!1'!!!%J!!$L!!3"J9!!(Hd'#!"!i!!!"Q"m !%dJ!!!`i!!!!Q"m!%cKJ!!")!!!31'!!,8J!!!&J!!!!J!%!5$JK!%"m#!1QJq( rr%k!!#"&G3#3"HF!!!#!4@i-"!!!!2J!!!!-J!#3#i!!!*`)!!!!4AF!N!Ae!*! %4@X!"!!!!2N!!!$B!!!&*!!!*c"m#!+QNq(rr*2"rrL6SIrdNi(rm*!!!3!)P#( rX$Z$!!!lT!!!1q8!!&5HK2j8J!"$3B)!)#`H!!""JJ!B1(m!!$L!!!!i[J!!5!! !!@!!!!#6i3!i2'"!"$KMCRpm(4J!3B)!,%#!!%JmB)!%1'0QIR`G'!""JJ!)5!! !0)!I!!#B(!!61'!!!%J!!$!iI!!!JC`!!S'-!'4)!!!"B!!!!*!!I`!!1'!!!%J !!"!iB!!Y5!!!!@!!!!#!!3"B1#%!8(`)!kD$iIrmJm(rq)1Krr5$JIr`6S!!)%9 e!*!&a`!!!%K&G3#3"GF!!!#B4A8!N!AR!!!!X%9Z$!3!!!$r!!!!$)!!N!Z!!!$ B)!!!!%9h!*!&q3#3"%9V!!3!!!%!N!3S!!!&VJ!!+MPm#!+QN!!"!!L8)Ir!J') !!%J!!!&J!!!!J!%!5$JK!%"m#!1Q6S!!)%9d!`#3"!)!!!!-4A8!N!3"!3!!!"" &EJ`%!!!"!J!!!!b!!*!,J!!!+!#3"%9h!*!%!3#3"89V!!3!!!%$!!!!I!!!"G) !!#U#I!J#TT2Krrb3!!%!#*3Krk!li`!!1)!!!NJ!!!&J!!!!J!)!!*!!(`!!1'% !1%J!!!&J!!!!1!!!!E!I!!3i!!!"X"m!"MJ!!!#`(`!)1!!!!,!I!!Si!!!!X"m !$$J!!!#3!"m!$MKr!!#!!3"S1#%!B(`)!kD$iIrm6S!!)%9e!*!%!33!!!!B4A3 $!!!!!38!!!!J4A8!N!3""J!!!#a&EJd#!!!"'3!!!"D!!*!(#!!!-!!`!!S!!)D !!"m!N!T&GJS-!!!"'J!!!"*&EJ`%!!!"'`!!!!b!!*!1I!#3"%9h!*!%!3-!N!4 &G`d!!!!"'3!!!!K&EJ8"!!!"(!!!!!Arrrr)!!!VP`3Z59"3!!!!4@X!"!!!!4d !!!"m!!!'#J!!+jGm#!+QNq(rr*!!!3!)P#(rF$[M!!#S!`!%,!!!!8##!$3i!!! !N!!"!%5!!J!!N!!"!%Si!!!!Q!%!8cKK!$K)!!!"B!!!!,"r!!5S!3"3X"m!#+J I!!3X!!!!3B)!$$KJ!!")!!!)U(m!#)!"!*Ji)3#3!(`)!kD$iIrm6S!!)%9d!`! !!!%F!!!!+%9e!*!%!4i!!!!m4@i-"!!!!@i!!!!-J!#3#i!!!(`)!!!!4AF!N!3 "(3#3"%9V!!3!!!&[!!!!6!!!"P)!!#cKI!J#TT2Krrb3!!%!#*3Krm!li`!!5!! !!DJI!!BX!!!"3))!&$KJ!!")!!!"B!!!!,"r!!DSI`!'J!%!5$JK!%"m#!1QJq( rr%k!!#"&G3#3"!%G!!!!&%9e!*!%!A!!!!!S4@i-"!!!!A%!!!!-J!#3#i!!!%` )!!!!4AF!N!3"E`#3"%9V!!3!!!&b!!!"D!!!"S`!!$09I!J#TVmKrq53!!%!#*3 Krk#3!'%!H*!!J3"mJq)!!$[!!!#!(`!!N!!"!$Ji!!!!N!!I!!#!B3"i5!!!!Aa J"c9!JJ!`1'!!-NJ!!!&J!!!!1f-!!)!I!!!X!!!!3))!$)!"!$L3!"m!!$Kl!!" )!!$XJ!%!I#`!!!*"JJ!m3)!!B#`!!!&!J!!)5!!!9$KJ!%C)!!!"B!!!!(ap'hP "JJ!31(d!!%J!!!&J!!!!1pd!!%J!!$JiB!"#5!!!!@!!!!"mI"Yj3B)!%$Km!!" )!!!"B!!!!$[F!!")!!!31'!!,%J!!!&J!!!!+"i!!%'#!&#!(`!!,!!!!%'#!%3 X(J!!3B)!($Kq!!!iJ!!"JCi!!S'-!'")!!!"B!!!!$Y!!!#!(`!!,!!!!%##!!b !!3!iN!!I!!!iHJ!!5!!!)$Xq!!#!(`!!,!!!!%##!!b!!3!iN!!I!!!iH3!!J!% !D$JK!'"m#!1QZb(rj%k!!#"&G!-!N!6#!!!!'%9e!*!%!4d!!!!d4A8!N!3"F`! !!%4&G3#3"!&d!!!!M%9e!*!%!A8!!!#J4A8!N!3"G!!!!,4&G3#3"!&f!!!!b%9 e!*!&j`!!!0a&G3#3"GF!!!%34@i0!J!!!AX!!!"#J!#3"cJ!!$J!N!!!+J#N!+3 !)J#i!,J!+J$-!-`!-J$J!43!+J!!#S!!(3#3"))!!$J!N!3+J!!F!*!%JJ!!1!# 3"N9f#J`!!!&m!!!!*N9f#J`!!!&p!!!!,N9f#J`!!!&m!!!!0N9f#J`!!!&p!!! !2N9Z$!3!!!&q!!!!$)!!N!d"D!#3"%9h!*!%!A)!N!4&G`d!!!!"H`!!!!K&D`# %!!!"I`!!!'L!!*!(I!J#TT2Krrb3!!%!#*3Krm"mIaYjX)%!AN'#!$L!BJ!!J!- !!#`!!!"!JJ!3J"m!!)"L!!#3!!-!!+J"!&iX!!!!3)%!%$Kr!!")!!!"B!!!!$K r!!#!!3")1#%!3(`)!kD$iIrm6S!!)%9d!`#3"-)!!!!F4A3$!*!%`J!!!$"&G3# 3"G-!!!")4@i-"!!!!B!!!!!-J!#3#i!!!'J)!!!!4AF!N!3"I`#3"%9V!!3!!!' "!!!!6!!!"c!!!$6qNq(rr+L$!!`i"!!"X!-!$(`!"c3X!!!J3))!$$J!!!#`!`! -J)-!$UJ$!!`F!!"UIq3#&+JI!"!X!!!"3B,rb$Kr!!#$iIrm6S!!)%9V!!3!!!$ )!!!!D!!!"i!!!$@mI!J#TT2Krrb3!!%!#*3Krm!li`!!U'-!#MJ$!!'`(`!+I'! (08##!$!iB!e!5!!!!@!!!!#3!(m!$LJ$!!"!JJ!B1!!!$)"L!!#3!!-!!$J!!!# `(`!+J!%!5$JK!%"m#!1QJq(rr%k!!#"&G3#3"!'$!!!!,%9d!`#3"-)!!!"%4@i -"!!!!B3!!!!-J!#3#i!!!'J)!!!!4AF!N!A)!*!%4@X!"!!!!0%!!!"3!!!(ZJ! !0P4m#!+QNq(rr*!!!3!)P#(r`$[M!!#SB`!+1!2rrl!I!!Tm!!Fe3))!')"r!!j )!!!"B!!!!$J!!!#3!"m!$S!"!%Ji)3"!I!J$TS2Krra1J!!J4A8!N!3"K3!!!#a &EJ`%!!!"KJ!!!!b!!*!,J!!!8!J!!!"&G`#3"G%!N!4&EJ8"!!!"K`!!!"(rrrq j!!!f9%P14946Ef0VCA4%EfeKD@i!N!4&EJ8"!!!"L!!!!!hrrrqi!!!f9&0[BfY PG%4[E@&TEJ!`"2*&EJ8%!!!"L3!!!!Mrrrqh!!!f9!#3#%9f"3!!!!')!*!%4@i &"!!!!BS!!!!-rrrrYJ!!0P3!N!a&GJ8!!!!"L3#3"%9Z"33!!!',!!!!#2rrrl8 !!$C8!*!)4AB&!!!!!BF!N!4&GJ8!!!!"LJ!!!!4&E`8%!!!""3!!!"Mrrrqd!!! f9!#3'%9f"3!!!!',!*!%4AB+!!!!!B`!!!!84AB+!!!!!Bd!!!!34AB+!!!!!Bi !!!!)4AB+!!!!!Bm!!!!-4@X!K!!!!C!!!!!!C)!!N!Gm#!+QNq(rr*!!!3!)P#( r`(ar'hQ`J3"H3B)!0)!#!!#3!"m!!$Kr!!!iJ!!!5!!!!@!!!!#S!3"H,!!!!%# "!"!iI`!!5!!!!@!!!!!iI`!!J!%!5$JK!%"m#!1QJq(rr%k!!#"&G!-!!!!""3! !!"a&G3#3"!'4!!!!,%9e!*!&d`!!!%4&EJ`%!!!"NJ!!!!b!!*!,J!!!C!J!!!" &G`#3"!'3!!#3"%9Z"3%!!!'6!!!!#rrrrl-!!$C858j&9&0[BfYPG!"J4@i&!3! !!C3!!!!(rrrrXJ!!0P46Ef0VCA3!mN9Z"33!!!'9!!!!#2rrrl%!!$C8!*!)4AB &!!!!!C3!N!4&EJ8%!!!"PJ!!!!crrrq`!!!f9!#3$%9f"3!!!!'9!*!%4@i&"!! !!CF!!!!)rrrrV`!!0P3!N!K&GJ8!!!!"N`#3"%9f"3!!!!'@!!!!"%9["33!!!$ '!!!!D2rrrki!!$C8!*"S4AB&!!!!!CF!N!4&GJS!!!!"Q!!!!&a&GJS!!!!"Q3! !!&K&GJS!!!!"QJ!!!&4&GJS!!!!"Q`!!!%a&GJS!!!!"R!!!!%K&GJS!!!!"R3! !!%4&GJS!!!!"RJ!!!%"&GJS!!!!"R`!!!$4&GJS!!!!"S!!!!$"&GJS!!!!"S3! !!#4&GJS!!!!"SJ!!!#"&GJS!!!!"S`!!!"a&GJS!!!!"T!!!!"K&GJS!!!!"T3! !!"4&GJS!!!!"TJ!!!""&GJS!!!!"T`!!!!a&GJS!!!!"U!!!!&"&GJS!!!!"U3! !!$a&GJS!!!!"UJ!!!$K&GJS!!!!"U`!!!#a&GJS!!!!"V!!!!#K&GJS!!!!"V3! !!!K&GJS!!!!"VJ!!!'4&GJS!!!!"V`!!!'"&DJ!%!!!"X!!!!$5!!*!(I!J#TT! !!3!)P#(r`)"L!!")!!!"J))!!)#L!!")!!!"B!!!!)!"!%Ji)3"!I!J$TNk!!#" &G!-!N!3#!!!!$%9e!*!%!3-!!!!34A3$!!!!!Bi!!!!84A3$!*!%!3!!!"K&G3# 3"!'a!!!!(%9Z$!3!!!'b!!!!$)!!N!Z!!!!d!*!%4AF!N!3"X!#3"%9Y"33!!!! #!!!!%[rrrri!!!Bp4@`&!3!!!!%!!!!-rj!%!!!'289[#S3!!!'1!!!!#)!!N!p &GJ#3"!'3!!#3"%9f$`!!!!'c!!!!"%9[#J3!!!'d!!!!#)!!N!p&GJ#3"G%!N!4 &GJm!!!!"X`!!!!4&E`S%!!!"Y3!!!!L!!*!24AB!N!A)!*!%4AB2!!!!!E-!!!! %4@m+"!!!!EB!!!!)J!#3$d9f!*!%!B%!N!4&GJm!!!!"X`!!!!4&E`U%!!!"I3! !!!L!!*!24AB!N!3"I`#3"%9f$`!!!!'c!!!!"%9[#J3!!!'2!!!!#)!!N!p&GJ# 3"!&b!*!%4AB2!!!!!E-!!!!%4@m+"!!!!EF!!!!)J!#3$d9f!*!%!@m!N!4&GJm !!!!"X`!!!!4&E`S%!!!"Z!!!!!L!!*!24AB!N!3"(3#3"%9f$`!!!!'c!!!!"%9 [#J3!!!'j!!!!#)!!N!p&GJ#3"!%$!*!%4AB2!!!!!E-!!!!%4@m+"!!!!ES!!!! )J!#3$d9f!*!%!3#3"89f$`!!!!'c!!!!"%9[#J3!!!'T!!!!#)!!N!p&GJ#3"IN !N!4&GJm!!!!"X`!!!!4&E`S%!!!"UJ!!!!L!!*!24AB!N!Ae!*!%4AB2!!!!!E- !!!!%4@m+"!!!!DJ!!!!)J!#3$d9f!*!&mJ#3"%9f$`!!!!'c!!!!"%9[#J3!!!' V!!!!#)!!N!p&GJ#3"I!!N!4&GJm!!!!"X`!!!!4&E`S%!!!"V!!!!!L!!*!24AB !N!AY!*!%4AB2!!!!!E-!!!!%4@m+"!!!!Dd!!!!)J!#3$d9f!*!&jJ#3"%9f$`! !!!'c!!!!"%9[#J3!!!'l!!!!#)!!N!p&GJ#3"Gm!N!4&GJm!!!!"X`!!!!4&E`S %!!!"[!!!!!L!!*!24AB!N!A@!*!%4AB2!!!!!E-!!!!%4@m+"!!!!Di!!!!)J!# 3$d9f!*!&e3#3"%9f$`!!!!'c!!!!"%9[#J3!!!'[!!!!#)!!N!p&GJ#3"G!!N!4 &GJm!!!!"X`!!!!4&E`S%!!!"[3!!!!L!!*!24AB!N!A0!*!%4AB2!!!!!E-!!!! %4@m+"!!!!Ei!!!!)J!#3$d9f!*!&a!#3"%9f$`!!!!'c!!!!"%9[#J3!!!'r!!! !#)!!N!p&GJ#3"F%!N!4&GJm!!!!"X`!!!!4&E`S%!!!"`!!!!!L!!*!24AB!N!A !!*!%4AB2!!!!!E-!!!!%4@m+"!!!!F%!!!!)J!#3$d9f!*!&[J#3"%9f$`!!!!' c!!!!"%9[#J3!!!(#!!!!#)!!N!p&GJ#3"Ed!N!4&GJm!!!!"X`!!!!4&E`S%!!! "``!!!!L!!*!24AB!N!@l!*!%4AB2!!!!!E-!!!!%4@i$"!!!!!%!!!!%J!#3#d9 f"3#3"!%!N!4&E`-%!!!"MJ!!!!5!!*!,4AB+!!!!!Bi!N!4&EJ-%!!!"(!!!!!5 !!*!,4AB&!!!!!4`!N!4&E`-%!!!""3!!!!5!!*!,4AB&!!!!!38!N!4&E`-%!!! !i!!!!!5!!*!,4AB&!*!%i!#3"%9[!`3!!!!#!!!!")!!N!Y&GJ8!N!3#!*!%4@m $"!!!!-B!!!!%J!#3#d9f"3#3"-B!N!4&E`-%!!!!`J!!!!5!!*!,4AB&!*!%`J# 3"%9[$`3!!!'c!*!%J!#3"d9S!!"6@8e)!!!(p!!!!&)!!!!)!*!4!3#3"JE1rj! %!!!'f!!"!!!![!!!!!)"!*!%!`!"!*!'"`IrN!3!!!F4!!%!!!#m!!!!#J%!N!3 $!!%!N!B(2[q3"!!!"dJ!!3!!!,m!!!!#!3#3"!-!!3#3"JGhrj!%!!!(J3!"!!! ![`!!!!S"!*!%!`!"!*!'##F!!!"d!!!)6!!!!(`!!!Ld!!!!L!!!#4X!!!#8!!! *H3!!!+!!!!R8!!!!V!!!#Mm!!!#i!!!+X`!!!-3!!!X&!!!!d!!!#dN!!!$F!!! ,L`!!!2!!!![krj!%!!!-"3!"!!!!``!!!!-"!*!%!`!"!*!'$'S!!!!`!!!-RJ! !!%3!!!c*!!!!J!!!$D8!!!#)!!!0[rq3"!!!$Em!!3!!!-RrrrrA!3#3""m!!3# 3"JkU!!!!I!!!$md!!!#%!!!3)rq3"!!!%#-!!J!!!-RrrrrA!3#3""m!!!#V!!! !!J%$!!!!A!!"!*!'%%!!!!!S!!!33rq3"!!!%&i!!3!!!-RrrrrA!3#3""m!!3# 3"K#+rj!%!!!3P!#3#K$#!!!!,!!!%2)!!!"3!!!4I3!!!&3!!"'9!!!!B!!!%EB !!!"N!!!4dJ!!!)`!!"))!!!!Q!!!%K`!!!#S!!!56`!!!,3!!"*L!!!!a!!!%TJ !!!$)!!!5T!!!!0!!!"+frj!%!!!5YJ!'!!!!bIrrrpF"!*!%(`!!!0N!!!"N!3# 3""`!!!$D!!!!D!#3"4d!!!$E!!!!D!#3"4i!!!$F!!!!"J!$!!!!13!!!0d!!!! '!!-!!!!k!*!)%dB!!!!N!!!653!!!%!!!"1T!!!!4!!!%m2rN!3!!"2$!!3!!!$ L!!!!#`%$!!!!@J!!!1-!!!!,!3-!!!"H!!!!j!!!!'3"!`!!!'!!!!#Mrrrre`# 3"4m!!3#3"KG9!!!!-!!!&m3!!!"!!!!Ai3!!!%`!!"J%!!!!A!!!'#F!!!"S!!! B8`!!!(J!!"Lp!!!!P!!!'3S!!!#S!!!C2`!!!,J!!"RJrj!%!!!DEJ!%!!!!bIr rrpF"!*!%(J!!!1N!!!"N!3-!!!"F!!!!kJ!!!!-"!`!!!'!!!!$Vrrrrd3#3"4m !!3#3"K[a!!!!+!!!(!J!!!!i!!!F*Iq3"!!!((i!!`!!!-RrrrrA!3-!!!"B!!! !k`!!!'3"!`!!!&`!!!$Urrrrd!%!N!3I!!%!N!BHJ3!!!#`!!"kB!!!!2!!!(V3 !!!")!!!HbJ!!!&J!!"lVrj!%!!!I4J!$!!!!bIrrrpF"!*!%(J!!!1X!!!"N!3- !!!"F!!!!k[rrrp!"!*!%(`!"!*!')1J!!!"!!!!K"J!!!&!!!#%k!!!!B!!!)@i !!!"`!!!KZ!!!!)!!!#(Crj!%!!!Ki`!#!!!!bIrrrpF"!*!%(`!!!2-!!!!$!3- !!!"F!!%!N!BP@J!!!$J!!#AY!!!!4!!!*J%!!!"-!!!Q'`!!!&3!!#DR!!!!B!! !*Vd!!!"X!!!Qf`!!!(3!!#Ee!!!!I!!!*`[rN!3!!#FY!!-!!!$*rrrre`%!N!3 I!!!!pJ!!!!)"!`!!!&`!!!$h!!!!!`%$!!!!B!!"!*!'*fJ!!!!d!!!SMJ!!!$` !!#M(!!!!8!!!+-X!!!"m!!!T)J!!!)`!!#Q*!!!!V!!!+FcrN!3!!#RZ!!8!!!$ *rrrre`%!N!3F!!!!qJ!!!!)"!*!%(3!!!2X!!!"N!3#3""m!!!$m!!!!!`#3"4i !!!$prrrrc`!$!!!!1!#3##TM!!!!$!!!+QB!!!!B!!!UIrq3"!!!+Rm!!!!"!*! '+UJ!!!!X!!!Ua2q3"!!!+j3!!J!!!-Rrrrr0!3#3""m!!!%(rrrrc!!$!!!!1!! "!*!'+lJ!!!!J!!!Vl!!!!$`!!#aQ!!!!8!!!,,RrN!3!!#cH!!)!!!$*rrrrc3% !N!3I!!!!$[rrrmF!!`!!!$J!!3#3"Ld%!!!!&!!!,3F!!!!N!!!Y,!!!!$3!!#e 5rj!%!!!YD!!"!!!!bIrrrmd"!*!%(`!"!*!'-iJ!!!!d!!!c[J!!!%!!!$22!!! !E!!!-rm!!!#)!!!d*!!!!,!!!$4C!!!!f!!!0)B!!!$N!!!dUJ!!!1`!!$5f!!! !q!!!0-B!!!%B!!!df3!!!6J!!$6Zrj!%!!!dq`!%!!!!bIrrrmd"!`!!!(J!!!& h!!!!!`%$!!!!I!!!!AMrrrqk!!-!!!!i!!!!SrrrrpF!N!8H!!%!N!Be*J!!!!3 !!$9)!!!!(!!!0@3!!!!N!!!eG3!!!%!!!$@Vrj!%!!!eZ3!#!!!!bIrrrmd"!*! %!`!!!B,rrrrm!*!&(`#3#$AJ!!!!+!!!0IJ!!!"!!!!f*`!!!&3!!$C4rj!%!!! f83!"!!!!bIrrrmd"!*!%(`#3#$Cj!!!!+!!!0T)!!!!d!!!fU3!!!$`!!$Dkrj! %!!!fZJ!"!!!!bIrrrmd"!*!%(`!"rj!%!!!!$!!!!!%!!!!(!!,rrrrp!!!!"3! !!!3!!3!!!!B!!!"N!*!&!IrrrrJ!!!!-!!!!!3!!!!F!!2rrrr-!!3!!!'S!![r rrr3!!!!G!!!!&!!(!!!!(J!!!!)!N!FB!!!!"`!!!!3!!!!I!!!!"`!!!!8!!!! J!!!!#J!!!!B!!!!Krrrrm`!!!!J!!!!C!!!!!J!!!!`!!!!L!!!!!J!!!"!!!Ir rrr8!!!!8!!!!&2rrrr3!![rrrrB!!!!8!!!!)!!)!!!!&3!!!!S!N!F@!!!!"`! !!!)!!!!A!!!!"J!!!!-!!!!B!!!!!J!!!!3!!!!C!!!!"J!!!!J!!!!D!!!!"J! !!!N!!!!E!!!!#J!!!!S!!!!Frrrrp3!!!!`!!2rrrrF!!IrrrrB!![rrrr%!!!! X!!!!%!!%!!!!,3!!!'B!N!FZ!!!!!J!!!!3!!!![rrrrp`!!!!J!!!!`!!!!CJ! !!!`!!Irrrqm!!!!S!!!!!3!!!!F!![rrrr!!!!!b!!!!3J!3!!!!-`!!!!F!N!F d!!!!"`!!!!%!!!!e!!!!"`!!!!)!!!!f!!!!"`!!!!-!!!!h!!!!!J!!!!3!!!! i!!!!#J!!!!J!!!!j!!!!!J!!!!S!!!!k!!!!#J!!!!i!!!!l!!!!"`!!!"!!!!! m!!!!"`!!!"%!!!!p!!!!"J!!!")!!!!q!!!!"`!!!"-!!!!r!!!!"`!!!"3!!!" !!!!!"`!!!"8!!!""rrrrl`!!!"B!!!!`!!!!CJ!!!$i!![rrrqi!!!"$!!!!&!! +!!!!-`!!!!F!N!Fd!!!!"`!!!!%!!!!e!!!!"`!!!!)!!!"%!!!!"J!!!!-!!!" &!!!!"J!!!!3!!!"'!!!!"`!!!!8!!!"(!!!!CJ!!!!B!!!")!!!!!J!!!!S!!!" *!!!!#J!!!!i!!!!`!!!!CJ!!!"!!![rrrqd!!!",!!!!&J!+!!!!0J!!!!F!N!G -!!!!"J!!!!%!!!"&!!!!"J!!!!)!!!"'!!!!"`!!!!-!!!!Y!!!!CJ!!!!3!!!! Z!!!!#J!!!!J!!!"0!!!!CJ!!!!S!!!"1!!!!#J!!!!i!!!"2!!!!#J!!!"!!!!! `!!!!CJ!!!")!![rrrq`!!!"4!!!!#!!&!!!!-`!!!!F!N!Fd!!!!"`!!!!%!!!! e!!!!"`!!!!)!!!"'!!!!"`!!!!-!!!!`!!!!CJ!!!!3!![rrrqX!!!"6!!!!"!! "!!!!-!!!!'B!N!8#rrrrjJ!!!(!!!!!'!!)!!!"a!!!!#J#3"h)!!!!#!!!!!J! "rrrrj`!!!#S!!!!'rrrrjJ!#rrrrk!!!!'8!!!"@!"!!!!"Q!!!!!J#3"fF!!!! #!!!!"!!!!'J!!!!#!!!!#!!!!'N!!!!#!!!!$!!!!'S!!!!#!!!!%!!!!'X!!!! #!!!!&!!!!'`!!!!#!!!!'!!!!'d!!!!#!!!!(!!!!'i!!!!+!!!!)!!!!'rrrrr R!!!!)J!!!')!!!!+!!!!6!!!!(-!!!!+!!!!6J!!!(3!!!!+!!!!8!!!!(8!!!! +!!!!8J!!!(B!!!!(!!!!9!!!!(F!!!!(!!!!93!!rrrrk3!"rrrrk!!#rrrrkJ! !!&8!!!"'!"N!!!!c!!!!"`#3"c3!!!!(!!!!!3!!!&B!!!!$!!!!!J!!!$F!!!! #!!!!"J!!!$J!!!!+!!!!#J!!!$N!!!!#!!!!$!!!!$S!!!!+!!!!%!!!!$X!!!! (!!!!%J!!!$`!!!!(!!!!%`!!!&F!!!!(!!!!&!!!!%B!!!!(!!!!&3!!!&J!!!! +!!!!&J!!!&N!!!!+!!!!'!!!!&S!!!!+!!!!'J!!!&X!!!!+!!!!(!!!!&`!!!" Q!!!!(J!!!&d!!!!#!!!!)J!!!&i!!!!#!!!!*J!!!&m!!!!#!!!!+J!!!'!!!!! #!!!!,J!!!'%!!!!#!!!!-J!!!')!!!!#!!!!0J!!!'-!!!!#!!!!1J!!!'6rrrr T!!!!2J!!!$!!!!"Q!!!!3J!#rrrri`!!!(X!!!!B!!B!!!"m!!!!!J#3"hd!!!! #!!!!"!!!!(i!!!!#!!!!#!!!!(m!!!!#!!!!$!!!!)!!!!!#!!!!%!!!!)%!!!! #!!!!&!!!rrrrj!!"rrrri`!#rrrri3!!!)-!!!!d!!d!!!#%!!!!!J#3"i8!!!! #!!!!"!!!!)B!!!!#!!!!#!!!!)F!!!!#!!!!$!!!!)J!!!!#!!!!%!!!!)N!!!! #!!!!&!!!!)S!!!!#!!!!'!!!!)X!!!!#!!!!(!!!!)`!!!!#!!!!)!!!!)d!!!! #!!!!*!!!!)i!!!!#!!!!+!!!!)m!!!!#!!!!,!!!!*!!!!!!!J!!!$!!!2rrrq) !!Irrrq%!!2rrrpm!!3!!!!)!!Irrrq!!!!!%!!!!"2rrrpm!![rrrq8!!!"j!!! !%J!&!!!!H[rrrq3!N!H#rrrriJ!!!!3!!!#4rrrri!!!!!J!!!!`!!!!CJ!!!!` !!!#5!!!!#J!!!"!!![rrrr)!!!!U!!!!4J!)!!!!+rrrrr%!N!Farrrrm!#3"d, rrrrZ!*!(5[rrrqd!N!G3rrrrl!#3"e,rrrrV!*!(92rrrqS!N!Girrrrj3#3"3, rrrrj!!!!%3!!!'B!#3!!!",rrrri!*!(%rrrrrF!!!!-!!!!)`!!!!X!!!!3!!! !*!!!!'B!!!!5!!!!*3!!!!X!!!!@!!!!*J!!!!X!!!!B!!!!*`!!!!X!!!!D!!! !+!!!!!)!!!!F!!!!+Irrrr)!!!!J!!(rrrrG!!!!$!!!!!%!!!!(!!,rrrrE!!! !P`!!!"3!"J!!!#d!!!"Q!*!(,J!!!!)!!!!%!!!!,rrrrrF!!!!)!!!!1J!!!!S !!!!-!!!!-!!!!'B!!!!1!!!!Q!!!!!S!!!!5!!,rrrrD!!!!Q3!!!"B!#3!!!*S !!!!+!*!(0`!!!!)!!!!#!!!!1!!!!!S!!!!'!!!!4`!!!'B!!!!)!!!!Q`!!!!B !!!!-!!!!4J!!!!F!!!!0!!!!53!!!!S!!!!1!!!!-!!!!'B!!!!3!!!!1J!!!!S !!!!8!!,rrrrC!!!!R!!!!"S!#3!!!*d!!!!+!*!(0`!!!!)!!!!#!!!!1!!!!!S !!!!'!!!!,3!!!'B!!!!)!!!!,J!!!!S!!!!-!!!!6`!!!!S!!!!1!!!!-!!!!'B !!!!3!!!!RJ!!!!)!!!!8!!!!R`!!!!S!!!!B!!,rrrrB!!!!S3!!!!S!!`!!!+) !!!!+!*!(0`!!!!)!!!!#!!!!-!!!!'B!!!!'!!,rrrrF!!!!PJ!!!"S!"!!!!#[ rrrrE!*!(3[rrrpS!N!G+rrrrf3#3"k$rrrrB!*!&![rrrpi!!!#8!!!!1J!*!!! !%[rrrpd!N!F6rrrrp`!!!!`!!!!M!!!!#`!!!"!!!!!N!!!!CJ!!!")!!!!P!!! !#`!!!"B!!!!Q!!!!#`!!!"J!!!!R!!!!#`!!!"S!!!#9!!!!!J!!!"`!!!!Trrr rh!!!!#!!![rrrrS!!!!2!!!!CJ!#!!!!%2rrrrN!N!H6rrrrhJ#3"3,rrrr9!!! !TJ!!!!B!!J!!!+F!!!!,!*!("J!!!'3!!!!#!!,rrrr6!!!!Y3!!!!3!!3!!!,B !!!!#!*!&!Irrrp)!!!!)!!!!!3!!!!F!![rrrp3!!!#`!!!!%!!&!!!!X3!!!!B !N!Hb!!!!"J!!!!%!!!#c!!!!#J!!!!)!!!#drrrrd`!!!!3!!!#hrrrrdJ!!!!J !![rrrpB!!!#N!!!!3J!0!!!!TIrrrp8!N!HS!!!!C!!!!!B!!!#T!!!!#`!!!!S !!!#U!!!!#`!!!!`!!!#V!!!!!J!!!!i!!!"8!!!!"J!!!")!!!#X!!!!"J!!!"- !!!#Y!!!!CJ!!!"3!!!#Z!!!!!`!!!"J!!!#[rrrre!!!!"`!!!#irrrre!!!!#` !!!#j!!!!"J!!!$`!!!#k!!!!!`!!!$i!!2rrrpF!!IrrrpB!![rrrrX!!!!0!!! !DJ!#!!!!$[rrrrS!N!HMrrrre`!!!'B!!2rrrr`!!IrrrrX!![rrrri!!!!$!!! !%J!(!!!!"2rrrrd!N!F(!!!!#`!!!!3!!!!)!!!!#`!!!!B!!!!*!!!!#`!!!!J !!!!+!!!!#`!!!!S!!!!,!!!!#`!!!!`!!!!-rrrrr!!!!!i!!2rrrp%!!Irrrp3 !!2rrrp!!!3!!!!-!![rrrmi!!!$q!*!)rrrrc`!"rrrrcJ!!rrrrc3!"rrrrrJ! "rrrrb3!!!!3!!!!"!!!!"`!#rrrrbJ!!!48!!!!-!!-!!!%@rrrrb3#3"J%A!!! !!J!!!!3!!!%B!!!!!J!!!!J!!2rrrmX!!IrrrmS!![rrrm`!!!%)!!!!'J!0!!! "#3!!!!)!N!B"#J!!!!)!!!!%!!!"#`!!!!F!!!!)!!!"$!!!!!B!!!!*!!!"$3! !!!B!!!!+!!!"$J!!!!B!!!!,!!!"$`!!!!B!!!!-!!!"%!!!!!B!!!!0!!!"%3! !!!B!!!!1!!!"%J!!!!B!!!!2!!!!&J!!!!)!!!!3!!!"%`!!!!X!!!!8!!!"&2r rrmX!!!!@!!(rrrr)!!!!"3!!!!%!!!!'!!(rrrr$!!!!!J!!!!)!!!!,!!,rrrr %!!!")`!!!!J!!`!!!5,rrrr&!*!'!53!!!!,!!!!"!!!!5Arrrr$!!!!"J!!rrr ra3!"rrrra!!#rrrraJ!!!5%!!!!b!"%!!!%Lrrrra3#3"J%N!!!!#`!!!!3!!!% Q!!!!#`!!!!B!!!%R!!!!CJ!!!!J!!!!6rrrrp`!!!!`!!!!M!!!!#`!!!"!!!!! N!!!!D`!!!")!!!!P!!!!#`!!!"B!!!%S!!!!#`!!!"J!!!%T!!!!"`!!!"S!!!% U!!!!"`!!!"X!!!%V!!!!CJ!!!"`!!!%X!!!!CJ!!!#!!!!%Y!!!!!`!!!#3!!!% Z!!!!!`!!!#J!!!%[!!!!#`!!!#`!!!%`!!!!!`!!!#i!![rrrm!!!!%r!!!!"!! #!!!"3!!!!!X!N!Hm!!!!#`!!!!)!![rrrm%!!!%k!!!!%!!&!!!"1`!!!!)!N!B "2!!!!!)!!!!%!!!"23!!!!S!!!!)!!!"2[rrrm!!!!!+!!!"33!!!!X!!!!1!!, rrrr#!!!"-J!!!&!!'!!!!5,rrrr&!*!'!53!!!!,!!!!"!!!!5B!!!!,!!!!"J! !!5F!!!"Q!!!!#!!!!"2rrrrh!!!!$!!!!#-!!!!,!!!!%!!!!#3!!!"V!!!!%J! !!#8!!!!,!!!!&J!!!6-!!!!,!!!!'!!!!63!!!!(!!!!'J!!!68!!!!(!!!!'`! !!6B!!!!,!!!!(!!!!6F!!!!(!!!!(J!!!6J!!!!(!!!!(`!!!6Rrrrr"!!!!)!! !!8)!!!!#!!!!-!!!!8-!!!!+!!!!0!!!!83!!!!$!!!!0J!!!88!!!!$!!!!1J! !!8B!!!!+!!!!2J!!!8F!!!!$!!!!3!!!!8J!!!!$!!!!4!!!!8N!!!!#!!!!5!! !!8S!!!!#!!!!6!!#rrrr[`!!!8`!!!"!!"B!!!%Lrrrra3#3"J%N!!!!#`!!!!3 !!!%Q!!!!#`!!!!B!!!%R!!!!CJ!!!!J!!!!6rrrrp`!!!!`!!!!M!!!!#`!!!"! !!!!N!!!!D`!!!")!!!!P!!!!#`!!!"B!!!&0!!!!!`!!!"J!!!&1!!!!#`!!!"` !!!&2!!!!!J!!!"i!!!&3!!!!!J!!!#)!!!&4!!!!#J!!!#B!!!&5!!!!#J!!!#J !!!&6!!!!#J!!!#S!!!&8!!!!#`!!!#`!!!&9!!!!#J!!!#i!!!&@!!!!!J!!!$! !!!&A!!!!!J!!!$3!!!&B!!!!#J!!!$J!!!&C!!!!!J!!!$S!!!&D!!!!#J!!!$i !!Irrrld!!!!@!!!!!J!!!!X!![rrrli!!!&F!!!!-J!,!!!")[rrrm8!N!B"*!! !!!X!!!!%!!!"*J!!!!X!!!!'!!!"*`!!!'B!!!!)!!!!%rrrrrF!!!!-!!!!)`! !!!X!!!!3!!!!*!!!!'X!!!!5!!!!*3!!!!X!!!!@!!!!*J!!!!X!!!!B!!!!*`! !!!X!!!!D!!!!+Irrrld!!!!F!!,rrrqm!!!"AJ!!!#3!$`!!!5,rrrr&!*!'!53 !!!!,!!!!"!!!!5B!!!!,!!!!"J!!!5F!!!"Q!!!!#!!!!"2rrrrh!!!!$!!!!#- !!!!,!!!!%!!!!#3!!!"V!!!!%J!!!#8!!!!,!!!!&J!!!9m!!!!,!!!!'!!!!@! !!!!(!!!!'J!!!@%!!!!(!!!!'`!!!@)!!!"Q!!!!(!!!!@-!!!!,!!!!)!!!!@3 !!!!(!!!!)J!!!@8!!!!(!!!!)`!#rrrrZ`!!!@F!!!!Q!!i!!!%Lrrrra3#3"J% N!!!!#`!!!!3!!!%Q!!!!#`!!!!B!!!%R!!!!CJ!!!!J!!!!6rrrrp`!!!!`!!!! M!!!!#`!!!"!!!!!N!!!!D`!!!")!!!!P!!!!#`!!!"B!!!&S!!!!#`!!!"J!!!& T!!!!"`!!!"S!!!&U!!!!"`!!!"X!!!&V!!!!CJ!!!"`!!!&X!!!!#`!!!#!!!!& Y!!!!CJ!!!#)!![rrrmF!!!%I!!!!8!!'!!!")2rrrmB!N!B"-Irrrm)!N!B"5rr rrlm!N!B"@rrrrli!N!B"AIrrrl`!N!B"C[rrrlX!N!8#rrrrZJ!!!AN!!!!%!!% !!!&k!!!!!`#3"3(rrrqj!!!!%3!!!!%!!!!(!!(rrrqi!!!!$3!!!!%!!!!(!!, rrrqhrj!%!!!!#!!!!!,rrrqfrj!%!!!!$!!!!!,rrrqerj!%!!!!#!!!!!,rrrq drj!%!!!!'!!!!!(rrrqc!!!!#`!!!!%!!!!(!!(rrrqb!!!!"`!!!!%!!!!(!!, rrrqarj!%!!!!#!!!!!,rrrq`rj!%!!!!$!!!!!,rrrq[rj!%!!!!#!!!!!,rrrq Zrj!%!!!!D!!!"&p!1$%i!!--58j&9&0[BfYPG(-!!&P*6N988fpMDf9d4'pYB@P Z!!Ab*&0[BfYPG%4[E@&TEJ!%0&0[BfYPG%4[E@&TEJ!(mepIGR"dFL3!!q*NFQP fCA*6G'&dC3!&&(*PFfpXGQ9b8h4KG'8!!YPNFRCb8Q9Q6R9Y!!%1D@jPG%0[G@j d!!CeF'*-BA0d!!D9F'*-DA0d!!-#3@jZEh4KG'9N8%)!!R"`BJ!&b8"ME'&cFb3 h16K(990*58j&9&pMF!!$VR4MF!!(Fe4$8'P[F')!"[*QD@aX-6)!"0YTEd0[EA" XCA4TEfi!!Ep5Eh9dD@jP4'9cBh*TF(4[FJ!(*fG[6@PiC@40Ef4P9(*KF!!(4(C PFR0TEfi!"JKbEh9dD@jP4'9cBh*TF(4[FNCXB@Gc!!&@FQ9cCA*fC@3a!!&AFQ9 cCA*fC@3b!!4hFf9XC@0dEh**EQC[!!3UFQpeG'PZC80[G@jd!!E`FQpeG'PZC9* PBfpbC(-!"4p5Eh9dD@jP8Q9MEh*N!!#rF(*[BdPZCQm!!p"*8d%!"2YbEh9dD@j P4QaKCh-!"S4`FQpM4'9cBh*TF(4[FJ!!eh0PE'9MG'pb!!"rD@p5CA0eE(3!!GC TEdjKE@93G()!!@aTEeC5C@C1G@d!!4CTEd05C@C1G@d!"UTMFd0[C'8!!IpdBh" 6G(*PB@d!"mKMFe"KFQ&Y!!@l3'0XBA0c*$Fi0dG98dP*6N98Af0`!!DCBh*PBA4 P!!1k9%033h*PBA4P8%)!"p"bBhC#G@CQ!!+8FQ0f3R9QCNaPEJ!#h@j[G'PQH9" bEf-!!bTeFf9b4'&dB9"dFJ!%F'p`C@i!!4p83e"2F'9Z8%)!"iaeE("8D@ePEh9 d9Q&XG@8!!(peE("8D@ePEh9d3@0dD@pZ!!@NGQ&XD@4TG(P'E'&RF`!$$@0[E@e KEQ48D@ePEh9d9Q&XG@8!!YTbC@e[G'9)Eh0d!!+qFQ9YEh4P8'pbG!!"cQa[Bf& X5'pcG!!"XQa[Bf&X8'pbG!!!i(4[FdCXB@Gc!!*rF(*PBf9NC@jMC3!!Ff4[ER4 'FQ&R!!)rG'PYC94[6'PfC3!!kA0PBh9bDA4j!!(eEh"dD@pZ3fjd!!FNEh"dD@p ZF`!%JA0PEQ3!!9"83e"6C@jN8%)!!,C`GA0S4QaKC`!#2(9bCf9ZG%CXB@F!"VP QD@aXCA)!"[ahC(03G()!!"*cC@jN4R*PC3!#QR0PEQ4-C@jRG'J!"`PbC@0PDAC P!!4c9%038Q9MC@PfC9"#!!#&E@&bDdCXB@F!"LCbC(03G()!!CabC(0-C@jRG'J !"qYcC@0[EQ48D@eP8h4KEA!!"IeME'pcC3!#ie4$8%0XEh0P8%)!"F0KBQpbG!! #Qe4$8%&LEh*d8%)!"XjcG'&dGA-!!ep83e"6G'&dGA033J!'@R9ZGA0PC!!(Kf0 [EQjPBh4TEfj6G'&dC3!#Sh0PEQ4AD@jNEhF!!3PbBhCAD@jNEhF!"V&KEA49EQ& MDf9N4'&dB3!&D'&YG&9ZFQ9KC%4KG'%!!,jcC@0eFQPdH8aPGQ9X8(4b!!11Ff9 ZC&9ZB@0VC@3!!&0cC@jN6Q9iG!!!KQ0[EQGPFh4TEfjAD@jNEhF!"`TbBhC1CAK d!!5'Fh*dG!!(BfaKFh459&3!"NKcC@jN6@&i8f9R8fPkC3!$H@0[EQj6G'&d8(4 b!!,99%033fpZEQ9MG'P[EP0dBA4c!!4&C'&dB9"VG(05BhCN!!6GC'&dB9"VG(0 6C@jd!!EGC'&dB9"VG(05CA0PER3!!ICLHA4PFe*MGQ3!"+GLHA4PFe*MGQ4%GA! !!i9LHA4PFe*MGQ43BA0d9fPZC'ph!!'+BRPdCA06C@jd!!1JBRPdCA05CA0PER3 !"jaZG@e)DA0dEd*eBfYPG(-!"44cC@jd8fPkC8KTFh4[!!1m5'PcG'p#G@0VCA3 !"9KfB@aeC3!(%Q0[G@jdCA)!"r"dEA*68P48!!-mFR4d9Q&bD@&ZBf8!"KYdEA* 59%m!!FCcC@jN9(*TCA-!!0CcEh9bBfK4G@9ZBfK5BhCN!!,rCfa[BQ&X5@jQE`! (T94$8%GXEf*KE%PZCQp33J!$%R4MF&"KFQ&Y8(4b!!!Q9%038'&bB@d!"j!!G'0 `8R4[33!"$A4MF&*dEdeTEJ!"&R4MF&*dEdeKH!!&qR4MF%eKH&0PCe0THQ8!!Pe dBh"0BAK$EfjZ!!4TG'0`6@&i9fPZC'ph!!2MG'0`8h4KG(03G()!!)K83e"6G'& dF`!(C(4MF%0[EQj"G(4PEA"dF`!&dh4MF%0[EQj2F'9ZC@3!"fPdBh"$EfjZ3@0 MCA"dC@3!"5"dBh"$EfjZ3fa[Ff9N!!BrG'0`3fpZEN&LEh*dC@3!!lCdBh"2Bh4 PG(0*EJ!%3h4MF%pMG'9dFdpeG!!'Kh4MF%pMG'9dFdPZ4(9`!!!cG'0`6f0dCA4 c8Q9dFQ&ZF`!%IA4MF%PZF(9d8'YdF`!&)(4MF%peG("eG&"VG(-!!JpdBh"%GA" 3Dh4c!!EfG'0`8Q9dFQ&ZFe"VG(-!!kCdBh"$4%*8B@*XC3!"G'eKH&4$8%0[EQj PBh4TEfjc!!1bG@4`!!F`9843D@p`BJ!"rR9NF&0dFQ9KE3!&r%"ME'&cFb3h16" (990*58j&9&pMF!!$cP9%8%0bC@&dC9"#!!*3C@jND@jR8'pbG!!"@99%8&0PEQ4 33J!!+A*PFf9bGQ9N!!"!BfKPBfY6G@d!"&a94&"5C@0PDACP8%)!"mPdD@eP6h9 d!!"UC'9cG%K[Fh3!!%jNCA0d8'pbG!!$Q@edG3!!qP9%8%e899"#!!HCEA4e8fP kC3!%,R0[BfX!!Xa*6N988fpMDf9d!!If*&0[BfYPG!!'q90[BfYPG!!!((*PCN0 [G@jd!!$IGhKbC@CMEfi!"b9hH'9fC@jd!!2RGhKPGQ9ZG'eKFfX!"R*cG(*PB@d !!ieZEfjLE'pMDfPZC`!(pR*PBhC#G@B!"CTbC@0fC!!#ch0K!!2NFfpMDf&NC(* ID@i!"`*cD@jIE'9Z!!,!FfPZAfCKE@PXH3!!@R0TEPp`Eh*d!!!$FfPZAf&NC() !"feTEPpKC'4b!!CpFepKC'4b!!#bFfPZAhTPFQm!"1a`C@9b!!DaFh0dBA4P!!$ (BA0jEQ0PFR)!"S3ZD(4[EQ`!!@KS!!D,,QKdEfjc!!DN,QjdEfKX!!&ZEJ!'Ubj ZG'pSF`!'a#j83e"ICA*bEh*IAdCT!!AaCA*bEQm!!B40B@083e"PFR)!"G%ZAep MG&pI-6"*6N988fpMDf9d4RB!!$-ZAepMG&pI0P0[BfYPG%Cf!!+EAepfG&pI-6" *6N988fpMDf9d!!Fr,QePEA0PG!!"$5j2F'9Z8fpMDf9dAema0NP14946Ef0VCA4 %EfeKD@j'GJ!%@h4SDA-!",G!1$3`!!I8AepNG&pI0P0[BfYPG%Cf!!5i3$Jd-3! 'JLjIAf0dAema-%P14946Ef0VCA4'9@`!",T!1$3c!!5l3$Jd0!!&"#jIAf4dAem a-%P14946Ef0VCA4'GJ!#`5j$E'pcC90[BfYPG&pI-6C*6N988fpMDf9d4'pYB@P Z4RB!!%)ZAepNG&pI0P0[BfYPG%Cf!!*2,PpIC'aIAdC3GJ!%[d!i0$J!!Z!Z3AC KD@aKBQaPAema-%P14946Ef0VCA4'GJ!$#bj6CA45C@C$EfjIAc%`58j&9&0[BfY PG%C3GJ!$P#jIAh"dFPpRE(9P!!Gi,RGi6@&M8fpMDf9d5'&ZC'aPFP"bEf-!"MG bC@CMEfi!!4aMB@jAFQPdC9!!!0GMB@j5C@&N8!!!CQ0KEPGbDA4P!!FmBf&Z8Q9 KC!!%qd!i0M3!!EBZ4e96590PG&*PCQ9bC@jMC3!(XP0[BfYPG(-!"[`ZAepfBep I-6&6Ef0VCA48B@*XC8CT!!&cF`!%m@eKFfX!")GNBA4K!!6p3$Jf0J!(R5jLD@j NAema-%P14946Ef0VCA4'8(CT!!1Y,NG98dPICA*bEh)!!PJZCf9dD'pcG'PN!!4 !B@4NFJ!(SQjKE@9XC@i!"+YZB@eP!!3J3$Jh13!(hbjRCA4cEf0VEQ&YC9pI-6" *6N988fpMDf9d4P"f8'N!"f8ZE@9YBh"j!!3l3$Ji-`!(p#jRCA4`C@9bEQ&YC9p I-6"*6N988fpMDf9d4P"f8'N!"%&!1$Jj!!&%,R0SGA4NEhGZAema-%P14946Ef0 VCA4'D3!$"QK[G`!%AN!i16B!!$8ZCQ0ZG'aIAc%`58j&9&0[BfYPG%C9D@N!!jp ME@3!!cTKFQF!"%0!16!i!!'Y,QP[Bh4XAema-%P14946Ef0VCA4'9@P3GJ!(-(* PFA9PFh3!",GKFQG`!!6cFfPkC3!$j'PQFJ!&N@PQFQ9a!!4M3$Na1!!!Tbj(990 *GfPdD%PZG'9bEQ9d8fpMDf9dF`!%GLj%Efjd8h4bDA"IAc%b8fpMDf9d4'pYB@P Z4RB!"(Y!16)`!!-&,PpIBh4IAc%f58j&9&0[BfYPG%4[E@&TENCf!!IV,PpIBh4 IAc%b8fpMDf9d4'pYB@PZ4QN!!*0IAhCdAema0NP14946Ef0VCA4%EfeKD@i!"#d ZAepMG&pI-6G(990*3fpZCQPRGA*KG'P[ENCf!!5MBfpZCJ!"ZdG98dP$EfjQD@G eFQ&dD@pZ!!2,C'9QBA9XG&4jF'8!"K"NC@CKG@ad3h*PBA4[FJ!!,Q&eG'p6F'P Z!!F4EQp$D'4TFJ!"-Q&MBh9b8h4KG!!#rQKKFd0[ER0[E'8!"ZTZEd&eG'p*EQP d4h*KCJ!#"h0SBA*PC%p`C@i!"eCcD@G3DA"P!!@UEQp"F("XC89fC@jdF`!$P'j eE90eCQCTBf9c!!#1Fh9QCQPMCA-!!TC(990*8h9QCQPi!!D`Fh9QCQPi!!#,Fh9 QCP4jF'8!!r"cG@CQ3h*PBA4[FJ!%I8!j-M)!"J0IAf4dAema-P0[BfYPG%4[E@& TENCf!!4q3$Nb-`!%JN!j-MF!"8iZ4(*TGQ9bAema0NP14946Ef0VCA4%EfeKD@j 'GJ!$bbj33Np`C@j6H@jM!!8T8'&bB@e#E'pMDe*PB`!(,@P[8'&bB@d!"iP*6e" KFQ&Y!!8EF8aTEQX!"Ap44@aPE3!&QR&8HA"P!!@1F84KG'%!"M9TEe4bBA!!!G9 TEd0YC%&NC()!!(TTEe*PCNjeE3!"fQP[9Q9bFdjeE3!"bfP[8'9bEA0cEJ!'afP [6@PcB`!!2@P[3R9QCQ9b!!+UD@p5CA&$Eh9ZG!!#C@P[3@0d3fpeER3!!@4TEe" [Fde[C'8!!e*TEe"[FdpQCR0PG!!"0fCTE'93BA*KE3!"edCTE'93BA*KE3!"D'P [4P*PCNjeE3!#-'P[4PCPFR01G@d!"fKQD@aXCA)a!!0BD@p'4'Pb5@jNCAJ!!M" TEdCX3A4dFQPL!!-#D@p'E&CPFR01G@d!"0&TEdCX4QjNFNPZCQm!"Aj'5@jQE`! 'CQCN9(P`C3!"DfCN3h*PBA4[FJ!(['CN4QaKCh-!!JCQC%a[Bf&dD@pZ!!@N8'p TER3!!ACf!!DfCQ4'E'4b!!FND@p'E%jeE3!"$fP[4Qa6G%*XD`!"rfP[4Qa-Cda PEJ!"c'P[4Qa3H8aPEJ!#k@P[4Qa58h4#E'X!!N"TEdCX8NaR6'9Z!!++D@p'E&* 3H8aPEJ!"[@P[4Qa$FN4KG!!"efP[4Qa0C%4KG!!$ZhC[E(9YC9"KFQ&Y!!-j9Qp XG@eP8'&bB@d!"fPQD@aXCA)b!!*MD@p@Efa*EQ4PH!!"`fP[9N0b4'&dC3!",fP [9Nac3QY9F!!([@P[9N&dFQ)!!)9TEeC1E8CXF`!!9'P[9N4TFP0d!!GND@p@3Qa -EJ!$,@P[9NjY3@a#E'Yc!!1JD@p@3@a#E'Y6DAS!!I"TEeC$E("6DAS!!*&TEd& X3Qa6G!!#FfP[9NjiG%C1G@d!!&*TEeC'FN*XD`!#c'0ZG(*X8'&bB@d!!X"$ER4 bE&"KFQ&Y!!5+Ffa[G%4PGP"KFQ&Y!!6D8fa[G%4PGP"KFQ&Y!!%UD@p68Q9Q6R9 Y!!))D@p69Q9bFdjeE3!#Z@P[8e"PFQecFfi!"NPTEe00DAJ!!"eTEe0'E'&RF`! 'JfP[8fa[G!!%hfP[583!"6YYG@adD84PGP"KFQ&Y!!@c6A9XG'P%CAC3BA*KE3! "UfP[69*PCNjeE3!#R@P[69CPFR01G@d!!QPTEde3CA*YFh0Z!!C+D@p06@Pi!!" "D@p04QaKCh-!!PTTEe0&3QaV8(4b!!5$3$Nb1!!(C5j5CA0[E(CPFPpI-6C*6N9 88fpMDf9d4'pYB@PZ4RB!"IBZ6h"PEP*PFfpXGQ9b!!5G3$Nc-J!'%#jcEf0VCA4 IAc%f58j&9&0[BfYPG%4[E@&TENCTF`!(A#j(990*Af9bFQpbAfjTE!!#HbjIAfj hAep'9@`!!h)ZAepMG&pI194$8&0[BfYPG%Cf!!2R,PpIBh4IAcP94&"6Ef0VCA4 'GJ!%Eh4jF'8!!CKcBACP4A*bEQm!!XC&FR*ZEe0KGQ9b!!0TCP0KGQ9N4A*bEQm !"2e!16Bb!!&FAepNE&pI4P"f!!6`AepNG&pI-6"&FR*ZEe0KGQ9b4RB!"2j!16B c!!@(,PpIC(4IAc%`4A*bEQp6BACPFNCf!!3#3$Nf0`!%$Lj(CA433PpI-6C*6N9 88fpMDf9d4'pYB@PZ4RB!"HCMGA*33J!$,#jIAfjhB9pI4P9X!!3m3$Ni-!!$Sbj IAf4XB9pI4P"f!!4!3$Ni0!!%38!j1$8!"%0!16Jh!!EmAep59&4*Aema-P0[BfY PG%4[E@&TEJ!%3N!j1$B!!N0IAe*89%PIAc%f58j&9&0[BfYPG%4[E@&TEJ!"5@0 SEfpcC9pI-6*6Ef0VCA4%EfeKD@j'D9"M8(CT8(C3D3!'Mh0[BfYPG("KDA*IAc% b8fpMDf9d4'pYB@PZ4QPc8&!f8fpMDf9d!!,dAepNG&pI-6C*6N988fpMDf9d4'p YB@PZ4RB!"E9cEf0VCA4IAc%f58j&9&0[BfYPG%4[E@&TENCTF`!$cbjIAf4dAem a0NP14946Ef0VCA4%EfeKD@j'GJ!(i5jIAf4dAema-P0[BfYPG%4[E@&TENCf!!4 G3$Nj-3!%AN!j16)!"'"!16Nd!!IrAep59&4*Aemf8fpMDf9d!!4I3$Nj-`!%"Pp I8P4859pI-6"*6N988fpMDf9d!!0hF'pcG&pcC@aPBh4IAcC6Ef0VCA4'9@09Be9 M!!&)Ff9XC@0dAemf8fpMDf9d4P"9Be"9Be"9B`!#E("bC9pcC@aPBh4IAcC6Ef0 VCA4'9@09Be9M!!&#DA0KG(4jAemf8fpMDf9d4RB!"(eQG(*eEQ0KG'9IAcC6Ef0 VCA4'E!!"B'acC@9VAemf8fpMDf9d4QaT!!8[CR0dBA4IAcC6Ef0VCA4'8$4cG'& d!!&,Ff9dFfpMDfp`G&pI0P0[BfYPG%CTD9"fD3!#b'GPG(0[BfY[F(4IAcC6Ef0 VCA4'D@P3GP"T!!FFFf9ZC(4[Aemf8fpMDf9d4P"fD@P3GQN!!R"bC@0fCR*[E9p I0P0[BfYPG%C3GQPT8(C3D3!#2AGbDA4PAemf8fpMDf9d4P"fD3!"TR*PB@4IAcC 6Ef0VCA4'8(CT!!5@B@0MCA"dAemf8fpMDf9d4P"f8'N!!FKXDA0dC@jIAcC6Ef0 VCA4'D3!%kQ0[EQjPBh4IAcC6Ef0VCA4'8(CT!!#&FfKeG'4[GfjIAc%`58j&9&0 [BfYPG%CT!!$UD@pMG'aIAc%`58j&9&0[BfYPG%C9D9"f!!G4CQ0ZG'aIAc%`58j &9&0[BfYPG%C9D@N!"P9RCA4`C@9bEQ&YC9pI-6"*6N988fpMDf9d4P"f8'N!"Qa RCA4cEf0VEQ&YC9pI-6"*6N988fpMDf9d4P"f8'N!"Q&LD@jNAema-%P14946Ef0 VCA4'8(CT!!%"3ACKD@aKBQaPAema-%P14946Ef0VCA4'GJ!%!PpIC(4IAc%`58j &9&0[BfYPG%Cf!!6L,PpIFfPZDA4I4e9658P1494IBh!!!F-ZAepbC@GTFh4PFPp RE'pLB@aIEf*UC@0d!!4L3$Nj0J!$IP423`!"!%0XEh0P8fpMDf9dAema0NP1494 6Ef0VCA4%EfeKD@j'GJ!!6%p`C@j6Ef0VCA4IAc%f58j&9&0[BfYPG%4[E@&TENC f!!2f4f9d8%*IAc%f58j&9&0[BfYPG%4[E@&TENCf!!CL8Q9cEfafCA*IAc%f58j &9&0[BfYPG%4[E@&TENCf!!3T4(*TGQ9bAema0NP14946Ef0VCA4%EfeKD@j'GJ! #-&pIBh4IAc%f58j&9&0[BfYPG%4[E@&TENCf!!F)4e965AGTG'K*ER4PFQjPG&0 [BfYPG(-!!"a(990*8f9d8Q9QCA*PEQ0P!!,f8f9d8Q9Q3fpZAema-%P14946Ef0 VCA4'8(B!"HTIAf0dAema-%P14946Ef0VCA4'9@`!""4IAf0dAema-%P14946Ef0 VCA4'GJ!&d&4$8&pPFR*[FPpI4QN!"EjZG'pSF`!&YfjdEfKX!!@ID(4[ER-!"CK SG'pZE!!!8%pA8J#3"MES!!"G-J!!!J-!!$G8!!!PhJ!!&I!!!!*f!!!%9J!!!%! !N%"&C`!!4AX!N!8"XJXHZd9T!*!&"%9V!!3!!!!&!!!!C!!!!#!!!!PkI!J#TT2 Krrb3!!%!#*3Krm!mB!!"1)!!!6KMUQj)!!!"B!!!!$[M!!!mB!!"1)!!!6KMU'j )!!!"B!!!!(`$q%"!JJ!-1'!#!%J!!!JiB!3!J!%!5$JK!%"m#!1QJq(rr%k!!#" &G3#3"3B!!!!F4A8!N!8'!!!!0%9Z$!3!!!!(!!!!$)!!N!Z!!!"N#!!!!%9h!*! &"3#3"%9T!*!&"%9V!!3!!!!)!!!!'!!!!%`!!!SX9'!&+8##!!`iB!!!6S!!)$K J!!&1J!!J4@X!"!!!!!S!!!#F!!!!IJ!!#Z9m#!+QNq(rr*2"rrL6SIrdN!!"!!L 8)Iq`1q-!!%J!!!%l``!!Im!(G#`!!!&!JJ!J5!!!!AaM"c4Ar`9qIq!(0(`!'!" "J!!)1q#SRcKr!!!iRJ!!5!!!!@!!!!!lS`!!2'!!!6L!!!%iBkLI5!!!!@!!!!" mBqK3-!2rrhaJ'4#!!3"B1#%!8(`)!kD$iIrmJm(rq)1Krr41J!!J4A8!N!8)!!! !(%9e!*!&"3!!!$"&G3#3"3B!!!"84A8!N!8'!!!!E%9Z$!3!!!!-!!!!$)!!N!Z !!!#F'!!!!%9h!*!&#J#3"%9V!!3!!!!0!!!!G!!!!-i!!!`4I!J#TT2Krrb6`Ir iN!!"!!L8)IqJ1m-!!$[N!!!iB!!"1)%!2%J!!!&J!!!!U'%!5MLH!!!i[`!!1-% !1%J!!!&J!!!!I'!(08'#!"3i!!!!X"i!!$J!!!#3!"m!!)!"!'Ji)3"JI!J$TS2 Krrb$`Iri6S!!)%9e!*!&$J!!!#4&G3#3"3m!!!!m4@i-"!!!!"i!!!!-J!#3#i! !!(33!!!!4AF!N!80!*!%4@X!"!!!!"m!!!$!!!!"1J!!$20m#!+QNq(rr*2"rrL 6SIrdN!!"!!L8)Iq`1k-!!$[%!!!li!!!1'#KV8J!!!&8B!Br3B)!*$aJCQmiBfa N1)%!1%J!!!&J!!!!I'!(08##!!Jli!!"9q!'2d##!"3iI3!!1*i!!%J!!!&)!!! m1'#!!$b!Bh3iS!!!10d!!$Mq!!!iK(*X5!!!!@!!!!"mB!Fe3B)!&$J!!!#`(3! !1!!!!*!!(J!!J!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrd6S!!)%9e!*!&#J!!!#K &G3#3"5!!!!"!4A8!N!80!!!!C%9e!*!&)3!!!)4&EJ`%!!!!*!!!!!b!!*!,J!! !`"J!!!"&G`#3"4m!N!4&D`!%!!!!*3!!!1J!!!(1!!!2)(`)!UDrBIrXN!!"!!L 8)Ii`1f-!!$Z%!!!lT3!!1mB!!$J!!!#3!!%"4$J"!$L3!!%"5V1K!8k6`3&S1!! !!E!"!94)!!"mJ!%"@(`!f%"!JJ"JJ!%"A(`!i%"!JJ"81(d!!$LH!!!iS3!i1-! !!8J!!!&J!!!!1q-!!$aJC'iiJ!!"1'0bF%J!!!&J!!!!+!-!!%##!"3iI`!!5!! !!@!!!!")!!!-1(m!!%J!!#bSB3&81!-!!E!"!956`3&S1'%"1%J!!!&J!!!!I'! (08'#rhJiB2rrJ!%"f$JK!G"m#!1QZf(rl%k!!#"&G3#3"5B!!!"X4A8!N!8R!!! !K%9e!*!&+!!!!*K&G3#3"5N!!!$!4@i-"!!!!3%!!!!-J!#3#i!!!1JS!!!!4AF !N!8P!*!%4@X!"!!!!3)!!!$S!!!#K!!!%[0m#!+QNq(rr*!!!3!)P#(rX$KK!$` iJ3!i5!!!!6aJBf3mJ(TdU+%!2)$"!$JiBf9f1)4MF%J!!!%li`!!Iq!(0#`!rrp "JJ!-1(m!!%J!!)JiB3!m1)%!1%J!!!%mB'0N2)"YG+LK!$b!`3!i1'0PGML%Bh" )!!!"1q-!!(rJ"c3X!2rr3B)!$$Kr!!")!!")1'%!2$L"!$K)!!!"2'"MC$b!EA5 SS3!mJ-%!1$KMCABiK'0`5!!!!6[M!!"ri!Fd,!$rrd'#!!`iI`!!5!!!#$KJrrq !!3"B1#%!8(`)!kD$iIrm6S!!)%9e!*!&(`!!!"K&G3#3"58!!!!d4A8!N!80!!! !@%9e!*!&*3!!!(4&G3#3"4m!!!#B4A8!N!8P!!!!Y%9Z$!3!!!%$!!!!$)!!N!Z !!!$S#!!!!%9h!*!%!3)!N!4&D`!%!!!""!!!!3`!!!-5!!!9J(`)!UD6iIrmNm( rq*!!!3!)P#(r`*!!B3"BJ!)!!#J!!!""JJ!-1'!!!%J!!-a)!!!"1q-!!$aJC'i iJ!!"1'0bF%J!!!&J!!!!N!"L!!#!!J!!+!!!!%##!"")!!!"B!!!!%J!!*5!BJ! !5!!!!@!!!!"ri!Fd,!$rrd'#!"!iI`!!5!!!!@!!!!#!BJ!!5!!!!@!!!!#!BJ! !5!!!!@!!!!#!BJ!!J!-!!*!!!J!!J')!!$L!!q%iS!!"J-%!@%J!!!&J!!!!1m- !!(r!"c9"JJ!NJ')!!%J!!!&J!!!!J')!!%J!!!&J!!!!1!!!!*!!!J!!1(i!!)! "!%Ji)3"!I!J$TS2Krrb$`Iri6S!!)%9c%!#3"!-!!!!B4A8!N!3"!J!!!#a&G3# 3"5F!!!"!4A-3!*!%!J!!!%K&Fa!!N!3#!!!!6%9e!*!%!38!!!"B4A-3!*!%!J! !!'4&G3#3"!%'!!!!D%9e!*!&+!!!!)"&Fa!!N!3#!!!!L%9e!*!%!3F!!!#-4A- 3!*!%!J!!!*4&G3#3"!%)!!!!Q%9c%!#3"!)!!!#J4A-3!*!%!`!!!+K&Fa!!N!3 $!!!!V%9e!*!%!3N!!!#m4A-3!*!%!J!!!0"&G3#3"!%+!!!!e%9c%!#3"!)!!!$ F4A8!N!3"#`!!!1"&Fa!!N!3$!!!!l%9Z$!3!!!%1!!!!$)!!N!Z!!!%-%!!!!%9 h!*!%!33!N!4&D`!%!!!"$`!!!'J!!!2)!!!D%A`)!UD3!!%!#*3Krm#!!J!!+!! !!%##!!`iB2rN5!!!2)"L!!!iJ!$K1+!!!NJ!!!&J!!!!J')!!%J!!!&J!!!!J') !!%J!!!&J!!!!1!!!!*!!!J!!1'!!!)!"!%Ji)3"!I!J$TNk!!#"&Fa!!N!3$!!! !$%9c%!#3"!-!!!!J4A8!N!3"#3!!!#a&Fa!!N!3#!!!!0%9e!*!%!3S!!!!i4A- 3!*!%!J!!!%"&G3#3"!%,!!!!4%9c%!#3"!-!!!"34@i-"!!!!4!!!!!-J!#3#i! !!'J!N!4&G`#3"!%2!*!%4@X!"!!!!4%!!!"S!!!%$!!!(%&m#!+QN!!"!!L8)Ir !N!"K!&L3!)%!A*!!S3"JN!$"!'5!!J!!+!!!!%##!!`iB2rN5!!!,)"L!!!mJ!! "1+!!!i$"!&L!i3"FJ3%!B)%K!'3iK2rK5!!!!@!!!!#!!3")1#%!3(`)!kC1J!! J4A-3!*!%!`!!!"a&Fa!!N!3$!!!!-%9e!*!%!3N!!!"34@i-"!!!!4X!!!!-J!# 3#i!!!'J!N!4&G`#3"!%4!*!%4@X!"!!!!4`!!!"F!!!%D!!!(JGm#!+QN!!"!!L 8)Ir!N!"K!&L3!)%!A)!#!!!S!!!!3))!$$KJrq4)!!!SJ')!!$L!$q%iS!!%J-% !@)$K!&a)!!!"B!!!!,"K!$JiB!!!J!%!5$JK!%"m#!1Q6S!!)%9c%!#3"!-!!!! 84A-3!*!%!`!!!#K&G3#3"!%*!!!!2%9Z$!3!!!%I!!!!$)!!N!Z!!!"F!*!%4AF !N!3"(!#3"%9V!!3!!!%J!!!!9!!!",B!!"pUI!J#TT!!!3!)P#(r`*!!B3"BN!# "!&b!!J!!+!!!!%##!!`iB2rN5!!!))"L!!!iJ!rK1+!!"B$"!&L!i3"F5!!!!@! !!!#!!3")1#%!3(`)!kC1J!!J4A-3!*!%!`!!!"4&Fa!!N!3$!!!!+%9e!*!%!3N !!!!m4@i-"!!!!5%!!!!-J!#3#i!!!&3!N!4&G`#3"!%J!*!%4@X!"!!!!5)!!!" S!!!%pJ!!)0Tm#!+QN!!"!!L8)Ir!N!"K!&L3!)%!A*!!S3"JN!$"!'5!!J!!+!! !!%##!!`iB2rN5!!!,)"L!!!mJ!!"1+!!"S$"!&L!i3"FJ3%!B)%K!'3iK2rK5!! !!@!!!!#!!3")1#%!3(`)!kC1J!!J4A-3!*!%!`!!!"a&Fa!!N!3$!!!!-%9e!*! %!3N!!!"34@i-"!!!!5-!!!!-J!#3#i!!!'J!N!4&G`#3"!%L!*!%4@X!"!!!!53 !!!"S!!!&8J!!)Tjm#!+QN!!"!!L8)Ir!N!"K!&L3!)%!A*!!S3"JN!$"!'5!!J! !+!!!!%##!!`iB2rN5!!!,)"L!!!mJ!!"1+!!"i$"!&L!i3"FJ3%!B)%K!'3iK2r K5!!!!@!!!!#!!3")1#%!3(`)!kC1J!!J4A-3!*!%!`!!!"a&Fa!!N!3$!!!!-%9 e!*!%!3N!!!"34@i-"!!!!6)!!!!-J!#3#i!!!'J!N!4&G`#3"!%N!*!%4@X!"!! !!6-!!!"S!!!&VJ!!*'"m#!+QN!!"!!L8)Ir!N!"K!&L3!)%!A*!!S3"JN!$"!'5 !!J!!+!!!!%##!!`iB2rN5!!!,)"L!!!mJ!!"1+!!#)$"!&L!i3"FJ3%!B)%K!'3 iK2rK5!!!!@!!!!#!!3")1#%!3(`)!kC1J!!J4A-3!*!%!`!!!"a&Fa!!N!3$!!! !-%9e!*!%!3N!!!"34@i-"!!!!63!!!!-J!#3#i!!!'J!N!4&G`#3"!%c!*!%4AX !N!T&DJ!%!!!"03!!!!`!!!B+!!!&UMJ!!!'B"!!!6S!!)%9["33!!!%h!!!!)2r rrr8!!!B1U[i(!*!,!m!!!3!%!*!-4AB+!!!!!6J!!!!84@i3"!!!!6X!!!!%rrr rc!!!$p8!N!4&EJ8%!!!"23!!!"6rrrr*!!!3-!!!!!3!N!F#!!!!"!#3"%9f"3! !!!%m!!!!%%9f"3!!!!%l!!!!"%9f"3!!!!%k!*!%4@i&!3!!!83!!!!+rrrrb!! !%4*XEf0KE'K[Fh3!8Q4&D`!%!!!"43!!!Y`!!!Bd!!!4%R`)!UDr)IrNN!!"!!L 8)Iq3!$XM!!#$BJ!!Jk)!!)2#!!#$JJ!!J))!!%J!!!&J!!!!,!-!!%##!&")!!! "B!!!!$Y$!!#633!iJ!%!1*!!!3!mJ!%!2#J!!!""JJ!F1'%!2$L!!!3iS!!#5!! !!@!!!!")!!*B1!!!!C!!(!!!1'!!!%J!!NL!BJ!!5!!!!@!!!!"mB!Fe3B)!&$J !!!13!"`!!$KJ!!")!!)N1q!!!%J!!"JiJ!!!9q-31MJ$!34mRJ%Z1rm!!5`I!!4 "J2rS1!!!!*J"!%!iH3!!1*i!!)#L!!!i`3"!5!!!!AaJ"c3X!+Aq3))!A%J!!!& J!!!!,!-!!%##!#b!(3!!+!!!!%'#!$3iB!!#1)!!!)'G!!")!!!"B!!!!#`$!!" "JJ!B1'!!"%J!!!&J!!!!1'!!!%J!!Bb)!3"!+!!!!%'#rkb!(J!!,!#Pr8'#!'a !J!!X,!#PqN'#!*!!3)!!&#`!TIK"JJ#N3)!!N!")!!#X,!#Pr%#!!&4)!!"J,!! !!%'#!+K!J!#8,!#Prd'#!!a!J!#)5!!!&$J!!!'3!"`!!$KJ!!")!!%F1!!!!j! !(!!!1'!!!%J!!3`i!!!$N!!F!!!iB!!!5!!!r$J!!!'3!"`!!$KJ!!")!!$X1!! !!C!!(!!!1'!!!%J!!0`i!!!#N!!F!!!iB!!!5!!!c$J!!!13!"`!!$KJ!!")!!# m1!!!!T!!(!!!1'!!!%J!!+`i!!!$N!!F!!!iB!!!5!!!R)JH!!4m!!Ge3))!&$J !!!'3!"`!!$KJ!!")!!#!1(i!"%J!!!&J!!!!1q2rrcJI!!4m(J#ZI!!(G#`!!#j !JJ!31'!!!$JI!!4mIJ'Z1q!!!%J!!"aAia!k1!-""(aq!K4Ai"!kI(X",M[r!!% X(`!%3)!!'&IM%$Si!`%%I"i!,LJ!!!"!J[r31'!!!&IJ%$TmH`%ZJ')!!)!"!(J i)3"`I!J$TVXKrq41J!!J4A3$!!!!!6`!!!!84A3$!!!!!8B!!!!B4A3$!!!!!6S !!!!F4A3$!!!!!6N!!!!J4A3$!!!!!83!!!!N4A8!N!3"4`!!!#K&G3#3"!&)!!! !1%9e!*!%!8N!!!"S4A3$!!!!!8S!!!#%4A8!N!3"5`!!!)K&G!-!!!!"0`!!!0a &G3#3"!%4!!!!j%9e!*!%!8`!!!$d4A8!N!3"63!!!4a&G3#3"!&1!!!"-%9e!*! %!8m!!!*34A3$!!!!!6d!!!,%4@i-"!!!!93!!!!-J!#3#i!!!Y`i!!!!4AF!N!3 "43#3"%9V!!3!!!&*!!!#8!!!"f!!!"FRI!J#TVmKrq53!!%!#*3Krk!l)`!!Ji) !!)1L!!#$`J!!Jf)!!)"L!!")!!!"B!!!!(aJ"c9"JJ!81!!!!j!!'`!!1'!!!%J !!IJli!!!5!!!'$L!!!"Aia!k1!-""(bH!5ilr`!","m!"%'!rqJi!!!!Q!%!1)" j!!!m!i%!+!!!!8##!"")!!!"B!!!!%J!!!L!H3!!1d-!!$LH!!#!SJ!!1-%!1%J !!!&mB!Fd,!#PrN##!&a)!!!"B!!!!#`$!!"!JJ!XJ"d!!#J!!!""JJ!d1'!!!cL !!!#"R3!!5!!!!@!!!!!X!`!!3B)!'$KJ!!4)!!!"B!!!!$KJ!!")!!&!L!%!1#J !!!""J[qXJ"i!!#`!TIa"JJ"83)!!+#`!TIP"JJ"i3)!!%#`!TIK!J!"m5!!!L#` !TIY!J!"!5!!!6#`!!!""JJ#%3)!!F#`!TIj"JJ!)5!!!C$J!!!13!"X!!$KJ!!" )!!$B1!!!!C!!'`!!1'!!!%J!!-Ji!!!"N!!E!!!iB!!!5!!!Z$J!!!+3!"X!!$K J!!")!!#S1!!!!j!!'`!!1'!!!%J!!*Ji!!!#N!!E!!!iB!!!5!!!L$J!!!13!"X !!$KJ!!")!!"i1(i!"%J!!!&J!!!!1q2rrcJI!!4m(J#ZI!!(G#`!!#j!JJ!31'! !!$JI!!4mIJ'ZJ"i""#J!!!"!JJ!)Nei""$[J!!")!!!F9q-31MJ$!34mIJ)89q! 31Ram!5ilr`!","m!"%'!rq3i!!!!N!!F!"#!BJ!!J!%!D$JK!'"m#!1QZb(rj%k !!#"&G!-!!!!"2!!!!"4&G!-!!!!"4J!!!"K&G!-!!!!"1J!!!"a&G!-!!!!"13! !!#"&G!-!!!!"5J!!!#4&G3#3"!&,!!!!+%9e!*!%!8J!!!#%4A3$!!!!!6F!!!# F4A8!N!3")J!!!+4&G3#3"!&-!!!!Y%9e!*!%!8d!!!$F4A8!N!3"6J!!!2"&G3# 3"!&2!!!"c%9d!`!!!!%p!!!#1%9Z$!3!!!&@!!!!$)!!N!Z!!!*31!!!!%9h!*! %!8N!N!4&D`!%!!!"9`!!!'!!!!KF!!!F&(`)!UD3!!%!#*3Krm#3!'%!@)"L!!" )!!!"B!!!!(aJ"c9"JJ!B1!!!!i"L!!#3!!-!!$KJ!!")!!!FJ'%!@)##!!!iK!! %5!!!!B"L!!!iB`!%J!%!5$JK!%"m#!1Q6S!!)%9d!`!!!!&+!!!!%%9e!*!%!8X !!!!84A3$!!!!!6N!!!!S4A3$!!!!!6S!!!!m4A8!N!3"(!!!!%4&G!-!!!!"1J! !!%K&EJ`%!!!"@3!!!!b!!*!,J!!!B!#3"%9h!*!%!9F!N!4&D`!%!!!"@J!!!23 !!!L@!!!Feh`)!UD6iIrmNm(rq*!!!3!)P#(rS*!!B3"iN!#"!(b$iJ!!J')!!%J !!!&J!!!!I'!(08'#!#Ji!!!$J')!!*!!!`!!1!$rrj!!!3"3J'%!H)!"!!!- !!%J!!)L!B3"m1*m!!$LJ!!!i`!!!5!!!!AaJ"c9"JJ!NJ!%!H*!!!3")1!$rrj! !!3"-J'%!5)!"!%b3!!-!!%J!!%b)(`!%I!!(G8'#!#5!!3"iN!!"!%!i!2rrN!! "!%5!B3"!J!%!4*!!!`!!5!!!))2I!35!!3"iN!!"!$L6`3!mJ'%!1)!"!$b3!!- !!)!"!'Ji)3"JI!J$TS2Krrb$`Iri6S!!)%9d!`!!!!%k!!!!(%9d!`!!!!&+!!! !)%9e!*!%!8X!!!!N4A3$!!!!!6N!!!!i4A8!N!3"%3!!!'K&EJ`%!!!"A!!!!!b !!*!,J!!!p"!!!!"&G`#3"!&D!*!%4@X!"!!!!8J!!!#)!!!)m!!!(Spm#!+QN!! "!!L8)IqJL!)!!(`!"h9!JJ!81!!!!*!!!J!!1!!!!CJ#!!#!!J!!,!!!!%'#!!b !BJ!!5!!!3)"L!!")!!!"B!!!!,"K!&!i!!!2X!%!8MKK!$K)!!!"B!!!!(aJ"c9 "JJ!-1'!!!%J!!!b!B3"8N!"L!!#!!3"S1#%!B(`)!kC1J!!J4A-3!!!!!9i!!!! -4A-3!!!!!9d!!!!F4A-3!!!!!9i!!!!N4A-3!!!!!9d!!!!S4A-3!!!!!9d!!!! d4A3$!!!!!8S!!!!m4A8!N!3"A`!!!%"&G3#3"!&J!!!!@%9c%!!!!!&G!!!!G%9 Z$!3!!!&R!!!!$)!!N!Z!!!#)!*!%4AF!N!3"5!#3"%9Z"3%!!!&U!!!!$2rrrm8 !!#"N*@3Z*@3Z*@3Z*@3!4@X!"!!!!@X!!!&8!!!*5J!!)'4m#!+QNq(rr*2"rrL 6SIrdNi(rm*!!!3!)P#(rX$Z$!!!lT!!!L!)!!(`!"h9!JJ!81!!!!*!!!J!!1!! !!CJ#!!#!!J!!+!!!!%##!-K)!!!"1m-!!*2"!$L!!3!iN!!"!$b!!3!m+!!!!%# #!"3iB!!b5!!!!@!!!!")!!#m1'%!2$L!!!3iS!!#5!!!!Aar'hP!JJ"8,"d!%%# !!"3iB!!@5!!!!@!!!!")!!#-1(`!!)##!!#!!3!m9!9'2S!"!$a8"SBqJ!%!2&3 (aMk!!3!m9!J'2NJ!!!&J!!!!1'!!!%J!!&5!I`!!5!!!!@!!!!!iB`!"5!!!!@! !!!#3!')!!)"L!!#!R`!!5!!!!@!!!!!iI!!!J))!!$Lp!!")!!!"B!!!!$J!!!" mIH)8Q!2rrcKJ!!#!!3"B1#%!8(`)!kD$iIrmJm(rq)1Krr5$JIr`6S!!)%9c%!! !!!&T!!!!*%9c%!!!!!&S!!!!0%9c%!!!!!&T!!!!2%9c%!!!!!&S!!!!3%9e!*! %!8J!!!"-4A8!N!3"6J!!!("&G3#3"!&*!!!!L%9e!*!%!8i!!!#J4A3$!!!!!@S !!!#`4A8!N!3"E!!!!04&G3#3"!&2!!!!k%9e!*!%!@d!!!$d4A-3!!!!!@J!!!$ m4A-3!!!!!@J!!!%!4A8!N!3"EJ!!!3K&Fa!!!!!"D!!!!44&G3#3"!&[!!!"(%9 Z$!3!!!&c!!!!$)!!N!Z!!!&8)!!!!%9h!*!%!@X!N!4&EJ8"!!!"G!!!!"(rrrr $!!!MqQ9MD'mJ)#!*#5!J0bpeC(!!N!4&EJ8"!!!"G3!!!"2rrrr#!!!MqQ4TFf0 KFQ3J)#!*)#!j,h9NF!#%4@i&!3!!!AB!!!!4rrrr`3!!)rTdD@eP)#!J#3NJ-cF [G@4`!'PZG89Z"3%!!!&h!!!!%[rrrm!!!#2kC'pYB@PZ)#!J#5!e-bpeC(!!!`" &EJ8"!!!"H!!!!",rrrqr!!!MqR0eER*`Bb!J)!Na-6%[G@4`!!E#4@i&!3!!!AN !!!!3rrrr[J!!)rTdCR4`)#!*#5!f15peC(!!4@i&!3!!!AS!!!!4rrrr[3!!)rT LD@CQ)#!J#3Ne-6)[G@4`!-1V#%9Z"3%!!!&l!!!!%2rrrl`!!#2kGfK[)#!J#3N e-6-[G@4`!%9Z"3%!!!&m!!!!%IrrrlX!!#2kG'&XDb!J)!N*06%h,h9NF!"6!!" &EJ8"!!!"I3!!!"2rrrqk!!!MqQCdF#eNBA4K)#!*)$)`,h4MF!#J4@i&!3!!!Ai !!!!2rrrrZ3!!)rTQG(!J)!N*)$)a,h4MF!!!4@i&!3!!!Am!!!!4rrrrZ!!!)rT dC@aZCA3J)!NJ-M-[G'0`!*!%4@i&!3!!!B!!!!!3rrrrY`!!)rTcEA4`)#!*#5! b05pdBh!!4@i&!3!!!B%!!!!3rrrrYJ!!)rTdD@eP)#!*#5!c0bpdBh!!4@i&!3! !!B)!!!!4rrrrY3!!)rThD'pTFb!J#3NJ0$-[G'0`!*!%4@i&!3!!!B-!!!!5rrr rY!!!)rTNEfeKD@iJ#5!*)$8c,h4MF!#Vc%9Z"3%!!!'%!!!!%rrrrl-!!#2kD'p cG'jKE@9c)#!a-$%[G'0`!!"&EJ8"!!!"K3!!!"(rrrqb!!!MqQjZG(!J)#!*#6% a15pdBh!!N!4&EJ8"!!!"KJ!!!"(rrrqa!!!MqQCTEQGPFL!J#5!h15pdBh!!N!4 &EJ8"!!!"K`!!!"$rrrq`!!!MqQjdF#!J)!N*-6)c,h4MF!"&EJ8"!!!"L!!!!"( rrrq[!!!MqR9eBh!J)#!*#68d-#pdBh!!Z+[-4@i&"!!!!BN!!!"BrrrrVJ!!)rS !N&K&GJ8!!!!"L!!!!&"&GJ8!!!!"K`!!!%a&GJ8!!!!"KJ!!!%K&GJ8!!!!"K3! !!%4&GJ8!!!!"K!!!!%"&GJ8!!!!"J`!!!$a&GJ8!!!!"JJ!!!$K&GJ8!!!!"J3! !!$4&GJ8!!!!"J!!!!$"&GJ8!!!!"I`!!!#a&GJ8!!!!"IJ!!!#K&GJ8!!!!"I3! !!#4&GJ8!!!!"I!!!!#"&GJ8!!!!"H`!!!"a&GJ8!!!!"HJ!!!"K&GJ8!!!!"H3! !!"4&GJ8!!!!"H!!!!""&GJ8!!!!"G`!!!!a&GJ8!!!!"GJ!!!!K&GJ8!!!!"G3! !!!4&GJ8!!!!"G!#3"%9V!!3!!!'f!!!!G!!!#Hi!!#D(I!J#TT!!!3!)P#(r`*! !B3"BJ!)!!#J!!!""JJ!JJ')!!$J!rrpm!`"!3B)!%)"L!!")!!!"B!!!!$J!!!# 3!!)!!$KJ!!#!!J!!,!!!!%##!"#!!3"B,!!!!%'#!!JiB!!"N!"L!!#!!3")1#% !3(`)!kC1J!!J4A-3!!!!!C%!!!!34A-3!!!!!C%!!!!F4A-3!!!!!C%!!!!X4A8 !N!3"Y`!!!$"&Fa!!!!!"X`!!!$a&Fa!!!!!"Y3!!!%4&Fa!!!!!"Y3!!!'"&EJ` %!!!"Z3!!!!b!!*!,J!!!G!#3"%9h!*!%!EB!N!4&D`!%!!!"ZJ!!!&3!!!S`!!! R'R`)!UD3!!%!#*3Krm#!!J!!+!!!!%'#!#L!BJ!!1!$rrh`$!%""JJ!BJ')!!%J !!!&J!!!!1!!!!*!!!J!!1!!!!*!!!J!!J!%!5$JK!%"m#!1Q6S!!)%9c%!!!!!' 4!!!!$%9c%!!!!!'4!!!!'%9c%!!!!!'4!!!!+%9e!*!%!EX!!!!X4A-3!!!!!C% !!!!i4A-3!!!!!E8!!!"!4@i-"!!!!E`!!!!-J!#3#i!!!&3!N!4&G`#3"!'k!*! %4@i&!3!!!Ed!!!!1rrrrT!!!*j30,f9dBbpcCA*fD@0PF`!!4@i3!3!!!Ei!!!! #rrrrS`!!*j4b!()!4@i3!3!!!Em!!!!$rrrrSJ!!*j3M$3!!4@i3!3!!!F!!!!! $rrrrS3!!*j3J#3#)4@i3!3!!!F%!!!!$rrrrS!!!*j3[,!!!4@X!"!!!!F)!!!) -!!!+C!!!*j4m#!+Q[f(rl*!!!3!)P#(rB)2#!!#$SJ!!Ji)!!)!#!!!S!!!!3)) !F$KJJ!!mJ("b1+!!!$M"!$Jii3!k1)4PCNJ!!!&J!!!!I'!(08##!$JiB3!qJ)) !!%J!!!&J!!!!1'%!1%J!!!&J!!!!1))!!%J!!!&J!!!!N!"L!!!S!`!!3))!&$J !rrq3!!)!!$J!!!#3!!)!!)"L!!!i!2rrI!-!3%##!%b!BJ!!J!)!!&3!%$Tm!`! Z+!!!!%##!!`iB!!!5!!"1$Km!!#!SJ!!J))!!$J%!!'3!!)!!&5!%$TmK3!Z5!! !!@!!!!")!!!S1(`!!$L!!)#!SJ!!5!!!!@!!!!!S!`!!3))!$$KJ!!")!!$X1(` !!$L#!!")!!!"B!!!!(al'hP"JJ!-1!!!!*JE!!#)(!!!I!!(G8'#re`iI!!!1)) !!%J!!!&J!!!!N!"p!!!S!`!!3B,r3$KJ!!!iJJ!!5!!!!@!!!!"mHaYj3B,r+$K l!!!iJJ!!5!!!!@!!!!#3!(d!$#J$!!""J[m-1)!!!)"p!!`i!`!"N!!G!!bBJ`! !1(X!!%J!!!&J!!!!N!"p!!L6h3!%1q!!!%J!!#JiB!!!1))!!%J!!!&J!!!!9q! 31Raq!5iS!`!!1rm!!8'#!!`X(`!(3B$rf$KJ!!"Ai"!kI(i",MKp!!#!!3#S1#% !S(`)!kDlBIrX6S!!)%9d!`!!!!'d!!!!%%9d!`!!!!',!!!!&%9d!`!!!!'+!!! !'%9c%!!!!!'4!!!!(%9e!*!&)3!!!%"&G!-!!!!"[3!!!&4&G3#3"!($!!!!@%9 e!*!%!F3!!!"N4A-3!!!!!Ei!!!"X4A8!N!3"a3!!!("&Fa!!!!!"N3!!!(K&Fa! !!!!"N3!!!)K&Fa!!!!!"X`!!!*!!4A-3!!!!!C%!!!#84A3$!!!!!BN!!!#N4A- 3!!!!!E-!!!#S4A3$!!!!!BN!!!$)4A-3!!!!!E-!!!$-4A-3!!!!!E-!!!$84A8 !N!3"EJ!!!1"&Fa!!!!!"N3!!!24&G3#3"!('!!!!q%9c%!!!!!'r!!!"&%9e!*! %!FF!!!%B4A-3!!!!!F!!!!&!4A8!N!3"b!!!!84&Fa!!!!!"`!!!!9a&G3#3"!( )!!!"B%9c%!!!!!("!!!"G%9e!*!%!FF!!!&i4A8!N!3"b3!!!D4&Fa!!!!!"`!! !!F"&G3#3"!()!!!"a%9Z$!3!!!(1!!!!$)!!N!Z!!!)-+!!!!%9h!*!%!F)!N!4 &D`!%!!!"c`!!!0`!!!Y+!!!X!A`)!UD6iIrmNm(rq*1Krr56JIr`N!!"!!L8)Iq `1m-!!$Z%!!!iB!!!5!!!!8J!!(!iIJ!!J*d!!%J!!!&J!!!!,!-!!%'#!$L$r3! %5!!!)$Kq!!#!R`!!5!!!!@!!!!!X!`!!3B)!'$[r!!5!(`!!+!!!!%##rpa)!!! N+"`!!%'#!#JiI!!!J*d!$%J!!!&J!!!!,!-!!%'#!"")!!!"I(dEH8##rib!!J! !,!!!!%##!!K)!!!"1(d!!)!"!&Ji)3"3I!J$TS2Krrb$`IriJk(rp)1"rr"1J!! J4A8!N!3"YJ!!!#K&G3#3"!&(!!!!1%9e!*!%!8F!!!"B4A8!N!3"4`!!!)a&G3# 3"!(#!!!!R%9c%!!!!!'e!!!!U%9e!*!%!ES!!!#d4@i-"!!!!G-!!!!-J!#3#i! !!0`J!!!!4AF!N!3"c`#3"%9V!!3!!!(8!!!!P!!!#rB!!#ffI!J#TT2Krrb6`Ir iNk(rp*!!!3!)P#(rX$ZM!!!la!!!1'!!!%J!!!&)!!!`J"m!#(`G!!"!JJ!N+"i !!%'#!#JiIJ!!J*m!$%J!!!&J!!!!,!-!!%'#!"")!!!"I(mEH8##rmb!!J!!,!! !!%##!!K)!!!"1(m!!)!"!&Ji)3"3I!J$TS2Krrb$`IriJk(rp%k!!#"&G3#3"!' f!!!!*%9e!*!%!8F!!!")4A8!N!3"`J!!!&K&Fa!!!!!"Y3!!!'4&G3#3"!'k!!! !F%9Z$!3!!!(@!!!!$)!!N!Z!!!#8'!!!!%9h!*!%!G3!N!4&EK!"!!!"e`!!!!6 rrrqG!!!Z`A4MF!"&EK!"!!!"f!!!!!6rrrqF!!!Zh(9NF!"&EK!"!!!"h`!!!!6 rrrqC!!![Ch9NF!"&EK!"!!!"i!!!!!6rrrqB!!![Ch4MF!"&D`!%!!!"i3!!!03 !!!aX!!![Ch`)!UD6iIrmNm(rq*!!!3!)P#(r`$[$!!#!BJ!!J!)!!"`!!!ari`) 81(i!!$L#!!")!!!"B!!!!#`$!!"!JJ!B1!)!!*!!(`!!1!!!%C!!(`!)5!!!4$K q!!!iJJ!!5!!!!@!!!!!X!`!!3))!'$J#!!#3!"m!!$J!!!D3!"m!#%J!!"Ji!!! VJ')!!*!!!`!!1'!!!%J!!#`i!J!!N!!I!!5!BJ!!1)-!!6KJ!!Tm""[@I!!CeR` !)!!)!!$Kr!!#!!3")1#%!3(`)!kD$iIrmJm(rq%k!!#"&G!-!!!!"f3!!!"K &Fa!!!!!"hJ!!!"a&Fa!!!!!"h`!!!#a&G3#3"!&(!!!!-%9c%!!!!!(B!!!!3%9 c%!!!!!(J!!!!@%9e!*!%!8F!!!"F4A-3!!!!!GF!!!"X4A3$!!!!!H)!!!#%4A- 3!!!!!6X!!!#84A-3!!!!!Gi!!!#F4A-3!!!!!Gi!!!#d4@i-"!!!!H3!!!!-J!# 3#i!!!033!!!!4AF!N!3"i3#3"%9V!!3!!!(P!!!!N!!!!!c-!!!a'j2Krrb!JJ! !J!)!!"`!!!arj!)8,!-!%8##!"Ji!J!!N!!I!!!i!!!4N!!I!!K)!!!d,!-!"N# #!"Ji!J!!N!!I!!!i!!!'N!!I!!K)!!!B1!!!+i##!!#3!!3!!$KJ!!")!!!X1!) !!*!!(`!%J))!!$LN!!%iJ!!+I!8MeR`!)GCm!#K3N!!#!!!iI`!!Jq(rr%k!!#" &G!-!!!!"f3!!!!4&Fa!!!!!"hJ!!!!K&Fa!!!!!"f!!!!"a&Fa!!!!!"e`!!!$K &G!-!!!!"iJ!!!&"&Fa!!!!!"1`!!!'"&Fa!!!!!"hJ!!!'K&Fa!!!!!"hJ!!!)" &E"!%!!!"hJ!!!!3!!!!$!!![3d9X"33!!!(C!!!!H2rrrjX!!#m44@`3"!!!!E8 !!!!%!!!!!`!!*QP&E!8%!!!"Y!!!!#$rrrqP!!!Q5N9X%!3!!!'c!!!!"!!!!!- !!#Bb4@`3"!!!!C%!!!!%rrrrU`!!*KG&E!8%!!!"L`!!!"$rrrqX!!!Pqd9X"3% !!!'+!!!!J2rrrkd!!#AF4@`3!3!!!@N!!!!"!!!!"`!!)'4&E"!%!!!"D!!!!!3 !!!"Q!!!JC%9X%!%!!!&H!!!!!3!!!!F!!"k24@`3"!!!!9d!!!!%!!!!!`!!(Sp &E!8%!!!"2!!!!"6rrrr,!!!3"%9X"33!!!%k!!!"&2rrrpF!!!qI4@d&"!!!!6N !!!!%!!!!!`!!"SY&E"!%!!!!!`!!!!6rN!3!!!Hq4@`3"!!!!!)!!!!%!!!!C`! !"jP&E`S%!!!"jJ!!!!L!!*!24AB!N!3"j3#3"%9f$`!!!!(R!!!!"%9[#J3!!!( S!!!!#)!!N!p&GJ#3"!(K!*!%4AB2!!!!!HF!!!!%4@m+"!!!!HN!!!!)J!#3$d9 f!*!%!G3!N!4&GJm!!!!"j`!!!!4&E`S%!!!"kJ!!!!L!!*!24AB!N!3"c`#3"%9 f$`!!!!(R!!!!"%9[#J3!!!(V!!!!#)!!N!p&GJ#3"!(#!*!%4AB2!!!!!HF!!!! %4@m+"!!!!H`!!!!)J!#3$d9f!*!%!ES!N!4&GJm!!!!"j`!!!!4&E`S%!!!"l3! !!!L!!*!24AB!N!3"YJ#3"%9f$`!!!!(R!!!!"%9[#J3!!!(Z!!!!#)!!N!p&GJ# 3"!&V!*!%4AB2!!!!!HF!!!!%4@m+"!!!!Hm!!!!)J!#3$d9f!*!%!8J!N!4&GJm !!!!"j`!!!!4&E`S%!!!"m!!!!!L!!*!24AB!N!3"@J#3"%9f$`!!!!(R!!!!"%9 [#J3!!!(a!!!!#)!!N!p&GJ#3"!&A!*!%4AB2!!!!!HF!!!!%4@m+"!!!!I)!!!! )J!#3$d9f!*!%!8N!N!4&GJm!!!!"j`!!!!4&E`S%!!!"m`!!!!L!!*!24AB!N!3 "43#3"%9f$`!!!!(R!!!!"%9Z#J3!!!%i!!!!#)!!N!p&GJ#3"!%e!*!%4AB2!!! !!HF!!!!%4@m+"!!!!I3!!!!)J!#3$d9f!*!%!6-!N!4&GJm!!!!"j`!!!!4&E`S %!!!"p3!!!!L!!*!24AB!N!3"*!#3"%9f$`!!!!(R!!!!"%9[#J3!!!(f!!!!#)! !N!p&GJ#3"!%L!*!%4AB2!!!!!HF!!!!%4@m+"!!!!IF!!!!)J!#3$d9f!*!%!5! !N!4&GJm!!!!"j`!!!!4&E`S%!!!"q!!!!!L!!*!24AB!N!3"(!#3"%9f$`!!!!( R!!!!"%9[#J3!!!(j!!!!#)!!N!p&GJ#3"!%4!*!%4AB2!!!!!HF!!!!%4@m+"!! !!IS!!!!)J!#3$d9f!*!%!3m!N!4&GJm!!!!"j`!!!!4&E`S%!!!"q`!!!!L!!*! 24AB!N!3""!#3"%9f$`!!!!(R!!!!"%9[#J3!!!(m!!!!#)!!N!p&GJ#3"!%#!*! %4AB2!!!!!HF!!!!%4@m+"!!!!Id!!!!)J!#3$d9f!*!&*3#3"%9f$`!!!!(R!!! !"%9[#J3!!!(q!!!!#)!!N!p&GJ#3"4m!N!4&GJm!!!!"j`!!!!4&E`S%!!!"r`! !!!L!!*!24AB!N!80!*!%4AB2!!!!!HF!!!!%4@m+"!!!!J#3"!L!!*!24AB!N!8 +!*!%4AB2!!!!!HF!!!!%4@m+"!!!!J%!!!!)J!#3$d9f!*!&#!#3"%9f$`!!!!( R!!!!"%9[#J3!!!)#!!!!#)!!N!p&GJ#3"38!N!4&GJm!!!!"j`!!!!4&E`-%!!! "iJ!!!!5!!*!,4AB&!!!!!H)!N!4&EJ-%!!!"f3!!!!5!!*!,4AB&!!!!!GN!N!4 &EJ-%!!!"Y!!!!!5!!*!,4AB&!!!!!E3!N!4&EJ-%!!!"L`!!!!5!!*!,4AB&!!! !!BX!N!4&EJ-%!!!"LJ!!!!5!!*!,4AB&!!!!!BS!N!4&EJ-%!!!"L3!!!!5!!*! ,4AB&!!!!!BN!N!4&EJ-%!!!"[3!!!!5!!*!,4AB&!!!!!Ed!N!4&EJ-%!!!"DJ! !!!5!!*!,4AB&!!!!!@S!N!4&EJ-%!!!"23!!!!5!!*!,4AB&!!!!!6d!N!4&EJ- %!!!"2!!!!!5!!*!,4AB&!!!!!6`!N!4&E`-%!!!"4J!!!!5!!*!,4AB&!!!!!8B !N!4&E`-%!!!"0`!!!!5!!*!,4AB&!!!!!6F!N!4&EJ-%!!!"1J!!!!5!!*!,4AB &!!!!!6S!N!4&E`-%!!!"5J!!!!5!!*!,4AB&!!!!!8S!N!4&E`-%!!!"13!!!!5 !!*!,4AB&!!!!!6N!N!4&EJ-%!!!"4!!!!!5!!*!,4AB&!!!!!83!N!4&E`m%!!! "j`#3")!!N!G&D!!!8eP05!!!$5`!!!"T!*!9!3#3"JQ@!!!!%!!!#CN!!!"%!!! *kJ!!!%`!!!S"rj!%!!!+%!!!!!%!N!B+KJ!!!!J!!!Ui!!!!%!!!#Y$rN!3!!!V L!!%!!!!*!!!!#`%!N!3$!!%!N!B,"`!!!"`!!!XL!!!!-!!!#dF!!!")!!!,PJ! !!%`!!!Zbrj!%!!!-$J!#!!!!#3!!!!X"!*!%(`!!!!X!!!!(!*!&(J#3#!a&!!! !*!!!$'X!!!!m!!!-J`!!!%`!!!c2!!!!A!!!$2$rN!3!!!c`!!3!!!!3rrrrrJ% !N!3H!!!!%Irrrrd"!*!%(`!!!")!!!!$!!-!!!!i!!!!%rrrrr`!!`!!!$`!N!J 0*`!!!#J!!!eD!!!!0!!!$A`!!!"3!!!0X`!!!&3!!!h*!!!!A!!!$H)!!!"S!!! 1"`!!!'`!!!iH!!!!P!!!$S`!!!#N!!!1X[q3"!!!$V)!"!!!!"$rrrrq!3#3""d !!!!4rrrrr3%!N!3H!!!!)J!!!!-!!`!!!$J!!!!M!!!!"J#3"4m!!3#3"Jpk!!! !4!!!%0J!!!"F!!!4GJ!!!)3!!"'d!!!!P!!!%Gm!!!#N!!!5!3!!!+`!!")r!!! ![!!!%U%!!!$3!!!5T2q3"!!!%V!!"`!!!#S!!!!$!3#3""X!!!!V!!!!!`%!N!3 F!!!!,!!!!!X"!*!%(3!!!#d!!!!$!3#3""i!!!!Z!!!!#`#3"4m!!!![!!!!!3! $!!!!1!!!!$$rrrrl!!-!!!%i!!%!N!B6#3!!!"!!!"0X!!!!(!!!%j!!!!!!5!! !%q%!!!"3!!!8*`!!!&`!!"4,!!!!L!!!&*`!!!#3!!!!&1F!!!#F!!!9#`!!!-J !!"9F!!!!d!!!&A$rN!3!!"9l!!-!!!!Y!!!!!`!$!!!!1!!!!#`!!!!,!!-!!!! m!!!!,J!!!!X!N!8I!!%!N!B9S`!!!#3!!"B&!!!!,!!!&T3!!!"!!!!A63!!!&J !!"HY!!!!C!!!&mF!!!"`!!!AjJ!!!(`!!"Iq!!!!L!!!''%!!!#8!!!BH3!!!+! !!"L4!!!![!!!'4`!!!$3!!!CXJ!!!0`!!"R,!!!!k!!!'HS!!!$`!!!D!Iq3"!! !'Jd!!`!!!3`!!!"Q!3-!!!"B!!!"$3!!!!X!N!8H!!!!,J!!!!X!N!8I!!%!N!B D+`!!!!`!!"S`!!!!'!!!'Q`!!!!J!!!E6!!!!$J!!"Yj!!!!3!!!'j%!!!"-!!! EVrq3"!!!'p)!!!!"!*!'(+J!!!!S!!!Fj`!!!$!!!"f6rj!%!!!H!`!%!!!"%J! !!'B"!`!!!&J!!!%6rrrrf!%$!!!!A!!!!4Rrrrrf!3-!!!"J!!!"'J!!!'B"!`! !!'3!!3#3"Kik!!!!)!!!(S8!!!!S!!!I#2q3"!!!(fB!!`!!!4J!!!!#!3-!!!" B!!!"(3!!!'B"!`!!!&`!!!%H!!!!#`!$!!!!1!!"!*!'(k8!!!!J!!!Ij3!!!#J !!#"jrj!%!!!Je!!#!!!"'IrrrrB"!`!!!&J!!!%D!!!!CJ%$!!!!A!!"!*!')8B !!!!S!!!KK3!!!$!!!#)Xrj!%!!!LQJ!%!!!"'!!!!!)"!`!!!&J!!!%6rrrrf!% $!!!!A!!!!4Rrrrrf!3-!!!"J!!!"'J!!!'B"!`!!!'3!!3#3"L-4!!!!+!!!)e! !!!!`!!!Mp2q3"!!!*&`!"!!!!4)!!!"Q!3-!!!"B!!!"*Irrrp8"!`!!!&`!!!% arrrrpJ%$!!!!B!!!!4S!!!"Q!3-!!!"N!!%!N!BNe!!!!#J!!#86!!!!-!!!*EM rN!3!!#BL!!3!!!%5!!!!CJ%$!!!!@!!!!5Arrrr9!3-!!!"F!!!"-IrrrrB"!`! !!'!!!!%D!!!!CJ%$!!!!C!#3#!AV!!!!#!!!"IRrN!3!!!Aj!!%!!!%f!!!!D!% !N!3%!!%!N!B423!!!#J!!"&B!!!!1!!!%Bm!!!"F!!!4e3!!!(3!!")D!!!!K!! !%Nd!!!#B!!!5E3!!!+J!!"+D!!!!X!!!%V`!!!$-!!!5d`!!!13!!",M!!!!p!! !%dm!!!&-!!!68`!!!D!!!"1B!!!"X!!!%p-!!!(!!!!8$3!!!G!!!"4(!!!"i!! !&)-!!!(`!!!8[3!!!J!!!"6b!!!#%!!!&5`!!!)J!!!9A`!!!M!!!"@[!!!#2!! !&Fi!!!*-!!!@1J!!!R!!!"Cq!!!#I!!!&TB!!!+%!!!@cJ!!!VJ!!"Emrj!%!!! A*!!%!!!![J!!!'B"!*!%'3!!!9$rrrr(!!-!!!!m!!!"8`!!!!-!N!8I!!!"0J! !!!B!!`!!!%!!!3#3"KGM!!!!+!!!&i!!!!!i!!!AS!!!!%J!!"I-!!!!8!!!&qi !!!"X!!!B"3!!!+3!!"K)!!!!Y!!!',8!!!%-!!!BZ3!!!9J!!"Mr!!!"D!!!'6N !!!&i!!!CG3!!!BJ!!"Q[!!!"Q!!!'H3!!!'S!!!D(J!!!EJ!!"T4!!!"b!!!'VN !!!(X!!!Dr3!!!IJ!!"YC!!!#"!!!'h%!!!))!!!EM3!!!K!!!"Z[!!!#-!!!'ph rN!3!!"`4!!3!!!&9!!!!CJ%!N!3C!!!"'!!!!!)!N!8D!!!"8`!!!!-!N!8I!!! "0J!!!!B!!`!!!$J!!3#3"K`m!!!!&!!!($m!!!!N!!!FA`!!!$J!!"b-rj!%!!! Fe!!"!!!"@2rrrmF"!`!!!&J!!3#3"Kcr!!!!*!!!(3)!!!!d!!!G)J!!!&J!!"e M!!!!G!!!(CN!!!#8!!!Gj!!!!+!!!"i"!!!!`!!!(L6rN!3!!"j+!!%!!!&E!!! !CJ%$!!!!I!!"!*!'(U!!!!!-!!!HS`!!!#J!!"kp!!!!0!!!(X`!!!!m!!!I!3! !!&J!!"p)!!!!D!!!(fm!!!"`!!!IJIq3"!!!(kJ!!3!!!@(rrrr'!!-!!!!i!!% !N!BJN!!!!!!`!!!JN`!!!%!!!##e!!!!6!!!)2)!!!"X!!!K9J!!!(`!!#&i!!! !P!!!)G`!!!#F!!!L#J!!!+`!!#)T!!!!j!!!)a3!!!%)!!!M3`!!!4!!!#0Urj! %!!!MeJ!%!!!"F!!!!'B"!*!%(!!!!A%!!!!$!3#3""d!!!&brrrra!#3"4m!!!& 3rrrra`!$!!!!2!#3##DP!!!!(!!!*UJ!!!!X!!!Qd`!!!$J!!#ES!!!!C!!!*aI rN!3!!#FA!!%!!!'i!!!!!`%$!!!!@!#3##FX!!!!$!!!*bm!!!!S!!!R@J!!!$` !!#H$!!!!4!!!*j(rN!3!!#H4!!!!!3#3"LHc!!!!+!!!*r`!!!"3!!!SJ`!!!'3 !!#Lp!!!!K!!!+2m!!!#8!!!T-`!!!+3!!#P4!!!![!!!+@`!!!$%!!!TPJ!!!1` !!#R$!!!"#!!!+HX!!!%3!!!U$`!!!5J!!#Sc!!!"-!!!+M`!!!%m!!!UA`!!!9J !!#UI!!!"F!!!+Y!!!!'-!!!V#J!!!D3!!#XK!!!"[!!!+i`!!!(J!!!Va3!!!HJ !!#[2rj!%!!!VrJ!$!!!"Lrrrrjm!!`!!!$J!!!(-!!!!!`#3"4m!!!(0!!!!CJ# 3"4X!!3#3"La(!!!!+!!!,(-!!!!X!!!XK3!!!$!!!#bN!!!!5!!!,0X!!!"3!!! Y!`!!!'J!!#dI!!!!H!!!,6-!!!"m!!!Y53!!!*`!!#f!!!!!U!!!,B8!!!#d!!! YPJ!!!,J!!#fRrj!%!!!YX`!%!!!![J!!!'B"!*!%(J!!!G!!!!"Q!3#3""`!!!( 4!!!!C`#3"4m!!!(5rrrrRJ#3"4d!!3#3"Lhc!!!!*!!!,Jm!!!!S!!!Z)3!!!#` !!#iq!!!!@!!!,SB!!!"N!!!ZN!!!!!"`!!!ZS3!!!(3!!#kbrj!%!!!Z[J!$!!! "e3!!!!-"!*!%(3!!!G!!!!"Q!3#3""i!!!(5rrrrRJ#3"4m!!3#3"LqE!!!!-!! !,pF!!!"!!!![q3!!!&3!!$!`!!!!E!!!-&3!!!#!!!!`M`!!!*3!!$#lrj!%!!! a'!!#!!!![J!!!'B"!*!%(J!!!H2rrrqA!*!&(`!"!*!'-8N!!!!%!!!aB`!!!"` !!$'M!!!!-!!!-GS!!!!i!!!aq3!!!%`!!$)d!!!!B!!!-Q$rN!3!!$+p!!)!!!( 3!!!!!`%!N!3$!!!"irrrrjF!N!8I!!$rN!3!!3!!!'S!!2rrrri!!3!!!!X!!2r rrrd!!3!!!!-!![rrrr`!!!!8!!!!%!!*!!!!&3!!!!X!N!F@!!!!#`!!!!)!!!! A!!!!#`!!!!3!!!!B!!!!#`!!!!B!!!!C!!!!"J!!!!J!!!!D!!!!"J!!!!N!!!! E!!!!#`!!!!S!!!!F!!!!#`!!!!`!!!!G!!!!#`!!!!i!!IrrrrF!!!!#!!!!!J! !!!X!![rrrrJ!!!!e!!!!#!!$!!!!02rrrrN!N!Ff!!!!#`!!!!3!!!!hrrrrp`! !!!B!!2rrrrN!!IrrrrJ!![rrrr-!!!"%!!!!&!!(!!!!43!!!!)!N!Fr!!!!"`! !!!3!!!"'!!!!"`!!!!8!!!"(!!!!#J!!!!B!!!")rj!%!!!!#!!!!%!!!!!#!!! !$!!!!%N!!!!#!!!!%!!"rrrrp!!!!"3!!!!8rrrrm`!#rrrrp3!!!$X!!!!J!!J !!!!m!!!!#J#3"cd!!!!(!!!!!J!!!$i!!!!'!!!!!`!!!$m!!!!#!!!!"!!!!%! !!!!'!!!!#!!!!%%!!!!'!!!!#3!!!%)!!!!+!!!!#J!!!%2rrrrd!!!!$!!!rrr rpJ!"rrrrp3!#rrrrqJ!!!$-!!!!b!"%!!!!drrrrq3#3"cB!!!!,!!!!"!!!!$J !!!!,!!!!"J!!!$N!!!"Q!!!!#!!!!$Vrrrrf!!!!$!!!!%S!!!!,!!!!%!!!!%X !!!"V!!!!%J!!!%`!!!!,!!!!&J!!!%d!!!!,!!!!'!!!!%i!!!!(!!!!'J!!!%m !!!!(!!!!'`!!!&!!!!"Q!!!!(!!!!&%!!!"Q!!!!)!!!!&)!!!!$!!!!*!!!!&- !!!!$!!!!+!!!!&3!!!!,!!!!,!!!!&8!!!!$!!!!,J!#rrrrm!!!!'3!!!!%!!) !!!"P!!!!#`#3"fB!!!!,!!!!!J!#rrrrm3!!!&m!!!!3!!8!!!"J!!!!!J#3"f% !!!!#!!!!"!!!!')!!!!+!!!!#!!!!'2rrrr`!!!!#J!!!'F!!!!,!!!!$J!#rrr rmJ!!!&F!!!"3!"J!!!!drrrrq3#3"cB!!!!,!!!!"!!!!$J!!!!,!!!!"J!!!$N !!!"Q!!!!#!!!!$Vrrrrf!!!!$!!!!%S!!!!,!!!!%!!!!%X!!!"V!!!!%J!!!%` !!!!,!!!!&J!!!&J!!!!,!!!!'!!!!&N!!!!(!!!!'J!!!&S!!!!(!!!!'`!!!&X !!!!,!!!!(!!!!&`!!!!(!!!!(J!!!&d!!!!(!!!!(`!!!&lrrrra!!!!)!!!!'J !!!!$!!!!-!!!!'N!!!!+!!!!0!!!!'S!!!!$!!!!0J!!!'X!!!!$!!!!1J!!!'` !!!!+!!!!2J!!!'d!!!!$!!!!3!!!!'i!!!!$!!!!4!!!!'m!!!!#!!!!5!!!!(! !!!!#!!!!6!!"rrrrlJ!!!#!!!!!%!!!!!`!#rrrrl`!!!()!!!"k!#!!!!!drrr rq3#3"cB!!!!,!!!!"!!!!$J!!!!,!!!!"J!!!$N!!!"Q!!!!#!!!!$Vrrrrf!!! !$!!!!%S!!!!,!!!!%!!!!%X!!!"V!!!!%J!!!%`!!!!,!!!!&J!!!(-!!!!$!!! !'!!!!(3!!!!,!!!!(!!!!(8!!!!#!!!!(J!!!(B!!!!#!!!!)J!!!(F!!!!,!!! !*J!!!(J!!!!+!!!!+!!!!(N!!!!+!!!!+J!!!(S!!!!+!!!!,!!!!(X!!!!+!!! !,J!!!(`!!!!#!!!!-!!!!(d!!!!#!!!!0!!!!(i!!!!+!!!!1!!!!(m!!!!#!!! !1J!!!)!!!!!+!!!!2J!!!)%!!!!+!!!!3!!!!))!!!!,!!!!3J!!!)-!!!!,!!! !4!!!!)3!!!!,!!!!4J!!!)8!!!!#!!!!5!!!!)B!!!!,!!!!6!!!!)F!!!!#!!! !6J!!!)J!!!!#!!!!8J!!!)N!!!!#!!!!9J!!!)VrrrrZ!!!!@J!#rrrrl3!!!)` !!!!d!")!!!!drrrrq3#3"cB!!!!,!!!!"!!!!$J!!!!,!!!!"J!!!$N!!!"Q!!! !#!!!!$Vrrrrf!!!!$!!!!%S!!!!,!!!!%!!!!%X!!!"V!!!!%J!!!%`!!!!,!!! !&J!!!)d!!!!,!!!!'!!!!)i!!!!,!!!!'J!!!)m!!!!,!!!!(!!!!*!!!!!!"`! !!"i!!!#4!!!!"`!!!"m!!!#5!!!!!`!!!#!!!!#6!!!!!`!!!#3!!!#8!!!!!`! !!#J!!!#9!!!!!`!!!#`!!!"S!!!!!`!!!$!!![rrrq`!!!#A!!!!*!!-!!!!02r rrrN!N!Ff!!!!#`!!!!3!!!!i!!!!#`!!!!B!!!!j!!!!CJ!!!!J!!!!krrrrpJ! !!!`!!!"+!!!!#`!!!"!!!!",!!!!D`!!!")!!!"-!!!!#`!!!"B!!!#B!!!!#`! !!"J!!!#C!!!!#`!!!"S!!!#D!!!!D`!!!"`!!!#E!!!!!`!!!#!!![rrrqX!!!# G!!!!0!!3!!!!02rrrrN!N!Ff!!!!#`!!!!3!!!!i!!!!#`!!!!B!!!!j!!!!CJ! !!!J!!!!krrrrpJ!!!!`!!!"+!!!!#`!!!"!!!!",!!!!D`!!!")!!!"-!!!!#`! !!"B!!!#H!!!!#`!!!"J!!!#I!!!!#`!!!"S!!!#J!!!!D`!!!"`!!!#K!!!!D`! !!#!!!!#L!!!!!`!!!#3!!!#M!!!!!`!!!#J!!!#N!!!!!`!!!#`!!!"S!!!!!`! !!$!!![rrrqS!!!#Q!!!!0!!4!!!!02rrrrN!N!Ff!!!!#`!!!!3!!!!i!!!!#`! !!!B!!!!j!!!!CJ!!!!J!!!!krrrrpJ!!!!`!!!"+!!!!#`!!!"!!!!",!!!!D`! !!")!!!"-!!!!#`!!!"B!!!#R!!!!#`!!!"J!!!#S!!!!#`!!!"S!!!#T!!!!!`! !!"`!!!#U!!!!#`!!!#!!!!#V!!!!#`!!!#)!!!#X!!!!!`!!!#3!!!#Y!!!!!`! !!#J!!!#Z!!!!!`!!!#`!!!#[!!!!!`!!!$!!![rrrqN!!!#a!!!!1J!4!!!!02r rrrN!N!Ff!!!!#`!!!!3!!!!i!!!!#`!!!!B!!!!j!!!!CJ!!!!J!!!!krrrrpJ! !!!`!!!"+!!!!#`!!!"!!!!",!!!!D`!!!")!!!"-!!!!#`!!!"B!!!#M!!!!!`! !!"J!!!#b!!!!D`!!!"`!!!#N!!!!!`!!!#!!!!#c!!!!!`!!!#3!!!#d!!!!!`! !!#J!!!#e!!!!!`!!!#`!!!#f!!!!!`!!!$!!!!#h!!!!#`!!!$3!!!#i!!!!!`! !!$B!![rrrqB!!!#m!!!!4J!$!!!!,!!!!!X!N!Hp!!!!!`!!!!)!!!#q!!!!!3! !!!B!!2rrrqF!!IrrrqB!!Irrrq%!!!!'!!!!!J!!!!X!![rrrq)!!!$)!!!!%!! '!!!!b3!!!!X!N!I+rrrri3!!!!)!!!$,!!!!"`!!!!J!!!$-!!!!"`!!!!N!!!$ 0!!!!#`!!!!S!!!$1!!!!!`!!!!`!![rrrq-!!!$&!!!!E!!F!!!!02rrrrN!N!F f!!!!#`!!!!3!!!!i!!!!#`!!!!B!!!!j!!!!CJ!!!!J!!!!krrrrpJ!!!!`!!!" +!!!!#`!!!"!!!!",!!!!D`!!!")!!!"-!!!!#`!!!"B!!!"B!!!!#`!!!"J!!!" C!!!!"`!!!"S!!!"D!!!!"`!!!"X!!!"E!!!!#`!!!"`!!!"F!!!!"`!!!"i!!!# 4!!!!"`!!!"m!!!"Hrrrrm3!!!#!!!!"S!!!!!`!!!$!!!!"T!!!!#J!!!$3!!!" U!!!!!`!!!$B!!!"V!!!!!`!!!$S!!!"X!!!!#J!!!$i!!!"Y!!!!!`!!!%!!!!" Z!!!!!`!!!%3!!!"[!!!!!J!!!%J!!!"`!!!!!J!!!%`!!!$'!!!!!J!!!&!!!!$ (rrrriJ!!!&3!!!$2!!!!!`!!!'3!!!$3!!!!!`!!!'J!![rrrpi!!!$@!!!!#!! %!!!!e`!!!!X!N!IB!!!!#`!!!!)!!!$C!!!!#`!!!!3!!!$D!!!!#`!!!!B!![r rrpm!!!$8!!!!%!!%!!!!eIrrrpi!N!IE!!!!#J!!!!J!!!$Frrrrm!!!!!S!!!$ G!!!!#`!!!!i!!Irrrpd!!!!5!!!!!J!!!!X!![rrrp`!!!$N!!!!%!!'!!!!jIr rrr!!N!IQ!!!!!`!!!!3!!!$R!!!!"`!!!!J!!!$S!!!!"`!!!!N!!!$T!!!!#`! !!!S!!!$U!!!!!`!!!!`!![rrrq!!!!$5!!!!D!!A!!!!02rrrrN!N!Ff!!!!#`! !!!3!!!!i!!!!#`!!!!B!!!!j!!!!CJ!!!!J!!!!krrrrpJ!!!!`!!!"+!!!!#`! !!"!!!!",!!!!D`!!!")!!!"-!!!!#`!!!"B!!!"B!!!!#`!!!"J!!!"C!!!!"`! !!"S!!!"D!!!!"`!!!"X!!!"E!!!!#`!!!"`!!!"F!!!!"`!!!"i!!!#4!!!!"`! !!"m!!!$6rrrrh`!!!#!!!!$H!!!!!`!!!$!!!!$I!!!!#J!!!$3!!!#0rrrrh3! !!$B!!!$J!!!!!J!!!%J!!!$K!!!!!J!!!%`!!!$L!!!!!J!!!&!!!!$Mrrrrh!! !!&3!!!$V!!!!!`!!!'3!![rrrq3!!!$$!!!!E!!#!!!!a2rrrq-!N!I4rrrri!# 3"[rrrq8!!Irrrq3!!IrrrpS!!!!-!!!!!J!!!!X!![rrrpX!!!$[!!!!%!!#!!! !m!!!!!-!N!IarrrrfJ!!!!3!![rrrqJ!!!#k!!!!6!!5!!!!02rrrrN!N!Ff!!! !#`!!!!3!!!!i!!!!#`!!!!B!!!!j!!!!CJ!!!!J!!!!krrrrpJ!!!!`!!!"+!!! !#`!!!"!!!!",!!!!D`!!!")!!!"-!!!!#`!!!"B!!!#lrrrrj`!!!"J!!!#r!!! !!`!!!"`!!!$!!!!!!`!!!#!!!!$"!!!!!`!!!#3!!!$#rrrrj3!!!#J!!!$Xrrr rj3!!!#`!!!$Y!!!!!`!!!$!!!!$Zrrrrf`!!!$3!!!$b!!!!CJ!!!%3!!!$c!!! !!`!!!%J!![rrrpN!!!$e!!!!4!!6!!!!02rrrrN!N!Ff!!!!#`!!!!3!!!!i!!! !#`!!!!B!!!!j!!!!CJ!!!!J!!!!krrrrpJ!!!!`!!!"+!!!!#`!!!"!!!!",!!! !D`!!!")!!!"-!!!!#`!!!"B!!!$f!!!!!`!!!"J!!!$h!!!!!`!!!"`!!!$i!!! !CJ!!!#!!!!$j!!!!!`!!!#3!!!$k!!!!!`!!!#J!!!$l!!!!!`!!!#`!!!$m!!! !!`!!!$!!!!$p!!!!!`!!!$3!!!$q!!!!!`!!!$J!!!$r!!!!!`!!!$`!!!%!N!3 $!!!!3!!#rrrrq`!!!$%!!!"k!!S!!!!brrrrqJ#3"eErrrrb!*!(FIrrrqm!N!H ,rrrrl3#3"jErrrrX!*!(R2rrrqX!N!HPrrrrkJ#3"l$rrrrT!*!(ZIrrrqJ!N!I drrrrf3#3"3(rrrr@!!!!%!!!!!3!!!!#!!,rrrrA!!!"&!!!!43!"!!!!48!!!! $!*!'!4B!!!!3!!!!"!!!!4F!!!!(!!!"!`!!!4Mrrrr@!!!""!!!rrrrf!!"rrr re`!"rrrrdJ!!!"!!!!!%!!!!!J!"rrrrd!!!!"i!!!!"!!!!"`!"rrrrc`!!!"i !!!!"!!!!"`!#rrrrd3!!!5S!!!!m!!)!!!%Vrrrrd!#3"J%Xrrrrc`!!!"i!!Ir rrmd!!!$r!!!!!3!!!!F!![rrrmi!!!%Z!!!"!J!#!!!",`!!!!S!N!B"-2rrrmd !!!!#!!,rrrr6!!!"+!!!!3)!!`!!!4Mrrrr5!*!'!5Rrrrr4!*!'!5hrrrr1!*! &![rrrp3!!!%Q!!!#"J!%!!!"&3!!!!-!N!B"&J!!!"!!!!!%!!!"&`!!!!F!!!% $!!!"*rrrrp-!!!%%!!$rrrr9!!(rrrr8!!(rrrr-!!!!"!!!!!3!!!"Q!!$rrrr +!!%!!!!#!!(rrrr,!!!!&!!!!!6rrrr+!!,rrrr*!!!"2J!!!"3!"3!!!6m!!!" Q!*!'!8!!!!"R!!!!"!!!!8%!!!!$!!!!#!!!!8)!!!!$!!!!$!!!!8-!!!"R!!! !%!!"rrrrb!!!!!S!!!!"!!!!"`!#rrrra`!!!9%!!!!%!!%!!!&5!!!!!J#3"3, rrrr'!!!"BJ!!!#3!$!!!!$6rrrrj!*!(0J!!!!X!!!!%!!!!1!!!!!X!!!!'!!! !13!!!'B!!!!)!!!!1[rrrrB!!!!-!!!!5J!!!!X!!!!3!!!!5`!!!'X!!!!5!!! !6!!!!!X!!!!@!!!"B`!!!!X!!!!B!!!"C!!!!!X!!!!D!!!"C3!!!!)!!!!F!!! "CJ!!!!-!!!!J!!(rrrr&!!!!$!!!!!%!!!!(!!$rrrr%!!(rrrr*!!(rrrr$!!! !%3!!!!%!!!!(!!(rrrr#!!!!%`!!!!%!!!!(!!(rrrr"!!!!%3!!!!%!!!!(!!( rrrr!!!!!%J!!!!%!!!!(!!(rrrqr!!!!%J!!!!%!!!!(!!(rrrqq!!!!%!!!!!% !!!!(!!(rrrqp!!!!%3!!!!%!!!!(!!(rrrqm!!!!%!!!!!%!!!!(!!(rrrql!!! !%3!!!!%!!!!(!!(rrrqk!!!!%`!!!!%!!!!(!!(rrrqj!!!!$`!!!!%!!!!(!!( rrrqi!!!!%3!!!!%!!!!(!!(rrrqh!!!!%!!!!!%!!!!(!!(rrrqf!!!!%!!!!!% !!!!(!!(rrrqe!!!!%3!!!!%!!!!(!!(rrrqd!!!!%J!!!!%!!!!(!!(rrrqc!!! !%`!!!!%!!!!(!!(rrrqb!!!!%3!!!!%!!!!(!!(rrrqa!!!!%3!!!!%!!!!(!!( rrrq`!!!!%!!!!!%!!!!(!!(rrrq[!!!!%3!!!!%!!!!(!!(rrrqZ!!!!@!!!!!3 !!!"Q!!(rrrqY!!!!J!!!!!%!!!!(!!,rrrqX!!!"M!!!!"!!"!!!!Bd!!!"Q!*! '!Bi!!!"R!!!!"!!!!Bm!!!!$!!!!#!!!!C!!!!!!CJ!!!!`!![rrrkN!!!'9!!! !"!!'!!!"PJ!#(alrN!3!!!'A!!)G'rq3"!!!!CJ!!KSCrj!%!!!"Q3!#'"ErN!3 !!!'D!!)9&2q3"!!!!CX!!K-6rj!%!!,rrrqS!!!"R3!!!!J!"!!!!Ci!!KmGrj! %!!!"R`!#("crN!3!!!'J!!!!"J!!!!3!!!'K!!!!"J!!!!8!!IrrrkF!!!!#!!! !!3!!!!B!!IrrrkB!!!!%!!!!!J!!!!S!![rrrkS!!!'5!!!!6!!8!!!"N`!!!!) !N!B"P2rrrkN!!!!%!!!"R2rrrkJ!!!!)!!!"SJ!!!!B!!!!3!!!"S`!!!!B!!!! 4!!!"T2rrrkF!!!!5!!!"TIrrrkB!!!!8!!!"TJ!!!!)!!!!B!!!"T`!!!'J!!!! F!!!"U!!!!!)!!!!J!!!"U3!!!'J!!!!N!!!"UJ!!!!)!!!!S!!!"U`!!!!)!!!! X!!!"V!!!!!)!!!!`!!!"V3!!!!)!!!!d!!!"V[q3"!!!!$J!!!'[rj!%!!!!2!! !!E$rN!3!!!"!!!!"XIq3"!!!!%3!!!'brj!%!!!!5!!!rrrrU`!"rrrrUJ!"rrr rT3!!!#!!!!!%!!!!CJ!"rrrrT!!!!!i!!!!"!!!!"J!"rrrrS`!!!!)!!!!"!!! !"`!"rrrrSJ!!!!-!!!!"!!!!"`!"rrrrS3!!!!-!!!!"!!!!"`!"rrrrS!!!!!- !!!!"!!!!"`!#rrrrR`!!!FS!!!"'!!%!!!(,rrrrjJ#3"[rrrji!!Irrrk`!!Ir rrjd!!!!%!!!!!3!!!!F!!Irrrj`!!!!%!!!!!3!!!!F!![rrrjS!!!(D!!!!$!! $!!!"f`!!!'B!N!B"h!!!!'F!!!!%!!!"h3!!!!-!!!!)!!(rrrqE!!!!H!!!!!c rrrqD!!(rrrqC!!!!"!!!!!%!!!!(!!(rrrqB!!!!"!!!!!%!!!!(!!$rrrqA!!( rrrqD!I"%CACPE'p`1N0[C'9ABA*bD@pb)&"bEb!d1NePG(*[Gf9bDh-J3fpNC9G KFR*TEh)k6@&M6e-J8h9`F'pbG$T)C@&NCA*c1P0jFh4PE5"&H(4bBA-J5'9KC'9 bFcT0B@083e!J5'9KC'9bFcTNER)ZB`!%9fG%6P*$Ef4P5'jNE!!$6QG%6P*$Ef4 P8(4b!!$Q9A4TE%eKD@i!"*XZ6R9Y9'p[E'*[H&4bBA"cAep'GJ!!Bbj14f9d9(* KF%&NC(*PFh-!"&j!1$%h!!!5,NGPG&4bBA"8HA"PAep'F`!(`(4SC94bBA!!"dN Z9(*KF%9iDA0dFepI4R-!!fYdD'98FQ&`9(P`C3!%I8!i-MB!"ddZ4f9d8hPcG'9 Y4QpXC'9bAep'8(03E!!%)#j6HA0&ERCTFQpZF`!#R5j(CA4A4%PZCQm!!"0f8Q9 Q6R9Y8!!'p@4TFNP%8!!!DRGN8(*[BdP%!!5UD@jQE`!"Ie0jFd9ZGP*PB`!(Hf9 ZGQPbEfjc9Q9bFfP[EJ!$"@eKBfKTEQ98HA"P!!A2FhPcG'9Y9Q9bFfP[EJ!"BA" bEf0PFh0[FJ!'H'KKFdC393!#ifKKFd0[E'pb883!"%9VCAP#Ef&bC&4jF'8!"BC KG%4bGR*@CA*c6R9Y!!)[FhPc9P*PCNjeE3!%Pd!i-c!!"mdZ4f9d3e"KEQ9X4Qp XC'9bAep'8(03E!!!-5j(CA0dB@ad!!1",NCTEQ4'EfaNCA)!"lGQC@&dGA*P!!4 )D'&c4QpXC'9b6@Gb!!5i3$Jd-3!$A5j6C@&bBfK'EfaNCA*'Eh*%6P*3Aep'E'a cE!!&cbj)6h"PEP*PFdCTE'8!"j8Z4f9d5@jN8Q9cEh9bBf8!"9FZ3fa[Ff95CA0 'D@aP!!"b,P"#5%GPG%C*EQC[8hPZB`!#QR4KFQGPG&4jF'8!"9PdBA*RCA4$FQ9 KG'pb!!FHGP*PCNjeE3!&,@4TFNP%!!BrFQ9QER9Y!!#TCQPXC@jKE@8!!M9QD3! 'YNK3BA*KE8*XEf0V8Q9M!!FYD@p3BA*KE3!!5dK*6e"KFQ&Y!!8EF8aTEQX!"Ap 44@aPE3!&QR&8HA"P!!@1F84KG'%!"M9TEe4bBA!!!G9TEd0YC%&NC()!"0YTEd0 [EA"XCA4TEfi!!Ep5Eh9dD@jP4'9cBh*TF(4[FJ!(*fG[6@PiC@40Ef4P9(*KF!! (4(CPFR0TEfi!"JKbEh9dD@jP4'9cBh*TF(4[FNCXB@Gc!!&@FQ9cCA*fC@3a!!& AFQ9cCA*fC@3b!!4hFf9XC@0dEh**EQC[!!3UFQpeG'PZC80[G@jd!!E`FQpeG'P ZC9*PBfpbC(-!"4p5Eh9dD@jP8Q9MEh*N!!#rF(*[BdPZCQm!!p"*8d%!"2YbEh9 dD@jP4QaKCh-!"S4`FQpM4'9cBh*TF(4[FJ!!eh0PE'9MG'pb!!"rD@p5CA0eE(3 !!GCTEdjKE@93G()!!@aTEeC5C@C1G@d!!(TTEe*PCNjeE3!"fQP[9Q9bFdjeE3! "bfP[8'9bEA0cEJ!'afP[6@PcB`!!2@P[3R9QCQ9b!!+UD@p5CA&$Eh9ZG!!#C@P [3@0d3fpeER3!!@4TEe"[Fde[C'8!!e*TEe"[FdpQCR0PG!!"0fCTE'93BA*KE3! ##NK'D@aP8'&bB@d!!@KTEdC5C@C1G@d!!M"TEdC@CA*c6R9Y!!GSCQPXE'9b-3! $@'P[4N4TFNPZC'9i!!)`D@p'E%&dG(*TBJ!$!QP[4Qa@CA*c6R9Y!!64D@p'E%C ZC(**EQC[!!9q4NPZCQm!"QCQC&4jF'8!!@YQC%0bC@&dEh)!"laQC%CXB@Gc!!) 'CQ4-Ef0KG'P[EJ!&T&"[D@jd!!&fGJ!"D'J!"VCQC%CXC()!"mKTEd4TFNP%!!% 2D@p'E&0d3QaV!!(rD@p'E%aR6'9Z!!(-D@p'E&"j6'9Z!!,TD@p'E&*6G%*XD`! #3'P[4Qa56'G-C@i!!STTEdCX8P"j6'9Z!!'pD@p'E%0b4'&d!!(AD@p'E%eN4'& d!!1lGQpXG@eP8'&bB@d!"(C)9QpXG@eP8'&bB@d!"fPQD@aXCA)b!!*MD@p@Efa *EQ4PH!!"`fP[9N0b4'&dC3!!f@P[9Nac6@pN!!HpD@p@3A4bBJ!!K@P[9NjY4Qa c!!'0D@p@3QPd6@&`!!,#D@p"E'a[Be"dFJ!$,@P[9NjY3@a#E'Yc!!1JD@p@3@a #E'Y6DAS!!I"TEeC$E("6DAS!!*&TEd&X3Qa6G!!#BfP[9NjiG%01583!!&*TEeC 'FN*XD`!#k'P[9P0TCeG[FQ3!!NCTEeC%FRC*EQC[!!*LD@p@4&*PCNjeE3!(I'P [9NC6583!"i4TEeC#De9`!!%!D@p@8f9a6R9Y!!"3D@p@9h*$ER3!!IjTEeC'D@a $ER3!!3&TEeC%DA*$ER3!!`pTEeC'EQ4b5@jQE`!$'f&MBf9cFe"KFQ&Y!!1F3@0 MCA0c8'&bB@d!"fTQD@aXCA)c!!1(D@p%C@jj6@pNCA-!"fYQD@aXCA)d!!GXCQP XE'9b03!!e'P[3809Ff9b!!GYCQPXE'9b0J!$[@P[3802GfjPFNP%!!2"D@p"3dG bEh9`583!!NKTEd&$3@0MCA0c!!#rEf*U8'&bB@d!!-"2BQT3BA*KE3!(EQCTE'a PFMF!!C0TEdpLDP4jF'8!"29TEdpLDNjKE@93G()!"h*TEdpLDNP%!!&4Bfp`H9" KFQ&Y!!&b3fp`H9"KFQ&Y!!3KD@p%Fh4@8Q9Q6R9Y!!G[CQPXE'9b1!!"HQP[6Q9 h6Q&YC3!#DQP[3fp`H8jKE@8!!QGTEdjPGd4TFNP%!!""CQPXE'9b-63!!%*QD@a XCA)a03!(ZAGN8'&bB@d!"q4A4&"KFQ&Y!!G`CQPXE'9b13!")'P[9d4*EQ4PH!! #cQP[9d43FQpM583!!b9TEeG%9P*PCNjeE3!!2@CTE'aPFM%`!!!qCQPXE'9b-6% !!$pQD@aXCA)a-J!!3'CTE'aPFM%c!!&cD@pA4%4TFNP%!!!XCQPN8'&bB@d!!,& '5843BA*KE3!&4'P[4'9cG%jKE@93G()!!jTTEd4PFh4%DA**4!!!3fCTE'aPFM% f!!"%CQPXE'9b-6F!!QKTEe0bBd4TFNP%!!"&CQPXE'9b-6J!!!*TEdCTE'9*4!! (b'0c8'&bB@d!"qp$8e"KFQ&Y!!*aD@p0BA4MD&"dFJ!'#%C68h"PB`!&bR"KFNP %!!5VEQ&YC3!(!'P[8Q9a6@&dBfK$Eh9ZG!!(d'P[3@0d6@&dBfK$Eh9ZG!!%kQP [8f9KFQ0S3QPdF`!&b'P[8f9KFQ0S5@jQEc%!!ZK$5@jQEe"#8Q9M!!'ZD%CTE'9 *EQC[!!&05%CTE'9*EQC[!!&*D@p'E%*V4'&d!!9KD@p'E&K'EQ4b5@jQE`!'H%C B5@jQE`!!SfCN5@0[ENP%!!!fCQ49ER9cC@3!!-PQC&0MFQP`G!!!+'CN@%CXB@G c!!'5CQ4$EfeYC@jd!!(9CQ43GA4"Gf&j!!%,D@p'E&"KFNP%!!*4D@p'E%0XF&0 THJ!(H@4TFNPZCQm!"k&%DA**EQC[!!)5D@p%FP9cFPGNF`!&hN4*EQC[!!B#CR* 5C@0d!!4r8Q9MG!!$,h4[F!!%$'aPCR3!"L*LEh4dEfd!"GCbD@GSG!!(CfCb4Qa KCh-!!PKQFNa[Bf&dD@pZ!!C6CR*@D@9h!!(SD@p%FN4TFNP%!!'1D@p%FNjY4Qa c!!(AD@p%FN0b4'&d!!'0D@p%FNeN4'&d!!(MD@p%FN*V4'&d!!6!D@p%FNCZC(* *EQC[!!DN4&K*EQC[!!#fCR*6Bh*[E'`!!maQFNp`C@j$D'&TEJ!!4QCb8f0bDA" d!!#ZCR*B4QaKCh-!!F*QFN0[E@ePER3!!BPQFP"eG%&hBAN!!54TEd4b8'&b583 !"FPTEe0PBA*MD%PZCQmb!!6SD@p6C@&bBfK8D@eP!!A6D@p$BA43Eh0TG'P[EJ! 'CN0KG&"[FfPdD@pZ8Q9M!!)kD@jTG'PKE'PkC3!%TA"bDAB!!`TTEdp`G%*eCQC PFJ!%+@P[6h"d3R9Q8fPkC3!!2@C[FQ9TCfj3FQPf8'&bB@d!!&&'Eh*PD@GZ8(* TGP"KFQ&Y!!+kD@p'D@aXCA)b-3!#ZfP[4QPXE'9b-M)!!hTTEdC[FQ9TCfj3FQP f3R9QCQ9b!!9fD@p'Eh*PD@GZ8(*TGN&MG%0[G@jd!!9hD@p'Eh*PD@GZ8(*TGP* PF80[G@jd!!+mD@p'D@aXCA)b-`!#3@P[4QpbC@PREP"bDAC%DA**4!!#qQP[4Qp bC@PREP"bDAC*EQC[-3!#qfP[4QpbC@PREP"bDAC*EQC[-J!#r'P[4QpbC@PREP" bDAC*EQC[-`!#r@P[4QpbC@PREP"bDAC*EQC[0!!%fN!i06-!"Q8Z6h"PENpeFP* 'Aep'GJ!%q%!i0M%!"IBZ6h"PEP*PFfpXGQ9b!!&Y,P*PFd9bFQpb!!GX,N4PG'& MD&*PFfpeFQ0P!!$`,Ne[GQ9)5'N!"SJZ5%a[BfX!![%Z3f&XE&9ZDACPFR0KE&" bEf-!!'`Z5&9ZE'pMD`!'`bj%DA0`Eh0P5'&ZC'aP!!#jCQPXC8jKE@8!!V&bB`! %'%!i0c%!"KNZ3fa[Ff95CA0[E(CPFJ!%(%!i0c8!!ZJZ8h4b9'p"C'4b!!$UD'p cG%jKE@8!!BPbG'j6G(*eBh3!!1&SEh0d5@jQE`!(2(*dEN0[C'8!"H9MEQ&YC3! 'Z@CTE'aPFJ!%3'&NC()!!TpbCA0eE(4`FQpM!!-UGA0PFN4KG'&3G()!"#"!1$F j!!+e,N&NC(*8Ee0dFJ!(E@&NC(*6G()!!c9PFR)!"$Y!1$Jc!!*C,N9ZG@e$B@0 SC3!%2d!i1$F!!j!!,N&NC(*8EdjKE@8!"&P!1$Na!!CU,NK*EQC[!!5ZFQ9dGA* Z8Q9M8(4b!!(BFQ9dGA*Z8Q9M!!@ZFQ4KG'%!"K0!BfaKFh-N1$!j4e9658jPG%4 #Af0`!!8XD'PZCQm!!%0)5@jQEe*PB`!(J'0`G94jF'8!"QP[Fe4jF'8!!L9YH!! &f8eB8Q9M!!+NF(*PCQ9bC@jMC3!!rQ9iBfKKEQGP!!,[FQ9cG@ad8(*[B`!%A8! i168!"cmZ69K*EQC[!!4K3$Jj13!!CLj%6P*%EfjP!!3LC'pZC3!!m(9%6P*%Efj P!!I94%j54'pZC3!(EQKICA*bEQm!"`*YB@0)Eh0d!!'dB@aTBA03G(*c!!#IB@4 NFP"dFR-!!29eEQPi5'pcG!!(-@K[Fh4PER3!"TCSAfjKE@8!!FGSAf&XD@&cCA- !!VpSAf&NC(*dHA"P!!"eD&pXC@jRG'J!!aPSAf&NC(*IE'PcG!!%`N!j0$F!"L- ZCf9dD'pcG'*jEQ&YC3!!F8G98dP6F'PZ!!Gm,R0dFQ0YF!!#@#jRCA4SEh0dD@3 !"RNZCf9dD'pcG'*jB@4NFJ!$$%P14946Ef0VCA4c!!GP,P*PFfpXGQ9bAema0NP 14946Ef0VCA4%EfeKD@j'GJ!$@Lj(990*3fKPBfY"E'&bE9pI4RB!!j3ZAep`G(* ICfaeC3!$V5j(990*Af9bFQpb!!Hp,R0dFQaPEJ!'HQP`B@4NFJ!(E@PZAf&NC() !"RecAf&NC()!!@PT!!6$3$Nd1!!&@'&NC(*3!!4"3$Ni03!#'5jTEQ9dAfjdEf% !"YTTEQ&NC()!"%9!16Jj!!,q,QPZCA4IB@4NFJ!(Gf&NC(*PFh-!"AK!-6!`03! %-(0)Eh0d583N-6!`0J!&HN!a-$!h!!91,N4bDACPFPpI-6C*6N988fpMDf9d4'p YB@PZ4RB!"PmZ8%*$EfjdFQpX8hPZB`!$J("LFJ!"d%GPG%&NC(*3BA*KE8*XEf0 V!!%@D@p$8Q9Q6R9Y!!DUBh0$Ef4P!!+9Eh9b3@4NFQ9cF`!#@QpeFNjPG%eKFfX !"CK!-6!a03!'FA0)Eh0d6Q&YC53a-$%f!!@D3$%`-6F!"G9!-6!c-J!%cLjRCA4 SEh0dEQ&YC3!!C#jcF(*TER4Q!!-X,PpIERGKAep'9@`!"q8ZFh4bBh"j!!"T,R0 dFQjMF(N!!"eYB@0SEQ&YC3!'pf*eCQaPEJ!#I@K`!!A@3$%`-c-!"GG!-6!c0!! &f%!a-$-e!!AC3$%`-cB!"GT!-6!c0`!&fd!a-$-i!!AF3$%`-cN!"I0!-6!d-!! &p%!a-$3a!!Ae3$%`0$)!"IC!-6!d-`!&pd!a-$3d!!Ai3$%`0$8!"IP!-6!d0J! &qN!a-$3h!!Al3$%`0$J!"Ia!-6!d13!&%d!a-$8`!!883$%`06%!"49!-6!e-J! &&N!a-$8c!!8A3$%`063!!1YcCA*fE'PcG!!!1h0PFRCXD@jP!!36Ff9bGJ!(3(0 PFRCPER3!"JGcAfjKE@8!!30cAf&XD@&cCA-!"[4cAh"[FR3!"i0cAh"bEh4[!!H mFf9bGQCTE!!&E&p'58a&!!BKD'&ZC'aP!!4KE@pNC3!%6&pICQPXC9pYEf4PF`! "['p`C@jIE@pNC3!(P@P[Afe[C'8!!q&LG@CQCA*IE@pNC3!"[QCTE'9IDfPZC!! !GfCTE'9IEh*TC@jdBA4TEfi!!44LD@jKFRPID@m!"FTcG'&dC3!%pepICQPXC9p cG'&dC3!!V'P[Ah0dBA4P!!-5CR*PC9pLG@CQCA)!!mPPEfB!"44PFR*[FJ!$['0 SBA*IBR9QCQ9b!!6GBfKKFPpLG@CQCA*IEhCPFQCXEhF!"84eEQGPG'0IBR9QCQ9 b!!C*G@jRCA4hBepLG@CQCA)!!(C`Eh0TG'P[EJ!'!f*eCQCPFJ!$Ef*eCQCPFPp cDATP!!*qBR9QCQ9bAh"dFJ!#U'*eCQCPFPpXC@i!!2GLG@CQCA*IB@aTCfjYC@j d!!$(Ff&fC@4IBR9QCQ9bAfaPEJ!#hQ*eCQCPFPp`Eh-!"D&`Eh0TG'P[EPp`FQp M!!(aFQ9KC&p`FQpM!!)EGh*TG'9IF(*[B`!#Y'0XEh0PAh"bEf-!!6KTC'aPAh" bEf-!"dYcCA*fF(4b!!'6Ff9bGQ&XD@&c!!!pFf9bGR0dBAN!!cJZFf9dFf9bGQ9 ZG!!(*bjbCAGTEQ3!!(0cG'&jEh"PEJ!&(%!a-$8j!!1L,Q9ZC(0PFRCPER3!"bm ZCQ0XEh0P!!8i3$%`0M3!"Ce!-6!j13!&Pd!a-6!`!!@B3$%a-$%!"CP!-6%`-J! &QN!a-6!c!!2Y,QGPG(0PFRCPER3!!E8Z8%acG(*MF(N!!-mZ4R9XE&"KG'KIAcP 84QPXC90`C@0$4RB!"N)ZCQp`C@i!"YdZCQGPG(-!!(NZFh4bF'*bD`!('bjcG(* dEfX!"6FZBA4[D3!"He4'D@aP8h"PB`!(*54'8e0`C@-!!UKKE'PKFf0[G@jd!!& `F!!&Qd!a-6!d!!D',QGPG(0PFRCLH@jKE@8!"GY`FQpdE`!#Q'&X!!1hC@jd!!A F3$%a-M8!"SXZCf9dFf9bGQ*jF'pbG!!%Q("[FR3!"Ij!-6%c0`!$VR4MF!!$XR9 NF!!"+h"bEh4[C@jdF`!!aA"bEh4[C@jd!!B&F&pZB@eP!!(HF&pKE'PKFf9c!!G "F&p`FQpdE`!'Ih"bEh4[C@jdAf0[G@jd!!8F3$%a0$8!"4e!-6%d0J!(kLjRCA4 `FQpdEf*jEQ&YC3!&m@9bFQj[!!*cF'8!"4j!-6%d0`!"DbjRCA4`FQpdEf*jER9 YBQ9b!!$UCf9dF(*[G'pLH@jeE@*PFJ!$IP423`!'K@GPG("bEh4[BRPZB@eP!!9 kCf9dFf9bGQ*jF'pbG!!&N@GPG(0PFRCLH@jKE@8!!J0RCA4cCA*fC@jd!!)lC@j NFf9bGQ9ZG!!#L(0PG(0PFRCPER3!!b"RCA4SEh0dEQ&YC3!"j@GPG'K[Fh4TC!! "4@PZCA4IB@4NFJ!"A'PZCA4IER4[B3!&XQGPG'K[Fh4LH@&NC()!"@"RCA4SEh0 dBRPZB@eP!!DU69K*EQC[!!8H5%PZCQm!!NC"C'4b9'p1B@eP!!(Q4@jeE80KBfK P!!'V3@4NFP4[8h4b!!'28h4b9'p"C'4b!!AQ3fa[Ff95CA0[E(CPFJ!%f%p`C@j 5CA0[E(CPFJ!&%Np`C@j2GA*54PpI4RB!!Ve6C@&bBfK'EfaNCA*'Eh*%6P*3Aep 'E'acE!!'M%GPG%03B@jPE%C[E'4PFPpI4P"c8'`!"Re(CA46HA0dC@e'EfaNCA* IAdC3Fe"X!!Dc9(*KF%9iDA0dFepI4R-!"kj(CA48FQ&`9(P`C9pI4R-!!lK1G@e 8EfpXBQpi9(*KF(0IAdCf!'0b8%pA8J#3"JbF!!!BV!!!!2!!!!d)!!!,T!!!!U3 !N!B"k!!!!!`!N%"&C`!!4@X!"!!!!!%!!!!m!!!!)!!!!aem#!+QNq(rr*!!!3! )P#(r`$[M!!")!!!"B!!!!)!#!!#3!"m!!MKr!!#!!3")1#%!3(`)!kD$iIrm6S! !)%9e!*!&!J!!!"4&G!-!N!3$!!!!(%9Z$!3!!!!+!!!!$)!!N!Z!!!!m#!!!!%9 h!*!&!3#3"%9V!!3!!!!,!!!!#!!!!%)!!!-l1'!!!%k!!#"&D`!%!!!!$!!!!!J !!!"@!!!$E6KP!!"1J!!J4@X!"!!!!!i!!!"-!!!!H!!!!kD6iIrm1q!!!#J%!!" "JJ!31!!!!CJ%!!!lr`!"+!8!!%'#!"!i!!!"Q!8!!$[r!!%S"J!!3B)!$$J!!!# B"J!!1(m!!)2Krra1J!!J4@X!"!!!!"-!!!"%!!!!r!!!",Tm#!+QNq(rr*!!!3! )P#(r`*!!B3"B1q3!!)"K!&K)!!!"B!!!!$J!)ED`(`!'1'!!!)!"!%Ji)3"!I!J $TS2Krra1J!!J4A8!N!88!!!!(%9Z$!3!!!!N!!!!$)!!N!Z!!!"%#!!!!%9h!*! &%`#3"%9Z"3%!!!!P!!!!#IrrrrS!!!9hC'9f1QjeE'`!-AVi4@X!"!!!!#B!!!# )!!!"0!!!"AGm#!+QNq(rr*2"rrL6SIrdN!!"!!L8)Iq`1m3!!$[P!!!lS!!!J!3 ![LJ!!!"!JJ!m9q!'2d'#!""Ai!Bq+!!!"N##!#L!IJ#kJ))!!$LJ!!!i`!!"5!! !!@!!!!"8B!Br3B)!#$ZJ!!%iI3!!J!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrd6S! !)%9d!`#3"#8!!!")4A8!N!8R!!!!9%9Z$!3!!!#U!!!!$)!!N!Z!!!#)'!!!!%9 h!*!&*J#3"%9V!!3!!!#V!!!!H!!!!@3!!!CCI!J#TT2Krrb6`IriNk(rp*!!!3! )P#(rX$[M!!#!!`!3+!!!!%##!#3iB!!'5!!!!@!!!!"mIKYj3B)!$$Kq!!")!!! "Npm!%)1r!"#SI3!!1!-!!E!G!!#!I`!3J!%!@$JK!&"m#!1QJq(rr)2"rrL$SIr d6S!!)%9e!*!&V!!!!#a&G3#3"3%!!!"!4@i0!J!!!,!!!!!5J!#3"aJ!!%3!4!! +!!#+J!!H!*!'4AB+R!!!!,%!!!!14@i-"!!!!,)!!!!-J!#3$RJ!N!4&G`#3"DX !N!4&G`d!N!5`!!!!#%9Z"3%!!!#c!!!!%IrrrpJ!!!CC6R9XE&0[BfYPG%4[E@& TEJ#Sj1"&EJ8"!!!!Y!!!!!hrrrrA!!!'@90[BfYPG%4[E@&TEJ#3"%9Z"33!!!# e!!!!#2rrrpB!!!CC!*!)4AB&!*!%Y!#3"%9Z"3%!!!#f!!!!%Irrrp8!!!CC4QP XC90[BfYPG%4[E@&TEJ#DfI"&EJ8%!!!!Y`!!!!crrrr8!!!'@3#3$%9f"3#3",8 !N!4&EJ8%!!!!Z!!!!!Mrrrr6!!!'@3#3#%9f"3#3",B!N!4&GJ8!N!5h!!!!"%9 Z"33!!!#j!!!!&2rrrp)!!!CC!*!84AB&!*!%Z!!!!!K&GJ8!N!5e!*!%4@i&"!! !!,S!!!!)rrrrd3!!"PN!N!K&GJ8!N!5c!*!%4AB&!*!%Z3!!!!4&E`8%!!!!Z`! !!%6rrrr3!!!'@3#34%9f"3#3",S!N!4&GJS!N!5m!!!!%%9f#J#3",d!!!!-4AB +!*!%[J!!!"4&GJS!N!5r!!!!3%9f#J#3"-!!!!!m4AB+!*!%`3!!!$K&GJS!N!6 #!!!!0%9f#J#3"--!!!!`4AB+!*!%a!!!!#a&GJS!N!6&!!!!+%9f#J#3"-B!!!! N4AB+!*!%a`!!!#"&GJS!N!6)!!!!#%9f#J#3"-N!!!!F4AB+!*!%bJ!!!"K&D`# %!!!!b`!!!'5!!*!(I!J#TT2Krrb3!!%!#*3Krm"mIaYjX)%!AN'#!$5!!J!!N!! I!!!iI`!!1)!!!%J!!!&J!!!!U!%!AL`!!!"!J3!31(m!!%J!!!&J!!!!1(m!!)! "!%Ji)3"!I!J$TS2Krra1J!!J4A3$!*!%Z`!!!"a&G3#3"F`!!!!X4A8!N!A0!!! !4%9Z$!3!!!$1!!!!$)!!N!Z!!!"N#!!!!%9h!*!&b`#3"%9Z"3%!!!$2!!!!#rr rrmm!!!CC6R9XE&0[BfYPG!"[4@i&!3!!!0!!!!!(rrrrcJ!!"PP6Ef0VCA3!Ed9 Z"33!!!$4!!!!#2rrrmd!!!CC!*!)4AB&!*!%d!#3"%9Z"33!!!$5!!!!$2rrrm` !!!CC!*!-4AB&!*!%d3#3"%9Z"33!!!$6!!!!#2rrrmX!!!CC!*!)4AB&!*!%c`# 3"%9f"3#3"0)!!!!%4@m&"!!!!!-!!!"NrrrrbJ!!"PN!N'4&GJ8!N!66!*!%4AB +!*!%e!!!!&a&GJS!N!69!!!!9%9f#J#3"0B!!!"34AB+!*!%e`!!!%a&GJS!N!6 B!!!!5%9f#J#3"0N!!!"%4AB+!*!%fJ!!!$a&GJS!N!6E!!!!1%9f#J#3"0`!!!! d4AB+!*!%h3!!!$"&GJS!N!6H!!!!,%9f#J#3"0m!!!!S4AB+!*!%i!!!!#4&GJS !N!6K!!!!)%9f#J#3"1)!!!!84AB+!*!%i`!!!""&GJS!N!6N!!!!$%9f#J#3"18 !!!!)4AB+!*!%jJ!!!'"&GJS!N!6R!!!!3%9f#J#3"1J!!!"B4AB+!*!%k3!!!"a &GJS!N!6U!!!!'%9V!)3!!!$V!!!!C)!!N!Gm#!+QNq(rr*!!!3!)P#(r`(ar'hQ `J3"H3B)!0)!#!!#3!"m!!MKr!!!iJ!!!5!!!!@!!!!#S!3"H,!!!!%#"!"!iI`! !5!!!!@!!!!!iI`!!J!%!5$JK!%"m#!1QJq(rr%k!!#"&G!-!N!3$!!!!(%9e!*! &l!!!!#a&G3#3"Fd!!!"%4@i-"!!!!1d!!!!-J!#3#i!!!'3)!!!!4AF!N!AV!*! %4@m+K!!!!1B!!!!)J!#3$d9f!*!&k`#3"%9f$`#3"1i!!!!%4@m+K!!!!-J!!!! )J!#3$d9f!*!&b`#3"%9f$`#3"1i!!!!%4@m+"!!!!-N!!!!)J!#3$d9f!*!&U`# 3"%9f$`#3"1i!!!!%4@m+"!!!!-S!!!!)J!#3$d9f!*!&*J#3"%9f$`#3"1i!!!! %4@m+"!!!!1F!!!!)J!#3$d9f!*!&%`#3"%9f$`#3"1i!!!!%4@m+"!!!!1J!!!! )J!#3$d9f!*!&$J#3"%9f$`#3"1i!!!!%4@m+"!!!!1N!!!!)J!#3$d9f!*!&$!# 3"%9f$`#3"1i!!!!%4@m+"!!!!1S!!!!)J!#3$d9f!*!&#`#3"%9f$`#3"1i!!!! %4@m+"!!!!1m!!!!)J!#3$d9f!*!&!3#3"%9f$`#3"1i!!!!%4@m$"!!!!,X!!!! %J!#3#d9f"3#3",X!N!4&EJ-%!!!!*3!!!!5!!*!,4AB&!*!%*3#3"%9[!`3!!!! $!!!!")!!N!Y&GJ8!N!3$!*!%4@m2"!!!!1i!N!5!!*!(4@J!!&0C68J!!!'@!!! !0J!!!!S!N"%"!*!'!cErN!3!!!-i!!%!!!!%rj!%!3#3""m!!3#3"J0Jrj!%!!! $DJ!!!!%!N!B$Prq3"!!!!k-!!3!!!!d!!!!$!3#3"!8!!3#3"J2j!!!!"!!!!r` !!!!3!!!%*!!!!"`!!!4)!!!!*!!!"&S!!!!`!!!%I`!!!$J!!!53!!!!!%!!!!5 Rrj!%!!!%Y`!%!!!!$`!!!'J"!*!%"!!!!"!!!!"S!3#3"!8!!!!4!!!!D!%!N!3 '!!!!%J!!!!-!N!8I!!%!N!B%i`!!!"`!!!6Qrj!%!!!&+`!#!!!!"2q3"!%$!!! !@!!!!"Arrrrm!3#3""m!!3#3"JA6rj!%!!!'9J!#!!!!+2rrrrN"!*!%(J!!!*l rrrrF!3#3""m!!3#3"JD6!!!!+!!!"UJ!!!")!!!'arq3"!!!"ZS!!3!!!!6rrrr E!3#3""m!![rrrrd!!!!(!!!!"J!#!!!!#!!!!!X!N!F*!!!!C!!!!!)!![rrrri !!!!&!!!!"J!"!!!!"[rrrrd!N!ErN!3!!Irrrri!![rrrrX!!!!@!!!!+!!0!!! !&`!!!!X!N!FB!!!!!J!!!!)!!!!C!!!!#J!!!!B!!!!D!!!!#J!!!!J!!!!E!!! !#J!!!!S!!!!F!!!!#J!!!!`!!!!G!!!!#`!!!!i!!!!H!!!!!`!!!"!!!!!I!!! !!J!!!"3!!!!J!!!!!J!!!"J!!!!K!!!!!J!!!"`!!!!L!!!!!`!!!#!!!!!M!!! !!`!!!#3!!2rrrr`!!IrrrrX!!IrrrrS!!!!*!!!!!3!!!!F!![rrrrB!!!![!!! !4J!$!!!!-!!!!!X!N!Fa!!!!!`!!!!)!!!!b!!!!!3!!!!B!![rrrrF!!!!Y!!! !4J!"!!!!,[rrrrB!N!8"rrrrm3!!!!)!!!!#!!!!#`!#rrrrmJ!!!$J!!!!)!!- !!!!hrrrrm`#3"cN!!!!,!!!!"!!!!$Vrrrra!!!!"J!!rrrrm`!"rrrrmJ!!rrr rl!!"!!!!DJ!#rrrrl3!!!%F!!!!8!!F!!!")!!!!!J#3"d)!!!!(!!!!"!!!!%N !!!!(!!!!"3!!!%S!!!!+!!!!"J!!!%[rrrrX!!!!#!!!!%-!!!!#!!!!$!!!!%` !!!!#!!!!%!!"rrrrlJ!!!"3!!!!8rrrrl3!#rrrrl`!!!$i!!!!J!!J!!!!r!!! !#J#3"d!!!!!(!!!!!J!!!%%!!!!'!!!!!`!!!%)!!!!#!!!!"!!!!%-!!!!'!!! !#!!!!%3!!!!'!!!!#3!!!%8!!!!+!!!!#J!!!%ErrrrZ!!!!$!!!rrrrm!!"rrr rl`!#rrrrkJ!!!&`!!!!%!!)!!!"G!!!!#`#3"ei!!!!,!!!!!J!#rrrrk`!!!&F !!!!3!!8!!!"B!!!!!J#3"eN!!!!#!!!!"!!!!&S!!!!+!!!!#!!!!&[rrrrU!!! !#J!!!&m!!!!,!!!!$J!"rrrrk!!!!!B!!!!#!!!!#`!#rrrrk3!!!'X!!!!3!!B !!!"X!!!!#`#3"fhrrrrS!!!!!J!!!'i!!!!(!!!!#!!!!'m!!!!(!!!!#3!!!(! !!!!,!!!!#J!!!(%!!!!$!!!!$!!#rrrrp!!!!$B!!!"X!"`!!!!hrrrrm`#3"cN !!!!,!!!!"!!!!$X!!!!,!!!!"J!!!$`!!!"Q!!!!#!!!!$hrrrr`!!!!$!!!!%d !!!!,!!!!%!!!!%i!!!"V!!!!%J!!!%m!!!!,!!!!&J!!!&!!!!!,!!!!'!!!!&% !!!!(!!!!'J!!!&)!!!!(!!!!'`!!!&-!!!!,!!!!(!!!!&3!!!!(!!!!(J!!!&8 !!!!(!!!!(`!!!&ErrrrV!!!!)!!!!'!!!!!$!!!!-!!!!'%!!!!+!!!!0!!!!') !!!!$!!!!0J!!!'-!!!!$!!!!1J!!!'3!!!!+!!!!2J!!!'8!!!!$!!!!3!!!!'B !!!!$!!!!4!!!!'F!!!!#!!!!5!!!!'J!!!!#!!!!6!!!!'N!!!!#!!!!8!!!!'V rrrrT!!!!9!!!!()!!!!$!!!!C!!!!(-!!!!$!!!!D!!#rrrrj3!!!(N!!!!)!!3 !!!"k!!!!#`#3"hX!!!!,!!!!!J!!!(`!!!!,!!!!"!!!!(d!!!!,!!!!"J!#rrr rjJ!!!(F!!!!3!!3!!!"irrrrj3#3"hi!!!!+!!!!#!!!!(rrrrrU!!!!#J!!!)! !!!!,!!!!$J!"rrrrj!!!!")!!!!#!!!!#`!#rrrri`!!!)J!!!!3!!B!!!#*rrr rkJ#3"iS!!!!$!!!!"!!!!)X!!!!(!!!!#!!!!)`!!!!(!!!!#3!!!)d!!!!,!!! !#J!!!)i!!!!$!!!!$!!#rrrrj`!!!(8!!!"S!"F!!!!hrrrrm`#3"cN!!!!,!!! !"!!!!$X!!!!,!!!!"J!!!$`!!!"Q!!!!#!!!!$hrrrr`!!!!$!!!!%d!!!!,!!! !%!!!!%i!!!"V!!!!%J!!!%m!!!!,!!!!&J!!!&!!!!!,!!!!'!!!!&%!!!!(!!! !'J!!!&)!!!!(!!!!'`!!!&-!!!!,!!!!(!!!!&3!!!!(!!!!(J!!!&8!!!!(!!! !(`!!!(ErrrrQ!!!!)!!!!)%!!!!$!!!!-!!!!))!!!!+!!!!0!!!!)2rrrrN!!! !0J!!!)3!!!!#!!!!5!!!!)8!!!!#!!!!6!!!!)B!!!!#!!!!8!!!!)IrrrrM!!! !9!!!!)m!!!!$!!!!C!!#rrrrp3!!!$3!!!"X!!)!!!!errrrp!#3"h6rrrrR!*! &![rrrq!!!!#6!!!!"!!"!!!!#3!!!'3!N!8#rrrrhJ!!!*F!!!!5!!B!!!!'rrr rr3#3"jMrrrrI!!!!"J!!!*RrrrrI!!!!#J!!!*S!!!!,!!!!$J!!!*X!!!!'!!! !%!!!!*`!!!!'!!!!%3!!rrrrh`!"rrrrhJ!#rrrri3!!!*%!!!!3!!3!!!#5rrr ri!#3"j6rrrrL!!!!"!!!!*ArrrrL!!!!#!!!!*ErrrrI!!!!$!!!rrrriJ!"rrr ri3!!rrrrh3!"rrrrp`!#rrrrq!!!!#N!!!$#!!F!!!!U!!!!#`#3"bX!!!!'!!! !!J!!!#crrrrh!!!!"!!!!$2rrrre!!!!5J!!!*!!rrrriJ!!!,B!!!!b!!!!CJ! !!,S!!!#Grrrrh3!!!,i!!2rrrrN!!IrrrrJ!!rrrrp`!!!#I!!B!#J!!!+!!N!H K!!!!!3!!!+)!!!!#!!!!S`!!!!-!!!#N!!!!"!!!!+8!!!!&!!!!TJ!!!!B!!!# R!!!!"`!!!+J!!!!)!!!!U3!!!!N!!2rrrpN!!Irrrrd!![rrrpS!!!#Y!!!!&!! #!!!!V[rrrq%!N!H[rrrrf3!!!"!!!2rrrpX!!IrrrpS!!IrrrpJ!!!!4!!!!!3! !!!F!!IrrrpF!!!!0!!!!!3!!!!F!![rrrpErN!3!!!!)!!!!!Irrrp8!!!!4!!! !!3!!!!F!![rrrp6rN!3!!!!-!!!!![rrrp2rN!3!!!!)!!!!![rrrp,rN!3!!!! 8!!!!![rrrp(rN!3!!!!)!!!!![rrrp$rN!3!!!"%!!!!!Irrrmm!!!!,!!!!!3! !!!F!!Irrrmi!!!!(!!!!!3!!!!F!![rrrmhrN!3!!!!)!!!!![rrrmcrN!3!!!! -!!!!![rrrm[rN!3!!!!)!!!!![rrrmVrN!3!!!"N!!!&H5jIAf0dAema-%jeE'a 6Ef0VCA4'GJ!!-bjIAf0dAemf8fpMDf9d4RB!!T9IAhCdAema-%jeE'a6Ef0VCA3 !"&YdD'Pc!!+H6R9XE&0[BfYPG!!(pL46Ef0VCA3!"[P6Ef0VCA3!!"abC@C$Eh9 ZG!!(mepIGR"dFL3!"$p!1$!i!!Gp,R*PB@4IAc%`6R9XE&0[BfYPG%C3GQN!!$! ZGh*TG'9IAc%`6R9XE&0[BfYPG%C3GQN!!maXC@i!"jFZFf9XC@0dAema-%jeE'a 6Ef0VCA4'8&9M8&9M8&9M!!FmBf&Z8Q9KC!!!CQ0KEPGbDA4P!!'"CAKMCA"dD@p Z!!HKCfp[C'PPF`!$4bjQFh4KG&pI-6"1G@aX8fpMDf9d4P!dFh4KG!!'`5jQFh4 KG&pI0P0[BfYPG%C30(0dBA3!!jjLG@B!"#YcG'&d!!D5Fh4IC'9f!!E!Fh4ID@j [!!FGFh4IE@pNC3!!dR0dAfjXD@jV!!BNFh4IG@PN!!EXFh4ICfPN!!HTFh4IFQ4 PGJ!(Vh0dAh0THQ8!!(acG&pKG'PYC3!!`(0dAfedD@eP!!#FFh4IBh4TE@8!!Q9 cG&pLE'YcDATP!!(rFh4IBQa[BfYc!!4J3$Ja13!%H%!i-M%!"SNZ@@peFR0IAc% f6R9XE&0[BfYPG%4[E@&TENC53c%a4e9658CTE'95C@C4-M%f4QPXC90[BfYPG%4 [E@&TEMG5CA&eCA0d!!50,Q9aG@&XFh4bD@jR!!2FFQ9Q!!214e9658CTE'95C@B !"44PFR*[FJ!(RQKKFdPZCQm!"+GQD@aP!!&l9%CTE'96F'9M!!FP*%C68h"PB`! '#%C68h"PB`!((RC5C@C1G@d!"FT`BA**4!!%UfjKE@8!"+TTEQC[!!,S3dPZCQp 33P*PB`!"VQK'D@aP5@jQE`!"68K'D@aP5@jQE`!&'h&-D@jV!!9r889XC@d!"CT a9(P`C3!&MR&%BA4K!!BeD@p8FQ&`!!(9D@p$E@4"C'4b!!6ED@p$Efe`E'9dD@p Z!!'r8QpeG'PZC84PFf0bDA"dEh)!"bGREdeTH'9N6@pNC94bBA!!"d4fCA*cD@p Z!!B)FQpeG'PZC84PFf0bDA"dEh*'E'&RF`!"9R*PFf9bGQ9N-3!"9h*PFf9bGQ9 N-J!%Gh0PE'9MG'pb5@jQE`!%+R*[GA4TEQ9$Eh9ZG!!'m(*[GA4TEQ95C@0[FQ4 c!!8I8QpeG'PZC9*PBfpbC!!![h"bEf0*EQC[!!23590"!!6lFQpeG'PZC8CXB@G c!!D%F(*[Bd4PFf0bDA"dEh)!!0GcC@aPBh4[FJ!!IfP[8Q9cG@ad!!(@D@p1B@e P8(4b!!&XD@p@8Q9Q6R9Y!!&SD@p'8Q9Q6R9Y!!)`D@p'9Q9bFdjeE3!(D'CTE'a PFM%!!eKTEdC%DA**EQ4PH!!#-'P[4Qa"G(4bD@)!!04TEd&$9A0PFJ!%d@P[4Qa 'EQ4b5@jQE`!&INC*EQC[!!CQCQ48HA"P!!&VCQ4$FQ9KG'pb!!HmCQ4'E'&RF`! #"QCN6'pMBA4TEfi!"D43EfPZG!!"GRB!!@KS!!DfCQ4'E'4b!!I)D@p%DA**4!! "$fP[4Qa6G%*XD`!"rfP[4Qa-CdaPEJ!"c'P[4Qa3H8aPEJ!#k@P[4Qa58h4#E'X !!N"TEdCX8NaR6'9Z!!++D@p'E&*3H8aPEJ!"[@P[4Qa$FN4KG!!"efP[4Qa0C%4 KG!!"5@P[4Qa#Dd4KG!!&B@P[4QaB4QjNFNPZCQm!"RK'@%PZCQm!!+0QC%PMEfj *4!!!0QCN9@jeFf9N!!$*CQ46Bh*TF(3!!#KQC&K'E'&RF`!"NQCN3fpYE@9ZG!! "e@CN8(9d3AGKH3!"#fP[4Qa3BA**4!!#8@P[4Qa$E("6DAS!"hPNDA**EQC[!!H K4'Pb5@jQE`!#%QP[4(*9Fh*AC(-!"Gj%5@jQE`!'!QCb8Q9MG!!%Ie*PBh3!!bp dEh!!"!aXC@Cd!!BLBQpdG'pY!!A@FQPRD(3!"fGQFNCXB@Gc!!*BCR*-Ef0KG'P [EJ!'8fCb9QPPG`!"k'P[4(*%DA**4!!"MQP[4(*1E8CXF`!(DQCTE'aPFM-!!GG TEd4b3h*%BA3!!BeTEd4b6@4%BA3!!H0TEd4b3QY%BA3!"-"TEd4b4QjNFNPZCQm !"U4%@%PZCQm!!,CQFP0MFQpXE!!$c'Cb6h"PEN0SB@PZ!!"'CR*6Bh*TF(3!!+j QFPK'E'&RF`!"`QCb3fpYE@9ZG!!"L@Cb8(9d3AGKH3!"*'P[4(*3BA**4!!'Gf4 [E@&TEJ!!K%CTE'96Ef0VCA4%EfeKD@i!"I)N8fpMDf9d4'pYB@PZ!!3d8fpMDf9 d4'pYB@PZ!!$hEQ9iG%4PGQPMC84[E@&TEJ!'q@jPH(4'D@aP4'pYB@PZ!!9#CQP bFh3!!J9'D@aP8fpMDf9d!!3NF(*PGJ!%5fjPH(3!"`TQ8Q9Q6R9Y!!BSBA"`C@j N!!%NG'9YF'pbBA*j!!4VFh"PB`!(-(*PFA9PFh3!!49'D@aP8fpMDf9d4'pYB@P Z1MT5CA&eCA0d!!"LGfPXE%p`C@i!!JjhD@aX8Q9YEhCP!!*9GfPXE&*PEQ&YC3! (5AGTE'a(CA4'D@aP5@jQE`!(p(GTE'a6CA4'D@aP5@jQE`!$j(GTE'a'3@0MCA0 c!!$HGfPXE&0dBA3!!DahD@aX3fKYEf3!!A"hD@aX994TE@8!!MahD@aX3@0MCA0 c!!4j3$Jb-J!#A#j[F'9ZAema0NjeE'a6Ef0VCA4%EfeKD@j'8N-a-8G98dP'D@a P8Q9QD3!#HbjIAfjhAep'9@`!!1K1G@aX8fpMDf9d4'pYB@PZ!!'9*%CTE'96Ef0 VCA4%EfeKD@i!!BacD@jRE'9dEfi!"*G!1$-`!!&FAepNE&pI4P"f!!5B3$Jc-3! %Q8!i-c)!"*Y!1$-d!!EmAep59&4*Aema-P0[BfYPG%4[E@&TEJ!%R%!i-c8!"*e !1$-f!!**Aep59&4*Aema0NCTE'96Ef0VCA4%EfeKD@i!"*T!1$-c!!)$Aep59&4 *Aema0NjeE'a6Ef0VCA4%EfeKD@i!!#eIAhCdAema0NjeE'a6Ef0VCA4%EfeKD@i !"SpcEf0VCA4`B@PbAema-P0[BfYPG%4[E@&TENCTFe"30P0[BfYPG!!"mA0[BfY PG&pI-6*6Ef0VCA4%EfeKD@j'DA-!"DTMD'p[Ff9IAc%f4QPXC90[BfYPG%4[E@& TENCT8'03GQP3GP"T!!0cB@0MCA0cAema0NCTE'96Ef0VCA4%EfeKD@j'8N-a-8G 98dP'D@aP8Q9QD3!$9(9dD@ePAema0NCTE'96Ef0VCA4%EfeKD@j'8N-a-8G98dP 'D@aP8Q9Q8%-hGA4TE@*eCJ!$,Q0SE@pNAema0NCTE'96Ef0VCA4%EfeKD@j'8N- a-8G98dP'D@aP8Q9Q9A-!"[TcG'&dAema0NCTE'96Ef0VCA4%EfeKD@j'8N-a-8G 98dP'D@aP8Q9Q8$4cG'&d!!H)CQ&MBf9cFepI-6C'D@aP8fpMDf9d4'pYB@PZ4P* $-6&(990*4QPXC9*PCP9T8'`!""PQFf9dCQPXC@PZCQpIAc%f4QPXC90[BfYPG%4 [E@&TENC53c%a4e9658CTE'95C@C9E&9X!!DjCQGPG'CTE'9TEQC[Aema0NCTE'9 6Ef0VCA4%EfeKD@j'8N-a-8G98dP'D@aP8Q9Q8&9X8&9X!!A4FQ9ZB@ePAema0NC TE'96Ef0VCA4%EfeKD@j'8N-a-8G98dP'D@aP8Q9Q8%0M!!*pFQ9YEhCPAema0NC TE'96Ef0VCA4%EfeKD@j'8N-a-8G98dP'D@aP8Q9Q!!)bAepNG&pI-6C1G@aX8fp MDf9d4'pYB@PZ4RB!!B0[F'9ZAema0NjeE'a6Ef0VCA4%EfeKD@j'8N-a-8G98dP 'D@aP8Q9QD3!&qPP[GA*cAema0NjeE'a6Ef0VCA4%EfeKD@j'8N-a-8G98dP'D@a P8Q9Q86)a0NCTE'96Ef0VCA4%EfeKD@ih8Q9aG@9cG!!$r5jIAf4dAema0NjeE'a 6Ef0VCA4%EfeKD@j'GJ!$ZLjIAf4dAema0NCTE'96Ef0VCA4%EfeKD@j'GJ!#6bj IAf4XAep'8(B!",G!1$3`!!5i3$Jd-3!%ZN!i0$-!"rpIAe*89%PIAcC6Ef0VCA3 !",P!1$3b!!6lAep59&4*Aema-%jeE'a6Ef0VCA3!!hG`Eh0dAh0PE'9MG&pI0P0 [BfYPG%C9Be9M9@-!!Qa`FQ9IFf9XC@0dAemf8fpMDf9d4P9M9@09B`!$lR0SGA4 NEhGZAemf8fpMDf9d4QN!!8*TFf&dG(PIAcC6Ef0VCA4'GJ!%I@CdFR9ZBf&dC9p I0P0[BfYPG%CX!!&JE(0PC@YIAcC6Ef0VCA4'E'N!!fpTEf0dE&pI0P0[BfYPG%C 9D9"f!!*(CQ0ZG'aIAcC6Ef0VCA4'9@PT!!&,Ff9dFfpMDfp`G&pI0P0[BfYPG%C TD9"fD3!#b'GPG(0[BfY[F(4IAcC6Ef0VCA4'D@P3GP"T!!&!Cf9dF'9PFQjKE@9 IAcC6Ef0VCA4'8(C3D3!"afGPG(0[BfYZB@ePAemf8fpMDf9d4P"f8'N!"aacC@j NG'pIAcC6Ef0VCA4'8(CTD9"fD3!#F(*PBhCQFQpYAemf8fpMDf9d4P"fD@P3GP" T!!5@B@0MCA"dAemf8fpMDf9d4P"f8'N!!FKXDA0dC@jIAcC6Ef0VCA4'D3!%kQ0 [EQjPBh4IAcC6Ef0VCA4'8(CT!!&-BQPZC&pI0P0[BfYPG%C3GQN!"&4IAf4dAem a-%jeE'a6Ef0VCA4'GJ!#TfCcG'&dAema-%jeE'a6Ef0VCA4'8$4cG'&d!!E$Ff9 XC@0dAema-%jeE'a6Ef0VCA4'8&9M8&9M8&9M!!IdGh*TG'9IAc%`6R9XE&0[BfY PG%C3GQN!"NPbC@&NAema-%jeE'a6Ef0VCA4'8(CT!!9Z,PpIC(4IAc%`6R9XE&0 [BfYPG%Cf!!"#,PpIC(4IAcC6Ef0VCA4'GJ!%[N!i0$F!!hj86d-!"(9IAf0dAem a-%jeE'a6Ef0VCA4'GJ"5C9"29e)!N!B4E!!!&LS!!!"N!!!4f!!!"&)!!!3`!*! '!KF!!!!%!*"!4@F!!%9T!*!&!89V!!3!!!!#!!!!&!!!!#!!!!2GJ!)!!*!!!`! #1!!!!,!$!!"1J!!J4A3$!*!%!`#3"%9V!!3!!!!)!!!!9!!!!%S!!!3#I!J#TT2 Krrb3!!%!#*3Krm"mIaYjX)%!AN'#!#5!!J!!N!!I!!+S!3"H,!!!!%#"!"!iI`! !5!!!!@!!!!!iI`!!J!%!5$JK!%"m#!1QJq(rr%k!!#"&G!-!N!3$!!!!(%9e!*! !!!$4&EJ`%!!!!#J!!!!b!!*!,J!!!9!J!!!"&G`#3"3J!N!4&D`!%!!!!#`! !!#J!!!"X!!!%'A`)!UD3!!%!#*3Krm!iB!!Y5!!!!@!!!!#!!3")1#%!3(`)!kC 1J!!J4A8!N!8-!!!!%%9Z$!3!!!!0!!!!$)!!N!Z!!!!S!*!%4AF!N!8,!*!%4@X !"!!!!!i!!!!S!!!!L!!!"&am#!+QN!!"!!L8)Ir!1'!!,8J!!!&J!!!!J!%!5$J K!%"m#!1Q6S!!)%9e!*!&$!!!!""&EJ`%!!!!$`!!!!b!!*!,J!!!+!#3"%9h!*! &$J#3"%9V!!3!!!!3!!!!+!!!!+3!!!5LI!J#TT!!!3!)P#(r`$KJ!#e)!!!"B!! !!)!"!%Ji)3"!I!J$TNk!!#"&G3#3"3`!!!!34@i-"!!!!"%!!!!-J!#3#i!!!#J !N!4&G`#3"4!!N!4&D`!%!!!!%J!!!#J!!!$!!!!%hh`)!UD3!!%!#*3Krm!iB!! Y5!!!!@!!!!#!!3")1#%!3(`)!kC1J!!J4A8!N!86!!!!%%9Z$!3!!!!8!!!!$)! !N!Z!!!!S!*!%4AF!N!85!*!%4@X!"!!!!"8!!!"B!!!!h!!!"6Tm#!+QN!!"!!L 8)Ir!N!"K!&L3!)%!A*!!S3"J1!!!!*!!!3!iJ'%!@)#"!&b!S3"J1-!!!$MJ!!! j!3!iJB-!!S'-!#")!!!"B!!!!)!"!%Ji)3"!I!J$TNk!!#"&G3#3"4B!!!"!4@i -"!!!!"S!!!!-J!#3#i!!!&J!N!4&G`#3"48!N!4&D`!%!!!!'`!!!&!!!!%`!!! &Xh`)!UD3!!%!#*3Krm#3!'%!@*!!J3"FN!#K!'#!B3"BJ)%!A)#K!'!i`!!!11! !!$N!!!#"J`!#JB`!*%J!!!&J!!!!J!%!5$JK!%"m#!1Q6S!!)%9e!*!&&J!!!$K &EJ`%!!!!(!!!!!b!!*!,J!!!8!#3"%9h!*!&'`#3"%9V!!3!!!!G!!!!+!!!!AB !!!B3I!J#TT!!!3!)P#(r`$KJ!#e)!!!"B!!!!)!"!%Ji)3"!I!J$TNk!!#"&G3# 3"3`!!!!34@i-"!!!!"i!!!!-J!#3#i!!!#J!N!4&G`#3"4d!N!4&D`!%!!!!(`! !!#J!!!'5!!!'Dh`)!UD3!!%!#*3Krm!iB!!Y5!!!!@!!!!#!!3")1#%!3(`)!kC 1J!!J4A8!N!8-!!!!%%9Z$!3!!!!J!!!!$)!!N!Z!!!!S!*!%4AF!N!8I!*!%4@X !"!!!!#%!!!!S!!!"VJ!!"X*m#!+QN!!"!!L8)Ir!1'!!,8J!!!&J!!!!J!%!5$J K!%"m#!1Q6S!!)%9e!*!&$!!!!""&EJ`%!!!!)J!!!!b!!*!,J!!!+!#3"%9h!*! &)3#3"%9V!!3!!!!M!!!!+!!!!FS!!!F1I!J#TT!!!3!)P#(r`$KJ!#e)!!!"B!! !!)!"!%Ji)3"!I!J$TNk!!#"&G3#3"3`!!!!34@i-"!!!!#3!!!!-J!#3#i!!!#J !N!4&G`#3"5-!N!4&D`!%!!!!*3!!!#J!!!(Q!!!(@R`)!UD3!!%!#*3Krm!iB!! Y5!!!!@!!!!#!!3")1#%!3(`)!kC1J!!J4A8!N!8-!!!!%%9Z$!3!!!!Q!!!!$)! !N!Z!!!!S!*!%4AF!N!8P!*!%4@X!"!!!!#F!!!!S!!!#!J!!"kpm#!+QN!!"!!L 8)Ir!1'!!,8J!!!&J!!!!J!%!5$JK!%"m#!1Q6S!!)%9e!*!&$!!!!""&EJ`%!!! !+!!!!!b!!*!,J!!!+!#3"%9h!*!&*`#3"%9V!!3!!!!T!!!!+!!!!Ki!!!J#I!J #TT!!!3!)P#(r`$KJ!#e)!!!"B!!!!)!"!%Ji)3"!I!J$TNk!!#"&G3#3"3`!!!! 34@i-"!!!!#S!!!!-J!#3#i!!!#J!N!4&G`#3"5N!N!4&D`!%!!!!+`!!!#J!!!) k!!!)6(`)!UD3!!%!#*3Krm!iB!!Y5!!!!@!!!!#!!3")1#%!3(`)!kC1J!!J4A8 !N!8-!!!!%%9Z$!3!!!!X!!!!$)!!N!Z!!!!S!*!%4AF!N!8V!*!%4@X!"!!!!#d !!!#`!!!#9J!!#*Pm#!+QNq(rr*!!!3!)P#(r`$[N!!!i!!!!X!3!!$J!!!#3!!3 !!MaJ!!%iBm'fX'3!"MJ!!!'`"!!)1!!!!,!%!!Si!!!!X!3!$$J!!!#`"!!11!! !!C!!"!!31'!!!%J!!!&J!!!!N!"r!"3iB!!!5!!!!@!!!!#3!(m!'$KJ!!")!!! "B!!!!*!!I`!F1!!!!*!!(`!J1!!!!C!!(`!N1'!!!)!"!%Ji)3"!I!J$TS2Krra 1J!!J4A8!N!8Z!!!!A%9e!*!&,J!!!'a&G3#3"5i!!!"m4@i-"!!!!$i!!!!-J!# 3#i!!!,!)!!!!4AF!N!8Y!*!%4@X!"!!!!$m!!!!S!!!#N!!!!!S'I!J#TT!!!3! )P#(r`$KJ!"e)!!!"B!!!!)!"!%Ji)3"!I!J$TNk!!#"&G3#3"3`!!!!34@i-"!! !!%!!!!!-J!#3#i!!!#J!N!4&G`#3"6m!N!4&D`!%!!!!33!!!#J!!!+X!!!+4A` )!UD3!!%!#*3Krm!iB!!@5!!!!@!!!!#!!3")1#%!3(`)!kC1J!!J4A8!N!8-!!! !%%9Z$!3!!!"#!!!!$)!!N!Z!!!!S!*!%4AF!N!9"!*!%4@X!"!!!!%-!!!!)!!! #b!!!#S)iB!!!6S!!)%9V!!3!!!"%!!!!+!!!!Y`!!!URI!J#TT!!!3!)P#(r`$K J!#e)!!!"B!!!!)!"!%Ji)3"!I!J$TNk!!#"&G3#3"3`!!!!34@i-"!!!!%8!!!! -J!#3#i!!!#J!N!4&G`#3"83!N!4&D`!%!!!!4J!!!!3!!!,i!!!+jNk!!#"&D`! %!!!!4`!!!!J!!!--!!!,(MKJ!!"1J!!J4@X!"!!!!%J!!!!%!!!$)!!!#f*1J!! J4@i&!3!!!%N!!!!(rrrrq`!!#f*6Ef0VCA3!!%9Z"33!!!"+!!!!#2rrrrS!!!Y L!*!)4AB&!*!%53#3"%9["33!!!!$!!!!C2rrrrN!!!YL!*"N4AB&!*!%5J#3"%9 f#J#3"%X!!!"J4AB+!*!%6!!!!&a&GJS!N!40!!!!@%9f#J#3"%i!!!"84AB+!*! %6`!!!&"&GJS!N!43!!!!6%9f#J#3"&%!!!")4AB+!*!%8J!!!%4&GJS!N!46!!! !3%9f#J#3"&3!!!!m4AB+!*!%93!!!$K&GJS!N!4@!!!!0%9f#J#3"&F!!!!`4AB +!*!%@!!!!#a&GJS!N!4C!!!!+%9f#J#3"&S!!!!N4AB+!*!%@`!!!#"&GJS!N!4 F!!!!(%9f#J#3"&d!!!!B4AB+!*!%AJ!!!"4&GJS!N!4I!!!!%%9f#J#3"'!!!!! -4AB+!*!%B3!!!!K&E`S%!!!!6!!!!!L!!*!24AB!N!9)!*!%4AB2!*!%BJ!!!!4 &E`S%!!!!63!!!!L!!*!24AB!N!9(!*!%4AB2!*!%BJ!!!!4&E`S%!!!!6J!!!!L !!*!24AB!N!9'!*!%4AB2!*!%BJ!!!!4&E`S%!!!!6`!!!!L!!*!24AB!N!9%!*! %4AB2!*!%BJ!!!!4&E`S%!!!!8!!!!!L!!*!24AB!N!9$!*!%4AB2!*!%BJ!!!!4 &E`S%!!!!83!!!!L!!*!24AB!N!9"!*!%4AB2!*!%BJ!!!!4&E`S%!!!!8J!!!!L !!*!24AB!N!8r!*!%4AB2!*!%BJ!!!!4&E`S%!!!!8`!!!!L!!*!24AB!N!8Y!*! %4AB2!*!%BJ!!!!4&E`S%!!!!9!!!!!L!!*!24AB!N!8V!*!%4AB2!*!%BJ!!!!4 &E`S%!!!!93!!!!L!!*!24AB!N!8T!*!%4AB2!*!%BJ!!!!4&E`S%!!!!9J!!!!L !!*!24AB!N!8R!*!%4AB2!*!%BJ!!!!4&E`S%!!!!9`!!!!L!!*!24AB!N!8P!*! %4AB2!*!%BJ!!!!4&E`S%!!!!@!!!!!L!!*!24AB!N!8M!*!%4AB2!*!%BJ!!!!4 &E`S%!!!!@3!!!!L!!*!24AB!N!8K!*!%4AB2!*!%BJ!!!!4&E`S%!!!!@J!!!!L !!*!24AB!N!8I!*!%4AB2!*!%BJ!!!!4&E`S%!!!!@`!!!!L!!*!24AB!N!8G!*! %4AB2!*!%BJ!!!!4&E`S%!!!!A!!!!!L!!*!24AB!N!8E!*!%4AB2!*!%BJ!!!!4 &E`S%!!!!A3!!!!L!!*!24AB!N!89!*!%4AB2!*!%BJ!!!!4&E`S%!!!!AJ!!!!L !!*!24AB!N!85!*!%4AB2!*!%BJ!!!!4&E`S%!!!!A`!!!!L!!*!24AB!N!83!*! %4AB2!*!%BJ!!!!4&E`S%!!!!B!!!!!L!!*!24AB!N!81!*!%4AB2!*!%BJ!!!!4 &E`S%!!!!B3!!!!L!!*!24AB!N!8,!*!%4AB2!*!%BJ!!!!4&E`S%!!!!5`!!!!L !!*!24AB!N!8)!*!%4AB2!*!%BJ!!!!4&E`S%!!!!B`!!!!L!!*!24AB!N!8#!*! %4AB2!*!%BJ!!!!4&E`-%!!!!!`!!!!5!!*!,4AB&!*!%!`#3"%9[$`3!!!"L!*! %J!#3"d9S!!"6@8e)!!!$0!!!!!F!!!!#!*!4!3#3"J2Z!!!!%!!!!rq3"3!!!rm !!3!!!!6rN!3"!*!%!`!"!*!'""6rN!3!!!3@!!%!!!!%rj!%!3#3""m!!3#3"J3 h!!!!$!!!"$VrN!3!!!4C!!!!!3#3"J4p!!!!$!!!")$rN!3!!!5I!!!!!3#3"J5 k!!!!$!!!",hrN!3!!!6F!!!!!3#3"J8'!!!!$!!!"3RrN!3!!!8h!!!!!3#3"J9 Q!!!!3!!!"AhrN!3!!!@`!!3!!!!%rj!%!3-!!!"B!!!!&`!!!'3"!`!!!&`!!!! B!!!!!`%$!!!!B!!!!"N!!!!$!!-!!!!i!!%!N!B&i!!!!$J!!!AMrj!%!!!'$3! $!!!!"2q3"!%$!!!!@!!!!"F!!!"N!3-!!!"F!!!!'!!!!!-"!`!!!'!!!3#3"JC '!!!!$!!!"NRrN!3!!!CS!!!!!3#3"JDG!!!!$!!!"U$rN!3!!!Dr!!!!!3#3"JE T!!!!$!!!"ZcrN!3!!!F,!!!!!3#3"JFe!!!!$!!!"cMrN!3!!!GA!!!!!3#3"JH +!!!!$!!!"ihrN!3!!!HX!!!!!3#3"JIG!!!!$!!!"q$rN!3!!!Ir!!!!!3#3"JJ R!!!!$!!!##VrN!3!!!K*!!!!!3#3"JKd!!!!$!!!#(IrN!3!!!L@!!!!!3#3"JL q!!!!A!!!#A%!!!"X!!!*M`!!!(`!!!QYrj!%!!!+!`!"!!!!,rrrrrd"!*!%(`! "!*!'#L3!!!!-!!!+*rq3"!!!#N)!!!!"!*!'#Q%!!!!-!!!+C2q3"!!!#Rm!!!! "!*!'#TVrN!3!!!UN!!!!!3#3"JV"!!!!$!!!#X6rN!3!!!VM!*!+#a[rN!3!!!X E!!!!!3#3"JY9rj!%!!!,A`#3#JZBrj!%!!!,Q!!!!!,rrrrq!!!!"3!!!!B!!J! !!!B!!!!,!*!("`!!!'3!!!!#!!$rN!3!!Irrrri!![rrrr`!!!!`!!!!+!!0!!! !-3!!!!X!N!Fb!!!!!J!!!!)!!!!c!!!!#J!!!!B!!!!d!!!!#J!!!!J!!!!e!!! !#J!!!!S!!!!f!!!!#J!!!!`!!!!h!!!!#`!!!!i!!!!i!!!!!`!!!"!!!!!j!!! !!J!!!"3!!!!k!!!!!J!!!"J!!!!l!!!!!J!!!"`!!!!m!!!!!`!!!#!!!!!p!!! !!`!!!#3!!2rrrrd!!Irrrr`!!IrrrrX!!!!(!!!!!3!!!!F!![rrrrVrN!3!!!! )!!!!![rrrrRrN!3!!!"N!!!%U%G98dN!!$-ZAepMG&pI0P0[BfYPG%Cf!!ALAep fG&pI0P0[BfYPG!!%@h4SDA-!"[P6Ef0VCA3!!"abC@C$Eh9ZG!!(mepIGR"dFL3 !!%)ZAepNG&pI0P0[BfYPG%Cf!!*2,PpIC'aIAdC3GJ!%R%!h0$N!!VFZBQPZC&p I0P0[BfYPG%C3GQN!!kdZ4e9659pPFR*[FJ!%Y%!h06%!"H`ZBfpZEQ9MG&pI0P0 [BfYPG%C3GQN!",C!0c8c!!*#,QaTFh4PEPpI0P0[BfYPG%CT!!5i3$Fe03!&QLj KBf0PF(4IAcC6Ef0VCA4'8(C3D3!(A#j(990*Af9bFQpbAfjTE!!%ZN!h06F!!ZB ZFQ9KC&pI0P0[BfYPG%C3GQN!!j3ZAep`G(*ICfaeC3!'!f*eCQCPFJ!'pf*eCQa PEJ!(C@CbEfeXC@i!",a!0c8j!!18,RGbDA4PAemf8fpMDf9d4P"fD3!%e%!h0M% !!fdZFQ9MGQCbEfeIAcC6Ef0VCA4'8(CTD9"f8'N!"0C!0cBc!!!C,R0PEQ4dEep I0P0[BfYPG%C3GQPT8(CT!!6B3$Ff03!#p#jRCA4cEf0VEQ&YC9pI0P0[BfYPG%C 3GP"T!!6D3$Ff0`!#fLjRCA4`C@9bEQ&YC9pI0P0[BfYPG%C3GP"T!!6F3$Ff13! $abjRCA4cEf0VEh"dAemf8fpMDf9d4QPT8(C3D3!%p%!h0c%!!V%ZFf9dFfpMDfp `G&pI0P0[BfYPG%CTD9"fD3!%pN!h0c-!!pSZCQ0ZG'aIAcC6Ef0VCA4'9@PT!!6 i3$Fh03!%I#jTEf0dE&pI0P0[BfYPG%C9D9"f!!6k3$Fh0`!'`5jQFh4KG&pI0P0 [BfYPG%C30(0dBA3!"93ZG'PYC3!$RQ*eCJ!%+h0dBA3!"T*cG&pNCAB!"X"cG&p TEQm!"aecG&pYEf4P!!$5Fh4IEQaTEQX!"L4cG&peD@3!"ZacG&pRD@3!"kPcG&p bC'9f!!H[Fh4IFfPkC3!!I(0dAf&dD@eP!!$!Fh4IEA4TE@8!!*acG&pMG'PYC3! #CA0dAf*XDh0THQ8!!IpcG&pLE'pMDh-!"2a!0cFj!!)6,QacC@9VAemf8fpMDf9 d4QaT!!383$Fi-3!&"bjQG(*eEQ0KG'9IAcC6Ef0VCA4'E!!%&N!h1$-!!SBZDA0 KG(4jAemf8fpMDf9d4RB!"2mZFfKeG'4[GfjIAcC6Ef0VCA4'D3!%'8!h1$B!!`! ZF(*PAh0PE'9MG&pI0P0[BfYPG%C9Be9M9@-!![SZFf9XC@0dAemf8fpMDf9d4P" 9Be"9Be"9B`!%R5j`Eh0dAh0PE'9MG&pI0P0[BfYPG%C9Be9M9@-!"$4!0cN`!!I rAep59&4*Aemf8fpMDf9d!!I8AepNG&pI0P0[BfYPG%Cf!!0hF'pcG&pcC@aPBh4 IAcC6Ef0VCA4'9@09Be9M!!&)Ff9XC@0dAemf8fpMDf9d4P"9Be"9Be"9B`!#E(" bC9pcC@aPBh4IAcC6Ef0VCA4'9@09Be9M!!2ZFfKeG'4[GfjIAcC6Ef0VCA4'D3! "3QPcBA4dH9pI0P0[BfYPG%Cf!!4pCR4bG@jMBA4PAemf8fpMDf9d4Q`!!@"XFf9 PDepI0P0[BfYPG%CXD3!&,fCcG'&dAemf8fpMDf9d4P!dFh4KG!!$EfP[Bh4XAem f8fpMDf9d4P9T8(B!!NGQBfjdE&pI0P0[BfYPG%C9D@N!!8YcCA4cEf0VEh"dAem f8fpMDf9d4QPT8(CT!!,)Cf9dFfpMDfp`G&pI0P0[BfYPG%CTD9"f8'N!!8"RCA4 `C@9bEQ&YC9pI0P0[BfYPG%C3GP"T!!((Cf9dFfpMDfjKE@9IAcC6Ef0VCA4'8(C 3D3!(((0PEQ4dEepI0P0[BfYPG%C3GQPT8(CT!!*`FQ9MGQCbEfeIAcC6Ef0VCA4 '8(CTD9"f8'N!!MehFQPdC9pI0P0[BfYPG%C3GQN!!DCbC@&NAemf8fpMDf9d4P" fD3!%PQ&MBf9`G&pI0P0[BfYPG%C3GP"T!!()E'PcG'9ZAemf8fpMDf9d4QN!"1T MEfjZC@0dAemf8fpMDf9d4P"fD3!"6'*TEQ4IAcC6Ef0VCA4'8(CT!!0q9%p$!!H %AepMG&pI0P0[BfYPG%Cf!!!*,e"29e)!N!BfS!!!8UJ!!!&G!!!h$!!!'j`!!"h B!*!'!fi!!!!S!*"!4@F!!%9V!!3!!!!"!!!"2!!!!#!!!!C5I!J#TT2Krrb3!!% !#*3Krm#`J3"HN!#K!'#!B3"JJq-!!$J!!!#`(`!+S!%!AL`!!!0"JJ"N3)!!%#` !!!&"JJ!85!!!Z#`!!!9!J!#`5!!!Q+JI!!a8!!Gl3B)!$$J!!!5`(`!+L"m!2#J !!!*"JJ!3L"m!2#J!!!0!JJ!31!!!"jJI!$a)!!"d1!!!"TJI!$a)!!"SU"m!$&3 !"hY"JJ!-1!!!",!I!!U)(`!m+!!!"d'#!%L)(`!m+!!!!N'#!"#)(`!m+!!!!d# #!"!i!!!(Q"m!2%J!!#3i!!!"Q"m!2%J!!"LS(`!-9!!(rd'#!!`i!!!"X"m!#S! I!!BS!!!!3B)!)+JI!!SX!!!!3B)!&)"r!!DSR`!+5!!!!@!!!!")!!!"B!!!!)! "!%Ji)3"!I!J$TS2Krra1J!!J4A8!N!8#!!!"'%9e!*!&!`!!!5"&EJ`%!!!!)`! !!!b!!*!,J!!"2!J!!!"&G`#3"3%!N!4&E`8%!!!!*!!!!#$rrrrh!!!*m+Vq"`# 3#ql!!!%!"!#3$%9f#J#3"$3!!!!84@X!"!!!!$8!!!$%!!!!eJ!!#Rjm#!+QNq( rr*2"rrL6SIrdN!!"!!L8)Iq`1k-!!)2M!'Blh3!!U"d!%*!!(`!q,!!!!%##!$5 !(J!UN!!I!##J(J!ZX"m!(MJ!!"#B(`!XJ"i!**!!(`!`S"i!+,!I!#ii!!!&Q"m !2+JI!!a8!!Eh3B)!$$J!!"#`(`!+J"m!"LJ!!!""JJ!JU"m!#L`!!!""JJ!8J(m !"ULI!!T)!!!"B!!!!%J!!!&J!!!!J!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrd6S! !)%9e!*!&!J!!!*K&G3#3"3-!!!#J4@i-"!!!!,X!!!!-J!#3#i!!!-3B!!!!4AF !N!8e!*!%4@m&"!!!!,`!!!!Jrrrrp`!!$05UrJF!N!c"!!%!"!#3$%9f#J#3",d !!!!84@X!"!!!!,i!!!%!!!!"2!!!$B"m#!+QNq(rr*2"rrL6SIrdN!!"!!L8)Iq `1k-!!)2M!'Blh3!!U"d!%#`!TL&"JJ"B3)!!(#`!TKj"JJ"-3)!!5#`!TKT!J!" !5!!!2#`!!!""JJ!)5!!!-$J!!"#B(`!XJ"i!**!!(`!`S"i!+,!I!#ii!!!$Q"m !2$J!!!#3!"m!2NJ!!"3i!!!(Q"m!2+JH!"#3!"m!2UJI!!a8!!Fj3B)!%$J!!!L `(`!+5!!!$$J!!!#`(`!+J"m!"LJ!!!""JJ!JU"m!#L`!!!""JJ!8J(m!"ULI!!T )!!!"B!!!!%J!!!&J!!!!J!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrd6S!!)%9e!*! &!J!!!04&G3#3"3-!!!$F4@i-"!!!!,m!!!!-J!#3#i!!!3!B!!!!4AF!N!@q!*! %4@m&"!!!!-!!!!!Jrrrrp`!!%(1UrJF!N!c"!!%!"!#3$%9f#J#3"-%!!!!84@X !"!!!!-)!!!#i!!!"XJ!!%4Ym#!+QNq(rr*2"rrL6SIrdNi(rm*!!!3!)P#(rX$Z $!!#$``"Q1l`!!+JF!"!X!!!!3))!$+2p!#L6rJ!BU"i!$&3!"rp!JJ!3U"i!$&3 !"le"JJ!31!!!),!H!!T)!!!-1!!!!,!H!!U!(J!'+!!!!%'#!##S(J!+,!!!!%' #!"5!IJ!'U*i!#NJ!!!&J!!!!5!!!!@!!!!#!!3"B1#%!8(`)!kD$iIrmJm(rq)1 Krr5$JIr`6S!!)%9e!*!&!J!!!)K&G3#3"3-!!!#3!%9Z$!3!!!$%!!!!$)!!N!Z !!!#i)!!!!%9h!*!&`J#3"%9["33!!!$&!!!!)2rrrrF!!"+SU[i(!*!-`3!"!!3 !N!a&GJS!N!6'!!!!&%9V!!3!!!$(!!!"5!!!!Li!!"0)I!J#TT2Krrb6`IriNk( rp*!!!3!)P#(rX$ZM!!#$i`"Q1pd!!+JG!"!X!+BH3B)!P%#!!$3X!+BD3B)!L%# !!"`X!+B)3B)!I%#!!(JX!+B%3B)!A%J!!'`X!+BF3B)!8%J!!'!X!+BM3B)!4%# !!"`X!+BK3B)!6%#!!%JX!+BJ3)!!,%J!!$`X!!!!3B)!#%J!!$!i!!!!J(i!*V! $!!!i!!!!N!!I!$j)!!!S1!!!!CJI!$`i!!!jN!!I!$j)!!!81!!!!CJI!$bS(J! 3N!!I!$kS(`!-9!!(rd##!"#S(`!-9!!([8'#!"!i!!!JX"m!#NJ!!!`i!!!!X"m !#S!I!!BS!!!!3B)!)+JI!!SX!!!!3B)!&)"r!!DSR`!+5!!!!@!!!!")!!!"B!! !!)!"!&Ji)3"3I!J$TS2Krrb$`IriJk(rp%k!!#"&G3#3"3)!!!%F4A8!N!8$!!! "*%9Z$!3!!!$)!!!!$)!!N!Z!!!&)'!!!!%9h!*!&a`#3"%9["33!!!$*!!!!)2r rrrF!!"CKU[i(!*!-`3!"!!3!N!a&GJS!N!6+!!!!&%9V!!3!!!$,!!!"N!!!!!+ X!!!A5R`)!UD6iIrmN!!"!!L8)Ip31q-!!%J!!!&J!!!!J!)!!*!!(`!#1!!!!CJ I!$`iB!!%5!!!!@!!!!#3!(m!3S"r!%+6i`!!J')!!%J!!!&J!!!!X'%!8$J!!"k `!3"51'"!!%J!!!&J!!!!N!"K!&Ji!%!!N!!"!&b!!J!!N!!"!'#!(`"#N!!"!'5 !!3"B+!!!!%##!"JiB!!h5!!!!@!!!!!iI`!!5!!!h$KK!$K)!!!"B!!!!(aJ"c3 X!+BL3B)!,%#!!"`X!+BI3B)!5%#!!&JX!+BE3B)!+%J!!%`X!!!!3B)!@%J!!%! iB!!h5!!!!@!!!!!iI`!!5!!!L$KJ!$G)!!!"B!!!!$Kr!!")!!"d1'!!'%J!!!& J!!!!1(m!!%J!!'!iB!!b5!!!!@!!!!!iI`!!5!!!6$J!!!+B(`!Y1!!!!*JI!#` i!!!!N!!I!$!i!!!!X"m!,MKr!$3iJ!!!1+!!#%J!!!&J!!!!1!!!!*!!(`!qJ!% !9*!!(`!11(m!!)!"!,Ji)3#`I!J$TS2Krra1J!!J4A8!N!A-!!!!&%9d!`#3"-d !!!!F4A8!N!A1!!!!-%9d!`#3"-m!!!"%4A8!N!A3!!!!5%9e!*!&d3!!!'"&G!- !N!3N!!!!G%9e!*!&dJ!!!*4&G3#3"G-!!!#S4A8!N!A5!!!!k%9e!*!&dJ!!!2a &G3#3"G)!!!%34A8!N!A5!!!"*%9e!*!&e!!!!@"&EJd#!!!!eJ!!!"D!!*!(#!! !0!&N!!S!!)D!!"m!N!T&GJS-!!!!e`!!!"*&EJ`%!!!!f!!!!!b!!*!0!C!!!*! %4AF!N!A,!*!%4AF0!*!%eJ!!!!K&D`!%!!!!f3!!!I!!!!-d!!!E4h`)!UD6iIr mNm(rq*!!!3!)P#(rN!!li`!!N!#"!)b!J3#-5!!!!@!!!!#!!J!!N!!I!!)mB'P Z1'0PG*!!B3"%J!)!!*!!!3"!1'!!"%J!!!&J!!!!N!"r!%+!I`"#Nq-!!$J!!!# 3!"m!2MKK!$K)!!!"B!!!!$aJFfNiJ3"%1+!!"$M"!%JiBfGZ5!!!!@!!!!!mB%P 12)"86MLK!%Ji`2rr11!!!$N"!&JiBd981)4'@8J!!!&J!!!!1'%!@$b!8e3mS'a [1-%!M$MJ!!3iK&*01+9ZCdJ!!!&J!!!!1'%!@$b!39-mS'a[1-%!3$MJ!!3iK&) J1+9ZCdJ!!!&J!!!!1'%!@$b!99-mS'a[10m!3MMJ!!3iK&*31+9ZCdJ!!!&J!!! !1'%!@$b!F(-mS("c1-%!1$MJ!!JiK'iJ1+9Z)%J!!!&J!!!!1'%!@$L"!&!iS!! $1-!!!6MJ!(Jj!!!!15!!!%J!!!&J!!!!1'%!8%J!!!&J!!!!1'%!@%J!!!&J!!! !1'%!5%J!!!&J!!!!1(m!!%J!!!&J!!!!1m-!!$J!!#L`!`!D5!!!!@!!!!#!(J! XN!!I!##J(J!`X"m!(MJ!!"#B(`!XJ"i!*T!!(`!`S"i!+V!I!#iiI`!!J!%!H$J K!("m#!1QJq(rr)2"rrK1J!!J4A8!N!AD!!!!)%9d!`#3"-d!!!!S4A3$!*!%*!! !!$a&G3#3"Fi!!!")4A8!N!AE!!!!D%9e!*!&h!!!!)4&G3#3"Gd!!!#X4A8!N!A H!!!!d%9e!*!&hJ!!!24&G3#3"Gi!!!%B4A8!N!AH!!!"2%9e!*!&h`!!!@"&G3# 3"H!!!!&X4A8!N!AJ!!!"H%9e!*!&i!!!!B4&G3#3"H%!!!'3!%9e!*!&d`!!!D4 &EJd#!!!!lJ!!!"D!!*!(%!!!6!'S!!S!!)D!!"m!N!T&GJS-!!!!e`!!!"*&EJ` %!!!!l`!!!!b!!*!0!I!!N!4&G`#3"GN!N!4&G`d!N!6Z!!!!#%9V!!3!!!$`!!! !k!!!"$B!!##RI!J#TT2Krrb6`IriN!!"!!L8)Ir!1q-!!$[%!!")!!!"B!!!!)! #!!#3!"m!!S!H!!k3!"m!$SJH!"+B(`!5L"i!%jJI!"1!(J!8N!!I!"5!(J!BN!! I!"L!IJ!FJ"i!)*!!I`!FN!!I!##!IJ!NJ"i!+*!!I`!NN!!I!#L!IJ!XJ"i!-*! !I`!XN!!I!$#!IJ!dJ"i!1*!!I`!dN!!I!$L)(J!mQ"m!2$J!!!#3!"m!2S!H!%+ 3!"m!3S"r!%+6i`!!1'!!"%J!!!&J!!!!N!"q!%+!IJ"#Nm-!!$Kr!!#!!3")1#% !3(`)!kD$iIrmJm(rq%k!!#"&G3#3"F`!!!!F4A3$!*!%c3!!!#4&G3#3"Fi!!!# i4@i0!J!!!2%!!!!@J!#3"a!!!,`![!!+!!#'J!!I!*!+4AB+$!!!!0F!!!!54@i -"!!!!2)!!!!-J!#3$ZJ!N!4&G`#3"I!!N!4&G`d!N!6a!!!!#%9V!!3!!!$c!!! $6!!!"'i!!#+5I!J#TVpKrqb3!!%!#*3Kri"mHaYjX)%!RS2L!!#$SJ!!3B)$&)! #!!#3!"X!!S!G!!#3!!%!@$J!!!#3!"d!!$Kl!!")!!!"B!!!!$[$!!!i!!!SX!- !'NJ!!!&J!!!!5!!!!@!!!!!X!`!!3))!,)!I!!!S!!!!3B)!-$KJ!!!iJ!!!JCm !!%J!!!&J!!!!,!-!!%'#!"3iB!!%5!!!!@!!!!")!!!-1!!!!*!!(3!!J"d!!#` !!!"!JJ!3S"i!1LJ!!!"!J[pm1(X!!%J!!!&J!!!!1m-!!$J!!!#3!!-!$$J!!#D `!`!D1!$r`*J$!#)i!!!mQ!-!)$J!!!'B!`!K5!!!!@!!!!")!!!"B!!!!#`$!!" !JJ!XJ"m!!#J!!!""JJ!`1'!!!$L!!!#"R`!!5!!!!@!!!!!X!`!!3B)!&$KJ!!4 )!!!"B!!!!%J!!"Ji!!!!N!!G!!#S(J!3,!!!!8'#rkLS(J!3,!#Q)%'#!&"!J!! J,!#Q(8'#!#a!J!!S,!#Q(%#!!$K)!!!F5!!!'#`!!!""JJ!S3)!!$#`!TL0"JJ! FJ"d!!#`!!!"!JJ&NJ!%!@*!!(3!!5!!"@+JH!"!X!!!!3))!l$Kl!!")!!!"B!! !!$[$!!!lJ!!!5!!!c$J!!!#3!"i!$$J!!#1`(J!D1!!!!CJH!#!i!3!iN!!H!#S i!!!%X"i!,MKq!!")!!!"B!!!!%J!!!&J!!!!,!-!!%##!#b!(`!!+!!!!%'#!$! iB!!!1)!!!)'I!!")!!!"B!!!!#`$!!""JJ!81'!!"%J!!!&J!!!!5!!!'$J!!!# 3!"d!!+JH!"!X!!!"3B,rU+JH!"!X!!!!3))!1$J!!#5`(J!D1!%!1*!!(J!U1(i !!%J!!!&J!!!!J"d!!#`!!!"!JJ!31j`!!5`F!!K"J2md1!!!+V!H!"SiIJ!!5!! !!@!!!!"mB!Fe3B)!()!G!!!X!!!!3))!2)!"!&L3!"d!!%J!!$#!IJ!J5!!!!@! !!!#!H`"#5!!!!@!!!!#!(3!!,!!!!%##!!b!!3"BN!!G!!!iH`!!1)!!!%J!!!& J!!!!U!%!RL`!!!"!J3!31(X!!%J!!!&J!!!!1(X!!)!"!)Ji)3#!I!J$TVYKrqa 1J!!J4A3$!*!%p!!!!"K&G!-!N!6e!!!!(%9d!`#3"-d!!!!N4A8!N!AK!!!!3%9 e!*!&d`!!!&4&G3#3"IB!!!"F4A8!N!Ah!!!!K%9e!*!&dJ!!!*K&G3#3"H%!!!$ )4A8!N!Ai!!!!r%9e!*!&pJ!!!34&G3#3"IF!!!%X4A8!N!A5!!!"3%9e!*!&i3! !!FK&G3#3"IJ!!!))4A8!N!Af!!!#%%9e!*!&p`!!!MK&G3#3"G)!!!*-4A8!N!A 6!!!#M%9e!*!&d`!!!VK&G3#3"IN!!!,N4A8!N!Ak!!!#m%9e!*!&q`!!!a4&G3# 3"IS!!!-X4@i0!J!!!33!!!!5J!#3"bJ!!%3#p!!+!!##!!"B!*!'4AB+$!!!!38 !!!!14@i-"!!!!3B!!!!-J!#3$30-!*!%4AF!N!Ac!*!%4AF0!!!!!33!!!!)4@X !K!!!!3F!!!"SJ!#3"h`)!UD6iIrmN!!"!!L8)Ir!I(mEHE#"!&j"JJ!iJ')!!)! $!!!X!!!!3))!%)!I!!#!BJ!!N!!$!!#S!3"H,!!!!%#"!"!iI`!!5!!!!@!!!!! iI`!!J!%!5$JK!%"m#!1QJq(rr%k!!#"&G!-!N!6e!!!!(%9d!`#3"28!!!!`4A8 !N!Ak!!!!5%9Z$!3!!!%)!!!!$)!!N!Z!!!"S#!!!!%9h!*!%!3F!N!4&D`!%!!! !i3!!!'!!!!@)!!!T8h`)!UD6iIrmNm(rq*!!!3!)P#(r`$[$!!#!BJ!!5!!!!@! !!!!li`!!J')!!%J!!!&J!!!!X(m!')!H!!k3!"m!(*2I!'BiI`!!J!%!5$JK!%" m#!1QJq(rr)2"rrK1J!!J4A3$!*!%c`!!!"K&G3#3"!%*!!!!(%9d!`#3"-m!!!! S4A8!N!A3!!!!,%9Z$!3!!!%+!!!!$)!!N!Z!!!"J%!!!!%9h!*!&i3#3"%9V!!3 !!!%,!!!!@!!!"FJ!!#SAI!J#TT2Krrb3!!%!#*3Krm#3!'%!@)"K!&K)!!!"1q- !!$J!!#L`!`!D5!!!!@!!!!"mB!Fe3B)!$$KJ!!")!!!)S(m!2)!"!%Ji)3"!I!J $TS2Krra1J!!J4A8!N!AK!!!!'%9e!*!&d`!!!#K&EJ`%!!!"$!!!!!b!!*!,J!! !@!J!!!"&G`#3"!%,!*!%4@X!"!!!!3d!!!+d!!!''!!!,50m#!+Q[Z(rh*!!!3! )P#(rN!!lJ`!!N!#"!)b3!+%!N!#$SJ!!Jq)!!)0K!)b!!3#3!#`!!"""JJ!81'! !&NJ!!!&J!!!!5!!#B)JE!!%S!!!#3B)!&$KJ!#p)!!!"B!!!!%J!!N5)(!!m+!! !"%##!$#!(!!q,!!!!%'#!"3iB!!p5!!!!@!!!!")!!)F1'!!*8J!!!&J!!!!5!! #$)JF!$`S!!!"3B)!&$KJ!$K)!!!"B!!!!%J!!I!i!!!%Q"`!2$Km!!")!!!"1m- !!)!#!!#3!!-!$$J!!##`!`!D1!$r`*J$!#)i!!!mQ!-!)$J!!!'B!`!K1!!!!*J $!#1!H`!%2!1"!#J!!!&!JJ!35!!!!@!!!!")!!!)J(X!"*!!IJ!NS"X!!V!H!#J i!!!!N!!H!#UJ(!!HX"i!,MJ!!!#B(J!b1!!!!*JH!$-i!!!!Q"i!0$J!!!#B(J! e1(i!!%J!!!&J!!!!1d-!!(p!"c9"JJ!F1!!!!CJF!$ar3`Fd5!!!!@!!!!")!!% JL"`!%bJ!!!""JJ!81'!!*%J!!!&J!!!!5!!"")!I!!#3!!%!1$J!!!#3!"m!!%J !!!&J!!!!,!-!!%##!#b!(3!!+!!!!%'#!$!iB!!!1)!!!)'G!!")!!!"B!!!!#` $!!""JJ!81'!!"%J!!!&J!!!!5!!!'$J!!!#3!"m!!+JH!"!X!!!"3B,rU)!I!!! X!!!!3))!%+JH!"!X!!!!3B)!C$J!!!'B(!!mJ"m!!#`!!!""JJ!N1b$rri!I!!! X!!!!3))!$)!"!$L3!"m!!$Kj!!")!!"-U(i!%%J!!!&J!!!!1`-!!)!I!!!X!!! !3))!$)!"!$L3!"m!!$Ki!!")!!!J1Z!!!)!I!!!X!!!!3))!$)!"!$L3!"m!!$K h!!#!!3"i1#%!F(`)!kDkiIrF6S!!)%9d!`#3"23!!!!F4A3$!*!%p3!!!#"&G3# 3"G)!!!!i4A8!N!A5!!!!9%9e!*!&dJ!!!(a&G3#3"G)!!!#-4A8!N!A5!!!!U%9 e!*!&i3!!!-"&G!-!N!5m!!!!b%9e!*!%!3i!!!%)4A8!N!Ai!!!"@%9e!*!%!3m !!!&i4A8!N!A5!!!"P%9e!*!&pJ!!!E"&G3#3"IF!!!(B4A8!N!A5!!!"l%9e!*! %!3m!!!*F4@i0!J!!!43!!!!5J!#3"dJ!!E3#B!!+!!##!!!i!*!'4AB+$!!!!38 !!!!14@i-"!!!!48!!!!-J!#3$3+d!*!%4AF!N!3"$3#3"%9h$3!!!!%8!!!!#%9 V!!3!!!%@!!!"p!!!"dB!!$2hI!J#TVmKrq53!!%!#*3Krk!lJ`!!Jq)!!)2#!!# )!`!m+!!!!8'#!"3iB!!i5!!!!@!!!!")!!'X1!!!!TJF!$`iI!!!5!!!!6ZM!!# !BJ!!5!!!!@!!!!#`I3!BJ!)!!*!!(3!-1!!!(l!G!"Si!2r!Q"d!)MJ!rrqB(3! J1!!!!*JG!#%i!!!!Q"d!)cJ!!!#3!"d!*$J!!!#`(3!S1!!!!*!!(3!US"`!(V! G!#ii!!!!Q"d!-MJ!!!#B(3!c1!!!!*JG!$3i!!!!Q"d!06Kp!!")!!!"B!!!!$Y M!!"rB!Fe3B)!($J!!!'B(!!mIf-(0%J!!!&J!!!!5!!!k)!H!!#3!!%!1$J!!!# 3!"i!!%J!!!&J!!!!,!-!!%##!#b!(`!!+!!!!%'#!$!iB!!!1)!!!)'I!!")!!! "B!!!!#`$!!""JJ!81'!!"%J!!!&J!!!!5!!!'$J!!!#3!"i!!+!G!#iS!!!!3B, rU)!H!!!X!!!%3B,rR)!H!!!X!!!!3B)!1)!H!!!X!!!%3B)!,$J!!!'B(!!m1d$ rri!H!!!X!!!!3))!$)!"!$L3!"i!!$Kk!!")!!!`J"d!+T!!(!!JS"d!,V!F!"i l)!!!J"i!!#`!!!"!JJ!-J!%!1*!!(J!!1(N!!)!"!'Ji)3"JI!J$TVXKrq41J!! J4A3$!*!%p!!!!"4&G!-!N!6e!!!!'%9e!*!&dJ!!!#a&G3#3"H%!!!"%4A3$!*! %c`!!!%a&G3#3"G!!!!"34A3$!*!%`!!!!&a&G3#3"IJ!!!$34A8!N!3"$`!!!2" &G3#3"IB!!!%-4A8!N!Ah!!!"0%9e!*!&dJ!!!8K&EJd#!!!"&`!!!"+!!*!(1!! "%!&-!!S!!))!!$J!N!C&GJS-!!!""3!!!!j&EJ`%!!!"'!!!!!b!!*!0!I3!N!4 &G`#3"!%@!*!%4AF0!!!!!4F!!!!)4@X!"!!!!4N!!!0`!!!)#J!!194m#!+Q[d( rk*!!!3!)P#(rX$[M!!#3!)%!E$Y&!!#$`J!!L!-!2#J!!!&!JJ!mJ"m!2L`!!!" "JJ!JJ(m!2NJ!!!&J!!!!1!!!!*!!(`!q1'!!!%J!!``iB!!j5!!!!@!!!!")!!, mL"m!2#J!!!*"JJ!XL"m!2#J!!!0"JJ!JL"m!2#J!!!G"JJ!81'!!18J!!!&J!!! !5!!#b)JI!$`S!!!#3))!V)JI!"-S!!!!3B)!&$KJ!!Y)!!!"B!!!!%J!!U")!!! "B!!!!#`$!!"!JJ!XJ"i!!#J!!!""JJ!d1'!!!$L!!!#"RJ!!5!!!!@!!!!!X!`! !3B)!'$KJ!!4)!!!"B!!!!$KJ!!")!!*8L"m!2#J!!!*"J[qXL"m!2#J!!!0"JJ! XL"m!2#J!!!G"JJ!JJ(m!2NJ!!!&J!!!!1!!!!*!!(`!q1'!!!%J!!K5)(`!m+!! !!d##!!`i!!!&5!!!#$J!!!'B(`!m1'!!4NJ!!!&J!!!!I(XEH8'#!"!iH`!!1*m !!%J!!!&rI0Yj3))!C$Kr!!")!!!"1!!!*l!$!"T)!!!"B!!!!$J!!!'B(`!m1(m !!$L!!!@"R`!#JB`!%%J!!!&J!!!!,!-!!%#!!"3i!!!"Q"m!2$KJ!!")!!'!1'! !$%J!!!&J!!!!5!!"F$J!!!'B(`!m1(m!!%J!!!%lS`!!1!!!(V!$!"SiB%!!5!! !!@!!!!#3!(d!)$J!3!#3!"d!*)!#!!#3!"d!+)!I!%+3!"d!,)!G!#!S!!!!3)) !&$KJ!$G)!!!"B!!!!%J!!4!iI3!!5!!!!@!!!!"mB!Fd,!#Q)N'#!#a!J!!F,!# Q(d'#!%"!J!"-,!#Q'd'#!#4)!!"!,!!!!%'#!%K)!!!d1'!!0dJ!!!&J!!!!5!! !`$KJ!$G)!!!"B!!!!%J!!,!iB!!B5!!!!@!!!!")!!#J1'!!-NJ!!!&J!!!!5!! !N!!i!!!#Q"m!,6J!!!#B(`!X1!!!!*!!(`!`1!!!!,!I!#iiI`!d1)!!!$LJ!!K )!!!"B!!!!$J!!!#3!"m!2S!G!"b3!"m!$MKr!!!iJ!!&JCm!!S'-!"")!!!"B!! !!)"K!'`iR!!XJ"S!!#`!!""!J!!-J,S!!%J!!!JiS!!3N!#k!!")!!!"B!!!!$K m!!#!!3"B1#%!8(`)!kDl3IrS6S!!)%9d!`#3"23!!!!F4A8!N!3"$`!!!$a&G3# 3"!%D!!!!@%9e!*!%!4S!!!#-4A8!N!3"'J!!!,4&G3#3"IB!!!$!4A8!N!Ah!!! !k%9e!*!&dJ!!!2a&G3#3"!%2!!!"0%9e!*!&cJ!!!@a&G3#3"I!!!!'%4A8!N!A K!!!"P%9e!*!&d`!!!D"&G3#3"IF!!!(!4A8!N!3"'J!!!H4&G3#3"H%!!!(m4A8 !N!A4!!!#%%9d!`#3"#3!!!)N4A8!N!3"'J!!!N4&G3#3"G-!!!*84A8!N!3"'J! !!T4&G3#3"!%D!!!#T%9e!*!%!4S!!!+d4A8!N!3"'J!!!X4&G3#3"G3!!!,m4A8 !N!Ah!!!$*%9e!*!%!4X!!!034@i0!J!!!4i!!!!5J!#3"c!!!BJ"L!!+!!#+J!! E!*!'4AB+$!!!!4m!!!!14@i-"!!!!5!!!!!-J!#3$30`!*!%4AF!N!3"'3#3"%9 h$3!!!!%H!!!!#%9V!!3!!!%K!!!#r!!!#93!!%M4I!J#TVp"rqL3!!%!#*3Krl! l``!!N!#"!'`lK3!!I2SlHC%"!(b$iJ!!3B)!)$Kq!!!iQJ!!J+%!I)'H!!+"M!! X5!!!!@!!!!#)(J!59!!([8'#!"3iB!!k5!!!!@!!!!")!!+)L"i!2#J!!!4!JJ" dL"i!%bJ!!!""JJ!81'!!#dJ!!!&J!!!!5!!#B%J!!!&J!!!!,!-!!%##!#b!(`! !+!!!!%'#!$!iB!!!1)!!!)'I!!")!!!"B!!!!#`$!!""JJ!81'!!"%J!!!&J!!! !5!!#')JH!$`S!!!%3B,rX)JH!$`S!!!&3B)!D)JH!$`S!!!'3))!$$KJ!!")!!( XL"i!2#J!!!&!JJ!iJ"i!2L`!!!""JJ!XJ"i!2L`!!!&"JJ!JJ(i!2NJ!!!&J!!! !1!!!!*!!(J!q1'$rrdJ!!D`iB!!j5!!!!@!!!!")!!'F1(i!!)'H!!+"M!"N5!! !!@!!!!!lB`!!L"i!%bJ!!!""JJ!F+"X!!%##!"3iB!!,5!!!!@!!!!")!!&JJ!% !E*!!(J!81!!!!*!!(J!B1!!!!C!!(J!q1(i!!%J!!!%lS`!!J!)!!*!!!`!-1!! !*E!$!"Si!!!!Q!-!))!H!"53!!-!*$aJ!!%iBrrrI"`B!%#!!!`iI!!!5!!!$$a J!!%iBrrrX(d!+$Kp!!")!!!"B!!!!%J!!!&J!!!!,!-!!%##!#b!(`!!+!!!!%' #!$!iB!!%1*`!!)'I!!")!!!"B!!!!#`$!!""JJ!81'!!"%J!!!&J!!!!5!!!T+J G!"!X!!!"3B,rX+JG!"!X!+BB3))!$$J!!!#`(3!3U"d!%#`!TKp"JJ"X3)!!,#` !TKY"JJ"J3)!!%#`!TKK"JJ"85!!!8#`!TKe"JJ")3)!!4%J!!$JX!+BM3B)!-%# !!"!X!+BK3B)!,%J!!#JX!!!!3B)!#%J!!"`i!!!!N!!H!$k!IJ!B5!!!')"q!"K )!!!3U(d!%%J!!!&J!!!!J!%!@$JK!&"m#!1QZd(rk%k!!#"&G!-!N!6d!!!!*%9 e!*!&p`!!!%"&G3#3"G)!!!"B4A8!N!A5!!!!J%9e!*!&pJ!!!)a&G3#3"IF!!!# d4A8!N!A5!!!!b%9e!*!%!3m!!!%S4A8!N!A5!!!"4%9e!*!&p`!!!9a&G3#3"G) !!!'!4A8!N!AK!!!"U%9d!`#3"-8!!!'`4A8!N!Ai!!!"q%9e!*!&pJ!!!J"&G3# 3"IF!!!)S4A8!N!A5!!!#2%9e!*!%!3m!!!,J4@i-"!!!!58!!!!-J!#3#i!!![` `!!!!4AF!N!3")3#3"%9V!!3!!!%Q!!!%&!!!#TS!!&A1I!J#TVkKrp53!!%!#*3 Krh!l3`!!1`3!!$[&!!!kTJ!!N!$K!,L#`J!!Jq)!!)J$!"*8!!Gl3B)!&$KJ!$T )!!!"B!!!!%J!!lb!!3#i+!!!!%'#!"3iB!!Y5!!!!@!!!!")!!1JL"S!2#J!!!9 "JJ!JL"S!2#J!!!4"JJ!81'!!18J!!!&J!!!!5!!$H)JD!$`S!!!%3))!G)JD!"- S!!!!3B)!&$KJ!#9)!!!"B!!!!%J!!e")!!!"B!!!!#`$!!"!JJ!XJ"m!!#J!!!" "JJ!`1'!!!$L!!!#"R`!!5!!!!@!!!!!X!`!!3B)!&$KJ!!4)!!!"B!!!!%J!!`L )'J!m+!!!"%'#rl#)'J!m+!!!"8'#!%L)'J!m+!!!!8##!#b!'J!q,!!!!%'#!## !HJ!q5!!!!@!!!!!i!!!!N!!D!$iiB2rr5!!#[$KJ!$P)!!!"B!!!!%J!!U`iHJ! !5!!!!6YM!!!i!!!SX!-!'NJ!!!&J!!!!I'!(08'#!!`ki!!!5!!!'+"l!$UJ'`! fIZ-!88#!!!Jki!!!L"S!%bJ!!!""JJ!S,"F!!%##!"3iB!!,5!!!!@!!!!")!!* )I"I`!%#!!!Jle`!!1[i!!$KK!$JiJ!!!1+!!)%J!!!&J!!!!1k%!1$Z!!!")!!' FJ"S!2L`!!!""JJ!JJ(S!2NJ!!!&J!!!!1!!!!*!!'J!q1'$rrdJ!!I!mB!!"1'2 rrh`H'!"!J!!-1ci!!%J!!)3r)!!"1cRrrdJ!!(KrJ`Fd1!-!!A`F&R"rR!'89j` 31RqF!""rJ!Fe3B)!$$Zp!!K)!!!)1k%!1%J!!!&J!!!!,!-!!%##!#b!(`!!+!! !!%'#!$!iB!!&1*i!!)'I!!")!!!"B!!!!#`$!!""JJ!81'!!"%J!!!&J!!!!5!! "@+!G!!!S!!!!3),rK,-p!!#6(3!#1(S!!%J!!!%lB`!!NX-!$$J!!#+`!`!D1!$ r`*J$!#)i!!!mQ!-!)$J!!!'B!`!K2+!!!9I%$riiTIrrI+2qF(`H+""m!b%8Q"X !)eDJ"rkB'`!NNlX!*MJ!!!#3!"X!+MJ!!!#`'`!Z1(X!!%J!!!&J!!!!5!!!!@! !!!!X!`!!3))!,)!I!!!S!!!!3B)!-$KJ!!8iRJ!!JCm!!%J!!!&J!!!!,!-!!%' #!"3iB!!%5!!!!@!!!!")!!#)IpR`8(mBbK3X(J!!3B(qC%J!!!&J!!!!,!-!!%# #!#b!(`!!+!!!!%'#!$!iB!!&1)!!!)'I!!")!!!"B!!!!#`$!!""JJ!81'!!"%J !!!&J!!!!5!!!-+JE!"!X!!!"3B,rX+JE!"!X!!!!3))!$$Kh!!")!!!3U(X!%%J !!!&J!!!!J!%!Q$JK!*!!I!J$TVUKrp41J!!J4A3$!*!%b3!!!#4&G!-!N!6d!!! !+%9e!*!&dJ!!!$a&G3#3"G)!!!"B4A8!N!A5!!!!J%9e!*!&dJ!!!+K&G3#3"IB !!!#d4A8!N!Ah!!!!h%9e!*!&dJ!!!2"&G3#3"!%2!!!"-%9e!*!&dJ!!!8a&G3# 3"H%!!!&F4A8!N!A6!!!"E%9e!*!&dJ!!!E"&G3#3"G3!!!(B4A8!N!A5!!!"r%9 e!*!&pJ!!!Q4&G3#3"IF!!!+-4A8!N!A5!!!#S%9e!*!&i3!!!X4&G3#3"IJ!!!- X4A8!N!Af!!!$0%9e!*!&p`!!!ea&G3#3"G)!!!0`4A8!N!Af!!!$M%9e!*!&p`! !!l4&G3#3"G)!!!2)4A8!N!3"$`!!!rK&EJ`%!!!"-3!!!!b!!*!,J!!%&&J!!!" &G`#3"!%Q!*!%4@X!"!!!!6)!!!$F!!!-U!!!B3Pm#!+QNq(rr*2"rrL6SIrdNi( rm*!!!3!)P#(rX$ZM!!"mRL0j1i8!!$[J!!""JJ"XL"d!2#J!!!G"J3"JJ')!!&3 !%$TmB`!ZI'N$TNk!"#!i!!!"Q"i!!$[r!!&)!!!m1(d!!)'G!!+"M!"N5!!!!@! !!!!S!`!!3B)!)$J!!!'B(J!!1rm!!8J!!"!i!!!"Q"i!!$[r!!%S(!!!3B)!()J G!$`X!!!%3B)!%$J!!!'B(!!!1rm!!6Kr!!#!!3"B1#%!8(`)!kD$iIrmJm(rq)1 Krr5$JIr`6S!!)%9d!`!!!!%c!!!!2%9e!*!&p`!!!'a&EJ8%!!!"-`!!!##!!*! +Q!!!!)`!!!#B!!!!8!!!!*J!!!"J!!!!M!!!!&"&GJ#3"!%b!*!%4AB!N!3"-J! !!!4&GJ#3"!%b!!!!#%9f!*!%!6)!!!!-4AB!N!3"-J!!!""&GJ#3"!%b!!!!&%9 f!*!%!6)!!!!B4AB!N!3"-J!!!"a&EJ`%!!!"0`!!!!b!!*!,J!!!h#!!!!"&G`# 3"!%b!*!%4@i&!3!!!6J!!!!+rrrraJ!!B3P83e"6Ef0VCA3!"2*&EJ8"!!!"13! !!!Irrrr&!!"K#90[BfYPG!$(4@i&"!!!!6S!!!!)rrrra!!!B3N!N!K&GJ8!!!! "13#3"%9Z"3%!!!%l!!!!#rrrrm-!!'%*58j&9&0[BfYPG!!i4@i&"!!!!6`!!!! -rrrr`J!!B3N!N!a&GJ8!!!!"1J#3"%9Z"33!!!%p!!!!#2rrrm%!!'%*!*!)4AB &!!!!!6X!N!4&GJ8!!!!"2!!!!!4&EJ8%!!!"2J!!!"6rrrr!!!"K#3#3&%9f"3! !!!%p!!!!#%9f"3!!!!%k!*!%4@i&"!!!!6m!!!!)rrrr[`!!B3N!N!K&GJ8!!!! "1!#3"%9f"3!!!!%q!!!!"%9["33!!!$0!!!!D2rrrli!!'%*!*"S4AB&!!!!!6m !N!4&GJS!!!!"3!!!!&a&GJS!!!!"33!!!&4&GJS!!!!"3J!!!%a&GJS!!!!"3`! !!%K&GJS!!!!"4!!!!%4&GJS!!!!"43!!!%"&GJS!!!!"4J!!!$4&GJS!!!!"4`! !!$"&GJS!!!!"5!!!!"a&GJS!!!!"53!!!"K&GJS!!!!"5J!!!&"&GJS!!!!"5`! !!$a&GJS!!!!"6!!!!$K&GJS!!!!"63!!!#a&GJS!!!!"6J!!!#K&GJS!!!!"6`! !!!K&GJS!!!!"8!!!!&K&GJS!!!!"83!!!#4&GJS!!!!"8J!!!#"&GJS!!!!"8`! !!"4&GJS!!!!"9!!!!""&GJS!!!!"93!!!!a&GJS!!!!"9J!!!'4&GJS!!!!"9`! !!'"&E`S%!!!"8!!!!!L!!*!24AB!N!3"-J#3"%9f$`!!!!&B!!!!"%9[#J3!!!& 4!!!!#)!!N!p&GJ#3"!%Q!*!%4AB2!!!!!9J!!!!%4@m+"!!!!9)!!!!)J!#3$d9 f!*!%!5%!N!4&GJm!!!!"@!!!!!4&E`S%!!!"8`!!!!L!!*!24AB!N!3"'3#3"%9 f$`!!!!&B!!!!"%9[#J3!!!&8!!!!#)!!N!p&GJ#3"!%@!*!%4AB2!!!!!9J!!!! %4@m+"!!!!98!!!!)J!#3$d9f!*!%!3d!N!4&GJm!!!!"@!!!!!4&E`S%!!!"9J! !!!L!!*!24AB!N!3"#`#3"%9f$`!!!!&B!!!!"%9[#J3!!!&C!!!!#)!!N!p&GJ# 3"H%!N!4&GJm!!!!"@!!!!!4&E`U%!!!""3!!!!L!!*!24AB!N!3""`#3"%9f$`! !!!&B!!!!"%9[#J3!!!&A!!!!#)!!N!p&GJ#3"I-!N!4&GJm!!!!"@!!!!!4&E`S %!!!"@J!!!!L!!*!24AB!N!A`!*!%4AB2!!!!!9J!!!!%4@m+"!!!!9X!!!!)J!# 3$d9f!*!&f3#3"%9f$`!!!!&B!!!!"%9[#J3!!!&F!!!!#)!!N!p&GJ#3"FX!N!4 &GJm!!!!"@!!!!!4&E`S%!!!!bJ!!!!L!!*!24AB!N!A(!*!%4AB2!!!!!9J!!!! %4@m+"!!!!-B!!!!)J!#3$d9f!*!&`J#3"%9f$`!!!!&B!!!!"%9[#J3!!!$"!!! !#)!!N!p&GJ#3"Ei!N!4&GJm!!!!"@!!!!!4&E`S%!!!![3!!!!L!!*!24AB!N!8 e!*!%4AB2!!!!!9J!!!!%4@m+"!!!!$3!!!!)J!#3$d9f!*!&!3#3"%9f$`!!!!& B!!!!"%9Z!`3!!!%c!!!!")!!N!Y&GJ8!!!!"-`#3"%9[!`3!!!$*!!!!")!!N!Y &GJ8!N!6*!*!%4@m$"!!!!-8!!!!%J!#3#d9f"3#3"-8!N!4&E`-%!!!!`!!!!!5 !!*!,4AB&!*!%`!#3"%9[!`3!!!#m!!!!")!!N!Y&GJ8!N!5m!*!%4@m$"!!!!23 !!!!%J!#3#d9f"3#3"23!N!4&E`-%!!!!p3!!!!5!!*!,4AB&!*!%p3#3"%9[!`3 !!!!N!!!!")!!N!Y&GJ8!N!3N!*!%4@m$"!!!!-m!!!!%J!#3#d9f"3#3"-m!N!4 &E`-%!!!!c3!!!!5!!*!,4AB&!*!%c3#3"%9[$`3!!!&B!*!%J!#3"d9S!!"6@8e )!!!00!!!!%)!!!!'!*!B"X8!!!"3!!!(1!!!!&`!!!GH!!!!C!!!"hX!!!"m!!! (cJ!!!)J!!!Ip!!!!P!!!#%!!!!#J!!!)CJ!!!+J!!!L$!!!!Y!!!#,!!!!$-!!! *"!!!!0J!!!Ne!!!!j!!!#Ai!!!$`!!!*T!!!!2J!!!R-!!!"+!!!#G[rN!3!!!R E!!-!!!!%!!!!#J%$!!!!AJ!!!!8!!!"Q!3-!!!"J!!!!"[q3"!#3"4m!N!J+T3! !!$3!!!XI!!!!C!!!$'S!!!"`!!!-NJ!!!(J!!!b`!!!!U!!!$,rrN!3!!!br!!- !!!!frrrrm`%!N!3G!!!!1Irrrp%!N!8H!!!!"[q3"!#3"4m!N!J0TJ!!!&J!!!i F!!!!K!!!$im!!!#8!!!2l!!!!+!!!"!6!!!!V!!!%$F!!!#d!!!36`!!!13!!"" Hrj!%!!!3AJ!$!!!!0[rrrr-"!*!%(3!!!$Rrrrr4!*!&(J!!!!ErN!3!N!8I!*! )%6m!!!!d!!!4[`!!!$`!!")(!!!!9!!!%N`!!!"J!!!5E`!!!'J!!"+%!!!!Q!! !%T2rN!3!!"+6!!3!!!!frrrrm`%!N!3F!!!!``!!!!-!N!8I!!!!1Irrrp%!N!8 G!!!!"[q3"!#3"4i!N!J6E!!!!*3!!"2M!!!!V!!!&,S!!!$!!!!9D3!!!0!!!"A !!!!!k!!!&J8!!!$d!!!@+!!!!2`!!"Bp!!!",!!!&NcrN!3!!"C-!!-!!!!frrr rm`%!N!3G!!!!1Irrrp%!N!8H!!!!"[q3"!#3"4m!!3#3"KGL!!!!-!!!&k8!!!" )!!!Ad`!!!'!!!"JH!!!!N!!!!"NR!!!!T!!!'8d!!!$N!!!C[!!!!2J!!"Rj!!! "$!!!'MB!!!%J!!!DCJ!!!63!!"U+!!!"B!!!'a(rN!3!!"Y%!!)!!!$9rj!%!3# 3""m!!!!frrrrm!!$!!!!1!!"!*!''fm!!!")!!!F+!!!!'J!!"aP!!!!K!!!((m !!!#X!!!Fc`!!!0!!!"dj!!!!p!!!(B`!!!%B!!!Gi3!!!6`!!"i`!!!"B!!!(UF !!!&X!!!Hp!!!!AJ!!"m1!!!"K!!!(bN!!!'3!!!!(eF!!!'N!!!IK2q3"!!!)+3 !#3!!!0ArN!3"!*!%(`!!!"%!!!!#!3-!!!#-!!!!0[rrrp%!N!8H!!!!i[rrrp! !!`!!!$J!!!$Qrrrrp!!$!!!!3!!!!1F!!!!$!!-!!!"%!!!!k2rrrmm!!`!!!%J !!!$Xrrrrc`!$!!!!8!!!!1hrrrr2!!-!!!"B!!%!N!BJcJ!!!,J!!#*Erj!%!!! LM`!#!!!!eIq3"!%!N!3I!!!!"[q3"!%!N!3H!!%!N!BLUJ!!!$`!!#,E!!!!9!! !)``!!!"F!!!M53!!!+`!!#0-!!!!a!!!)iN!!!$m!!!NS!!!!33!!#6a!!!"B!! !*38!!!'J!!!PT`!!!E3!!#@b!!!"Z!!!*Em!!!(%!!!Q*3!!!G`!!#Ca!!!##!! !*h)!!!)3!!!Rb3!!!Q`!!#I5!!!#H!!!*r-!!!+-!!!S9!!!!U!!!#L2!!!#V!! !+,!!!!+i!!!Sc!!!!Y`!!#Ma!!!#i!!!+2X!!!,X!!!T3rq3"!!!+9!!"3!!!0A rN!3"!*!%'`!!!2`!!!!$!*!&(!!!!2hrrrr1!!-!!!!i!!!"!Irrrm`!!`!!!&J !!!!frrrrd3#3"4i!!3#3"LP`!!!!(!!!+A-!!!!X!!!TRIq3"!!!+K3!!J!!!0A rN!3"!*!%(J!!!$Errrrc!*!&(`!"!*!'+M8!!!!B!!!U5!!!!#J!!#Te!!!!1!! !+TS!!!"!!!!UV2q3"!!!+Y8!!J!!!0ArN!3"!`!!!&J!!!!frrrrd3#3"4m!!3# 3"LeA!!!!0!!!,Hd!!!"%!!!Z#J!!!&!!!#iY!!!!B!!!,RS!!!"X!!!ZS3!!!(J !!#kb!!!!L!!!,Yd!!!#B!!!Zq`!!!+3!!#mM!!!!Y!!!,d%!!!$!!!![B`!!!9J !!$)f!!!"E!!!-Q8!!!&i!!!bL!!!!B3!!$+N!!!"N!!!!$+h!!!"S!!!-bB!!!' `!!!c9`!!!J`!!$0E!!!#*!!!-hS!!!)i!!!cVJ!!!PJ!!$2$!!!#K!!!-qVrN!3 !!$2d!!F!!!$9rj!%!3#3""`!!!%3!!!!C!%$!!!!M!!!!4%!!!!$!3-!!!#3!!! !!3(rrrr-!!-!!!!i!!!!0[rrrp%!N!8H!!!"%[rrrmX!N!8E!!!"%`!!!!X!N!8 D!!%!N!Bd%J!!!#J!!$4E!!!!1!!!0(N!!!"%!!!dT!!!!&!!!$5r!!!!d!!!0iJ !!!$N!!!hYJ!!!2!!!$IF!!!!r!!!1!d!!!%-!!!iE3!!!@J!!$K`!!!"G!!!1)i !!!'-!!!iV`!!!D3!!$M9!!!"Y!!!118!!!(8!!!j4rq3"!!!19%!"!!!!0ArN!3 "!*!%(!!!!3(rrrr-!!-!!!!i!!!!0[rrrp%!N!8G!!!"%`!!!!X!N!8E!!%!N!B jL3!!!#`!!$RC!!!!1!!!1H`!!!"8!!!k,J!!!'3!!$TF!!!!L!!!1X3!!!#B!!! kmJ!!!+3!!$XD!!!!X!!!1bi!!!$!!!!l[J!!!4J!!$[Z!!!"-!!!2$F!!!&-!!! p0!!!!@`!!$f2!!!"N!!!!$hN!!!"S!!!2K3!!!(!!!!qM3!!!G!!!$kR!!!"i!! !2[B!!!(`!!!rQ3!!!I`!!$qm!!!#%!!!2rB!!!*!!!""!J!!!P!!!%%[!!!#N!! !!%'G!!!#S!!!3HF!!!+`!!"#-3!!!X!!!%*Y!!!#d!!!3Ti!!!,m!!"$)3!!!b3 !!%1$rj!%!!"%'`!&!!!!eIq3"!%!N!3I!!!"(!!!!'3"!`!!!'`!!!%GrrrrbJ% !N!3D!!!!0[rrrp%!N!8G!!!!"[q3"!#3"4`!!3#3"NNP!!!!,!!!59J!!!")!!" *G3!!!&3!!%QB!!!!C!!!5H8!!!"`!!"+$`!!!(`!!%SM!!!!M!!!5TX!!!$J!!" +`3!!!1`!!%VY!!!!q!!!5a)!!!%!!!",93!!!53!!%ZN!!!"3!!!6!8!!!&3!!" -*`!!!A3!!%a#!!!"I!!!6'-!!!'-!!"-K`!!!DJ!!%c*!!!"q!!!6J!!!!)!!!" 1cJ!!!P3!!%l5!!!#B!!!6[J!!!*S!!"2%!!!!X3!!%mj!!!#e!!!6jJ!!!,F!!" 3CIq3"!!!8)J!"`!!!0ArN!3"!*!%(J!!!5)!!!"N!3-!!!"X!!!")`!!!!-"!*! %(!!!!4`!!!"N!3#3""S!!!%GrrrrbJ%$!!!!I!!!!53!!!!#!*!&'`!!!$Errrr 4!*!&(3!"!*!'9KN!!!!i!!"@V!!!!%J!!&E-!!!!9!!!9ZX!!!"N!!"A#`!!!(` !!&G8!!!!M!!!9k!!!!#B!!"Ab3!!!+3!!&IG!!!!Y!!!@&-!!!%)!!"BH3!!!43 !!&M2!!!",!!!@3X!!!&)!!"CE!!!!9J!!&Q1!!!"E!!!@Ed!!!&m!!"CiJ!!!B3 !!&Rh!!!"P!!!@PF!!!'B!!"DC`!!!D3!!&Tk!!!"V!!!@SN!!!'m!!"DX!!!!F3 !!&V'!!!"b!!!@YF!!!(B!!"E&3!!!H`!!&[K!!!"q!!!@r3!!!)8!!"F0`!!!M3 !!&ad!!!#1!!!A*B!!!*B!!"G"3!!!Q!!!&dF!!!#C!!!A9B!!!+X!!"GDJ!!!VJ !!&f)!!!#a!!!AGX!!!-X!!"IqJ!!!c3!!'"!!!!$I!!!B%3!!!1%!!"JIJ!!!i` !!'#f!!!$i!!!B,S!!!2X!!"Jc`!!!r3!!'$Qrj!%!!"K"J!,!!!!eIq3"!%!N!3 D!!!")J!!!'3"!*!%'!!!!5F!!!!$!3#3""i!!!%S!!!!!`%!N!39!!!"+3!!!'3 "!`!!!,J!!!%Urrrrb3!$!!!!1!!!!$Errrr4!*!&'`!!!5d!!!!,!*!&(!!!!5l rrrr(!*!&(3!!!5m!!!!$!*!&'3!!!6!!!!!$!*!&&`!"!*!'B9%!!!!`!!"KH!! !!&!!!'(&!!!!B!!!BJi!!!"m!!"L*3!!!)`!!'+4!!!!Q!!!BX!!!!#J!!"Ld!! !!,J!!'-qrj!%!!"M6J!%!!!!eIq3"!%!N!3G!!!"0!!!!'J"!*!%(J!!!68!!!" S!3#3""`!!!%f!!!!!`#3"4m!![rrrr`!!!!,!!!!"J!#!!!!$!!!!!X!N!F0!!! !C!!!!!)!![rrrrS!!!!F!!!!"!!"!!!!(3!!!!)!N!8"rrrrq3!!!!J!!!!"!!! !"`!#rrrrq`!!!"F!!!!3!!8!!!!B!!!!"J#3"aN!!!!'!!!!!3!!!"S!!!!+!!! !!J!!!"[rrrrk!!!!"!!!!"lrrrrj!!!!#!!#rrrrr3!!!!N!!!"#!!d!!!!+rrr rr!#3"`i!!!"N!!!!"J!!!!m!!!!,!!!!#J!!!"!!!!!,!!!!$!!!!"%!!!!#!!! !$J!!!")!!!!'!!!!%J!!!"-!!!!'!!!!%`!!!"3!!!"Q!!!!&!!!!"8!!!!$!!! !'!!!!"Errrrl!!!!(!!!!"rrrrrl!!!!,!!!!#!!!!!'!!!!2!!!!#%!!!!$!!! !2J!!rrrrq!!#rrrrrJ!#rrrrrJ!!!!F!!!"'!!)!!!!)rrrrr3#3"b,rrrri!!! !3J!!rj!%!!(rrrrq!!$rrrrd!!%!!!"U!!,rrrre!!!!,J!!!"3!"`!!!#m!!!! #!*!(+3!!!!F!!!!%!!!!-!!!!!F!!!!&!!!!-3!!!!S!!!!'!!!!-[rrrr3!!!! )!!!!+J!!!!)!!!!-!!!!-`!!!!)!!!!3!!(rrrrf!!!!&!!!!"6rrrre!!,rrrr h!!!!*3!!!#!!#!!!!#B!!!!+!*!(*`!!!!F!!!!#!!!!+!!!!!B!!!!$!!!!+3! !!!)!!!!%!!!!+J!!!!B!!!!)!!!!+`!!!!B!!!!*!!!!,!!!!!S!!!!+!!!!,Ir rrrB!!!!-!!(rrrr[!!!!$!!!!!%!!!!(!!$rrrrZ!!(rrrrh!!,rrrrX!!!!4J! !!"!!"!!!!%F!!!"Q!*!(5!!!!!)!!!!%!!!!5Irrrqi!!!!)!!!!"3!!!'B!!!! -!!(rrrrU!!!!+!!!!!%!!!!(!!,rrrrV!!!!5`!!!%)!%!!!!%`!!!!(!*!(63! !!!F!!!!"!!!!6J!!!!F!!!!#!!!!6`!!!!F!!!!$!!!!8!!!!!)!!!!%!!!!83! !!!S!!!!)!!!!8J!!!!)!!!!+!!!!8`!!!!S!!!!1!!!!9!!!!!F!!!!3!!!!93! !!!F!!!!4!!!!9J!!!!B!!!!5!!!!9`!!!!F!!!!6!!!!@!!!!!F!!!!8!!!!@3! !!!F!!!!9!!!!@[rrrqS!!!!@!!!!"3!!!'B!!!!q!!,rrrrT!!!!A!!!!"3!#J! !!%`!!!!(!*!(63!!!!F!!!!"!!!!6J!!!!F!!!!#!!!!A3!!!!B!!!!$!!!!AJ! !!!B!!!!%!!!!A`!!!!F!!!!&!!!!B!!!!'B!!!!'!!!!B3!!!!)!!!!+!!!!BJ! !!!S!!!!1!!!!"3!!!'B!!!!3!!,rrrrS!!!!C!!!!"B!#J!!!%m!!!!(!*!(C3! !!!B!!!!"!!!!AJ!!!!B!!!!#!!!!A`!!!!F!!!!$!!!!4`!!!'B!!!!%!!!!5!! !!!S!!!!)!!!!CJ!!!'B!!!!+!!!!C`!!!!S!!!!1!!!!D!!!!!S!!!!3!!!!"3! !!'B!!!!5!!,rrrrR!!!!DJ!!!!J!"3!!!%`!!!!(!*!(63!!!!F!!!!"!!!!6J! !!!F!!!!#!!!!A`!!!!F!!!!$!!!!"3!!!'B!!!!%!!,rrrrQ!!!!E!!!!!3!!3! !!!8!!!"Q!*!&![rrrq%!!!#)!!!!"J!#!!!!L3!!!!S!N!H+!!!!!J!!!!)!!Ir rrq)!!!!U!!!!"[rrrq%!![rrrq-!!!"p!!!!9J!3!!!!IJ!!!!)!N!Gr!!!!!J! !!!3!!!#!!!!!!J!!!!J!!!#"!!!!!J!!!!`!!!##!!!!!J!!!"!!!!#$!!!!!J! !!"3!!!#%!!!!!J!!!"J!!!#&!!!!!J!!!"`!!!#'!!!!#J!!!#!!!!#(rrrriJ! !!#)!!!"k!!!!#J!!!%`!!!#,!!!!#J!!!%i!!!#-!!!!#J!!!&!!!!#0!!!!#J! !!&)!!!#1!!!!"`!!!&3!!!#2!!!!"`!!!&8!!2rrrq3!!Irrrq-!![rrrq8!!!" Y!!!!4J!C!!!!6!!!!!F!N!G0!!!!"`!!!!%!!!"Z!!!!!`!!!!)!!!"3!!!!!J! !!!B!!!"4!!!!#J!!!!S!!!"5!!!!!J!!!!`!!!"6!!!!#J!!!"!!!!"8!!!!"`! !!")!!!"9!!!!"`!!!"-!!!"[!!!!"`!!!"3!!!"I!!!!"`!!!"8!!!"`!!!!#J! !!"B!!!"a!!!!#J!!!"J!!!"b!!!!#J!!!"S!!!"c!!!!#J!!!"`!!!"d!!!!CJ! !!"i!!!"e!!!!!J!!!#)!!!"f!!!!!J!!!#B!!!"h!!!!!J!!!#S!!!"i!!!!!J! !!#i!!!"j!!!!!J!!!$)!!!"k!!!!!J!!!$B!!!"l!!!!!J!!!$S!!!"mrrrrj!! !!$i!!!!&!!!!CJ!!!%)!![rrrpi!!!#6!!!!'!!'!!!!P!!!!!)!N!H9!!!!!J! !!!3!!!#@!!!!!J!!!!J!!!#A!!!!!J!!!!`!!!#B!!!!!J!!!"!!!!#C!!!!!J! !!"3!!2rrrpm!!Irrrpi!![rrrp`!!!#E!!!!0!!0!!!!R!!!!!)!N!HG!!!!!J! !!!3!!!#H!!!!!J!!!!J!!!#I!!!!!J!!!!`!!!#J!!!!!J!!!"!!!!#K!!!!!J! !!"3!!!#L!!!!!J!!!"J!!!#M!!!!!J!!!"`!!!#N!!!!!J!!!#!!!!#P!!!!!J! !!#3!!!#Q!!!!!J!!!#J!!!#R!!!!!J!!!#`!!!#S!!!!!J!!!$!!!2rrrpd!!Ir rrp`!!2rrrpS!!3!!!!)!!IrrrpX!!!!%!!!!"2rrrpS!![rrrq!!!!#4!!!!%J! &!!!!N[rrrpm!N!HDrrrrh3!!!!3!!!#Trrrrf`!!!!J!!!!&!!!!CJ!!!!`!!!# U!!!!#J!!!"!!![rrrqd!!!"%!!!!4J!)!!!!4Irrrq`!N!G+rrrrk`#3"e[rrrr T!*!(BrrrrqJ!N!GTrrrrj`#3"f[rrrrQ!*!(%[rrrq8!N!H3!2rrrq!!N!8#rrr rm!!!!$S!!!"Q!!N!!!!lrrrrl`#3"ccrrrrZ!!!!$!!!!$d!!!!,!!!!%!!!!$i !!!"Q!!!!%J!!!$m!!!!,!!!!&J!!!%!!!!!,!!!!'!!!!%%!!!!,!!!!'J!!!%) !!!!#!!!!(!!!!%2rrrrY!!!!)!!"rrrrf!!!!!`!!!!"!!!!"`!#rrrreJ!!!+m !!!!8!!B!!!"(!!!!CJ#3"dJ!!!!#!!!!"!!!!%RrrrrZ!!!!#!!!!&-!!!!+!!! !$!!!!!8!!!"Q!!!!$J!!!,!!!!!+!!!!%J!#rrrre3!!!,%!!!!@!!N!!!#b!!! !#J#3"e!!!!!#!!!!!J!!!&%!!!!+!!!!"J!!!'!!!!"Q!!!!#!!!!,-!!!!'!!! !$!!!!&m!!!!(!!!!$3!!!')!!!!+!!!!$J!!!!8!!!"Q!!!!%!!!!&-!!!!+!!! !&!!#rrrre!!!!,3!!!!D!!N!!!#e!!!!#J#3"e!!!!!#!!!!!J!!!&%!!!!+!!! !"J!!!%F!!!"Q!!!!#!!!!%J!!!!+!!!!$!!!!'J!!!!+!!!!$J!!!!8!!!"Q!!! !%!!!!,B!!!!#!!!!&!!!!,F!!!!+!!!!'!!#rrrrd`!!!,N!!!!+!!-!!!#k!!! !#J#3"e!!!!!#!!!!!J!!!!8!!!"Q!!!!"J!#rrrre`!!!+i!!!!D!!3!!!"&rrr reJ#3"e[rrrr9!*!(Brrrrp3!N!Hirrrrd`#3"3,rrrrC!!!!V!!!!$S!#3!!!$[ rrrrB!*!(22rrrqi!!!!-!!!!23!!!!X!!!!3!!!!2J!!!'B!!!!5!!!!2`!!!!X !!!!@!!!!3!!!!!X!!!!B!!!!33!!!!X!!!!D!!!!V3!!!!)!!!!F!!!!3rrrrpF !!!!J!!,rrrra!!!!1!!!!'B!!J!!!$Rrrrr`!*!(UrrrrpN!N!Errrr5!!(rrrr p!!,rrrrb!!!!0`!!!'S!!J!!!$Errrra!*!("[rrrp)!!!"Q!!$rrrrc!!(rrrr b!!$rrrr4!!(rrrr`!!,rrrr3!!!!i`!!!!J!!J!!!13!!!!#!*!(j3!!!!)!!!! %!!,rrrr2!!!!k3!!!!J!!J!!!1S!!!!#!*!(k`!!!'F!!!!%!!,rrrr0!!!!rJ! !!!B!!J!!!2m!!!!+!*!'!3#3"'B!!!!#!!(rrrr1!!!!(J!!!!Errrr0!!,rrrr -!!!"!J!!!!3!!3!!!3-!!!!$!*!'rrrrb`!"rrrrq`!!rrrrbJ!"!!!!!`!#rrr rb!!!!5X!!!!)!!-!!!$r!!!!#J#3"J%!N!4Q!!!!!J!!!5`!!!!,!!!!"J!"rrr rb3!!!#!!!!!)rrrrb!!!rrrra`!"rrrrb!!"rrrraJ!!!!S!!!!"!!!!"`!"rrr ra3!!!!F!!!!"!!!!"`!#rrrra2q3"!!!!!J!!!!"rrrr``!!!!X!!!!"!!!!"`! #rrrr`[q3"!!!!!`!!!!#rrrr`Iq3"!!!!!J!!!!#rrrr`2q3"!!!!"3!!!!#rrr r[rq3"!!!!!J!!!!#rrrr[[q3"!!!!'J!!!1p,R4MF&pZEh4TCRN!"hJZGhK0B@0 6Ef0VCA4)B@jNE'9b8(*[B`!!*bj5C@&NH9pI-6*6Ef0VCA4%EfeKD@j'GJ!"hf9 fC@jd3fpNC3!$+R9cCA*%BA4K8(4b!!3ZFfpMD`!"[e4$8&0[BfYPG!!$Zb4*6N9 88fpMDf9d!!,-58j&9&0[BfYPG!!(pL46Ef0VCA3!"[P6Ef0VCA3!!"abC@C$Eh9 ZG!!(mepIGR"dFL3!!0phH(*PCQ0[EJ!(*AGiCACPER3!!qGhH'9fC@jdE@&cD`! 'FR0dFQ9KE3!'cR0dBA4eF`!$M@j[EQ*XEf0VD@jR!!IfFQ9MGN*eCJ!&QR*PBhC N!!,2Ff%!!q4cEf0VB@4NFPpTEJ!(!R0TEPpXC@i!!X"cD@jICQ&YD@aj!!"DFfP ZAh"[FR3!!!0cD@jIB@4NFJ!(E@PZAf&NC()!"RecAf&NC()!!,*cD@jIHQ9bE`! %l("PCA)!"V&cFh4KG'8!!-GKFhPZBf9bFJ!%3R0PE'B!"(a!1$)e!!40G9pdBh" IEQpdD@Cj!!'r8QpeG'PZC84PFf0bDA"dEh)!"bGREdeTH'9N6@pNC94bBA!!"d4 fCA*cD@pZ!!B)FQpeG'PZC84PFf0bDA"dEh*'E'&RF`!"9R*PFf9bGQ9N-3!"9h* PFf9bGQ9N-J!%Gh0PE'9MG'pb5@jQE`!%+R*[GA4TEQ9$Eh9ZG!!'m(*[GA4TEQ9 5C@0[FQ4c!!8I8QpeG'PZC9*PBfpbC!!![h"bEf0*EQC[!!23590"!!6lFQpeG'P ZC8CXB@Gc!!D%F(*[Bd4PFf0bDA"dEh)!!0GcC@aPBh4[FJ!#FA4MF&pZEh4TCRN !![NZG'0`Af0[EQjPBh4IC'pZC9pI4P!a-8&ZEQpdBA4PC&"#!!*`F')!!`*"EQj [G'&dC@433J!%Md"ME'&cFb3h16K(990*9%03Af0`!!1ZG'0`!!Gc9%03D@p`BJ! 'mQCTE'`a-J!%ffP[3fpYF'aPG'P[EJ!!IfP[8Q9cG@ad!!(@D@p1B@eP8(4b!!& XD@p@8Q9Q6R9Y!!%@D@p$8Q9Q6R9Y!!DUBh0$Ef4P!!(rG'0`8h4bC@&Y!!I)Bh0 3BA*KE3!%8N"ME'&cFb3h1$G(990*9%03Af0`!!DCBh*PBA4P!!1k9%033h*PBA4 P8%)!"p"bBhC#G@CQ!!+8FQ0f3R9QCNaPEJ!#h@j[G'PQH9"bEf-!"("[F'9Z!!% I9%036h"PEP"#!!H-G@a`9'PYC@peG&CKE(9P!!"rG@a`9'PYC@peG%&MG'P[EJ! &T(CKE'PNDA4j4QaKCh-!!`eMEfeYB@jN9'PYC@peG&CKE(9P!!,DFQ9YEh4P5'p cG!!#[R*PE@pdC9"[FR3!!FjXEf0KE%K[Fh3!!E*XEf0KE&"[FR3!!1"dEh0'E'& RF`!#Ih"bC@0PC'9ZBf8!!(0NEfjd4R*KC`!#2h4TE@98EdaTGQ8!!1PcC@0eFQP dH3!"p@p`G'P[EN0ZG!!(*'p`G'P[ER-!")&cC@jN!!&39%038f9ZC&"#!!#fF(9 cD%CXB@F!!MaeFQGPER4'E'&R!!DjCQPXE'9b!!EmGf4c8(4b!!!5Ff9ZC%CbC@8 !!TTcC@jN6'9ZCh4S!!F*FQ9MC@PfC3!%Fe4$8&*PBf9TGQ933J!!K@eKFQY'E'& R!!BQFQ4c8(4b!!'FFQ4c6'9ZCh4S!!IVFf9MEfjN9'PYC90dB@e`!!ApBfa[Ff8 !!Z083e"$E'pcC9"#!!A$B@*[FR3!!TY83e""BQpbG&"#!!0I9%038h4KG(9c8%) !"PTeER9cC@3!"iGMEfjZC@0dD@pZ8h4KG'8!!U0cC@jN9fPZC'ph!!%*FQ0f9fP ZC'ph!!DaB@ed9@jKBfYPC%4KG'%!"@KKEA49ER*PB@4%BA4K!!#qFf9MGA*TG(P -CACPE&"dFJ!$MR0PEQ49EQ&MDf9N!!"6Ff9ZC%jPH(3!!)CMEfjRCA0dD@pZ9fP ZC'ph!!F+FQ0f6Q9iG!!%KR0bG(3!"f0XBA0d8P48!!C)Ff9ZC%eKH&0PCe0THQ8 !!hPMEfjZ8h4KG&"dFJ!#e94$8%0[EQjPBh4TEfj6G'&dF`!%4@4KG'&3Dh4c8Q0 fC!!%h@4KG'&3Dh4c8f9ZG!!'h@4KG'&3Dh4c8Q9cC@jd!!(fBRPdCA05BhCN!!5 RBRPdCA05BhCN4(9`!!1&BRPdCA05BhCN8'&cG>EQ4[G`!"LQ*jG'9c8f9ZG!! $S'*jG'9c8Q9cC@jd!!HFER9Y5'PcG'p#G@0VCA4c!!88Ff9ZG&0THQ9)DA0dE`! $[%KTFh4[3R9MDf9d!!9BGQ&XG@8!"a*MEh9ZG'9b!!I`G'eb8e*89!!$2(*dG&C KFQPKEQ0P!!BEG'eb8P42!!('Ff9ZC&4bD@9c!!$@FfpeFQ0S8A9PEQ0S8Q0fC!! #rfGXEf*KE%PZCQm!"k983e"(E'pLB@a*EQC[8%)!!a*dBh"3BA*KE9"dFJ!!*P4 $8&"KFQ&Y!!H3!(4MF&*dEd%!!3edBh"5G'p0D@i!!4CdBh"5G'p0BAJ!"ITdBh" 0BAK6C@G6DATP!!*GG'0`6@&i3fpZEJ!%DA4MF%eKH>EQ4[G`!$ih4MF&0dBA4 c8(4b!!#)9%038h4KG(-!"f4dBh"$EfjZ3A4dC@e`G(-!"G0dBh"$EfjZ6h"PEQ9 N!!GTG'0`3fpZEN&MBf9`G'9N!!8JG'0`3fpZEN0XEh0PC!!'2h4MF%0[EQj"BQp bG'9N!!1fG'0`6f0dCA4c5@i!"%0dBh"2Bh4PG(02GA3!"SGdBh"2Bh4PG(0*EN4 eF!!!-h4MF%pMG'9dFe*PG(*KER-!"(edBh"*ER"eG&"VG(-!"5"dBh"2GA4`GA4 3Dh4c!!)2G'0`4(9`8'YdF`!'pR4MF&*PG(*KER03Dh4c!!1QG'0`3d4#9'&LE'8 !!A4YBAK83e"$EfjZC@0dD@pZF`!$XR9NF!!(-&9%8'P[F')!!IjeC("6G(*PB@d !"#K!BfaKFh-N0cN`4e96594$8&pMF!!$cP9%8%0bC@&dC9"#!!*3C@jND@jR8'p bG!!"@99%8&0PEQ433J!!+A*PFf9bGQ9N!!"!BfKPBfY6G@d!"&a94&"5C@0PDAC P8%)!"mPdD@eP6h9d!!"UC'9cG%K[Fh3!!%jNCA0d8'pbG!!$Q@edG3!!qP9%8%e 899"#!!HCEA4e8fPkC3!%QN!i-c-!!VPeAh4MF&pMEfjZC@0dAf4[EQ8!!I"dBh" IBfpZEQ9MG&pNEfjPAep'8$%a3@jZEh4KG'9N8%)!!C!!,R4MF&pXDA0dC@jIC'p ZC9pI4P!a-8&ZEQpdBA4PC&"#!!5r3$Jd1!!"i(9IG'0`AfaTFh4PEPpNEfjP!!! MG'0`AfaTFh4PEPpNEfjPAep'8$%a3@jZEh4KG'9N8%)!"d%ZG'0`Ah*PBhCIC'p ZC9pI4P!a-8&ZEQpdBA4PC&"#!!EdFQ9KC'PZ!!6I3$Je1!!('h9IG'0`Ah*PBhC IC'pZC3!'!R4MF&pbC@0fAf4[EQ9IAdC3-6&"EQj[G'&dC@433J!(45jdBh"IFf9 ZC&pNEfjPAep'8$%a3@jZEh4KG'9N8%)!""j!1$Fh!!FlG9pdBh"IFf9ZC&pNEfj P!!DmG'0`Ah0PEQ4IC'pZC9pI4P!a-8&ZEQpdBA4PC&"#!!0b,PpIBh4IAcP83e" 6Ef0VCA4'GJ!&d5jIAf0dAema-%P14946Ef0VCA4'GJ!!dPpIGR4IAcP83e"6Ef0 VCA3!!RXZAepZGepI4P9X!!--58j&9&0[BfYPG(-!"8iZ4(*TGQ9bAema0NP1494 6Ef0VCA4%EfeKD@j'GJ!(e5j1CAG3G()!!kdZ4e9659pPFR*[FJ!'Abj33N0[ER4 bEfa6H@jM!!Fr,QePEA0PG!!%@h4SDA-!"$p!1$Jh!!3#AepNG&pI-6"*6N988fp MDf9d4RB!"%"!1$Ji!!5@,PpIBh4IAcP83e"6Ef0VCA4'9@`!"S)ZAepMG&pI-6" *6N988fpMDf9d4P9X!!)a,NGPG%0eFR*PER43FQpMCA0c!!81,N&&3h*PBA4P4'9 cB`!$cLj"480bC@&dC8&`F'aP4ACPER3!"RXZ3893GA43BA*KE9"dFJ!(`5j"490 PEQ3!"MJZ389%DA0`Eh0P4'9cB`!%Dbj(CA433PpI194$8&0[BfYPG%Cf!!2j8&0 1!!1l8(*[Bf9cFe0PFQPKE%jeE@*PFJ!&M'KTCfK-EfjR6fC38di!"(PXEhG-Efj R6fC38di!"hGdD'93FQpM!!HcG'KP9(P`C3!#UA4SC8&NC(*PFh-!"Pp"484PFf- !"MKNCA0MFQP`G'pb9(P`C3!#3@4KG'&)B@jNE'8!"eGYH9*PF'aj!!"XG'KP4AC PER3!"&K!1$N`!!4C3$Jj-3!&9bjIAf0dAemj9%038fpMDf9d4P!j9%038fpMDf9 d!!4E3$Jj-`!%A%!i163!!kJZAepNG&pI194$8&0[BfYPG%Cf!!"a4e96590`D@i !"I&PFR*ZE`!$@Lj(990*3fKPBfY"E'&bE9pI4RB!!j3ZAep`G(*ICfaeC3!(f#j 33N0[ER4bEfa"FhPZB`!$##j%DA0`Eh0P8(4b!!*2,PpIC'aIAdC3GJ!&"#jIAf4 dAema-%P14946Ef0VCA4'GJ!"e("KFh0MEh9ZG!!!6A*NFf&bFQ&j!!!cFQ4c4@j dFRN!"[CXC@jRG'J!!m*`G()!!CKcBACP4A*bEQm!!XC&FR*ZEe0KGQ9b!!0TCP0 KGQ9N4A*bEQm!"2a!16Ba!!6`AepNG&pI-6"&FR*ZEe0KGQ9b4RB!"2e!16Bb!!@ (,PpIC(4IAc%`4A*bEQp6BACPFNCf!!3"3$Nf0J!%$Lj(CA433PpI-6C*6N988fp MDf9d4'pYB@PZ4RB!"!4!16Bj!!"C,N&fB@PXB@*XC9pI194$8&0[BfYPG%Cf!!3 I3$Nh0!!!R5jMEfjZC@0dAemj9%038fpMDf9d4P"fD3!#@#jRCA4SEh0dD@3!"X3 Z9%03Af9bFQpbAep'D3!(Gf&NC(*PFh-!"qaKC'4bE'9Z!!4!B@4NFJ!$0@9bFJ! &R%!a-$%j!!@c3$%`-M!!"6mZE'PcG'9ZAemj9%038fpMDf9d4QN!"44!-6!e-3! &&8!a-$8b!!!-,Q&MBf9`G&pI194$8&0[BfYPG%C3GP"T!!GF,NG98dPICA*bEh* IEQPX!!GP,QePE@0`H3!%-fCbEfd!"f9QFQpYE'9Z!!@@3$%`16)!!9aIAf4XAep '8(B!"CG!-6!j-`!'05jbC@0fCR*[E9pI194$8&0[BfYPG%C3GQPT8(C3D3!'!f* eCQCPFJ!'pf*eCQaPEJ!"6Q4KG'&KGQ&TE!!&'8!a-63b!!2-,R0PEQ4dEepI194 $8&0[BfYPG%C3GQPT8(CT!!8&BfpeER3!"3&QE'&RF`!#rA4[!!!PGf4cBA*bBAN !"j&YD@jTGf4c!!")G'9bE@PZGA-!"T!!Gf4cER9Y!!H,G'KTFhGNF`!(YA4[Gh* TG'8!"G"LHA4PF`!&fd!a-M)`!!9N,R0PE'9MG&pI194$8&0[BfYPG%C39@039@0 39@-!"3*!-6)c0`!(2'0KEP*PB@3!!'CMB@jAFQPdC3!(S@G[Ef4TCA-!"30!-6) c1!!&"%!a-M-j!!8F3$%b0$%!"rpIAe*89%PIAcC6Ef0VCA3!"4e!-6)d-J!&(N! a-M3c!!3'Aep59&4*Aema-%P14946Ef0VCA3!"4Y!-6)d-!!#APpI8P4859pI194 $8&0[BfYPG!!$Gh"[Fh4IFf9XC@0dAemf8fpMDf9d4P9M9@09B`!#E("bC9pcC@a PBh4IAcC6Ef0VCA4'9@09Be9M!!&#DA0KG(4jAemf8fpMDf9d4RB!"(eQG(*eEQ0 KG'9IAcC6Ef0VCA4'E!!"B'acC@9VAemf8fpMDf9d4QaT!!8[CR0dBA4IAcC6Ef0 VCA4'8$4cG'&d!!&,Ff9dFfpMDfp`G&pI0P0[BfYPG%CTD9"fD3!#b'GPG(0[BfY [F(4IAcC6Ef0VCA4'D@P3GP"T!!)pGh*TG'9IAcC6Ef0VCA4'8(CT!!'QFQ9KC&p I0P0[BfYPG%C3GQN!!)9cD(9dC'phEPpI-6"*6N988fpMDf9d4QN!!1TTEf0dE&p I-6"*6N988fpMDf9d4P9T8(B!"e&QBfjdE&pI-6"*6N988fpMDf9d4P9TD3!'9@G PG("PCA*ZB@ePAema-%P14946Ef0VCA4'8(C3D3!'E'GPG(0[BfYZB@ePAema-%P 14946Ef0VCA4'8(C3D3!'B@*TEQ4IAc%`58j&9&0[BfYPG%C3GQN!"#acC@aPBh4 IAcP83e"6Ef0VCA4'8&9M8&9M8&9M!!*BFf9ZC(4[Aemj9%038fpMDf9d4P"fD@P 3GQN!"8PbC@0fCR*[E9pI194$8&0[BfYPG%C3GQPT8(C3D3!(rQ&MBf9`G&pI194 $8&0[BfYPG%C3GP"T!!6iE'PcG'9ZAemj9%038fpMDf9d4QN!"`TMEfjZC@0dAem j9%038fpMDf9d4P"fD3!(Kd&fB@PXB@*XC9pI194$8&0[BfYPG%Cf!!+$AepNG&p I194$8&0[BfYPG%Cf!!0q9%p$!!1X4f9d8%*IAcP83e"6Ef0VCA4'GJ!%ZepIBh4 IAcP83e"6Ef0VCA4'8$P83e"6Ef0VCA3!!lPIAf0dAemj9%038fpMDf9d4P9X!!+ ,AepMG&pI194$8&0[BfYPG%Cf!!"36eG5!*!''H3!!#kf!!!"+J!!'P!!!"4Q!!! ,*!#3"J*'!!!!&!#33%9R!!"&D`!%!!!!!3!!!-J!!!!J!!!%i(`)!UD6iIrmNm( rq*1Krr53!!%!#*3Krl!lS`!!Jq-!CM[G!!#S(3!3,!!!!%##!"L!(J!SN!!I!"5 J(J!XN!!I!"K)!!!81!!!!*!!(`!81!!!!*!!(`!BU"i!%*!!(`!q1!!!%*JI!#` i!!!#Q"m!,B!H!#+3!"m!-+!H!#D`(`!ZJ"m!"LJ!!!""JJ!JU"m!#L`!!!""JJ! 8J(m!"ULI!!T)!!!"B!!!!%J!!!&J!!!!J!%!@$JK!&"m#!1QJq(rr)2"rrL$SIr d6S!!)%9e!*!&!J!!!*a&G3#3"3-!!!#N4@i-"!!!!,8!!!!-J!#3#i!!!-JB!!! !4AF!N!8"!*!%4@m&"!!!!,B!!!!Jrrrrq3!!"bLUrJF!N!c"!!%!"!#3$%9f#J# 3",F!!!!84@S!"!!!!,J!!!#%!!!!KJ!!"q"m#!+QNq(rr*2"rrL6SIrdN!!"!!L 8)Iq`1k-!!)2M!'DS(3!3J(d!+,!$!!Bi!!!!J(d!+*!!!`!#J"m!"LJ!!!""JJ! JU"m!#L`!!!""JJ!8J(m!"ULI!!T)!!!"B!!!!%J!!!&J!!!!J!%!@$JK!&"m#!1 QJq(rr)2"rrL$SIrd6S!!)%9e!*!&!J!!!&K&G3#3"3-!!!"J4@i-"!!!!,N!!!! -J!#3#i!!!)3B!!!!4AF!N!@i!*!%4@m&"!!!!,S!!!!Jrrrrq3!!#2UUrJF!N!c "!!%!"!#3$%9f#J#3",X!!!!84@X!"!!!!,`!!!"%!!!!e!!!#H*m#!+QNq(rr*! !!3!)P#(r`$[M!!")!!!"B!!!!)!#!!#3!"m!!MJ!!!#B(`!m1(m!!)!"!%Ji)3" !I!J$TS2Krra1J!!J4A8!N!@p!!!!&%9d!`#3",i!!!!F4@i-"!!!!-!!!!!-J!# 3#i!!!%3)!!!!4AF!N!@m!*!%4@X!"!!!!-%!!!$m!!!!pJ!!#Ljm#!+QNq(rr*2 "rrL6SIrdN!!"!!L8)Iq`1q-!!*!!J3"XJ)%!E%J!!!&J!!!!J!)!!*!!(`!#1(m !!%J!!!&J!!!!1m-!!)!#!!#3!!-!$$J!!"@`!`!D1!!!!,!$!#!i!!!!X!-!,NJ !!!&J!!!!1k-!!(qJ"c9"JJ!3Ik-(0%J!!!&J!!!!U"i!%#`!!!"!JJ!BJ"i!+*! !(`!8S"i!,*!!(`!B5!!!&$J!!!#3!"m!&$J!!!#3!"m!'+JH!"#3!"m!2MJ!!"# B(`!X1!!!!TJI!#f!(J!LN!!I!$#J(J!QX"m!,MKr!!#!!3"B1#%!8(`)!kD$iIr mJm(rq)1Krr41J!!J4A8!N!A#!!!!*%9d!`#3",i!!!!X4A8!N!A$!!!!1%9d!`# 3",B!!!"%4A8!N!A%!!!!C%9e!*!&a3!!!(a&EJd#!!!!a`!!!"D!!*!('!!!2!# !!!S!!)D!!"m!N!T&GJS-!!!!b!!!!"*&EJ`%!!!!b3!!!!b!!*!1r!#3"%9h!*! &`3#3"%9h$3#3"-F!!!!)4@X!"!!!!-S!!!#X!!!"HJ!!$A9m#!+QNq(rr*2"rrL 3!!%!#*3Krm"mIaYjX)%!AN'#!(5!!J!!N!!I!!+)(`!m+!!!!%'#!$JiI`!!5!! !!@!!!!!l``!!1!!!',!$!"T)!!!"B!!!!(aJ"c9!JJ!3J(i!)%J!!!&J!!!!1(m !!$L!!!")!!!"B!!!!+J"!&iX!!!!3)%!%$Kr!!")!!!"B!!!!$Kr!!#!!3")1#% !3(`)!kD$iIrmJm(rq%k!!#"&G!-!N!5q!!!!)%9e!*!&``!!!$K&G3#3"F3!!!" -4A8!N!A,!!!!B%9e!*!&c!!!!("&G3#3"Fd!!!#)4@i-"!!!!-i!!!!-J!#3#i! !!+`3!!!!4AF!N!A+!*!%4@X!"!!!!--!!!"J!!!"`J!!$P9m#!+QNq(rr*2"rrL 3!!%!#*3Krm!l``!!J')!!%J!!!&J!!!!1q-!!)"L!!")!!!"B!!!!,"r!"L!(J! 1N!!I!"b6h`"Q1(m!!)!"!%Ji)3"!I!J$TS2Krrb$`Iri6S!!)%9d!`#3"-m!!!! B4A8!N!A3!!!!(%9d!`#3"-m!!!!S4A8!N!A4!!!!,%9Z$!3!!!$5!!!!$)!!N!Z !!!"J%!!!!%9h!*!&``#3"%9V!!3!!!$6!!!!(!!!!J)!!!mEJ!-!2L`!!!&!JJ! -1'!!!%k!!##!B`!B6S!!)%9V!!3!!!$8!!!!e!!!!L3!!!pcI!J#TT2Krrb6`Ir iNk(rp*!!!3!)P#(rX$[$!!")!!!"1q-!!$J!!"5`!`!D1'"!!%J!!!&J!!!!N!" r!#!i!%!!N!!I!#3i!!!!N!!I!#LJ(J!HX"m!,$Kr!!")!!!"B!!!!$ZM!!"rS!F e3B)!&(qM"c4)!!!"B!!!!%J!!%#!(`!FN!!H!!kJ(`!XX"i!(MJ!!!'B(J!m1!! !!*!!(J!B1!!!!*!!(J!81!!!!C!!(J!q1(i!!%J!!!&J!!!!J!%!@$JK!&"m#!1 QJq(rr)2"rrL$SIrd6S!!)%9e!*!&``!!!"a&G3#3"G8!!!!`4A8!N!A%!!!!@%9 e!*!&a3!!!("&G3#3"GB!!!#`4@i-"!!!!0F!!!!-J!#3#i!!!03B!!!!4AF!N!A 8!*!%4@X!"!!!!0J!!!#-!!!#NJ!!%E9m#!+QNq(rr*2"rrL6SIrdN!!"!!L8)Iq `1m-!!%J!!!%i!!!!N!!$!!`i!!!@X!-!'S!H!"53!!-!+$J!!!#3!"i!&$J!!!# 3!"i!'%J!!!&J!!!!1k-!!(qJ"c9"JJ!8Ik-(0%J!!!&J!!!!5!!!#$KJ!!#!!3" B1#%!8(`)!kD$iIrmJm(rq)1Krr41J!!J4A8!N!A$!!!!(%9e!*!&f3!!!%K&G3# 3"F8!!!"J4@i-"!!!!0S!!!!-J!#3#i!!!)`B!!!!4AF!N!AB!*!%4@X!"!!!!0B !!!#3!!!!![!!!"-pI!J#TT2Krrb6`IriNk(rp*!!!3!)P#(rX$[$!!")!!!"J!) !!*!!!`!-1!!!&E!$!"Si!!!!X!-!)$J!!!#`!`!Z1!!!!C!!(J!q5!!!!@!!!!! lS`!!Ik!(08'#!"KrS`FdN!"q!$j)!!!"B!!!!%J!!!JiB!!!J!%!@$JK!&"m#!1 QJq(rr)2"rrL$SIrd6S!!)%9e!*!&``!!!"a&G!-!N!5f!!!!)%9e!*!&f3!!!%K &G3#3"F8!!!"N4@i-"!!!!0X!!!!-J!#3#i!!!*!!'!!!!%9h!*!&eJ#3"%9V!!3 !!!$F!!!!C!!!!di!!"@JI!J#TT2Krrb3!!%!#*3Krm!li`!!N!#"!&b3!+%!B)# "!&b!S3"J5!!!!@!!!!!X!`!!3))!&$Kr!!")!!!",!-!!%'#!!`iB2rr5!!!#$K J!!#!!3")1#%!3(`)!kD$iIrm6S!!)%9e!*!&h3!!!#4&G3#3"G3!!!!i4@i-"!! !!1!!!!!-J!#3#i!!!'3)!!!!4AF!N!AF!*!%4@X!"!!!!1%!!!"S!!!$T!!!&h& m#!+QNq(rr*!!!3!)P#(r`$[M!!#3!)%!A*!!S3"JL!-!2#J!!!"!JJ!F1(m!!%J !!!%X!`!!3B)!$$KJrrp)!!!B1(m!!)#"!&b!S3"J5!!!!@!!!!#!!3")1#%!3(` )!kD$iIrm6S!!)%9e!*!&e!!!!#a&G3#3"H)!!!"-4@i-"!!!!13!!!!-J!#3#i! !!'J)!!!!4AF!N!AK!*!%4@X!"!!!!18!!!$S!!!$qJ!!'aam#!+QNq(rr*2"rrL 3!!%!#*3Krm!li`!!N!#"!&b3!+%!B)2"!&b!!3"J,!!!%%'#!"3iB!!@5!!!!@! !!!")!!#8L"i!!5J!!!*"JJ!81'!!,dJ!!!&J!!!!5!!!H)JI!$`S!!!!3))!($K r!!")!!!",!-!!%'#!$!iB2rr5!!!9)!I!"3S!!!!3B)!($Kr!!")!!!",!-!!%' #!!`iB2rr5!!!-$J!!"#B(`!XJ"i!"*!!(`!`S"i!!V!I!#ii!!!#Q"m!,6J!!!@ B(`!m1'!!!)!"!%Ji)3"!I!J$TS2Krrb$`Iri6S!!)%9e!*!&jJ!!!$4&G3#3"HB !!!"34A8!N!A8!!!!E%9e!*!&f!!!!*!!4@i-"!!!!1N!!!!-J!#3#i!!!1J3!!! !4AF!N!AP!*!%4@X!"!!!!1S!!!&`!!!%PJ!!)ICm#!+Q[f(rl*!!!3!)P#(rX$[ M!!#3!)%!E$ZP!!!lC`!!1iJ!!)2#!!#)!`!m+!!!!%##!"`iI`!!5!!!!5`$!!" "JJ!-1'$rrdJ!!45)(`!6+!!!!%'#!##!(`!q,!!!!8##!"3iB!!,5!!!!@!!!!" )!!$X5!!!!@!!!!!X!`!!3))!,)!H!!!S!!!!3B)!-$KJ!!BiJ!!!JCi!!%J!!!& J!!!!,!-!!%'#!"3iB!!%5!!!!@!!!!")!!#NJ"m!2L`!!!&"J[q`J"m!2L`!!!" "JJ!8J(m!2NJ!!!&J!!!!5!!!I)!I!"Km(3!!3)!!#%J!!!L$[`!BJ(m!&)#"!'` i[3!!5!!!!@!!!!!S'`!!3B)!1)!F!!!X!!!33B!!,)"r!#b!(`!`N!"l!!#3!"X !")"r!$5!(`!iN!"l!!L3!"X!$$J!!"#3!"`!!$Kr!!")!!!"1(m!!%J!!!%iI3! !J!%!@$JK!&"m#!1QZf(rl%k!!#"&G!-!N!6V!!!!*%9e!*!&e!!!!$K&G3#3"HB !!!"S4A8!N!AX!!!!G%9e!*!&l3!!!*a&G3#3"HB!!!#`4A8!N!A&!!!!f%9e!*! &lJ!!!34&G3#3"GJ!!!&-4A8!N!A@!!!"9%9Z$!3!!!$c!!!!$)!!N!Z!!!&`+!! !!%9h!*!&kJ#3"%9V!!3!!!$d!!!"Z!!!"9J!!#STI!J#TVp"rqL3!!%!#*3Krk! lB`!!N!#"!(`la3!!1iF!!)2L!!#)!`!m+!!!!%##!"`iH`!!5!!!!5`$!!""JJ! -1'$rrdJ!!@!mB!!"1'2rih`H'!"!J3!81'!!+%J!!!&J!!!!5!!"3$J!!!#`!3! qXm%!1)!"!(b3!!%!1LJF!!"!JJ!SL"X!,#J!!!""JJ!-1jX!,%J!!"3iB!""5!! !!@!!!!")!!%!1(X!!%J!!!%lS`!!J!)!!*!!!`!-1!!!&l!$!"U!I!!%2!1"!#J !!!&!JJ!35!!!!@!!!!")!!!)J(`!"*!!I3!LS"`!!V!G!#Bi!3!iN!!G!#Ji!!! "Q"d!,$J!!!#`(3!Z1(d!!%J!!!&J!!!!1d-!!(p!"c9"JJ!8Id-(0%J!!!&J!!! !5!!!H%J!!!&J!!!!,!-!!%##!#b!(`!!+!!!!%'#!$!iB!!(1*i!!)'I!!")!!! "B!!!!#`$!!""JJ!81'!!"%J!!!&J!!!!5!!!-)!"!$SS!!!!3),rX+J"!$iX!!! !3)!!&+KK!$j)!!!"B!!!!%J!!!JiIJ!!J!%!D$JK!'"m#!1QZd(rk%k!!#"&G!- !N!6V!!!!)%9e!*!&e!!!!$4&G3#3"HB!!!"F4A8!N!AQ!!!!R%9e!*!&``!!!+a &G!-!N!5k!!!!Y%9e!*!&p3!!!04&G3#3"GN!!!%-4A8!N!A&!!!"*%9e!*!&l!! !!6"&G3#3"Hd!!!&B4A8!N!AQ!!!"E%9e!*!&a3!!!C4&EJ`%!!!!r3!!!!b!!*! ,J!!"Z$!!!!"&G`#3"I3!N!4&D`!%!!!!rJ!!!+3!!!C'!!![$h`)!UD6iIrmNm( rq*1Krr56JIr`N!!"!!L8)Iq`1i-!!(bG)hNla3!!1q!!!%##!!`S(J!!3B)!')J F!$`S!!!!3))!$$Km!!")!!!"+"d!!%'#!"b!(!!q,!!!!8'#!"!i!!!"Q"d!!$[ r!!%S(J!!3B)!%$J!!!'B(J!!1rm!!6Kr!!#!!3"B1#%!8(`)!kD$iIrmJm(rq)1 Krr5$JIr`6S!!)%9e!*!&e!!!!%K&EJ`%!!!"!J!!!!b!!*!,J!!!T#!!!!"&G`# 3"Ii!N!4&EJ8"!!!"!`!!!!Vrrrr1!!![$e9%8&0[BfYPG!$DD%9Z"3%!!!%%!!! !"rrrrmd!!#m28fpMDf9d!!"&EJ8%!!!""3!!!!Mrrrr-!!![$`#3#%9f"3!!!!% %!*!%4@i&!3!!!3B!!!!,rrrrb`!!,`p*6N988fpMDf9d!!"&EJ8%!!!""`!!!!c rrrr+!!![$`#3$%9f"3!!!!%&!*!%4@i&"!!!!3J!!!!)rrrrb3!!,`m!N!K&GJ8 !!!!""J#3"%9f"3!!!!%(!!!!"%9Z"33!!!%*!!!!&2rrrmJ!!#m2!*!84AB&!!! !!3J!!!!)4AB&!!!!!38!N!4&EJ8%!!!"#J!!!!Mrrrr(!!![$`#3#%9f"3!!!!% $!*!%4AB&!!!!!3N!!!!%4@m&"!!!!,i!!!"SrrrraJ!!,`m!N'K&GJ8!!!!"#J# 3"%9f#J!!!!%,!!!!A%9f#J!!!!%-!!!!9%9f#J!!!!%0!!!!6%9f#J!!!!%1!!! !5%9f#J!!!!%2!!!!4%9f#J!!!!%3!!!!3%9f#J!!!!%4!!!!0%9f#J!!!!%5!!! !-%9f#J!!!!%6!!!!(%9f#J!!!!%8!!!!'%9f#J!!!!%9!!!!&%9f#J!!!!%@!!! !%%9f#J!!!!%A!!!!8%9f#J!!!!%B!!!!2%9f#J!!!!%C!!!!1%9f#J!!!!%D!!! !,%9f#J!!!!%E!!!!@%9f#J!!!!%F!!!!*%9f#J!!!!%G!!!!)%9f#J!!!!%H!!! !$%9f#J!!!!%I!!!!+%9f#J!!!!%J!!!!#%9f#J!!!!%K!!!!C%9f#J!!!!%L!!! !B%9[#J3!!!%E!!!!#)!!N!p&GJ#3"Ii!N!4&GJm!!!!")`!!!!4&E`S%!!!"(!! !!!L!!*!24AB!N!Ad!*!%4AB2!!!!!5-!!!!%4@m+"!!!!4d!!!!)J!#3$d9f!*! &kJ#3"%9f$`!!!!%M!!!!"%9[#J3!!!%H!!!!#)!!N!p&GJ#3"H8!N!4&GJm!!!! ")`!!!!4&E`S%!!!"(`!!!!L!!*!24AB!N!AK!*!%4AB2!!!!!5-!!!!%4@m+"!! !!5!!!!!)J!#3$d9f!*!&h!#3"%9f$`!!!!%M!!!!"%9[#J3!!!%N!!!!#)!!N!p &GJ#3"GB!N!4&GJm!!!!")`!!!!4&E`S%!!!"*3!!!!L!!*!24AB!N!AB!*!%4AB 2!!!!!5-!!!!%4@m+"!!!!5B!!!!)J!#3$d9f!*!&e!#3"%9f$`!!!!%M!!!!"%9 [#J3!!!%K!!!!#)!!N!p&GJ#3"G-!N!4&GJm!!!!")`!!!!4&E`S%!!!"*`!!!!L !!*!24AB!N!A$!*!%4AB2!!!!!5-!!!!%4@m+"!!!!5)!!!!)J!#3$d9f!*!&bJ# 3"%9f$`!!!!%M!!!!"%9[#J3!!!%S!!!!#)!!N!p&GJ#3"F%!N!4&GJm!!!!")`! !!!4&E`S%!!!"+3!!!!L!!*!24AB!N!@m!*!%4AB2!!!!!5-!!!!%4@i+"!!!!,X !!!!)J!#3$d9f!*!&Z!#3"%9f$`!!!!%M!!!!"%9[#J3!!!#h!!!!#)!!N!p&GJ# 3"3%!N!4&GJm!!!!")`!!!!4&E`-%!!!!ZJ!!!!5!!*!,4AB&!*!%ZJ#3"%9[!`3 !!!$V!!!!")!!N!Y&GJ8!N!6V!*!%4@m$"!!!!-m!!!!%J!#3#d9f"3#3"-m!N!4 &E`-%!!!!YJ!!!!5!!*!,4AB&!*!%YJ#3"%9[!`3!!!#q!!!!")!!N!Y&GJ8!N!5 q!*!%4@m2"!!!!5-!N!5!!*!(4@J!!&0C68J!!!ED!!!!1J!!!!B!N"J&#J!!!$! !!!9c!!!!4!!!"Gm!!!"8!!!'$!!!!)J!!!F%!!!!V!!!"a2rN!3!!!F6!!-!!!! %rj!%!3#3""d!!!#+rrrre!#3"4i!!!#Drrrrd`#3"4m!N!J)#`!!!%3!!!M@!!! !D!!!#1ArN!3!!!MP!!-!!!!%rj!%!3#3""d!!!#+rrrre!#3"4i!!!#Drrrrd`# 3"4m!!3#3"JRkrj!%!!!++`!"!!!![rrrrp-"!*!%(`!"!*!'#PB!!!!i!!!+M!! !!'3!!![*!!!!H!!!#r3!!!#%!!!-"`!!!*!!!!!-(J!!!+3!!!am!!!!Y!!!$*h rN!3!!!eb!!3!!!#rrrrrd`%!N!3I!!!!S`!!!!)"!`!!!'`!!!!%rrrre!#3"4i !!!$'!!!!#`#3"4d!!3#3"Jf0!!!!0!!!$G)!!!"-!!!1"!!!!&`!!!iUrj!%!!! 18J!#!!!![rrrrp-"!*!%(`!!!!6rrrr8!*!&(J!"!*!'$R)!!!!F!!!1G3!!!#` !!!kIrj!%!!!2'!!#!!!![rrrrp-"!*!%(J!!!!6rN!3!N!8I!!%!N!B23rq3"!! !$h!!!3!!!,rrrrr6!3#3"!-!!3#3"Jq1!!!!(!!!$km!!!!`!!!2j`!!!&J!!"# f!!!!E!!!%1%!!!"m!!!3r!!!!,!!!"'Hrj!%!!!4XJ!$!!!![rrrrp-"!*!%(J! !!!6rrrr8!*!&(`!!!-B!!!!,!*!&(3!"!*!'%G8!!!!F!!!51!!!!%J!!",P!!! !A!!!%a%!!!"X!!!6-2q3"!!!%cS!!`!!!,rrrrr6!3#3""i!!!!%rrrre!#3"4m !!!$'!!!!#`#3"4d!!3#3"K0B!!!!(!!!%hN!!!")!!!8JJ!!!&`!!"5Z!!!!F!! !&02rN!3!!"6G!!-!!!#rrrrrd`%!N!3H!!!!"2rrrp3!N!8I!!!!aJ!!!!X!N!8 G!!%!N!B9cJ!!!#3!!"A4!!!!4!!!&JF!!!"-!!!@'[q3"!!!&L3!!`!!!,rrrrr 6!3#3""m!!!$H!!!!C!%$!!!!A!!!!0m!!!!$!3-!!!"J!!%!N!BATJ!!!#J!!"I 2!!!!1!!!&q-!!!"!!!!Am2q3"!!!'"m!!`!!!,rrrrr6!3#3""m!!!$M!!!!C!% $!!!!A!!!!0rrrrr4!3-!!!"J!!%!N!BE8!!!!$!!!"[&!!!!3!!!'q)!!!"-!!! F"3!!!&`!!"aB!!!!D!!!()!!!!"i!!!FP!!!!)!!!"bR!!!!M!!!(,B!!!#F!!! Fc`!!!+3!!"cdrj!%!!!Ga3!%!!!![rrrrp-"!*!%(`!!!1F!!!"N!3-!!!"F!!! !k!!!!!-"!`!!!'!!!!$Hrrrrd!#3"4i!!3#3"L*+!!!!0!!!)U)!!!"%!!!LYJ! !!%`!!#,Z!!!!C!!!)a)!!!"d!!!M@3!!!-J!!#0G!!!!e!!!)h3!!!$N!!!Mf!! !!2J!!#2f!!!"$!!!*"`!!!%J!!!N@3!!!8J!!#82!!!"9!!!*5,rN!3!!#9"!!8 !!!#rrrrrd`%!N!3I!!!!l`!!!'3"!`!!!'`!!!$`!!!!!`%!N!3G!!!!m3!!!'3 "!*!%'`!!!2,rrrr4!3#3""`!!3#3"LTZ!!!!-!!!+[F!!!"!!!!V#`!!!%J!!#X C!!!!@!!!+c3!!!"S!!!V93!!!)3!!#[a!!!!N!!!!#`'!!!!Q!!!,"`!!!#S!!! X3!!!!3`!!#hE!!!")!!!,JF!!!%`!!!ZY`!!!B3!!#km!!!"N!!!!#l9!!!"S!! !,[lrN!3!!#m-!!F!!!#rrrrrd`%!N!3E!!!!l`!!!'3"!`!!!(`!!!$f!!!!!`% !N!3H!!!!p`!!!'3"!*!%(!!!!!6rrrr8!*!&(3!!!-B!!!!,!*!&'J!!!2Mrrrr 2!!-!!!!i!!%!N!B[9`!!!$!!!#pa!!!!1!!!,i`!!!"%!!![X`!!!%`!!#r'!!! !9!!!,p8!!!"J!!![l3!!!'`!!$!8!!!!G!!!-#B!!!#!!!!`5rq3"!!!-&X!"!! !!,rrrrr6!3#3""`!!!$r!!!!D!%!N!3G!!!"!*!%D!%!N!3H!!!"!3!!!!-!N!8 I!!(rrrrl!!!!$!!!!!%!!!!(!!$rrrrf!!%!!!"U!!,rrrrh!!!!&!!!!"3!"`! !!"8!!!!#!*!($`!!!!F!!!!%!!!!&J!!!!F!!!!&!!!!&`!!!!S!!!!'!!!!'2r rrrB!!!!)!!!!%!!!!!)!!!!-!!!!'3!!!!)!!!!3!!(rrrri!!!!&!!!!"6rrrr h!!,rrrrj!!!!#`!!!#!!#!!!!!`!!!!+!*!($3!!!!F!!!!#!!!!$J!!!!B!!!! $!!!!$`!!!!)!!!!%!!!!%!!!!!B!!!!)!!!!%3!!!!B!!!!*!!!!%J!!!!S!!!! +!!!!%rrrrrJ!!!!-!!$rrrrk!!(rrrrj!!,rrrrd!!!!)`!!!"!!"!!!!#3!!!" Q!*!(*3!!!!)!!!!%!!!!*[rrrrS!!!!)!!!!*`!!!'B!!!!-!!(rrrrb!!!!+!! !!!%!!!!(!!,rrrrc!!!!+3!!!%)!%!!!!#S!!!!(!*!(+`!!!!F!!!!"!!!!,!! !!!F!!!!#!!!!,3!!!!F!!!!$!!!!,J!!!!)!!!!%!!!!,`!!!!S!!!!)!!!!-!! !!!)!!!!+!!!!-3!!!!S!!!!1!!!!-J!!!!F!!!!3!!!!-`!!!!F!!!!4!!!!0!! !!!B!!!!5!!!!03!!!!F!!!!6!!!!0J!!!!F!!!!8!!!!0`!!!!F!!!!9!!!!12r rrr)!!!!@!!!!*`!!!'B!!!!q!!,rrrra!!!!1J!!!"3!#J!!!#S!!!!(!*!(+`! !!!F!!!!"!!!!,!!!!!F!!!!#!!!!1`!!!!B!!!!$!!!!2!!!!!B!!!!%!!!!23! !!!F!!!!&!!!!2J!!!'B!!!!'!!!!2`!!!!)!!!!+!!!!3!!!!!S!!!!1!!!!*`! !!'B!!!!3!!,rrrr`!!!!3J!!!"B!#J!!!#d!!!!(!*!(3`!!!!B!!!!"!!!!2!! !!!B!!!!#!!!!23!!!!F!!!!$!!!!*!!!!'B!!!!%!!!!*3!!!!S!!!!)!!!!4!! !!'B!!!!+!!!!43!!!!S!!!!1!!!!4J!!!!S!!!!3!!!!*`!!!'B!!!!5!!,rrrr [!!!!5!!!!!J!"3!!!#S!!!!(!*!(+`!!!!F!!!!"!!!!,!!!!!F!!!!#!!!!23! !!!F!!!!$!!!!*`!!!'B!!!!%!!,rrrrZ!!!!5J!!!!3!!3!!!#F!!!"Q!*!&![r rrqN!!!"R!!!!"J!#!!!!D!!!!!S!N!GT!!!!!J!!!!)!!IrrrqS!!!!U!!!!"[r rrqN!![rrrqX!!!"F!!!!9J!3!!!!A3!!!!)!N!GH!!!!!J!!!!3!!!"I!!!!!J! !!!J!!!"J!!!!!J!!!!`!!!"K!!!!!J!!!"!!!!"L!!!!!J!!!"3!!!"M!!!!!J! !!"J!!!"N!!!!!J!!!"`!!!"P!!!!#J!!!#!!!!"QrrrrkJ!!!#)!!!"C!!!!#J! !!%`!!!"U!!!!#J!!!%i!!!"V!!!!#J!!!&!!!!"X!!!!#J!!!&)!!!"Y!!!!"`! !!&3!!!"Z!!!!"`!!!&8!!2rrrq`!!IrrrqX!![rrrqd!!!"-!!!!4J!C!!!!+J! !!!F!N!FV!!!!"`!!!!%!!!"0!!!!!`!!!!)!!!!Z!!!!!J!!!!B!!!![!!!!#J! !!!S!!!!`!!!!!J!!!!`!!!!a!!!!#J!!!"!!!!!b!!!!"`!!!")!!!!c!!!!"`! !!"-!!!"1!!!!"`!!!"3!!!!p!!!!"`!!!"8!!!"2!!!!#J!!!"B!!!"3!!!!#J! !!"J!!!"4!!!!#J!!!"S!!!"5!!!!#J!!!"`!!!"6!!!!CJ!!!"i!!!"8!!!!!J! !!#)!!!"9!!!!!J!!!#B!!!"@!!!!!J!!!#S!!!"A!!!!!J!!!#i!!!"B!!!!!J! !!$)!!!"C!!!!!J!!!$B!!!"D!!!!!J!!!$S!!!"Errrrl!!!!$i!!!!R!!!!CJ! !!%)!![rrrqB!!!"b!!!!'!!'!!!!F`!!!!)!N!Gd!!!!!J!!!!3!!!"e!!!!!J! !!!J!!!"f!!!!!J!!!!`!!!"h!!!!!J!!!"!!!!"i!!!!!J!!!"3!!2rrrqF!!Ir rrqB!![rrrq3!!!"k!!!!0!!0!!!!H`!!!!)!N!Gm!!!!!J!!!!3!!!"p!!!!!J! !!!J!!!"q!!!!!J!!!!`!!!"r!!!!!J!!!"!!!!#!!!!!!J!!!"3!!!#"!!!!!J! !!"J!!!##!!!!!J!!!"`!!!#$!!!!!J!!!#!!!!#%!!!!!J!!!#3!!!#&!!!!!J! !!#J!!!#'!!!!!J!!!#`!!!#(!!!!!J!!!$!!!2rrrq8!!Irrrq3!!2rrrq)!!3! !!!)!!Irrrq-!!!!%!!!!"2rrrq)!![rrrqJ!!!"`!!!!%J!&!!!!FIrrrqF!N!G jrrrrj3!!!!3!!!#)rrrri`!!!!J!!!!R!!!!CJ!!!!`!!!#*!!!!#J!!!"!!![r rrr8!!!!K!!!!4J!)!!!!)[rrrr3!N!FSrrrrm`#3"cRrrrra!*!(3Irrrr!!N!G (rrrrl`#3"dRrrrrZ!*!(5rrrrqd!N!G[rrrrk!#3"3,rrrrm!!!!#!!!!'B!#3! !!!Rrrrrl!*!(#[rrrrS!!!!-!!!!'J!!!!X!!!!3!!!!'`!!!'B!!!!5!!!!(!! !!!X!!!!@!!!!(3!!!!X!!!!B!!!!(J!!!!X!!!!D!!!!(`!!!!)!!!!F!!!!)2r rrr8!!!!J!!(rrrrJ!!!!$!!!!!%!!!!(!!,rrrrH!!!!MJ!!!"3!"J!!!#3!!!" Q!*!(*3!!!!)!!!!%!!!!*[rrrrS!!!!)!!!!-3!!!!S!!!!-!!!!*`!!!'B!!!! 1!!!!M`!!!!S!!!!5!!,rrrrG!!!!N!!!!!!@!!N!!!#4!!!!#J#3"bi!!!!#!!! !!J!!!#m!!!!+!!!!"J!!!$i!!!"Q!!!!#!!!!*)!!!!'!!!!$!!!!$d!!!!(!!! !$3!!!%!!!!!+!!!!$J!!!#F!!!"Q!!!!%!!!!$%!!!!+!!!!&!!#rrrrh!!!!*- !!!!D!!N!!!#8!!!!#J#3"bi!!!!#!!!!!J!!!#m!!!!+!!!!"J!!!#3!!!"Q!!! !#!!!!#8!!!!+!!!!$!!!!%B!!!!+!!!!$J!!!#F!!!"Q!!!!%!!!!*8!!!!#!!! !&!!!!*B!!!!+!!!!'!!#rrrrf`!!!*J!!!!+!!-!!!#C!!!!#J#3"bi!!!!#!!! !!J!!!#F!!!"Q!!!!"J!#rrrrh`!!!)d!!!!D!!3!!!!LrrrrhJ#3"cRrrrrG!*! (3Irrrp`!N!HArrrrf`#3"3,rrrrK!!!!L`!!!$S!#3!!!!RrrrrJ!*!(#[rrrrS !!!!-!!!!'J!!!!X!!!!3!!!!'`!!!'B!!!!5!!!!(!!!!!X!!!!@!!!!(3!!!!X !!!!B!!!!(J!!!!X!!!!D!!!!M!!!!!)!!!!F!!!!)2rrrpm!!!!J!!,rrrrp!!! !"J!!!'B!!J!!!!Irrrrm!*!(L[rrrq%!N!8#rrrrf!!!!*d!!!!'!!)!!!#H!!! !#`#3"jm!!!"N!!!!!J!#rrrreJ!!!+d!!!!%!!%!!!#Z!!!!!J#3"3(rrrr9!!! !#!!!!!%!!!!(!!,rrrrA!!!!U!!!!"!!"3!!!+N!!!!'!*!(UJ!!!!B!!!!"!!! !U`!!!!S!!!!#!!!!V2rrrpB!!!!%!!!!Vrrrrp8!!!!)!!,rrrrC!!!!Q`!!!%) !$3!!!*crrrrB!*!(S!!!!'3!!!!'!!!!S3!!!!X!!!!+!!!!SJ!!!!X!!!!-!!! !S`!!!!)!!!!1!!!!5`!!!!B!!!!5!!!!T!!!!!B!!!!6!!!!T3!!!'B!!!!8!!! !TJ!!!!-!!!!B!!!!TrrrrpF!!!!F!!!!X2rrrpF!!!!X!!!!X3!!!!B!!!!m!!! !XJ!!!!-!!!!q!!$rrrrD!!(rrrrC!!,rrrrq!!!!"3!!!'S!!J!!!!6rrrrp!*! (Q[rrrpS!!!"Q!!$rN!3!!Irrrri!!2rrrp3!!Irrrq%!![rrrp)!!!#c!!!!3J! "!!!!Y2rrrpN!N!Errrr6!!(rrrr5!!$rrrr4!!%!!!!$!!$rrrr3!!(rrrrA!!, rrrr2!!!!q3!!!!J!!`!!!2S!!!!+!*!(q`!!!'B!!!!#!!!!r!!!!!X!!!!'!!( rrrr1!!!!#J!!!!%!!!!(!!(rrrr0!!!!"`!!!!%!!!!(!!,rrrr-rj!%!!!!#!! !!!(rrrr,!!!!#`!!!!%!!!!(!!,rrrr+rj!%!!!!$!!!!!,rrrr*rj!%!!!!#!! !!!,rrrr)rj!%!!!!&!!!!!,rrrr(rj!%!!!!#!!!!!,rrrr'rj!%!!!!D!!!"3J ZG@4`Ah*PB@4IB@KPB@4IC'pZC9pI4P!a-8&ZEQpdBA4PC&"#!!Gi,RGi6@&M8fp MDf9d5'&ZC'aPFP"bEf-!!#FZ8Q9KC(PIAc%b8fpMDf9d4'pYB@PZ4RB!!R"`BJ! $!N&ZEQpdBA4PC&"#!!5G3'0XBA0c*$Fj1%G98dP94&"IBh!!!kjdBh!!"h083e" TEh"L!!EbCQPXE$%b!!6ED@p$Efe`E'9dD@pZ!!'r8QpeG'PZC84PFf0bDA"dEh) !"bGREdeTH'9N6@pNC94bBA!!"d4fCA*cD@pZ!!B)FQpeG'PZC84PFf0bDA"dEh* 'E'&RF`!"9R*PFf9bGQ9N-3!"9h*PFf9bGQ9N-J!%Gh0PE'9MG'pb5@jQE`!%+R* [GA4TEQ9$Eh9ZG!!'m(*[GA4TEQ95C@0[FQ4c!!8I8QpeG'PZC9*PBfpbC!!![h" bEf0*EQC[!!23590"!!6lFQpeG'PZC8CXB@Gc!!D%F(*[Bd4PFf0bDA"dEh)!!0G cC@aPBh4[FJ!!IfP[8Q9cG@ad!!(@D@p1B@eP8(4b!!&XD@p@8Q9Q6R9Y!!%@D@p $8Q9Q6R9Y!!DUBh0$Ef4P!!(rG'0`8h4bC@&Y!!I)Bh03BA*KE3!%!8"ME'&cFb3 h1$G(990*9843Af0`!!DCBh*PBA4P!!1k9%033h*PBA4P8%)!"p"bBhC#G@CQ!!+ 8FQ0f3R9QCNaPEJ!#h@j[G'PQH9"bEf-!!bTeFf9b4'&dB9"dFJ!%F'p`C@i!!4p 83e"2F'9Z8%)!"iaeE("8D@ePEh9d9Q&XG@8!!(peE("8D@ePEh9d3@0dD@pZ!!@ NGQ&XD@4TG(P'E'&RF`!$$@0[E@eKEQ48D@ePEh9d9Q&XG@8!!YTbC@e[G'9)Eh0 d!!+qFQ9YEh4P8'pbG!!"cQa[Bf&X5'pcG!!"XQa[Bf&X8'pbG!!!i(4[FdCXB@G c!!*rF(*PBf9NC@jMC3!!Ff4[ER4'FQ&R!!)rG'PYC94[6'PfC3!!kA0PBh9bDA4 j!!(eEh"dD@pZ3fjd!!FNEh"dD@pZF`!%JA0PEQ3!!9"83e"6C@jN8%)!!,C`GA0 S4QaKC`!#2(9bCf9ZG%CXB@F!"VPQD@aXCA)!"[ahC(03G()!!"*cC@jN4R*PC3! #QR0PEQ4-C@jRG'J!"`PbC@0PDACP!!4c9%038Q9MC@PfC9"#!!#&E@&bDdCXB@F !"LCbC(03G()!!CabC(0-C@jRG'J!"qYcC@0[EQ48D@eP8h4KEA!!"IeME'pcC3! #ie4$8%0XEh0P8%)!"F0KBQpbG!!#Qe4$8%&LEh*d8%)!"XjcG'&dGA-!!ep83e" 6G'&dGA033J!'@R9ZGA0PC!!(Kf0[EQjPBh4TEfj6G'&dC3!#Sh0PEQ4AD@jNEhF !!3PbBhCAD@jNEhF!"V&KEA49EQ&MDf9N4'&dB3!&D'&YG&9ZFQ9KC%4KG'%!!,j cC@0eFQPdH8aPGQ9X8(4b!!11Ff9ZC&9ZB@0VC@3!!&0cC@jN6Q9iG!!!KQ0[EQG PFh4TEfjAD@jNEhF!"`TbBhC1CAKd!!5'Fh*dG!!(BfaKFh459&3!"NKcC@jN6@& i8f9R8fPkC3!$H@0[EQj6G'&d8(4b!!,99%033fpZEQ9MG'P[EP0dBA4c!!4&C'& dB9"VG(05BhCN!!6GC'&dB9"VG(06C@jd!!EGC'&dB9"VG(05CA0PER3!!ICLHA4 PFe*MGQ3!"+GLHA4PFe*MGQ4%GA!!!i9LHA4PFe*MGQ43BA0d9fPZC'ph!!'+BRP dCA06C@jd!!1JBRPdCA05CA0PER3!"jaZG@e)DA0dEd*eBfYPG(-!"44cC@jd8fP kC8KTFh4[!!1m5'PcG'p#G@0VCA3!"9KfB@aeC3!(%Q0[G@jdCA)!"r"dEA*68P4 8!!-mFR4d9Q&bD@&ZBf8!"KYdEA*59%m!!FCcC@jN9(*TCA-!!0CcEh9bBfK4G@9 ZBfK5BhCN!!,rCfa[BQ&X5@jQE`!(T94$8%GXEf*KE%PZCQp33J!$%R4MF&"KFQ& Y8(4b!!!Q9%038'&bB@d!"j!!G'0`8R4[33!"$A4MF&*dEdeTEJ!"&R4MF&*dEde KH!!&qR4MF%eKH&0PCe0THQ8!!PedBh"0BAK$EfjZ!!4TG'0`6@&i9fPZC'ph!!2 MG'0`8h4KG(03G()!!)K83e"6G'&dF`!(C(4MF%0[EQj"G(4PEA"dF`!&dh4MF%0 [EQj2F'9ZC@3!"fPdBh"$EfjZ3@0MCA"dC@3!"5"dBh"$EfjZ3fa[Ff9N!!BrG'0 `3fpZEN&LEh*dC@3!!lCdBh"2Bh4PG(0*EJ!%3h4MF%pMG'9dFdpeG!!'Kh4MF%p MG'9dFdPZ4(9`!!!cG'0`6f0dCA4c8Q9dFQ&ZF`!%IA4MF%PZF(9d8'YdF`!&)(4 MF%peG("eG&"VG(-!!JpdBh"%GA"3Dh4c!!EfG'0`8Q9dFQ&ZFe"VG(-!!kCdBh" $4%*8B@*XC3!"G'eKH&4$8%0[EQjPBh4TEfjc!!1bG@4`!!F`9843D@p`BJ!"rR9 NF&0dFQ9KE3!%2N"ME'&cFb3h16"(990*9843Af0`!!2198433h*PBA4P8%)!!P" PEQ4TEQG3Eh*d!!&C98438f9ZC&"#!!!TFQ9cCA*fC@3!!%"MD'9MDe0eE3!%A&9 %8&*PBf9TGQ933J!(bA4TE@92GA3!!'TNCA0d5'pcG!!!6Q4PFh43Eh*d!!1CEA4 e!!$k984369498%)!"jPYG(96DATP!!3ZFfpMD`!#c%P14946Ef0VCA3!"rBN8fp MDf9d!!Ej8fpMDf9d!!!FFQ9Q3fpeER3!"r0IAhC`G()N!!$IGhKbC@CMEfi!"b9 hH'9fC@jd!!2RGhKPGQ9ZG'eKFfX!"R*cG(*PB@d!!ieZEfjLE'pMDfPZC`!(pR* PBhC#G@B!"CTbC@0fC!!#ch0K!!2NFfpMDf&NC(*ID@i!"`*cD@jIE'9Z!!,!FfP ZAfCKE@PXH3!!@R0TEPp`Eh*d!!!$FfPZAf&NC()!"feTEPpKC'4b!!CpFepKC'4 b!!#bFfPZAhTPFQm!"1a`C@9b!!DaFh0dBA4P!!$(BA0jEQ0PFR)!!HK94&"6Ef0 VCA3!!lXN58j&9&0[BfYPG!!%2d!i-$J!"3PeAh9NF&pbC@&NAf&SC@&NAf4[EQ8 !"-KeC("IFQ9KC&pKD'9KC&pNEfjPAep'8$%a3@jZEh4KG'9N8%)!"d3ZG@4`Ah0 PEQ4IC'pZC9pI4P!a-8&ZEQpdBA4PC&"#!!4C3$Ja-J!(VA9IG@4`Ah0PEQ4IC'p ZC3!'eA9NF&pcC@jNAf4[EQ9IAdC3-6&"EQj[G'&dC@433J!$jbjIAf0dAemj984 38fpMDf9d4RB!"G%ZAepMG&pI-6"*6N988fpMDf9d4RB!!+4IAhCdAemj98438fp MDf9d!!4EG'KTF`!%@d!i-63!"%3ZAepMG&pI199%8&0[BfYPG%C9E!!'JLjIAf0 dAema-%P14946Ef0VCA4'9@`!"$mZ4f9d8%*IAcP94&"6Ef0VCA4'GJ!'Abj33N0 [ER4bEfa6H@jM!!E%,P4$8&pPFR*[FPpI4QN!!c9PFR)!"(K!1$)a!!3#AepNG&p I-6"*6N988fpMDf9d4RB!"(P!1$)b!!-%,PpIC(4IAcP94&"6Ef0VCA4'GJ!$##j %DA0`Eh0P8(4b!!8%,PpIC(4IAc%`58j&9&0[BfYPG%Cf!!*2,PpIC'aIAdC3GJ! %Pd!i-c!!!`a*6N988fpMDf9dF`!%$Lj(CA433PpI-6C*6N988fpMDf9d4'pYB@P Z4RB!"8iZ4(*TGQ9bAema0NP14946Ef0VCA4%EfeKD@j'GJ!%QN!i-c-!!2dZ3AC KD@aKBQaPAemj98438fpMDf9d4RB!!0)Z6Q9h8h4bC@&YAemj98438fpMDf9d4RB !"p8Z6Q9h8(4b!!"9,P*PB@4"D'9KC&pI199%8&0[BfYPG%Cf!!5I3$Jc1!!&)5j 'E(9cD&*PB@4"D'9KC&pI199%8&0[BfYPG%Cf!!IB,P"#3fpZG(*[E%&cH@jM!!5 k3$Jd-`!%[N!i0$F!"6XZBQPZC&pI199%8&0[BfYPG%C3GQN!"jdZBQPZC&pI-6" *6N988fpMDf9d4P"fD3!%3'&NC()!"k*ZB@ePE'9Z!!6D3$Je-`!&f#jRCA4cEf0 VEQ&YC9pI199%8&0[BfYPG%C3GP"T!!II,QGPG(0[BfYZB@ePAema-%P14946Ef0 VCA4'8(C3D3!%UfjKE@8!"1"!1$8j!!"S,Q0[EQjPBh4IAcP94&"6Ef0VCA4'8(C T!!1Y,NG98dPICA*bEh)!"hGKC'4bCA0c!!IXB@4NFQaPEJ!%'d!i0c3!"KSZFQ9 MGQCbEfeIAcP94&"6Ef0VCA4'8(CTD9"f8'N!!(&(990*8h"TEJ!$@Lj(990*3fK PBfY"E'&bE9pI4RB!!j3ZAep`G(*ICfaeC3!#,bj#E'pMDde[GQ8!"J0LG@CQCA) !"[GLG@CXC@i!"$0QFQpY!!GPCR*[E@aPEJ!%AN!i16B!!pFZFf9ZC(4[Aemj984 38fpMDf9d4P"fD@P3GQN!!PJZCf9dD'pcG'PN!!8&BfpeER3!![edE`!%MQ&hC(- !"j&YD@jTGf4c!!EfE'9ZCh4S!!2#F(4b!!")G'9bE@PZGA-!"(e!16)b!!@[,R0 PE'9MG&pI199%8&0[BfYPG%C39@039@039@-!"caMB@j5C@&N!!"QBf&Z9h*TG'8 !"k&REfpND@9c!!5J3$Nc03!%S8!j-cB!"+0!16-i!!IrAep59&4*Aemf8fpMDf9 d!!5N3$Nc13!%Zd!j0$!!"!CIAe*89%PIAc%`58j&9&0[BfYPG!!%SN!j-cF!!Qe IAe*89%PIAcP94&"6Ef0VCA3!!hG`Eh0dAh0PE'9MG&pI0P0[BfYPG%C9Be9M9@- !!Qa`FQ9IFf9XC@0dAemf8fpMDf9d4P9M9@09B`!"3QPcBA4dH9pI0P0[BfYPG%C f!!4pCR4bG@jMBA4PAemf8fpMDf9d4Q`!!@"XFf9PDepI0P0[BfYPG%CXD3!&,fC cG'&dAemf8fpMDf9d4P!dFh4KG!!"5h0PG(0[BfY[F(4IAcC6Ef0VCA4'D@P3GQN !!XKRCA4cEf0VEh"dAemf8fpMDf9d4QPT8(C3D3!#2AGbDA4PAemf8fpMDf9d4P" fD3!"TR*PB@4IAcC6Ef0VCA4'8(CT!!5@B@0MCA"dAemf8fpMDf9d4P"f8'N!!FK XDA0dC@jIAcC6Ef0VCA4'D3!!KA0SGA4NEhGZAema-%P14946Ef0VCA4'D3!!kQP [Bh4XAema-%P14946Ef0VCA4'9@P3GJ!(8@CMER4XAema-%P14946Ef0VCA4'9@P T!!C9Cf9dF'9PFQjKE@9IAc%`58j&9&0[BfYPG%C3GP"T!!5aFf9XC@0dAemj984 38fpMDf9d4P"9Be"9Be"9B`!#PR0PEQ4dEepI199%8&0[BfYPG%C3GQPT8(CT!!8 fFQ9MGQCbEfeIAcP94&"6Ef0VCA4'8(CTD9"f8'N!"hTMEfjZC@0dAemj98438fp MDf9d4P"fD3!%[@GPG(0[BfYZB@ePAemj98438fpMDf9d4P"f8'N!",eLD@jNAem j98438fpMDf9d4P"fD3!(cN&fB@PXB@*XC9pI199%8&0[BfYPG%Cf!!,AAepNG&p I199%8&0[BfYPG%Cf!!0q9%p$!!IV8Q9KC%&SC@&NAemj98438fpMDf9d4RB!"2" 'E(9cD&*PB@4"D'9KC&pI199%8&0[BfYPG%Cf!!G[6Q9h8h4bC@&YAemj98438fp MDf9d4RB!!`K(CA433PpI199%8&0[BfYPG%Cf!!0$AepMG&pI199%8&0[BfYPG%C 9E!!#hepIBh4IAcP94&"6Ef0VCA4'GJ!!8%pA8J#3"P(X!!"5@!!!!0J!N!STJ!! !!R8!!!44!!!!+!#33%9R!!"&D3#3"3&&E`8%!!!!"!!!!!5!!*!(rj!%4@i3!3! !!!B!!!!"J!#3#!3%-%9V!!3!!!!(!!!!I)!!N!Gm#!+QN!!"!!L8)Im`N!"K!1J iB3#!J)%!k%J!!!&J!!!!1'%!1$L"!)!iSJ!!5!!!!@!!!!#!BJ!!U!-!!#`!!!" "JJ!3J')!!+KM!!")!!!JU!%!J)"L!!#`!`!!J!%!JS"L!!#3!!-!!$KJ!!#!!3$ B1#%!d(`)!kC1J!!J4A8!N!8)!!!!'%9c%!#3"!B!!!!S4A8!N!8*!!!!,%9d!`# 3"!)!!!!d4A3$!*!%!J!!!%4&G!-!N!3$!!!!9%9d!`#3"!3!!!"J4@i-"!!!!!S !!!!-J!#3#i!!!(`!N!4&G`#3"3F!N!4&DJ!%!!!!#`!!!(#!!*!(I!J#TT2Krrb 3!!%!#*3Krd#3!'%!f*!!J3$F1!%!1*!!!3#+1'%!H%J!!!&J!!!!1q-!!(rJ"c9 "JJ!-1(m!!%J!!##S!3#BJ'%!f,!$!!#!!3#SJ'%!h*!!!`!!1'!!!)!"!-Ji)3$ !I!J$TS2Krra1J!!J4A8!N!8-!!!!*%9Z$!3!!!!0!!!!$)!!N!Z!!!"`#!!!!%9 h!*!&#`#3"%9V!!3!!!!1!!!!G)!!N!Gm#!+QNq(rr*!!!3!)P#(r`$[M!!!i!!! !Q!-!"S"L!!#!!`!!,!$rrd'#!#5!BJ!!U!-!!,!I!!#!BJ!!J!-!!*!!(`!#1'! !!%J!!"JiI`!!1*m!!NJ!!!'!JJ!!X'3!!)!"!%Ji)3"!I!J$TS2Krra1J!!J4A3 $!*!%"!!!!"a&G!-!N!3$!!!!,%9d!`#3"!3!!!!i4A8!N!8,!!!!9%9d!`#3"!) !!!"B4@i-"!!!!!m!!!!-J!#3#i!!!(3)!!!!4AF!N!81!*!%4@X!"!!!!"!!!!# SJ!#3"h`)!UD6iIrmNm(rq*1Krr53!!%!#*3Krf!li`!!1k3!!)2#!!#)!`!'+!! !!%##!!arS!Fe3)%!2$JI!!D3!!%!5V1K!&3iB3!i5!!!!@!!!!#`IJ!!I'!(08' #!!bSIJ!!5!!!,+J"!%k`(`!!5!!!&$J!!!#`(J!!1!!!!,!I!!!i!!!"N!!I!!+ SIJ!!J!%!U$JK!+"m#!1QJq(rr)2"rrL$SIrd6S!!)%9d!`#3"!)!!!!J4A8!N!8 4!!!!5%9Z$!3!!!!5!!!!$)!!N!Z!!!#S'!!!!%9h!*!&%!#3"%9V!!3!!!!6!!! !+)!!N!Fi!!+DX!-!!$J!!!#3!!-!!MJ!!!#B!`!'1!!!!)##!!#`"!!!6S!!)%9 d!`#3"!)!!!!F4@X!"!!!!"3!!!!SJ!#3"cL!!!#!!`!#,!!!!%##!"5S!`!!,!! #QN##!!JiJ!!"1'3!!%k!!#"&D`!%!!!!&3!!!%b!!*!(I!J#TT2Krrb3!!%!#*3 Krh!li`!!5!!!!AaJ"c9!JJ!81'%!1$LI!!")!!!"B!!!!)"L!!#SB`!!J!%!Q$J K!*!!I!J$TS2Krra1J!!J4A8!N!81!!!!&%9e!*!&&J!!!#K&G!-!N!3#!!!!-%9 Z$!3!!!!A!!!!$)!!N!Z!!!"-#!!!!%9h!*!&&3#3"%9V!!3!!!!)!!!!I)!!N!G m#!+QNq(rr*2"rrL3!!%!#*3Krm!l``!!1q3!!+J%!!#`!`!!J!3!!T!!!`!#L!3 !"LJ!!%"!J!!B1(i!"MLI!!C)!!!"B!!!!%J!!"JiIJ!'1*m!"MLJ!%")!!!"B!! !!$Kq!!#!!3")1#%!3(`)!kD$iIrmJm(rq%k!!#"&G3#3"4J!!!"!4A8!N!8C!!! !@%9Z$!3!!!!D!!!!$)!!N!Z!!!"m%!!!!%9h!*!&#!#3"%9V!!3!!!!E!!!!V)! !N!Gm#!+QNq(rr*2"rrL3!!%!#*3Krm!li`!!1m3!!*LK!'1S"!!!X!-!!)!%!!+ 3!!-!!SJ%!!BS!!"!3)!!'$Kr!!BiRJ!'5!!!!@!!!!")!!!B1(m!"MLH!!BiS!" !5!!!!@!!!!#)!3"M+!!!!%##!#5!BJ!!L!-!!#J!!!""JJ!81(m!!$L!!!&)!!! "B!!!!$Kr!!#!!3")1#%!3(`)!kD$iIrmJm(rq%k!!#"&G3#3"4J!!!"%4A8!N!8 C!!!!A%9d!`#3""`!!!"`4A8!N!8G!!!!L%9Z$!3!!!!H!!!!$)!!N!Z!!!#X%!! !!%9h!*!&'`#3"%9V!!3!!!!I!!!"!)!!N!Gm#!+Q[f(rl*!!!3!)P#(rX$[M!!! lC!!!1i8!!$['!!#Bi3"lJ')!!)J$!!!S!!!!3B)!0$Kl!!!iR!!!1,i!!$MI!!" )!!!"B!!!!$ZM!!"rS!Fe3B)!-(qJ"c3X!2r93B)!*,0r!!#6R`!#1(m!"MLH!!# )[J!!1+8!!8J!!!&J!!!!L!%!HbJ!!!"!JJ!NJ')!!)J$!!!S!!!!3B)!&$Kr!!! iJ!!"5!!!!@!!!!!iI`!'1*i!!$LJ!!!i`!!"5!!!!@!!!!"8B!Br3B)!($Kr!!B iRJ!!L,i!!$LP!!&)!!!"B!!!!$Kr!!#!!3"B1#%!8(`)!kDlBIrX6S!!)%9d!`# 3"#!!!!!N4A8!N!8K!!!!4%9e!*!&'3!!!(a&G!-!N!3F!!!!N!"&G3#3"4d!!!# S4A8!N!8L!!!!`%9e!*!&'3!!!1"&EJ`%!!!!)`!!!!b!!*!,J!!"!#J!!!"&G`# 3"4m!N!4&D`!%!!!!*!!!!9b!!*!(I!J#TT2Krrb6`IriNk(rp*1"rr#3!!%!#*3 Kri!li`!!1i3!!$[&!!#B`3#RJ')!!)J$!!!S!!!!3B)!0$Km!!!iJ!!!1,i!!$M I!!")!!!"B!!!!$ZM!!"rS!Fe3B)!H(qJ"c3X!2r93B)!E$J!!!#3!!%!5V1"!%i i!!!!X!%!8MJ!!!#3!!%!9$KK!$K)!!!"B!!!!)##!!#`C!!!I'!(08'#!!`iI`! !5!!!P+J"!&L`(`!!J!%!D*!!(`!#1(m!"MLH!!#)[J!!1+8!!8J!!!&J!!!!L!% !TbJ!!!"!JJ!NJ')!!)J$!!!S!!!!3B)!&$Kr!!!iJ!!"5!!!!@!!!!!iI`!'1*i !!$LJ!!!i`!!"5!!!!@!!!!"8B!Br3B)!($Kr!!BiRJ!!L,i!!$LP!!&)!!!"B!! !!$Kr!!#!!3#)1#%!J(`)!kD$iIrmJm(rq)1Krr5$JIr`6S!!)%9d!`#3"#!!!!! X4A8!N!8K!!!!6%9e!*!&*3!!!)a&G!-!N!3#!!!!P%9e!*!&'3!!!-a&G!-!N!3 F!!!!i%9e!*!&(3!!!2K&G3#3"5)!!!%34A8!N!8C!!!"-%9Z$!3!!!!Q!!!!$)! !N!Z!!!&F)!!!!%9h!*!&*!#3"%9Z"3%!!!!T!!!!#B!!N!F)G'e`-*!'!$&&EJ8 "!!!!+J!!!!D!!*!(*6!eE'3!!!"&D`!%!!!!+`!!!8#!!*!(I!J#TVpKrqb3!!% !#*3Krf!li`!!1k3!!$YP!!!lKJ!!Jm)!!$`GUl-S!&"'3))!'#`F!!""JJ!3Xhm !!*1I!!*)!!"31(X!!$`GUl-S!&"'3))!%$b!G'8iK'e`5!!!#$LG!!!iS!!"10m !!$Mr!!*)!!!"B!!!!)##!!#`C!!!I'!(08'#!!`iI`!!5!!!S$`GUl-S!&"'3)) !I)J#!!"m!!Ge3))!&$J!rrq3!!)!!$J!!!'B!J!!1(m!"S##!!")!!!"B!!!!)" L!!!iJ`!"2'!!!MKMKU"m""[@I!!CeR`!)!!)!!$Kr!!SiRJ!!J+)!!%J!!!& J!!!!1(m!!%J!!!&J!!!!9'!'2d##rla)!!!B1'%!1$LI!!!iS!!"5!!!!@!!!!! iI`!!J!%!U$JK!+"m#!1QZf(rl%k!!#"&G!-!N!3U!!!!)%9e!*!&,!!!!("&G!- !N!3#!!!!H%9c%!#3"#J!!!#F4A-3!*!%*`!!!+a&Fa!!N!3S!!!!Y%9d!`#3"#N !!!#m4A8!N!8B!!!!`%9c%!#3"#F!!!$)4A-3!*!%*`!!!14&Fa!!N!3R!!!!m%9 e!*!&,3!!!24&G3#3"5i!!!%!4A8!N!8[!!!")%9Z$!3!!!!`!!!!$)!!N!Z!!!& !+!!!!%9h!*!&+`#3"%9V!!3!!!!a!!!!I)!!N!Gm#!+QNq(rr*!!!3!)P#(rJ$[ M!!#`J3#H1"m!"T!!!3"+U!%!RV!"!&!i!!!!X!%!9$KK!$K)!!!"B!!!!)##!!# `C!!!I'!(08'#!!`iI`!!5!!!'+J"!'b`(`!!J!%!FT!!(`!#1(m!!)!"!)Ji)3# !I!J$TS2Krra1J!!J4A8!N!8b!!!!0%9d!`#3"!)!!!!m4@i-"!!!!$-!!!!-J!# 3#i!!!(`)!!!!4AF!N!8a!*!%4@X!"!!!!$3!!!$8J!#3"h`)!UD6iIrmN!!"!!L 8)Ip`1q-!!)"L!!#)!`!!+!!!!%'#!*3iS3!`1*rrq$J!!!Km#31QK'3!#)!%!!5 8C3!)N!!&!!4#!2r`J'3!#+!%!!b3!'8!#,!&!!bSB3!iJ)%!1MLK!$iih`!!5!! !!@!!!!#!JJ!!X'3!!$KK!$iiR`!'1+!!!$M!!!&)!!!"B!!!!&4J"Mp"JJ!X1(m !"ML"!$k)S3!q1+8!!8J!!!&J!!!!5!!!%$J!!!#!BJ!!X!-!!)!"!*Ji)3#3!(` )!kD$iIrm6S!!)%9d!`#3"#!!!!!84A8!N!8K!!!!D%9d!`#3"!)!!!"`4A8!N!8 L!!!!L%9e!*!&'3!!!+K&G!-!N!3#!!!!Z%9Z$!3!!!!e!!!!$)!!N!Z!!!$8#!! !!%9h!*!&0!#3"%9U!!3!!!!h!!!!I)!!N!Gm#!+QNq(rr*2"rrL3!!%!#*3Krm! l``!!1q3!!*LK!'1)!3"M+!!!!%'#!"Ji!!!kJ(i!!$KMrrq3!(i!!*J$!!#)I`! !J"i!!(`$!!"i!!)"q!!!iR`!"L,m!!%J!!!&J!!!!J!%!5$JK!%"m#!1QJq( rr)2"rrK1J!!J4A8!N!8i!!!!A%9Z$!3!!!!j!!!!$)!!N!Z!!!"m%!!!!%9h!*! &0`#3"%9Z%!%!!!!k!!!!!B!!N!LY,QP&D`!%!!!!1`!!!1b!!*!(I!J#TT2Krrb 6`IriNk(rp*1"rr#3!!%!#*3Krl!l``!!Jq)!!)1#!!#!BJ!!1!-"rj!!!3!iJk) !!$J!!!#!B3!iQ!-!!$KK!$JiRJ!'J,i!!MJ!!!&m"3"3I!!!0&3&fAj)!!!"Nlm !%S!H!!+3!"m!C%J!!%bS(J!!X"m!&MJ!rrq`(`!FJ"m!C*!!(`!`1(m!!%J!!!& J!!!!X(`!!(aJ"c9"JJ!-1')!!%J!!#3iB3!i1*d!!$LJ!!&)!!!"J"m!C#`!!!& !J[q`J'%!1)!"!&Ji)3"3I!J$TS2Krrb$`IriJk(rp)1"rr"1J!!J4A3$!*!%"3! !!#"&G!-!N!3#!!!!*%9d!`#3"$B!!!!S4A3$!*!%0J!!!$4&G3#3"6F!!!"J4A8 !N!8m!!!!N!"&Fa!!N!3k!!!!T%9e!*!&0`!!!,K&EJ`%!!!!23!!!!b!!*!,J!! !l#!!!!"&G`#3"6X!N!4&D`!%!!!!2J!!!K5!!*!(I!J#TVm"rq#3!!%!#*3Krc! l!`!!Jf)!!)1L!!!i'`(rN!!"!+3lf`!!1!!!!)"K!+5B!`!!1(J!!$L"!$JiS!! !5!!!!@!!!!#`I3!!I'!(08'#!!`iB!!!5!!"U)"L!!#)!`!!+!!!!%'#!#`iB!! !L!%!9P3!"[G!JJ!8S!%!B&3!"#&"JJ!)1'!!!94J"Mp!JJ!81!$r2l!G!!!iB!! !5!!"B%J!!!&J!!!!1b-!!$Ki!!!iJ!!"5!!!!@!!!!!l3`!!Id!(0#`!rrp!JJ! B5!!!!@!!!!#`I3!!1i!!!%J!!%JmB'&X1)!!!$KMDA0)!!!"B!!!!(am'hP"JJ! 81(`!!%J!!!&J!!!!5!!!%%J!!!&J!!!!X(d!!$Kk!!")!!!"B!!!!$Kj!!")!!! "B!!!!#JF!!"!JJ!-1'!!!%J!!-!li!!!5!!!1)JE!!"m!!Ge3B)!6$KK!+3iRJ! !Iq8(0$J!!!"m!!FdI+8!8$!&rrpmS#N35!!!!6[r!!%iI!!!1*m!!$Lq!!")!!! "B!!!!,"p!!"mB!Fe3B,rX+JG!!!X!!!!3))!0$Km!!!iJ2rr1,i!!%J!!!&J!!! !X(d!!(aJ"c9!JJ!81'%!T$LH!!!iS!!"5!!!!6Km!!")!!!"B!!!!+JG!!!X!!! !3B)!$$KJ!!")!!!)J'%!T)!"!0Ji)3$3I!J$TVX"rq"1J!!J4A3$!*!%0J!!!"4 &G!-!N!3#!!!!'%9e!*!&2`!!!%"&G!-!N!3F!!!!A%9e!*!&3!!!!+4&G3#3"8% !!!#i4A8!N!9#!!!!d%9e!*!&3`!!!2"&G3#3"83!!!%%4A8!N!9#!!!"%%9e!*! &43!!!5"&G3#3"8B!!!%X4A8!N!8h!!!"H%9e!*!&4`!!!Ba&G3#3"8F!!!'i4A8 !N!8h!!!"f%9e!*!&5!!!!H"&EJ`%!!!!53!!!!b!!*!,J!!#&%!!!!"&G`#3"6i !N!4&D`!%!!!!5J!!!&b!!*!(I!J#TT2Krrb3!!%!#*3Krl!li`!!1'%!2$L"!$K )!!!"I'!(08'#!"!iI`!!5!!!!8J!!"JiI`!!U)%!2)#K!$K)!!!"B!!!!)!"!&J i)3"3I!J$TS2Krra1J!!J4A8!N!8,!!!!(%9e!*!&1`!!!#a&G3#3"8X!!!"!4@i -"!!!!%`!!!!-J!#3#i!!!&`)!!!!4AF!N!9+!*!%4@X!"!!!!%d!!!#FJ!#3"h` )!UD6iIrmNm(rq*!!!3!)P#(r-$[$!!#3!)%!l)2L!!!iB3#!J)%!l$LJ!!")!!! "U"m!!#`!!!""JJ!31(i!!%J!!!&)!!"!1'%!1$L"!)")!!!"B!!!!+JI!!!X!!! !3B)!%$Kq!!")!!!"5!!!'$Kq!!#SJ3#!J+%!JNJ!!!&J!!!!J!%!f$JK!0"m#!1 QJq(rr)2"rrK1J!!J4A3$!*!%!J!!!"a&G3#3"4X!!!!X4A8!N!8l!!!!3%9e!*! &6J!!!&"&G3#3"6X!!!"S4A8!N!9,!!!!I%9Z$!3!!!"2!!!!$)!!N!Z!!!#F%!! !!%9h!*!&63#3"%9V!!3!!!",!!!#')!!N!Gm#!+Q[b(rj*!!!3!)P#(rS$Z$!!! lC!!!1d8!!)2L!!#$SJ!!Jb)!!)!$!!)X!!!"3))!@+Km!!"rB!FdI!-!!%##!"3 X'J!#3))!$$[G!!")!!!J1(d!!$LF!!H)[!!'5!!!!@!!!!#)(!!'Ipd#&$J!!$U B(J!!1!!!!*JH!!%iI3!!5!!"J*1r!"+cI`!@1!$rrl!I!"b6A`!`1(m!!%J!!!& J!!!!X(N!!(aJ"c9"JJ!-1')!!%J!!8arB`FdU"`!!(`$!!"!JJ"3J(m!C)!F!!* m!`!!3))!3$Kp!!!iR!!'L"d!!(`&"h3iT3!"5!!!!@!!!!!X!`!!3))!($J!!$U B(3!!1!!!!*JG!!%iI3!!5!!!m$J!!!#B(3(rL(`!"MJG!Ipr``"31(i!!$LF!!H )[!!'5!!!!@!!!!#6[`!5J"`!!T!!(`"N1!!!1T`HrrprB`FdU"`!!(`$!!"!JJ! iJ"m!C(`D!!"!JJ!X1(i!!6L!!$T)!!!"B!!!!#J$!!""JJ!-1(i!!%J!!(JiIJ! "5!!!F+JF!!#`(`!@1!$rrl!I!"b!(`"NN!!I!$!iI`!!5!!!!@!!!!#`H3!!I'! (08'#!!`iBJ!!5!!!1)JG!!"m!!GdIm$`8$Kq!!!iR3!"L,d!!(bP"h4)!!!"B!! !!)!I!$!X!!!#3),r8$Kq!!#!!3"S1#%!B(`)!kDl)IrN6S!!)%9d!`#3"!8!!!! F4A3$!*!%0J!!!#"&G!-!N!3#!!!!*%9e!*!&'3!!!'"&G3#3"6`!!!#J4A-3!*! %1J!!!,4&G3#3"9!!!!$`4A8!N!8C!!!"1%9e!*!&83!!!AK&G3#3"6`!!!'d4A- 3!*!%1J!!!FK&G3#3"6J!!!(X4@i-"!!!!&)!!!!-J!#3#i!!!KJi!!!!4AF!N!9 ,!*!%4@i&!3!!!&-!!!!-J!#3"a%P-$4S@#8`1&Jk!%9V!!3!!!"8!!!!G)!!N!G m#!+QNq(rr*2"rrL3!!%!#*3Krm!li`!!Jm)!!$Kq!!#!JJ!!U,m!!)$I!!*)!!! "B!!!!$Kq!!iiR`!(L,m!"NJ!!!&J!!!!1)!!!)JI!!CmB2)8Q)-!$MKq!!#!!3" )1#%!3(`)!kD$iIrmJm(rq%k!!#"&G!-!N!3f!!!!'%9d!`#3"&-!!!!J4A8!N!8 Y!!!!,%9e!*!&'3!!!%"&EJ`%!!!!93!!!!b!!*!,J!!!G"!!!!"&G`#3"93!N!4 &D`!%!!!!2`!!!)L!!*!(I!J#TT2Krrb6`IriN!!"!!L8)Ir!1m-!!$[N!!#BS3" MU!-!!,!%!"D!!`!#N!!%!$!i(J!'N!!%!"+)!3"M+!!!!%'#!!`i!2rr5!!!#$J !!!#`(`!F1!!!!*JI!"miI`!!5!!!!@!!!!#!JJ!!X'3!!)!"!%Ji)3"!I!J$TS2 Krrb$`Iri6S!!)%9e!*!&2!!!!'"&G!-!N!3#!!!!D%9Z$!3!!!"@!!!!$)!!N!Z !!!#)%!!!!%9h!*!&2`#3"%9V!!3!!!!@!!!!I)!!N!Gm#!+QNq(rr*!!!3!)P#( r`*!!B3"B1q3!!)!%!!)X!!!"3))!%$Kr!!")!!!"5!!!-$Kr!!#!JJ!!1+!!!8J !!!'!BJ!!U!-!!#`!!!"!JJ!3J')!!)!$!'53!"m!!S"K!&JiR`!!5!!!!B!"!%J i)3"!I!J$TS2Krra1J!!J4A8!N!86!!!!+%9d!`#3"!8!!!!d4A8!N!8r!!!!2%9 d!`#3"!)!!!"!4A3$!*!%"3!!!&"&G3#3"3J!!!"N4@i-"!!!!&F!!!!-J!#3#i! !!(`)!!!!4AF!N!8@!*!%4@X!"!!!!%i!!!%%J!#3"h`)!UD6iIrmNm(rq*!!!3! )P#(r`*!!B3"B1m3!!)2L!!!iIJ!!5!!!!94J"Mp"JJ!J1!!!!,!H!!!i!!!"N!! H!!)i!!!!Q"i!"NJ!!*JiIJ!!1*m!!$LJ!!")!!!"I'!(08##!)!iB!!!L"m!(P3 !"[G!JJ!8S"m!+&3!"#&"JJ!)1'!!!94J"Mp"JJ!d1(i!!$LI!!")!!!"B!!!!(a J"c9!JJ"!1(i!!$LI!!!iS!!!5!!!!AaJ"c9!JJ!SL"m!(P3!"[G!JJ!81!$XAi" L!!#`!`!!5!!!$)!I!$#3!"i!!S"K!&JiRJ!!5!!!!B!"!%Ji)3"!I!J$TS2Krrb $`Iri6S!!)%9d!`#3"!8!!!!F4A8!N!88!!!!*%9e!*!&2`!!!&K&G3#3"9J!!!# 84A8!N!8r!!!!X%9d!`#3"!)!!!$-4A8!N!8)!!!!k%9Z$!3!!!"C!!!!$)!!N!Z !!!%%%!!!!%9h!*!&6J#3"%9V!!3!!!![!!!!H)!!N!Gm#!+QNq(rr*2"rrL6SIr dN!!"!!L8)Ip`N!"K!+Jla!!!1k8!!)2L!!")!!!F1'%!1$LH!!")!!!"U"m!!#` !!!"!JJ!3,"d!!$Zprrp"JIrJJ'%!U$LH!!")!!!"J!%!Q$JK!*!!I!J$TS2Krrb $`IriJk(rp%k!!#"&G!-!N!3#!!!!*%9e!*!&&J!!!$4&G3#3"3J!!!"B4@i-"!! !!&S!!!!-J!#3#i!!!(JB!!!!4AF!N!8[!*!%4@X!"!!!!&X!!!"%J!#3"h`)!UD 3!!%!#*3Kri#3!'%!Q*!!J3#FN!#K!+!iB3!iJ)%!R%J!!!'!B3#B1)%!1)#K!+" )!!!"J!%!L$JK!)"m#!1Q6S!!)%9e!*!&#!!!!#"&G3#3"5m!!!!`4@i-"!!!!&` !!!!-J!#3#i!!!%3!N!4&G`#3"9X!N!4&D`!%!!!!@!!!!)#!!*!(I!J#TT2Krrb 3!!%!#*3Krl#3!'%!D$[N!!#!BJ!!L!-!!#J!!!""JJ!mL"m!(P3!"[G!JJ!`S"m !+&3!"#&"JJ!NJ'%!D$L!!!%iS3!j1-%!1%J!!!&J!!!!I'-(0%J!!!JiB!!!J)) !!,"N!!#!!3"B1#%!8(`)!kD$iIrm6S!!)%9d!`#3""`!!!!B4A8!N!9G!!!!8%9 d!`#3"!)!!!"N4@i-"!!!!&i!!!!-J!#3#i!!!)!)!!!!4AF!N!9B!*!%4@X!"!! !!"d!!!"mJ!#3"h`)!UD6iIrmNm(rq*!!!3!)P#(r`$[$!!#BJ3"IJq)!!)##!!! iS!!!5!!!!DJI!!!X!!!!3B)!*)J"!&mS!!!!3B)!%$KJ!!#`I`!!5!!!'+Kr!!" )!!!31(i!!)##!!")!!!"J!%!5$JK!%"m#!1QJq(rr)2"rrK1J!!J4A3$!*!%!J! !!"a&G!-!N!3&!!!!)%9e!*!&2`!!!#K&G!-!N!3&!!!!A%9e!*!&@!!!!'"&EJ` %!!!!A`!!!!b!!*!,J!!!I"!!!!"&G`#3"4d!N!4&D`!%!!!!,J!!!&5!!*!(I!J #TT2Krrb3!!%!#*3Krm#3!'%!@)"K!&L!JJ!!1+!!!%J!!!&mB!FdI!!!0&3IfAi i!!!!J')!!,!$!!!iI`!!J!%!5$JK!%"m#!1QJq(rr%k!!#"&G!-!N!3&!!!!'%9 e!*!&2`!!!#"&G!-!N!3#!!!!0%9Z$!3!!!"J!!!!$)!!N!Z!!!"8#!!!!%9h!*! &,J#3"%9V!!3!!!"K!!!!L)!!N!Gm#!+QNq(rr*2"rrL6SIrdN!!"!!L8)Iq`1m- !!$[N!!!lS!!!U'-!!+J%!!"m!`!!3))!1)"q!!+!(`!#I!-!!%##!#JiIJ!'1*m !"MLJ!!!i`!!"5!!!!@!!!!"8B!Br3B)!#$ZJ!!%iI3!!J!%!@$JK!&"m#!1QJq( rr)2"rrL$SIrd6S!!)%9e!*!&)J!!!&4&EJ`%!!!!BJ!!!!b!!*!,J!!!L"J!!!" &G`#3"@%!N!4&D`!%!!!!B`!!!)L!!*!(I!J#TT2Krrb6`IriNk(rp*!!!3!)P#( rX$[$!!!lj!!!1k!!!+KM!!#S"!!!I!-!!%##!$5!IJ!#J"m!!R`$!!"!JJ!N1(i !"MLI!!BiS!!!1-!!!8J!!!&J!!!!9'!'2d##!!JlS!!"1(d!!)!"!&Ji)3"3I!J $TS2Krrb$`IriJk(rp%k!!#"&G3#3"5)!!!"84@i-"!!!!'3!!!!-J!#3#i!!!)J B!!!!4AF!N!9M!*!%4@X!"!!!!'8!!!#3!)!!N!Gm#!+QNq(rr*2"rrL3!!%!#*3 KrZ!l``!!N!#"!6b$iJ!!1'%!J)#"!6`iS!!"5!!!!6KK!-JiJ3#!5!!!!8J!!#` iB3$)1*i!!%J!!!&8B!Br3B)!$$KJ!!&)!!!J1'%!1$L"!-K)!!!"U"m!!#`!!!" "J[r31'!!!)!"!5Ji)3%JI!J$TS2Krrb$`Iri6S!!)%9d!`#3"!)!!!!F4A8!N!9 E!!!!,%9e!*!&#!!!!$K&G3#3"@%!!!")4A8!N!8@!!!!C%9Z$!3!!!"Q!!!!$)! !N!Z!!!#3!"!!!!"&G`#3"@8!N!4&D`!%!!!!C`!!!+b!!*!(I!J#TT2Krrb6`Ir iN!!"!!L8)Ip`N!"K!+Jlj!!!N!#K!,!laJ!!,"i!2d#"!"3i!2rEJ')!!,!$!!" )!!"31'%!1$LI!!")!!!"J')!!+J$!!!X!!!!3))!0$Kr!!H!J3#`Qpm!"PI&"Mj )!!!"B!!!!)!I!!)X!!!"3))!%$Kr!!!iJ2rr5!!!!B"K!+JiR`!!5!!!!B!"!*J i)3#3!(`)!kD$iIrmJm(rq%k!!#"&G!-!N!3#!!!!-%9e!*!&6J!!!%4&G!-!N!3 #!!!!5%9e!*!&'3!!!'K&G3#3"4!!!!#%4A8!N!8)!!!!N!"&EJ`%!!!!D!!!!!b !!*!,J!!!V"!!!!"&G`#3"@F!N!4&D`!%!!!!#3!!!%5!!*!(I!J#TT2Krrb3!!% !#*3Krm#3!'%!@*!!J3"F1q8!!)"K!&L!J3"F1,m!!BMI!!")!!!"J!%!5$JK!%" m#!1QJq(rr%k!!#"&G3#3"@F!!!!X4@i-"!!!!'N!!!!-J!#3#i!!!%3)!!!!4AF !N!8*!*!%4@X!"!!!!'S!!!"%J!#3"h`)!UD3!!%!#*3Kri#3!'%!Q*!!J3#FN!# K!+!iB3!iJ)%!R%J!!!'!B3#B1)%!1)#K!+")!!!"J!%!L$JK!)"m#!1Q6S!!)%9 e!*!&#!!!!#"&G3#3"3N!!!!`4@i-"!!!!'X!!!!-J!#3#i!!!%3!N!4&G`#3"@S !N!4&D`!%!!!!E!!!!&#!!*!(I!J#TT2Krrb3!!%!#*3Krm#3!'%!@*!!J3"F1q8 !!$Kr!!")!!!"B!!!!$M$!!#!B3"BJ)%!A$Lr!!")!!!"J!%!5$JK!%"m#!1QJq( rr%k!!#"&G3#3"@d!!!!J4A8!N!9R!!!!1%9Z$!3!!!"Z!!!!$)!!N!Z!!!"3#!! !!%9h!*!&E!#3"%9V!!3!!!"[!!!!4)!!N!Gm#!+QN!!"!!L8)Iq!N!"K!*L3!)% !R*!!S3#J1'%!1)#"!*a)!!!"J'%!Q$L"!$L!S3#J5!!!!B!"!)Ji)3#!I!J$TNk !!#"&G3#3"3J!!!!J4A8!N!9X!!!!-%9Z$!3!!!"`!!!!$)!!N!Z!!!"%!*!%4AF !N!9[!*!%4@X!"!!!!(%!!!#JJ!#3"h`)!UD6iIrmNm(rq*!!!3!)P#(rF*!!B3# SN!#"!+`la3!!Jq)!!$KK!$L!J3#X5!!!!B!"!$SX!!!"3))!&$KK!$JiRJ!!5!! !!8J!!$5S!3!iX"m!&S!"!$U3!"m!-$J"!$k3!"m!%V2I!"`iI`!!5!!!!@!!!!# !JJ!!X'3!!)"K!+JiJ3!i5!!!!B!"!*Ji)3#3!(`)!kD$iIrmJm(rq%k!!#"&G!- !N!3&!!!!)%9e!*!&#!!!!#a&G3#3"4!!!!"%4A8!N!8m!!!!E%9d!`#3"!)!!!" d4A8!N!8)!!!!K%9Z$!3!!!"b!!!!$)!!N!Z!!!#J%!!!!%9h!*!&F3#3"%9U!!3 !!!"c!!!!d)!!N!Fi!!!!N!!&!!")!!#dJ!8!!&3!)$D3!!8!!)J$!!"m!!Gd,!! !4d#!!#3X!!!k3)!!%#`!!$"!J!!S5!!!H#`!!%&!J!"85!!!E#`!!'G!J!"N,!! !B8#!!#4)!!"BJ18!!)J$!!"m"JGd1!Erd(cJ!hL3!!8!!%J!!%5!j3!!L!-!!(` '"h3i"[qTI1!$H*!!"3!!5!!!+)$P!!#)!`!!I!B(G$J'rmPmi!0iN!!&!!")!!! -1'!!!%k!!#!iB`!",!3!!$L%rrp!J[p)1'!!!8k!!#"&D`!%!!!!G!!!!G#!!*! (I!J#TT2Krrb6`IriNk(rp*!!!3!)P#(rB$[$!!!lj!!!Q+%!`i1L!!#)"!!!,!! !%6[r!!&"JJ!-1'!!!%J!!AJiI`!!1)!!"$LK!)")!!!"9'!'2d'#!9b!!3#!X"i !!$Kr!!3iJ!!)1+%!J%J!!!&8B!Br3B)"2)!"!)#3!"i!!S`I!!`X!!!k3))"+$K r!!%iJ!!k5!!!!@!!!!!S!`!!3))"%)JI!!&m!!Ge3))!'$KK!$JiRJ!!5!!!!6K J!!&)!!$d1(m!!8J!!!&J!!!!Q(m!!)"L!!#)!`!!+!!!!%'#!%#SIJ!!J*i!!ML r!!!ihJ!!5!!!!@!!!!#`I3!!I'!(08'#!$LS(3!!,!$re8##!#`i!!!!X"d!!%J !!#!iIJ!'1*m!!)JI!!"m"3Gd1+8!!8J!!!&J!!!!L!%!`bJ!!!"!JJ!JJ')!!)J $!!!S!!!!3B)!%$Kq!!!iJ!!"5!!!!6Kq!!BiR`!!1+!!!$M!!!&)!!!"B!!!!&4 J"Mp"JJ!J1(i!"MLI!!#)(`!!I!8(G$LP!!&)!!!"B!!!!$J!!$UB(`!!1'!!!8J !!!JiB!!!J!%!U$JK!+"m#!1QJq(rr)2"rrL$SIrd6S!!)%9d!`#3"!)!!!!N4A8 !N!9c!!!!6%9e!*!&F`!!!'a&G3#3"9%!!!#84A8!N!8@!!!!Z%9e!*!&E3!!!-K &G!-!N!3J!!!!e%9e!*!&)3!!!24&G3#3"4N!!!%d4A3$!*!%(!!!!8K&G3#3"4d !!!&J4A8!N!8L!!!"G%9e!*!&'3!!!CK&EJ`%!!!!G3!!!!b!!*!,J!!"d"J!!!" &G`#3"A3!N!4&D`!%!!!!GJ!!!Y5!!*!(I!J#TVmKrq53!!%!#*3Kra!l``!!1q3 !!$XP!!#$3J!!Ji)!!%J!!!&8B!Br3B)!$$Kq!!")!!+-1(m!!%J!!!&J!!!!N!" K!-L$BJ!!J')!!)J$!!!S!!!!3B)!l$Kq!!")!!!"1(m!!$LE!!")!!!"B!!!!+K q!!#!RJ!#1,X!!$MH!!")!!!"B!!!!,"m!!"mB!Fe3B)!*%#!!+`X!2r93B)!#%J !!+!i!!!!X"`!!$Kq!!")!!)-9b!'2d##!"b)'J!!+!!!!%'#!"!iIJ!!1)!!!8J !!!%iI`!!1)!!1NJ!!!&J!!!!I(dEH8'#!!Jlr3!"1(m!!$LE!!")!!!"B!!!!$K q!!BiQ`!!1+!!!$M!!!&)!!!"B!!!!&4J"Mp"JJ!F1(i!"MLE!!#)Z`!!1+8!!8J !!!&J!!!!1(i!!%J!!B#)(`!!,!!!1N'#!"`iI`!!1)!!1NJ!!!&J!!!!I(dEH8# #!#!iIJ!!5!!!!BJI!!!X!!!k3))!D$[r!!&)!!"JI"rS8#`!!$j!J3!81!$rfl! F!!!iIJ!!5!!"*$Kq!!FiR`!!I,rS8$J&!!'B(J!'9!8'2NJ!!!&J!!!!1(i!!$L !rrp)!!!"I'!(08'#!!`iIJ!!5!!!k$[p!!'S(!!!,!!!!%'#!+JiIJ!!5!!!d)J I!!!X!!!k3))!0$Kq!!!iJ!!"5!!!!6KK!)!iRJ!!5!!!!DJF!!!X!!!!1rm!!8' #!'`iIJ!!5!!!P$Kr!!!iJ!!k5!!!!@!!!!"mI4Yj3B)!$$J!!!#B(3!!1'%!1$L H!!!i[`!!5!!!!5JG!!""JJ!-1!!!1TJG!!#S(!!!,!!!!%'#!!`iIJ!!5!!!3#J G!!""JJ!81rd!!BJI!!"m!!Ge3),rA&FJ"Mp!JJ!FL"S!!#J!!!""JJ!31(i!!$L !!!&)!!!"1(i!!)!"!2Ji)3$`I!J$TVXKrq41J!!J4A3$!*!%(!!!!"a&G!-!N!3 #!!!!)%9e!*!&G!!!!#4&G3#3"@d!!!!m4A3$!*!%0J!!!%K&G!-!N!3J!!!!6%9 e!*!&$J!!!'"&G3#3"AF!!!"X4A8!N!8K!!!!K%9e!*!&(3!!!04&G3#3"AJ!!!$ J4A8!N!9h!!!!r%9e!*!&)J!!!44&G3#3"4N!!!%d4A8!N!94!!!"@%9e!*!&&3! !!@a&G3#3"4N!!!'i4A8!N!83!!!"b%9e!*!&(3!!!JK&G3#3"4B!!!)84A8!N!9 4!!!#1%9e!*!&E!!!!Pa&G3#3"4d!!!+i4@i-"!!!!(N!!!!-J!#3#i!!!Y3i!!! !4AF!N!9f!*!%4@X!"!!!!(S!!!!iJ!#3"h`)!UD3!!%!#*3Kri#3!'%!Q$KK!$L !J3#B1+!!!8J!!!%iB3!i5!!!!B!"!)Ji)3#!I!J$TNk!!#"&G3#3"4X!!!!F4A8 !N!8l!!!!*%9Z$!3!!!"l!!!!$)!!N!Z!!!!i!*!%4AF!N!9k!*!%4@X!"!!!!(` !!!!iJ!#3"h`)!UD3!!%!#*3Kri#3!'%!Q$KK!$L!J3#B1+!!!8J!!!%iB3!i5!! !!B!"!)Ji)3#!I!J$TNk!!#"&G3#3"4X!!!!F4A8!N!9+!!!!*%9Z$!3!!!"p!!! !$)!!N!Z!!!!i!*!%4AF!N!9m!*!%4@X!"!!!!(i!!!"!J!#3"h`)!UD3!!%!#*3 Kri#3!'%!Q*!!J3#F1'%!1)#"!*JiS!!"5!!!!6KK!$L!J3#F5!!!!B!"!)Ji)3# !I!J$TNk!!#"&G3#3"4X!!!!J4A8!N!90!!!!,%9Z$!3!!!"r!!!!$)!!N!Z!!!" !!*!%4AF!N!9q!*!%4@X!"!!!!)!!!!!iJ!#3"h`)!UD3!!%!#*3Kri#3!'%!Q$K K!$L!J3#B1+!!!8J!!!%iB3!i5!!!!B!"!)Ji)3#!I!J$TNk!!#"&G3#3"4X!!!! F4A8!N!98!!!!*%9Z$!3!!!#"!!!!$)!!N!Z!!!!i!*!%4AF!N!@!!*!%4@X!"!! !!))!!!"`J!#3"h`)!UD3!!%!#*3Kri#`B3#DN!#"!*`iB3!iU)%!QNJ!!!'!B3# F1+2rq$L"!$!i!!!)I!N$TS4N!!L!"!!%P'8!#*!!"3!%3J$rm)"N!!LJ"!!-N!" P!!L`"3!-J')!!+KM!!#!!3#)1#%!J(`)!kC1J!!J4A8!N!8a!!!!(%9d!`#3"!) !!!"B4@i-"!!!!)-!!!!-J!#3#i!!!(!!N!4&G`#3"B)!N!4&D`!%!!!!K!!!!(b !!*!(I!J#TT!!!3!)P#(rJ,"K!*U3!)%!R*!!S3#J1'%!1+L"!*U!S3#F1-!!!%J !!!'!B3#J1+2rq$L"!$!i!!!)I!N$TS4N!!L!"!!%P'8!#*!!"3!%3J$rm)"N!!L J"!!-N!"P!!L`"3!-J')!!+KM!!#!!3#)1#%!J(`)!kC1J!!J4A8!N!8N!!!!+%9 d!`#3"!)!!!"N4@i-"!!!!)8!!!!-J!#3#i!!!(`!N!4&G`#3"B3!N!4&D`!%!!! !KJ!!!(5!!*!(I!J#TT!!!3!)P#(rJ*!!B3#BN!#"!*`iB3!iJ)%!Q$LJ!!")!!! "J'%!R$LMrrJiJ3!`1!!!#(`*!kD%C!!)J!3!"*4P!!L3!!8!"%)!rr#!C!!)S!3 !$*!!C3!)X!8!$)"L!!#SB`!!J!%!L$JK!)"m#!1Q6S!!)%9e!*!&GJ!!!#"&G!- !N!3#!!!!A%9Z$!3!!!#(!!!!$)!!N!Z!!!"d!*!%4AF!N!@'!*!%4@X!"!!!!)J !!!#!J!#3"h`)!UD3!!%!#*3Kri#3!'%!Q,#"!*k3!+%!S*!!`3#N1'%!1)#"!*L SS3#HJ-%!S%J!!!'!B3#N1+2rq$L"!$!i!!!)I!N$TS4N!!L!"!!%P'8!#*!!"3! %3J$rm)"N!!LJ"!!-N!"P!!L`"3!-J')!!+KM!!#!!3#)1#%!J(`)!kC1J!!J4A8 !N!8V!!!!,%9d!`#3"!)!!!"S4@i-"!!!!)N!!!!-J!#3#i!!!)!!N!4&G`#3"BJ !N!4&D`!%!!!!LJ!!!)#!!*!(I!J#TT2Krrb3!!%!#*3Krc!li`!!1'%!J$LI!!! iS!!!5!!!!6KK!$JiJ3#!5!!!!6LrrrJiJ3!`1!!!#(`*!kD%C!!)J!3!"*4P!!L 3!!8!"%)!rr#!C!!)S!3!$*!!C3!)X!8!$)"L!!#SB`!!J!%!f$JK!0"m#!1QJq( rr%k!!#"&G3#3"4X!!!!J4A8!N!8@!!!!,%9d!`#3"!)!!!"N4@i-"!!!!)X!!!! -J!#3#i!!!)!)!!!!4AF!N!@+!*!%4@X!"!!!!)`!!!#)J!#3"h`)!UD6iIrmN!! "!!L8)Im`1q-!!*!!J3$X1'%!J$LI!!!iS!!!5!!!!6KK!$JiJ3#!J+%!l%J!!!% i[rri1)%!-$J!!!Km#31QK'3!#)!%!!58C3!)N!!&!!4#!2r`J'3!#+!%!!b3!'8 !#,!&!!b!BJ!!U'-!!)!"!0Ji)3$3I!J$TS2Krra1J!!J4A8!N!8E!!!!*%9e!*! &DJ!!!$4&G!-!N!3#!!!!E%9Z$!3!!!#0!!!!$)!!N!Z!!!#)#!!!!%9h!*!&M!# 3"%9V!!3!!!#1!!!!I)!!N!Gm#!+QNq(rr*2"rrL6SIrdN!!"!!L8)Ip`1k-!!$[ %!!!iB3!i1*d!!$LJ!!")!!!"1'%!1$LH!!!iS!!!5!!!!6[M!!"ri!Fe3B)!$$K r!!")!!!31"d!"T!!(J!51'!!!)!"!*Ji)3#3!(`)!kD$iIrmJm(rq)1Krr41J!! J4A8!N!8E!!!!,%9e!*!&2`!!!$a&EJ`%!!!!M`!!!!b!!*!,J!!!I"J!!!"&G`# 3"Bi!N!4&D`!%!!!!N!!!!!#)J!#3"h`)!UD6iIrmN!!"!!L8)Im`1q-!!,#"!1i iB3#!1*m!!$LJ!!")!!!"1'%!1$L"!)#SS3$Z5!!!!6LrrrJiJ3!`1!!!#(`*!kD %C!!)J!3!"*4P!!L3!!8!"%)!rr#!C!!)S!3!$*!!C3!)X!8!$)"L!!#SB`!!J!% !f$JK!0"m#!1QJq(rr%k!!#"&G3#3"4X!!!!N4A8!N!9a!!!!0%9d!`#3"!)!!!" X4@i-"!!!!*%!!!!-J!#3#i!!!)J)!!!!4AF!N!@3!!#3"%9U!!3!!!#5!!!!B)! !N!Gm#!+QNq(rr*!!!3!)P#(rF*!!B3#S1!!!!*!!!3"+1'%!1%J!!!&J!!!!1q- !!(rJ"c9"JJ!-1(m!!%J!!"5S!3"1J'%!U,!$!!!iB!!!J!%!Q$JK!*!!I!J$TS2 Krra1J!!J4A8!N!@6!!!!)%9Z$!3!!!#8!!!!$)!!N!Z!!!"J#!!!!%9h!*!&NJ# 3"%9V!!3!!!#9!!!&q)!!N!Gm#!+Q[d(rk*!!!3!)P#(lF*!!B35SN!#""+`iB33 SJ)%%U$LJ!!&)!!!"1'%$i)#""+`iS!!"5!!!!6KK!4!iJ32J1+!!!8J!!!%iB31 B1)%"%%J!!!'S!33S,!!!!%##!#!iB33S5!!!!6[M!!"ri!Fe3B)!$$Kr!!")!!9 XU!%$i#`!!!"!JJ!J1'%$i%J!!!%li`!!Iq!(08'#!!`iI`!!5!!&4+KK"#LS!32 JI!-!!%'#!!`iB2VT5!!&,$KK"#iiJ32Q1+!!!$M!!!&)!!!"B!!!!&4J"Mjm!!! d9"lCIS"K"#U!!32LI'-!8$!$rrprS"N31'%$i$L"!RJiS!!!5!!!!AaJ"c4m!!! d9"cCIMKK"#JiJ3,N1+!!!%J!!!%li`!!Iq!(08'#!!`iI`!!5!!%Y)J"!`*8!!E h3B)!)$KK"#JiJ32J5!!!!94J"Mp"JJ!-1'$rKNJ!")`lB!!!L!%$!P3!"[G!JJ! 8L!%$!P3!"rp"JJ!)1f!!!9GJ"Mp"JJ!BU'%%+)#""#SiS33Z5!!!!@!!!!"A`!B r3))!&&HJ"Mp!JJ!-1q!!!%J!!maAJ!Br3B)!f)J"!TC8!!Eh3B)!'+!"!U`S!!! !3B)!$$KJrp&)!!331'%!b$b!9%fSS32JJ-%$iML%8%C)!!!"1+%#+$L$rrJi!!! )I!N$TS4N!!L!"!!%P'8!#*!!"3!%3J$rm)"N!!LJ"!!-N!"P!!L`"3!-1d!!!)J "!TC8!!Eh3))!&)J"!TC8!!Ir3B)!#$Y!!!&A3!Br3B)!'+KK!q#!J32L1+%$jNJ !!!&J!!!!U'%$i)#"!q)iS32Q1-%#0NJ!!!&J!!!!1q-!!(rJ"c9"JJ!-1(m!!%J !!eaAS!Br3))!*+KK"#L!J33U1+%%,MM"!qC)!!!"B!!!!$[M!!")!!*X9m!'2d# #!#LSB33SJ)%%+MLK"#k!`31D11%$RNJ!!!&J!!!!1q-!!%J!!N!iB3#!U)%%+)# K"#Si`32Q11!!!%J!!!%iS30)1)2rq$J!!!Km#31QK'3!#)!%!!58C3!)N!!&!!4 #!2r`J'3!#+!%!!b3!'8!#,!&!!`iB3035!!!!94J"Mp!JJ"XU'%%+)#""#SiS33 Z1-%$jNJ!!!&J!!!!1q-!!(rJ"c9!JJ(!U'%%+)#""#SiS32QJ-%$QMMK!jj)!!! "B!!!!$[M!!"ri!Fe3B)"Q+KK"#L!J33U1+%$jMM""#j)!!!"B!!!!%J!!A`iB3( S2)"86DLK!q#!`32L1)434NJ!!!%iB30@1)%"lSLK!HiiT3!"5!!!!@!!!!")!!" -1'%"S$b!9%fSS3(SJ-%"kML%8%C)!!!"1'%$9ML"!DD)S3'Q1+8!!8J!!!&J!!! !1'%"lML"!DD)S3'Q1+8!!8J!!!&J!!!!1'%$8%J!!!&8B!Br3),rV$KK!HK)!!! "9'!'2d##rjbSB33SJ)%%+MLK"#ii`30@5!!!!@!!!!!li`!!Iq!(08##!,bSB33 SJ)%%+MLK!eD!`31D11%$RNJ!!!&J!!!!1q-!!(rJ"c9"JJ!JU'%%+)#""#SiS30 @1-%%,NJ!!!&J!!!!5!!!H+KK!q#!J32L1+%$9MM"!qC)!!!"B!!!!$[M!!"ri!F e3B)!9$KK!$JiJ33S1+!!!8J!!!%iB3&B1)%!1%J!!!'SB32JJ)%$iMLK!eD!`3& D11%"ANJ!!!&J!!!!U'%%+)#""#SiS30@1-%%,NJ!!!&J!!!!9i!'2d'#!&Kri!F e3B)!2+KK!M#!J3)b1+%#0MM"!qC)!!!"B!!!!&G!"Mp"JJ!`U'%$i)#"!q)iS32 Q5!!!!@!!!!")!!!BU'%#-)#"!M)iS3)f5!!!!@!!!!"ri!Fe3))!+&I!"Mp!JJ! JU'%$i)#"!q)iS32Q1-%$jNJ!!!&J!!!!1q-!!&GJ"Mp"JJ!iIq!(08'#!"bSB33 SJ)%%+MLK"#j)!!!"B!!!!%J!!"LSB32JJ)%$iMLK!qC)!!!"B!!!!$Kr!!#!!35 B1#%%N!"m#!1QZd(rk%k!!#"&G3#3"4X!!!!N4A8!N!8E!!!!0%9e!*!&@`!!!%4 &G3#3"3J!!!"34A8!N!@5!!!!C%9e!*!&NJ!!!)a&G3#3"5)!!!$-4A8!N!8r!!! "!%9e!*!&2`!!!4a&G3#3"@8!!!&)4A8!N!@@!!!"N!"&G3#3"5X!!!(X4A8!N!@ @!!!#@%9e!*!&P`!!!R"&G3#3"CF!!!+N4A8!N!@B!!!#d%9e!*!&(`!!![4&G3# 3"5i!!!-`4A8!N!@A!!!$6%9e!*!&Q!!!!h4&G3#3"CF!!!1B4A8!N!8V!!!$Z%9 e!*!&'3!!!ma&G3#3"5X!!!2X4A8!N!8C!!!%!%9e!*!&'3!!""K&G3#3"5i!!!3 N4A8!N!8Z!!!%0%9e!*!&P`!!"&"&G3#3"CJ!!!4i4A8!N!@A!!!%R%9e!*!&P`! !",K&G3#3"9X!!!6B4A8!N!8)!!!%j%9e!*!&Q!!!"2a&G3#3"CF!!!884A8!N!@ A!!!&2%9e!*!&Q3!!"9K&G3#3"CS!!!9`4A8!N!@A!!!&Q%9e!*!&Q3!!"F"&G3# 3"CN!!!AB4@i-"!!!!*X!!!!-J!#3#i!!"IJ`!!!!4AF!N!@9!*!%4@X!"!!!!*` !!!#3!)!!N!Gm#!+QNq(rr*2"rrL3!!%!#*3Krh!l``!!Jq)!!$KK!$JiRJ!!1+! !!%J!!!'S(`!!,!!!!%'#!!bSI`!!5!!!2$LqrrJiJ3!`1!!!#(`*!kD%C!!)J!3 !"*4P!!L3!!8!"%)!rr#!C!!)S!3!$*!!C3!)X!8!$$KJ!!#!!3#B1#%!N!"m#!1 QJq(rr)2"rrK1J!!J4A3$!*!%!J!!!"K&G3#3"4X!!!!S4@i-"!!!!*d!!!!-J!# 3#i!!!*!!%!!!!%9h!*!&R!#3"%9V!!3!!!#H!!!!I)!!N!Gm#!+QNq(rr*!!!3! )P#(r!*!!B3%B1'%!T)#"!4JiS!!"5!!!!6KK!+3iJ3!i1+!!!8J!!!%li`!!Iq! (08'#!!`iI`!!5!!!*$KK!)4)!!!"B!!!!)!"!*b3!!%!D$KK!$K)!!!"B!!!!)! "!3Ji)3%!I!J$TS2Krra1J!!J4A8!N!8E!!!!)%9e!*!&2`!!!$"&G3#3"Cm!!!" -4A8!N!@J!!!!B%9Z$!3!!!#K!!!!$)!!N!Z!!!"m#!!!!%9h!*!&RJ#3"%9X"3% !!!!f!!!#!)!!N!G&E"!"!!!!+!!!!!'!!*!(4@`3"!!!!#F!!!!%J!#3"d9Y"33 !!!!&!!!!E)!!N!G&E38#!!!!!`!!!!+!!*!(4@d&!J!!!!)!!!!#J!#3"d9[#J3 !!!#L!!!!#)!!N!p&GJ#3"Ci!N!4&GJm!N!5M!!!!"%9[#J3!!!#N!!!!#)!!N!p &GJ#3"C`!N!4&GJm!N!5M!!!!"%9[#J3!!!#P!!!!#)!!N!p&GJ#3"C8!N!4&GJm !N!5M!!!!"%9[#J3!!!#Q!!!!#)!!N!p&GJ#3"C!!!*!%4AB2!*!%S`!!!!4&E`S %!!!!T`!!!!L!!*!24AB!N!@1!*!%4AB2!*!%S`!!!!4&E`S%!!!!U!!!!!L!!*! 24AB!N!@-!*!%4AB2!*!%S`!!!!4&E`S%!!!!U3!!!!L!!*!24AB!N!@+!*!%4AB 2!*!%S`!!!!4&E`S%!!!!UJ!!!!L!!*!24AB!N!@)!*!%4AB2!*!%S`!!!!4&E`S %!!!!U`!!!!L!!*!24AB!N!@'!*!%4AB2!*!%S`!!!!4&E`S%!!!!V!!!!!L!!*! 24AB!N!@%!*!%4AB2!*!%S`!!!!4&E`S%!!!!V3!!!!L!!*!24AB!N!@#!*!%4AB 2!*!%S`!!!!4&E`S%!!!!VJ!!!!L!!*!24AB!N!@!!*!%4AB2!*!%S`!!!!4&E`S %!!!!V`!!!!L!!*!24AB!N!9q!*!%4AB2!*!%S`!!!!4&E`S%!!!!X!!!!!L!!*! 24AB!N!9m!*!%4AB2!*!%S`!!!!4&E`S%!!!!X3!!!!L!!*!24AB!N!9k!*!%4AB 2!*!%S`!!!!4&E`S%!!!!XJ!!!!L!!*!24AB!N!9f!*!%4AB2!*!%S`!!!!4&E`S %!!!!X`!!!!L!!*!24AB!N!9d!*!%4AB2!*!%S`!!!!4&E`S%!!!!Y!!!!!L!!*! 24AB!N!9a!*!%4AB2!*!%S`!!!!4&E`S%!!!!Y3!!!!L!!*!24AB!N!9[!*!%4AB 2!*!%S`!!!!4&E`S%!!!!YJ!!!!L!!*!24AB!N!9X!*!%4AB2!*!%S`!!!!4&E`S %!!!!Y`!!!!L!!*!24AB!N!9U!*!%4AB2!*!%S`!!!!4&E`S%!!!!Z!!!!!L!!*! 24AB!N!8*!*!%4AB2!*!%S`!!!!4&E`S%!!!!Z3!!!!L!!*!24AB!N!9R!*!%4AB 2!*!%S`!!!!4&E`S%!!!!ZJ!!!!L!!*!24AB!N!9P!*!%4AB2!*!%S`!!!!4&E`S %!!!!Z`!!!!L!!*!24AB!N!9M!*!%4AB2!*!%S`!!!!4&E`S%!!!![!!!!!L!!*! 24AB!N!9K!*!%4AB2!*!%S`!!!!4&E`S%!!!![3!!!!L!!*!24AB!N!8Z!*!%4AB 2!*!%S`!!!!4&E`S%!!!![J!!!!L!!*!24AB!N!8G!*!%4AB2!*!%S`!!!!4&E`S %!!!![`!!!!L!!*!24AB!N!9B!*!%4AB2!*!%S`!!!!4&E`S%!!!!`!!!!!L!!*! 24AB!N!9E!*!%4AB2!*!%S`!!!!4&E`S%!!!!`3!!!!L!!*!24AB!N!8[!*!%4AB 2!*!%S`!!!!4&E`S%!!!!`J!!!!L!!*!24AB!N!91!*!%4AB2!*!%S`!!!!4&E`S %!!!!``!!!!L!!*!24AB!N!8@!*!%4AB2!*!%S`!!!!4&E`S%!!!!a!!!!!L!!*! 24AB!N!8r!*!%4AB2!*!%S`!!!!4&E`S%!!!!a3!!!!L!!*!24AB!N!98!*!%4AB 2!*!%S`!!!!4&E`S%!!!!aJ!!!!L!!*!24AB!N!9,!*!%4AB2!*!%S`!!!!4&E`S %!!!!a`!!!!L!!*!24AB!N!90!*!%4AB2!*!%S`!!!!4&E`S%!!!!b!!!!!L!!*! 24AB!N!9+!*!%4AB2!*!%S`!!!!4&E`S%!!!!b3!!!!L!!*!24AB!N!8q!*!%4AB 2!*!%S`!!!!4&E`S%!!!!bJ!!!!L!!*!24AB!N!8l!*!%4AB2!*!%S`!!!!4&E`S %!!!!b`!!!!L!!*!24AB!N!8d!*!%4AB2!*!%S`!!!!4&E`S%!!!!c!!!!!L!!*! 24AB!N!8a!*!%4AB2!*!%S`!!!!4&E`S%!!!!c3!!!!L!!*!24AB!N!8V!*!%4AB 2!*!%S`!!!!4&E`S%!!!!cJ!!!!L!!*!24AB!N!8N!*!%4AB2!*!%S`!!!!4&E`S %!!!!c`!!!!L!!*!24AB!N!8I!*!%4AB2!*!%S`!!!!4&E`S%!!!!d!!!!!L!!*! 24AB!N!8E!*!%4AB2!*!%S`!!!!4&E`S%!!!!d3!!!!L!!*!24AB!N!8)!*!%4AB 2!*!%S`!!!!4&E`S%!!!!dJ!!!!L!!*!24AB!N!89!*!%4AB2!*!%S`!!!!4&E`S %!!!!d`!!!!L!!*!24AB!N!88!*!%4AB2!*!%S`!!!!4&E`S%!!!!e!!!!!L!!*! 24AB!N!86!*!%4AB2!*!%S`!!!!4&E`S%!!!!e3!!!!L!!*!24AB!N!83!*!%4AB 2!*!%S`!!!!4&E`S%!!!!eJ!!!!L!!*!24AB!N!81!*!%4AB2!*!%S`!!!!4&E`S %!!!!e`!!!!L!!*!24AB!N!8(!*!%4AB2!*!%S`!!!!4&EJ-%!!!!8`!!!!5!!*! ,4AB&!*!%8`#3"%9[!`3!!!!&!!!!")!!N!Y&GJ8!N!3&!*!%4@i$"!!!!$B!!!! %J!#3#d9f"3#3"$B!N!4&EJ-%!!!!+J!!!!5!!*!,4AB&!*!%+J#3"%9Z!`3!!!! T!!!!")!!N!Y&GJ8!N!3T!*!%4@m$"!!!!#!!!!!%J!#3#d9f"3#3"#!!N!4&E`- %!!!!(!!!!!5!!*!,4AB&!*!%(!#3"%9[!`3!!!!%!!!!")!!N!Y&GJ8!N!3%!*! %4@m$"!!!!!-!!!!%J!#3#d9f"3#3"!-!N!4&E`-%!!!!!J!!!!5!!*!,4AB&!*! %!J#3"%9[$`3!!!#M!*!%J!#3"d9S!!!%U%G98dN!!HaPFR*[FPpI194'D@aP8h" PB`!#qQ0eFPC[E&pI194'D@aP8h"PB`!#Qf0eFN4TFPpI194'D@aP8h"PB`!%Zfa KFh4*EQC[Aemj9%CTE'96F'9M!!4D3$Ja-`!(k#j$D%4TFPpI194'D@aP8h"PBdC 53cP84QPXC90`C@-!"[!ZAepMG&pI194'D@aP8h"PBdC53cP84QPXC90`C@-!"cF ZAepKF'aIAcP84QPXC90`C@0'8%09B`!%@d!i-63!![NZ3h9bFQ9ZG%4TFPpI4P* c8Q`!"N`Z8%*)4f9d9QpX8hPZB`!%Ad!i-6J!!DBZ4'9QBA9XG%4TFPpI194'D@a P8h"PBdCf!!4k3$Jb-`!'!Lj'D@jN9QpXAemj9%CTE'96F'9M4R-!"i)Z8%*(CA4 @5@jQEe0jEQ-!"*K!1$-a!!0i,P*[Eh4IAcP84QPXC90`C@0'GJ!&1#j*Fe*[Eh4 IAcP84QPXC90`C@0'GJ!'B5j%C@CKG@adAemj9%CTE'96F'9M4RB!!p3ZAepYE9p I194'D@aP8h"PBdCf!!5I3$Jc1!!"Y5j36(0dFQ0`H3!(C5jYC@eMF(N!",T!1$3 c!!@S,PpIBh4IAcP84QPXC90`C@0'8N-f4P06F'9M9@-!!!YSBA0"E'PKF`!(ILj 5CA0[E(CPAemj9%CTE'96F'9M4P9M!!6B3$Je-3!#&#jIAf0dAemj9%CTE'96F'9 M4R0X8%09Be9M!!9kD'&c6@&VC8C68h"PB`!&Cbj'8deKDf9'8e0`C@-!"%`Z4A& eB@a6G(*TEQF!"2P!1$Bb!!'K,PpIBh4IAcP84QPXC90`C@0'Fe"$9@09B`!!P5j 33NGPG&G%5@jQEe0jEQ-!""a!1$Fe!!DKER)N1$Jd!!3p3$Ji03!%A%!i163!"&e !1$Ne!!B(,PpIBh4IAcP84QPXC90`C@0'9@acE!!$J5j'D@jN4QpXC'9b!!"N,R0 `FQPZG'B!"M-Z4AKTFh4cAemj9%CTE'96F'9M3dCf!!3Z,PpIB@eTAemj9%CTE'9 6F'9M4QN!"&j!1$Nf!!-F,PpIBh4IAcP84QPXC90`C@0'F`!"Y#j33NGPG%C$3NP ZCQp6H@jM!!3l3$N`-!!%##j#E'9cFepI194'D@aP8h"PBdCf!!4#3$N`0`!!lfC eE'a3BA4S!!)[,N0[F(P$Efe`EfjPER4IAdC58'033e9M9@-!!0BZE@9YE@pfC3! %A%!j-6%!"(Y!16)`!!$2,NCeE'a3BA4SAemj9%CTE'96F'9M3dCf!!&1,P"#4f9 d3f&d5@jQEe0jEQ-!"(a!16)a!!8h,NCeE'a"E'PKFe"KG'KIAcP84QPXC90`C@0 $4RB!"BmZ3f&d5@jQEepI194'D@aP8h"PBd0'8M%`3dPZCQp33P*PBe9M!!-[,N0 eFP*PFdCTE'8!"qBZ4P0`6h"PEP*PFdCTE'8!!@dZ8Q9c4A*bEh)!"DJZ4f9d-9* PFfpeFQ0P!!GX,N4PG'&MD&*PFfpeFQ0P!!9A,N0XEh0P8Q9c4QPXC3!$Pbj9Ff9 5CA0'D@aP!!9),NGPG%&XD@&c5@jQE`!'`bj%DA0`Eh0P5'&ZC'aP!!6#3$Nd0`! (D#j5C@a3BA4SAemj9%CTE'96F'9M3dCf!!!B,P*PE&"KG'KIAcP84QPXC90`C@0 $4R0X!!6G3$Ne-J!("Lj5C@a3BA4SAemj9%CTE'96F'9M3dC53cC'8e0`C@-!!aB ZAep`F&pI194'D@aP8h"PBdCf!!6l3$Nf-!!(r#jYC@eMEA!!"pdZFh4bBfKb!!3 r3$Ni-`!%38!j1$8!"K3Z4@jMEf4PAemj9%CTE'96F'9M3dCf!!4#3$Ni0J!%4%! j1$J!"'&!16Ne!!0c,P*PFfpXGQ9IAcP84QPXC90`C@0'8N-a-%0*EQC[8%*5C@- !"Aa!-6!`13!&Qd!a-$%i!!6a,PpIE@PIAcP84QPXC90`C@0$4QN!"E0!-6!b-!! "iLj5CA0[E(CP3@aTBA0'D@aP!!@e3$%`-M)!"G0!-6!c-!!&e8!a-$-b!!Hm,Pp ICA&IAcP84QPXC90`C@0$4P*$194'D@aP8h"PB`!&ed!a-$-d!!Ge,PpIEQ9IAcP 84QPXC90`C@0$4P*$194'D@aP8h"PB`!&f8!a-$-f!!9D,NPc8'&bC@jd6fCIAcP 84QPXC90`C@0$4P*$194'D@aP8h"PB`!&qN!a-$3h!!)$,N&NC&"KG'K$Efe`Efj PER4IAcP84QPXC90`C@0'8%0MD3!&'N!a-$8h!!8F3$%`06N!"cSZAep`E&pI194 'D@aP8h"PBd0'8%09B`!&08!a-$Ba!!Dd,PpIBA"XAemj9%CTE'96F'9M4P"$B`! ([5jcG(*XC@i!"6G!-6!f-`!'c#jIAh"XAemj9%CTE'96F'9M3dC33f-!"6P!-6! f03!%)#jIAhCMAemj9%CTE'96F'9M3dCc!!983$%`0c!!!h8Z8Q9KC%j)CAKIAdC 33f0T8&9X!!*p,NPc4@jMEf4PC%C68h"PBepI194'D@aP8h"PBdC33f09B`!&hN! a-6)h!!IF,PpIBh4IAcP84QPXC90`C@0'8%0M9@-!"#%Z3fp`H8-b8&0dFPpI4P" $Be"9B`!!AbjcG(*bBfKb!!@"3$%a0cN!"98Z4P0`-NCeE'a3BA4S!!@C3$%a1$% !"'%Z4P0`-P*PE&"KG'J!"CY!-6%i-`!(F5j'8h!b4'Pb8Q9X8'&dD!!&R8!a-6J e!!A5,NC6F$*&EQ0[C'PZC`!&Rd!a-6Jh!!Gc,NC5C@C1G@db4P06F'9M!!@K3$% a1$N!!UFZ9d3b4P06F'9M!!@j3$%a16%!"&3Z8'&dD$*'8e0`C@-!"EY!-6%j-`! (j#j6F'9MD@&X-NC68h"PB`!&[8!a-6Ne!!B5,NC6F&9`!!A!3$%a16J!!2`Z4P0 `4'phEJ!&R%!a-M!a!!0J,NC6F%0KG%PZCQm!"D"!-6)`03!"@5j'8h"*EQ4PH!! &Sd!a-M!i!!(d,N4PCQ&eE(4@8Q9QAep'8R-!"8`Z8%*(CA4@Efa6H@jM!!@p3$% b-6)!"5SZ4P0`8feKFR40EhCP!!+",NK5Fh4'6'pMD`!!l5j)8Q9ZB@eP!!#J,N0 KG%e[GQ8!!XNZ5&0PG%C-Ef0V!!#a,NK%C@aPG'8!"Ea!-6)j-!!$Fbj'8h"5CA0 [E(CP!!A!3$%b163!"l)Z4P0`9'peBfK'EfaNCA)!")JZ4f9d4'&dC94TE@8!!8B Z8%*6CA4$BA4*EQC[8hPZB`!&a%!a-MNi!!B24P0`9'peBfK'EfaNCA)!!hj86d- !!X*'8h"5CA0[E(CP!!4l4P0`8feKFR40EhCP!!!P4P0`5@jNCAJ!!Se'8h"$BA4 *EQC[!!G94P0`4'phEJ!&D8C6F&9`!!D&8h"PBfPKE$*'8e0`C@-!!eG3BA4S-NC 68h"PB`!"0&G%-NC68h"PB`!'h%C5C@C1G@db4P06F'9M!!3-4P0`-N9ZBfpND@j R!!D+4P0`-N4TFP*PE&"KG'J!!`e'8h!b8Q9X8'&dD!!%qdC6F$*'G@aX8'&dD!! '@epIBh4IAcP84QPXC90`C@0'8%0M9@-!!69*Fd9ZBfpNC@4'8e0`C@0IAcP84QP XC90`C@0'8%0M9@-!!qPIAhCMAemj9%CTE'96F'9M3dCc!!9UAep`E&pI194'D@a P8h"PBd0'8%0M!!@ZAepKF'aIAcP84QPXC90`C@0'8%0M!!EZAep`E&pI194'D@a P8h"PBd0'8%09B`!'GepIBA"XAemj9%CTE'96F'9M4P"$9@-!!A*"C'43BA4S3fp YF'pZC@jdAemj9%CTE'96F'9M4P"$BfN!"#0*Fe"KFQ9ZG%pQAemj9%CTE'96F'9 M3dC53cP84QPXC90`C@-!"[pIAfjPAemj9%CTE'96F'9M3dC53cP84QPXC90`C@- !"N&IAf9aAemj9%CTE'96F'9M3dC53cP84QPXC90`C@-!"Ie&H'PcG(0IAcP84QP XC90`C@0$4RB!"[95CA0[E(CPAemj9%CTE'96F'9M4P9M!!+r8Q9cEfafC9pI194 'D@aP8h"PBdC53c%`3dPZCQp33P*PB`!$29pIE@PIAcP84QPXC90`C@0$4QN!!r" IAf&YD9pI194'D@aP8h"PBdCT!!*iAep`F&pI194'D@aP8h"PBdCf!!+GAepYE9p I194'D@aP8h"PBdCf!!4p3f&d5@jQEepI194'D@aP8h"PBd0'8M%`3dPZCQp33P* PBe9M!!@E4@jMEf4PAemj9%CTE'96F'9M3dCf!!H&8Q9X8'&dD&pI194'D@aP8h" PBd0'Ff`!"Mp5C@a3BA4SAemj9%CTE'96F'9M3dC53cC'8e0`C@-!"XY5C@a3BA4 SAemj9%CTE'96F'9M3dCf!!4A4R9XE%&XD@&c8'&dD&pI194'D@aP8h"PBd0'GJ! (N8CeE'a3BA4SAemj9%CTE'96F'9M3dCf!!0J3QaPFh0IAcP84QPXC90`C@0'GJ! #&&pIBh4IAcP84QPXC90`C@0'F`!&!epIBh4IAcP84QPXC90`C@0'9@acE!!!Rep IBh4IAcP84QPXC90`C@0'Fe"$9@09B`!"e&pIBh4IAcP84QPXC90`C@0'Ffa33e9 M9@-!"'*IAf0dAemj9%CTE'96F'9M4P*$0NC68h"PBe9M!!AdAepMG&pI194'D@a P8h"PBdC53cP84QPXC90`C@-!"G&%C@CKG@adAemj9%CTE'96F'9M4RB!"(0*Fe* [Eh4IAcP84QPXC90`C@0'GJ!#bP*[Eh4IAcP84QPXC90`C@0'GJ!&DdCTEQ4@Efa IAcP84QPXC90`C@0'F`!!i84PCQ&eE(4%DA*IAcP84QPXC90`C@0'GJ!'4%0S4'P bAemj9%CTE'96F'9M4P*$194'D@aP8h"PB`!!QY%!!!%!!!!"!*!)(R4*4&0jE@* [E!Q3"$dJ-M-X$3PV4QpZG%P%6@pLD@aP#C!%25!b0!ep1`d0)fPQ)%p-4&*2994 *6N9138e&8`d0C@jeE5"l$3PZCAGCEh*V#C!'25"V4QpZG%P%6Q9h@@pbDb`0#@G PEQ9fB3Q3"MdJDdC[ER4*4%GPEQ9fB5`0#@e[EQ&ME`Q3"MdJDdC[ER4*4%e[EQ& MEb`0#ACPEQPMC3Q3"MdJDdC[ER4*4&CPEQPMC5`0#@a[EQ4[EJQ3"MdJDdC[ER4 *4%a[EQ4[EL`0#@&dD'9ZF`Q3"Md!!!%!!!!"!*!)(J#3#4`!([rr5aJ: \ No newline at end of file diff --git a/src/mac/menuitem.cpp b/src/mac/menuitem.cpp index bd2f876a38..38d31737e7 100644 --- a/src/mac/menuitem.cpp +++ b/src/mac/menuitem.cpp @@ -93,4 +93,3 @@ void wxMenuItem::Check(bool bDoCheck) // TODO m_bChecked = bDoCheck; } -} \ No newline at end of file diff --git a/src/mac/morefile/FullPath.h b/src/mac/morefile/FullPath.h index 5a49e40ac7..3594a174eb 100644 --- a/src/mac/morefile/FullPath.h +++ b/src/mac/morefile/FullPath.h @@ -240,4 +240,3 @@ pascal OSErr LocationFromFullPath(short fullPathLength, #include "OptimEnd.h" -#endif /* __FULLPATH__ */ \ No newline at end of file diff --git a/src/make_cw.mcp b/src/make_cw.mcp index 798a8870b1b1bedd200fcc8de21383aac0f24490..771b0a01892aca2fb4f4afff0929d4523f1fe7bc 100644 GIT binary patch literal 58219 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

ZWsNvi{0V_JS?eT~DV^prCw4$=wQd(SI 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 literal 265246 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 m_format.SetId( id ); diff --git a/src/motif/dcclient.cpp b/src/motif/dcclient.cpp index b7d6e721ee..5487dee4c3 100644 --- a/src/motif/dcclient.cpp +++ b/src/motif/dcclient.cpp @@ -2194,7 +2194,7 @@ static void wx_spline_draw_point_array(wxDC *dc) void wxWindowDC::DoDrawSpline( wxList *points ) { - wxCHECK_RET( Ok(), T("invalid window dc") ); + wxCHECK_RET( Ok(), wxT("invalid window dc") ); wxPoint *p; double cx1, cy1, cx2, cy2, cx3, cy3, cx4, cy4; diff --git a/src/motif/font.cpp b/src/motif/font.cpp index 817ca89938..3b690765e4 100644 --- a/src/motif/font.cpp +++ b/src/motif/font.cpp @@ -364,12 +364,12 @@ wxXFont* wxFont::GetInternalFont(double scale, WXDisplay* display) const M_FONTDATA->m_style, M_FONTDATA->m_weight, M_FONTDATA->m_underlined, - T(""), + wxT(""), M_FONTDATA->m_encoding); if ( !font ) { - wxFAIL_MSG( T("Could not allocate even a default font -- something is wrong.") ); + wxFAIL_MSG( wxT("Could not allocate even a default font -- something is wrong.") ); return (wxXFont*) NULL; } diff --git a/src/motif/fontenum.cpp b/src/motif/fontenum.cpp index e427c02654..c97a533c5d 100644 --- a/src/motif/fontenum.cpp +++ b/src/motif/fontenum.cpp @@ -69,7 +69,7 @@ static int CMPFUNC_CONV CompareStrings(const char *s1, const char *s2) static char **CreateFontList(wxChar spacing, int *nFonts) { wxString pattern; - pattern.Printf(T("-*-*-*-*-*-*-*-*-*-*-%c-*-*-*"), spacing); + pattern.Printf(wxT("-*-*-*-*-*-*-*-*-*-*-%c-*-*-*"), spacing); // get the list of all fonts return XListFonts((Display *)wxGetDisplay(), pattern, 32767, nFonts); @@ -123,7 +123,7 @@ bool wxFontEnumerator::EnumerateFamilies(bool fixedWidthOnly) if ( fixedWidthOnly ) { bool cont = TRUE; - fonts = CreateFontList(T('m'), &nFonts); + fonts = CreateFontList(wxT('m'), &nFonts); if ( fonts ) { cont = ProcessFamiliesFromFontList(this, fonts, nFonts); @@ -136,7 +136,7 @@ bool wxFontEnumerator::EnumerateFamilies(bool fixedWidthOnly) return TRUE; } - fonts = CreateFontList(T('c'), &nFonts); + fonts = CreateFontList(wxT('c'), &nFonts); if ( !fonts ) { return TRUE; @@ -144,11 +144,11 @@ bool wxFontEnumerator::EnumerateFamilies(bool fixedWidthOnly) } else { - fonts = CreateFontList(T('*'), &nFonts); + fonts = CreateFontList(wxT('*'), &nFonts); if ( !fonts ) { - wxFAIL_MSG(T("No fonts at all on this system?")); + wxFAIL_MSG(wxT("No fonts at all on this system?")); return FALSE; } @@ -165,8 +165,8 @@ bool wxFontEnumerator::EnumerateEncodings(const wxString& family) { #if 0 wxString pattern; - pattern.Printf(T("-*-%s-*-*-*-*-*-*-*-*-*-*-*-*"), - family.IsEmpty() ? T("*") : family.c_str()); + pattern.Printf(wxT("-*-%s-*-*-*-*-*-*-*-*-*-*-*-*"), + family.IsEmpty() ? wxT("*") : family.c_str()); // get the list of all fonts int nFonts; diff --git a/src/motif/mdi/doc/pics/classes.gif b/src/motif/mdi/doc/pics/classes.gif index 9f5deb2c008436725d5bc654ac7a17f563f40557..dec153f207364dbdc202ca1df1be62c24bf83f75 100644 GIT binary patch delta 57 zcmcaC|3FUI-P6s&JTZ$Ylkvm<|NnJBjES;4CSGfq9L*T8c@1MX(_{;loXJaB=4^Ii Mea*O8kKLIA0GeVJ7ytkO delta 180 zcmaDLcUfN6-P6s&JTZ$Ylko!s!~g&P85kIJfS3U!!Z1;I2aq`3!pJb$pD}=uVe@>( zZYCf{izNq0PGgw^6f$Cc%?PAq*_}C(b}-!D){wnLFle2A`3|EEJDy+Laouvq-dR2q zy?3;E?VKdtHr;z`llRX4+1}G%?>u&MXXok8#n~lV(z}kV+<88D+1luW)vtGL+}*v} ed-vAt-P^l&?_9lm_vzhxU+>=kdKN1KgEau~=uSWY diff --git a/src/motif/mdi/doc/pics/mdi.gif b/src/motif/mdi/doc/pics/mdi.gif index c43414bc62266d5cb5f524b85f7a2b7016acf30f..d6be63390fd62a3c2893279aa313cda567812163 100644 GIT binary patch delta 228 zcmV+<90K!^5FrID1Oglakw=b^)=je{0WSfQR02@5r2;Vm z64jWON3I$aGvtR}Y0h4J5Nwc#DI02LF2t1Q137E6O z2?7DL#R^>mvm*}j0h1OGos+Z>{IjtU%mkBu7HgC07B-V17Z$TP7n%mM(;YhllMf+> zvzH-G0h8t;vy+-5L;?jclj0*RlMf^?lRzY!liVa!lQAXyvo0nq0<&8vBmt9vDW$U} eDh&a%G%GIwlVmJ2vzRQi0<%mnDgm>1F#7^0tWhHX delta 406 zcmdm(wmMzF-P6s&JduS-hUqf{2u$Qw6azD$gbs)XNi$3|>|kP{-7 z4J7xAnMpA0dvNIC!N))Mr--Kisi~EG@z3k+e?41<&D`R%*nk?A%31@Bn*2ba9mq*n z^aB~VRcSMj%use=VPG|2n7mF|2gtppYyc#=RAvLor79sn@}~;O#;>Y6Oh8IeLj|PO zRdXqj^GcH!#p_1(8c+jrmlt5U%uazW?*m_I=;>>eqcoBc7ras#Q@`}sW-3Yx{&kJkQB?y#_Ywmdasr$%o%%4v1i7| zjHip-$-Q@cW2H9bc#~l&&0$-R$V;v-CXG^Bu9)1-A{tg$cFVTx%-GDvSj(`RYkp-q zj>tHY+kDOq?0)m-Hh-h)U~J=F_?*vw>`em=R>W!0iUq`=Lrv60ZPZ7N)Jd(>OU=|x?bHic00ICzT?V6X diff --git a/src/motif/window.cpp b/src/motif/window.cpp index 498fbedec9..edef8624d8 100644 --- a/src/motif/window.cpp +++ b/src/motif/window.cpp @@ -719,7 +719,7 @@ bool wxWindow::SetCursor(const wxCursor& cursor) } wxASSERT_MSG( m_cursor.Ok(), - T("cursor must be valid after call to the base version")); + wxT("cursor must be valid after call to the base version")); WXDisplay *dpy = GetXDisplay(); WXCursor x_cursor = m_cursor.GetXCursor(dpy); diff --git a/src/msw/app.cpp b/src/msw/app.cpp index 36199a3d67..7eddf6e213 100644 --- a/src/msw/app.cpp +++ b/src/msw/app.cpp @@ -113,14 +113,14 @@ wxApp *wxTheApp = NULL; // NB: all "NoRedraw" classes must have the same names as the "normal" classes // with NR suffix - wxWindow::MSWCreate() supposes this -wxChar wxFrameClassName[] = T("wxFrameClass"); -wxChar wxFrameClassNameNoRedraw[] = T("wxFrameClassNR"); -wxChar wxMDIFrameClassName[] = T("wxMDIFrameClass"); -wxChar wxMDIFrameClassNameNoRedraw[] = T("wxMDIFrameClassNR"); -wxChar wxMDIChildFrameClassName[] = T("wxMDIChildFrameClass"); -wxChar wxMDIChildFrameClassNameNoRedraw[] = T("wxMDIChildFrameClassNR"); -wxChar wxPanelClassName[] = T("wxPanelClass"); -wxChar wxCanvasClassName[] = T("wxCanvasClass"); +wxChar wxFrameClassName[] = wxT("wxFrameClass"); +wxChar wxFrameClassNameNoRedraw[] = wxT("wxFrameClassNR"); +wxChar wxMDIFrameClassName[] = wxT("wxMDIFrameClass"); +wxChar wxMDIFrameClassNameNoRedraw[] = wxT("wxMDIFrameClassNR"); +wxChar wxMDIChildFrameClassName[] = wxT("wxMDIChildFrameClass"); +wxChar wxMDIChildFrameClassNameNoRedraw[] = wxT("wxMDIChildFrameClassNR"); +wxChar wxPanelClassName[] = wxT("wxPanelClass"); +wxChar wxCanvasClassName[] = wxT("wxCanvasClass"); HICON wxSTD_FRAME_ICON = (HICON) NULL; HICON wxSTD_MDICHILDFRAME_ICON = (HICON) NULL; @@ -176,7 +176,7 @@ bool wxApp::Initialize() wxClassInfo::InitializeClasses(); #if wxUSE_RESOURCES - wxGetResource(T("wxWindows"), T("OsVersion"), &wxOsVersion); + wxGetResource(wxT("wxWindows"), wxT("OsVersion"), &wxOsVersion); #endif // I'm annoyed ... I don't know where to put this and I don't want to @@ -202,7 +202,7 @@ bool wxApp::Initialize() InitCommonControls(); #if wxUSE_RICHEDIT - gs_hRichEdit = LoadLibrary(T("RICHED32.DLL")); + gs_hRichEdit = LoadLibrary(wxT("RICHED32.DLL")); if (gs_hRichEdit == (HINSTANCE) NULL) { @@ -227,20 +227,20 @@ bool wxApp::Initialize() #if wxUSE_CTL3D if (!Ctl3dRegister(wxhInstance)) - wxLogError(T("Cannot register CTL3D")); + wxLogError(wxT("Cannot register CTL3D")); Ctl3dAutoSubclass(wxhInstance); #endif g_globalCursor = new wxCursor; - wxSTD_FRAME_ICON = LoadIcon(wxhInstance, T("wxSTD_FRAME")); - wxSTD_MDIPARENTFRAME_ICON = LoadIcon(wxhInstance, T("wxSTD_MDIPARENTFRAME")); - wxSTD_MDICHILDFRAME_ICON = LoadIcon(wxhInstance, T("wxSTD_MDICHILDFRAME")); + wxSTD_FRAME_ICON = LoadIcon(wxhInstance, wxT("wxSTD_FRAME")); + wxSTD_MDIPARENTFRAME_ICON = LoadIcon(wxhInstance, wxT("wxSTD_MDIPARENTFRAME")); + wxSTD_MDICHILDFRAME_ICON = LoadIcon(wxhInstance, wxT("wxSTD_MDICHILDFRAME")); - wxDEFAULT_FRAME_ICON = LoadIcon(wxhInstance, T("wxDEFAULT_FRAME")); - wxDEFAULT_MDIPARENTFRAME_ICON = LoadIcon(wxhInstance, T("wxDEFAULT_MDIPARENTFRAME")); - wxDEFAULT_MDICHILDFRAME_ICON = LoadIcon(wxhInstance, T("wxDEFAULT_MDICHILDFRAME")); + wxDEFAULT_FRAME_ICON = LoadIcon(wxhInstance, wxT("wxDEFAULT_FRAME")); + wxDEFAULT_MDIPARENTFRAME_ICON = LoadIcon(wxhInstance, wxT("wxDEFAULT_MDIPARENTFRAME")); + wxDEFAULT_MDICHILDFRAME_ICON = LoadIcon(wxhInstance, wxT("wxDEFAULT_MDICHILDFRAME")); RegisterWindowClasses(); @@ -248,7 +248,7 @@ bool wxApp::Initialize() LOGBRUSH lb; lb.lbStyle = BS_PATTERN; - lb.lbHatch = (int)LoadBitmap( wxhInstance, T("wxDISABLE_BUTTON_BITMAP") ); + lb.lbHatch = (int)LoadBitmap( wxhInstance, wxT("wxDISABLE_BUTTON_BITMAP") ); if ( lb.lbHatch ) { wxDisableButtonBrush = ::CreateBrushIndirect( & lb ); @@ -425,11 +425,11 @@ void wxApp::ConvertToStandardCommandArgs(char* lpCmdLine) if (i < len) { - if (cmdLine.GetChar(i) == T('"')) // We found the start of a string + if (cmdLine.GetChar(i) == wxT('"')) // We found the start of a string { i ++; int first = i; - while ((i < len) && (cmdLine.GetChar(i) != T('"'))) + while ((i < len) && (cmdLine.GetChar(i) != wxT('"'))) i ++; wxString arg(cmdLine.Mid(first, (i - first))); @@ -578,7 +578,7 @@ void wxApp::CleanUp() // wxDebugContext, too. if (wxDebugContext::CountObjectsLeft(TRUE) > 0) { - wxLogDebug(T("There were memory leaks.")); + wxLogDebug(wxT("There were memory leaks.")); wxDebugContext::Dump(); wxDebugContext::PrintStatistics(); } @@ -635,12 +635,12 @@ int wxEntry(WXHINSTANCE hInstance, // the IMPLEMENT_APP macro is used instead, which sets an initializer // function for delayed, dynamic app object construction. wxCHECK_MSG( wxApp::GetInitializerFunction(), 0, - T("No initializer - use IMPLEMENT_APP macro.") ); + wxT("No initializer - use IMPLEMENT_APP macro.") ); wxTheApp = (*wxApp::GetInitializerFunction()) (); } - wxCHECK_MSG( wxTheApp, 0, T("You have to define an instance of wxApp!") ); + wxCHECK_MSG( wxTheApp, 0, wxT("You have to define an instance of wxApp!") ); // save the WinMain() parameters wxTheApp->ConvertToStandardCommandArgs(lpCmdLine); @@ -818,7 +818,7 @@ bool wxApp::DoMessage() { #if wxUSE_THREADS wxASSERT_MSG( wxThread::IsMain(), - T("only the main thread can process Windows messages") ); + wxT("only the main thread can process Windows messages") ); static bool s_hadGuiLock = TRUE; static wxMsgArray s_aSavedMessages; @@ -1112,7 +1112,7 @@ void wxApp::OnQueryEndSession(wxCloseEvent& event) int wxApp::GetComCtl32Version() const { // have we loaded COMCTL32 yet? - HMODULE theModule = ::GetModuleHandle(T("COMCTL32")); + HMODULE theModule = ::GetModuleHandle(wxT("COMCTL32")); int version = 0; // if so, then we can check for the version @@ -1197,7 +1197,7 @@ wxApp::GetStdIcon(int which) const return wxIcon("wxICON_WARNING"); default: - wxFAIL_MSG(T("requested non existent standard icon")); + wxFAIL_MSG(wxT("requested non existent standard icon")); // still fall through case wxICON_HAND: diff --git a/src/msw/bitmap.cpp b/src/msw/bitmap.cpp index 2bf574d245..9e2678dd0a 100644 --- a/src/msw/bitmap.cpp +++ b/src/msw/bitmap.cpp @@ -80,7 +80,7 @@ wxBitmapRefData::~wxBitmapRefData() if (m_selectedInto) { wxChar buf[200]; - wxSprintf(buf, T("Bitmap was deleted without selecting out of wxMemoryDC %lX."), (unsigned long) m_selectedInto); + wxSprintf(buf, wxT("Bitmap was deleted without selecting out of wxMemoryDC %lX."), (unsigned long) m_selectedInto); wxFatalError(buf); } if (m_hBitmap) @@ -146,7 +146,7 @@ bool wxBitmap::FreeResource(bool WXUNUSED(force)) if (M_BITMAPDATA->m_selectedInto) { wxChar buf[200]; - wxSprintf(buf, T("Bitmap %lX was deleted without selecting out of wxMemoryDC %lX."), (unsigned long) this, (unsigned long) M_BITMAPDATA->m_selectedInto); + wxSprintf(buf, wxT("Bitmap %lX was deleted without selecting out of wxMemoryDC %lX."), (unsigned long) this, (unsigned long) M_BITMAPDATA->m_selectedInto); wxFatalError(buf); } if (M_BITMAPDATA->m_hBitmap) @@ -255,7 +255,7 @@ bool wxBitmap::LoadFile(const wxString& filename, long type) wxBitmapHandler *handler = FindHandler(type); if ( handler == NULL ) { - wxLogWarning(T("no bitmap handler for type %d defined."), type); + wxLogWarning(wxT("no bitmap handler for type %d defined."), type); return FALSE; } @@ -272,7 +272,7 @@ bool wxBitmap::Create(void *data, long type, int width, int height, int depth) wxBitmapHandler *handler = FindHandler(type); if ( handler == NULL ) { - wxLogWarning(T("no bitmap handler for type %d defined."), type); + wxLogWarning(wxT("no bitmap handler for type %d defined."), type); return FALSE; } @@ -285,7 +285,7 @@ bool wxBitmap::SaveFile(const wxString& filename, int type, const wxPalette *pal wxBitmapHandler *handler = FindHandler(type); if ( handler == NULL ) { - wxLogWarning(T("no bitmap handler for type %d defined."), type); + wxLogWarning(wxT("no bitmap handler for type %d defined."), type); return FALSE; } @@ -682,7 +682,7 @@ bool wxBMPResourceHandler::LoadFile(wxBitmap *bitmap, const wxString& name, long } // it's probably not found - wxLogError(T("Can't load bitmap '%s' from resources! Check .rc file."), name.c_str()); + wxLogError(wxT("Can't load bitmap '%s' from resources! Check .rc file."), name.c_str()); return FALSE; } diff --git a/src/msw/bmpbuttn.cpp b/src/msw/bmpbuttn.cpp index d0f3c7e9b3..daf17cec62 100644 --- a/src/msw/bmpbuttn.cpp +++ b/src/msw/bmpbuttn.cpp @@ -75,8 +75,8 @@ bool wxBitmapButton::Create(wxWindow *parent, wxWindowID id, const wxBitmap& bit m_hWnd = (WXHWND)CreateWindowEx ( 0, - T("BUTTON"), - T(""), + wxT("BUTTON"), + wxT(""), WS_VISIBLE | WS_TABSTOP | WS_CHILD | BS_OWNERDRAW , 0, 0, 0, 0, GetWinHwnd(parent), diff --git a/src/msw/button.cpp b/src/msw/button.cpp index 241f90a07e..18a3cc42e6 100644 --- a/src/msw/button.cpp +++ b/src/msw/button.cpp @@ -81,7 +81,7 @@ bool wxButton::Create(wxWindow *parent, m_hWnd = (WXHWND)CreateWindowEx ( MakeExtendedStyle(m_windowStyle), - T("BUTTON"), + wxT("BUTTON"), label, WS_VISIBLE | WS_TABSTOP | WS_CHILD, 0, 0, 0, 0, diff --git a/src/msw/caret.cpp b/src/msw/caret.cpp index 55cd4242c9..e35dc6da09 100644 --- a/src/msw/caret.cpp +++ b/src/msw/caret.cpp @@ -81,8 +81,8 @@ void wxCaretBase::SetBlinkTime(int milliseconds) bool wxCaret::MSWCreateCaret() { - wxASSERT_MSG( GetWindow(), T("caret without window cannot be created") ); - wxASSERT_MSG( IsOk(), T("caret of zero size cannot be created") ); + wxASSERT_MSG( GetWindow(), wxT("caret without window cannot be created") ); + wxASSERT_MSG( IsOk(), wxT("caret of zero size cannot be created") ); if ( !m_hasCaret ) { @@ -127,8 +127,8 @@ void wxCaret::OnKillFocus() void wxCaret::DoShow() { - wxASSERT_MSG( GetWindow(), T("caret without window cannot be shown") ); - wxASSERT_MSG( IsOk(), T("caret of zero size cannot be shown") ); + wxASSERT_MSG( GetWindow(), wxT("caret without window cannot be shown") ); + wxASSERT_MSG( IsOk(), wxT("caret of zero size cannot be shown") ); if ( m_hasCaret ) { @@ -154,7 +154,7 @@ void wxCaret::DoMove() if ( m_hasCaret ) { wxWindow *winFocus = wxWindow::FindFocus(); - wxASSERT_MSG( winFocus == GetWindow(), T("how did we lose focus?") ); + wxASSERT_MSG( winFocus == GetWindow(), wxT("how did we lose focus?") ); CALL_CARET_API(SetCaretPos, (m_x, m_y)); } diff --git a/src/msw/checkbox.cpp b/src/msw/checkbox.cpp index 1953b6e32e..bffacc0344 100644 --- a/src/msw/checkbox.cpp +++ b/src/msw/checkbox.cpp @@ -78,8 +78,8 @@ bool wxCheckBox::Create(wxWindow *parent, wxWindowID id, const wxString& label, m_windowStyle = style; wxString Label = label; - if (Label == T("")) - Label = T(" "); // Apparently needed or checkbox won't show + if (Label == wxT("")) + Label = wxT(" "); // Apparently needed or checkbox won't show if ( id == -1 ) m_windowId = NewControlId(); @@ -109,7 +109,7 @@ bool wxCheckBox::Create(wxWindow *parent, wxWindowID id, const wxString& label, msStyle |= WS_BORDER; */ - m_hWnd = (WXHWND)CreateWindowEx(exStyle, T("BUTTON"), Label, + m_hWnd = (WXHWND)CreateWindowEx(exStyle, wxT("BUTTON"), Label, msStyle, 0, 0, 0, 0, (HWND)parent->GetHWND(), (HMENU)m_windowId, @@ -245,7 +245,7 @@ bool wxBitmapCheckBox::Create(wxWindow *parent, wxWindowID id, const wxBitmap *l checkHeight = -1 ; long msStyle = CHECK_FLAGS; - HWND wx_button = CreateWindowEx(MakeExtendedStyle(m_windowStyle), CHECK_CLASS, T("toggle"), + HWND wx_button = CreateWindowEx(MakeExtendedStyle(m_windowStyle), CHECK_CLASS, wxT("toggle"), msStyle, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)m_windowId, wxGetInstance(), NULL); @@ -272,5 +272,5 @@ bool wxBitmapCheckBox::Create(wxWindow *parent, wxWindowID id, const wxBitmap *l void wxBitmapCheckBox::SetLabel(const wxBitmap& bitmap) { - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); } diff --git a/src/msw/checklst.cpp b/src/msw/checklst.cpp index 2e67140448..78606eee75 100644 --- a/src/msw/checklst.cpp +++ b/src/msw/checklst.cpp @@ -225,7 +225,7 @@ void wxCheckListBoxItem::Check(bool check) // update it int index = m_pParent->GetItemIndex(this); - wxASSERT_MSG( index != wxNOT_FOUND, T("what does this item do here?") ); + wxASSERT_MSG( index != wxNOT_FOUND, wxT("what does this item do here?") ); m_nIndex = (size_t)index; } @@ -238,7 +238,7 @@ void wxCheckListBoxItem::Check(bool check) if ( ::SendMessage(hwndListbox, LB_GETITEMRECT, m_nIndex, (LPARAM)&rcUpdate) == LB_ERR ) { - wxLogDebug(T("LB_GETITEMRECT failed")); + wxLogDebug(wxT("LB_GETITEMRECT failed")); } #else // Win16 // FIXME this doesn't work if the listbox is scrolled! @@ -293,7 +293,7 @@ wxCheckListBox::wxCheckListBox(wxWindow *parent, wxWindowID id, void wxCheckListBox::Delete(int N) { wxCHECK_RET( N >= 0 && N < m_noItems, - T("invalid index in wxListBox::Delete") ); + wxT("invalid index in wxListBox::Delete") ); wxListBox::Delete(N); @@ -306,7 +306,7 @@ void wxCheckListBox::Delete(int N) void wxCheckListBox::InsertItems(int nItems, const wxString items[], int pos) { wxCHECK_RET( pos >= 0 && pos <= m_noItems, - T("invalid index in wxCheckListBox::InsertItems") ); + wxT("invalid index in wxCheckListBox::InsertItems") ); wxListBox::InsertItems(nItems, items, pos); diff --git a/src/msw/choice.cpp b/src/msw/choice.cpp index d63bd86976..d157992171 100644 --- a/src/msw/choice.cpp +++ b/src/msw/choice.cpp @@ -69,10 +69,10 @@ bool wxChoice::Create(wxWindow *parent, wxASSERT_MSG( !(style & wxCB_DROPDOWN) && !(style & wxCB_READONLY) && !(style & wxCB_SIMPLE), - T("this style flag is ignored by wxChoice, you " + wxT("this style flag is ignored by wxChoice, you " "probably want to use a wxComboBox") ); - if ( !MSWCreateControl(T("COMBOBOX"), msStyle) ) + if ( !MSWCreateControl(wxT("COMBOBOX"), msStyle) ) return FALSE; for ( int i = 0; i < n; i++ ) @@ -102,7 +102,7 @@ int wxChoice::DoAppend(const wxString& item) void wxChoice::Delete(int n) { - wxCHECK_RET( n < GetCount(), T("invalid item index in wxChoice::Delete") ); + wxCHECK_RET( n < GetCount(), wxT("invalid item index in wxChoice::Delete") ); SendMessage(GetHwnd(), CB_DELETESTRING, n, 0); } @@ -180,7 +180,7 @@ void wxChoice::DoSetClientData( int n, void* clientData ) { if ( SendMessage(GetHwnd(), CB_SETITEMDATA, n, (LPARAM)clientData) == CB_ERR ) { - wxLogLastError(T("CB_SETITEMDATA")); + wxLogLastError(wxT("CB_SETITEMDATA")); } } @@ -189,7 +189,7 @@ void* wxChoice::DoGetClientData( int n ) const LPARAM rc = SendMessage(GetHwnd(), CB_GETITEMDATA, n, 0); if ( rc == CB_ERR ) { - wxLogLastError(T("CB_GETITEMDATA")); + wxLogLastError(wxT("CB_GETITEMDATA")); // unfortunately, there is no way to return an error code to the user rc = (LPARAM) NULL; diff --git a/src/msw/clipbrd.cpp b/src/msw/clipbrd.cpp index 424c1c4524..b741d8fa1a 100644 --- a/src/msw/clipbrd.cpp +++ b/src/msw/clipbrd.cpp @@ -81,7 +81,7 @@ static bool gs_wxClipboardIsOpen = FALSE; bool wxOpenClipboard() { - wxCHECK_MSG( !gs_wxClipboardIsOpen, TRUE, T("clipboard already opened.") ); + wxCHECK_MSG( !gs_wxClipboardIsOpen, TRUE, wxT("clipboard already opened.") ); wxWindow *win = wxTheApp->GetTopWindow(); if ( win ) @@ -95,7 +95,7 @@ bool wxOpenClipboard() } else { - wxLogDebug(T("Can not open clipboard without a main window.")); + wxLogDebug(wxT("Can not open clipboard without a main window.")); return FALSE; } @@ -103,7 +103,7 @@ bool wxOpenClipboard() bool wxCloseClipboard() { - wxCHECK_MSG( gs_wxClipboardIsOpen, FALSE, T("clipboard is not opened") ); + wxCHECK_MSG( gs_wxClipboardIsOpen, FALSE, wxT("clipboard is not opened") ); gs_wxClipboardIsOpen = FALSE; @@ -470,10 +470,10 @@ bool wxClipboard::SetData( wxDataObject *data ) bool wxClipboard::AddData( wxDataObject *data ) { - wxCHECK_MSG( data, FALSE, T("data is invalid") ); + wxCHECK_MSG( data, FALSE, wxT("data is invalid") ); #if wxUSE_DRAG_AND_DROP - wxCHECK_MSG( wxIsClipboardOpened(), FALSE, T("clipboard not open") ); + wxCHECK_MSG( wxIsClipboardOpened(), FALSE, wxT("clipboard not open") ); wxDataFormat format = data->GetFormat(); @@ -527,7 +527,7 @@ bool wxClipboard::IsSupported( wxDataFormat format ) bool wxClipboard::GetData( wxDataObject *data ) { - wxCHECK_MSG( wxIsClipboardOpened(), FALSE, T("clipboard not open") ); + wxCHECK_MSG( wxIsClipboardOpened(), FALSE, wxT("clipboard not open") ); #if wxUSE_DRAG_AND_DROP wxDataFormat format = data->GetFormat(); diff --git a/src/msw/combobox.cpp b/src/msw/combobox.cpp index 6dcb98fccb..9edc9f4145 100644 --- a/src/msw/combobox.cpp +++ b/src/msw/combobox.cpp @@ -107,12 +107,12 @@ bool wxComboBox::Create(wxWindow *parent, wxWindowID id, if ( want3D || wxStyleHasBorder(m_windowStyle) ) msStyle |= WS_BORDER; - m_hWnd = (WXHWND)::CreateWindowEx(exStyle, T("COMBOBOX"), NULL, + m_hWnd = (WXHWND)::CreateWindowEx(exStyle, wxT("COMBOBOX"), NULL, msStyle, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)m_windowId, wxGetInstance(), NULL); - wxCHECK_MSG( m_hWnd, FALSE, T("Failed to create combobox") ); + wxCHECK_MSG( m_hWnd, FALSE, wxT("Failed to create combobox") ); /* #if wxUSE_CTL3D diff --git a/src/msw/control.cpp b/src/msw/control.cpp index fc25a1a83b..f610c69d77 100644 --- a/src/msw/control.cpp +++ b/src/msw/control.cpp @@ -76,7 +76,7 @@ bool wxControl::MSWCreateControl(const wxChar *classname, WXDWORD style) if ( !m_hWnd ) { #ifdef __WXDEBUG__ - wxLogError(T("Failed to create a control of class '%s'"), classname); + wxLogError(wxT("Failed to create a control of class '%s'"), classname); #endif // DEBUG return FALSE; diff --git a/src/msw/ctl3d/ctl3d.dll b/src/msw/ctl3d/ctl3d.dll index 8e1b74c3a8a1d96c0803d4f427bd2e67d81ddf72..571845fad9fffced37143a4c3ed94879b73d674e 100644 GIT binary patch delta 22 dcmey*=*aIICCSLd^8f!1hXy|RU3?Q=jQ~|w2a5mz literal 255 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 diff --git a/src/msw/ctl3d/msvc/ctl3d.lib b/src/msw/ctl3d/msvc/ctl3d.lib index 3fe7168589c1e16df4725f4413b2b29f5b3e2ddd..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 338 zcmeys#lXPEz`(=+1r4kW%;By93>|_D3=0?;L2Op%k{sid7t9P@a8)qX3=9oi4BTLO z_tcWG)FOrsNw7X-F^GOf2JHHU7zDujgG-Z=a}tY-U2@VHI^@8HU`Rkr0=fd>k_L4B zK*O->2TDNnGo$F|XW#ckOo_hDhkobf~*q~1`T`+JYfB{oB-944NT&1oEvDKZ$ZfXqByWb zY(f8_l#zckQ1B-Mlrr_AnU3$kVR6QDv4%&wi0mHN(+S#k<_9c}#0umNAy;kIV6AoW zvm|bGeq literal 1557 zcmd6n%TB^j5QYa4Z(QW28}B}XK7k?{6Bk4xtP3>Qq_hbf65Vy#_zosMo=bfLrz3wm zEx5M}()`o^o7*{jm5DZp)@bnr1B{B^2|zdIicU28VGamN&%3S=n&5?6srf~=omtNk2+Kd=0|RF?ew z)AC)PJ2;Z$X%)`(#Q8gcph6|_w>@j%+9L`N#hw!3E@a(Aas86K^=x@#J6*pDfWr%m z`{(@E#_M~d&eR`XCi%4p-)7>A_s9LWM~+c|MgJ)kgsm(gVE=zH6f~B_V;LyxsB)q>-|H8x1_z%45R$w zfAXd=VUa(hgTXfr+hc!&YVzIH-1xWy6rM>3%MmcDV8rK-?@e?9(&uj>!c~I{+gJ5- z5pvSnFBIzf6CISgro{8>+NNt>T|T^eeo*1%f0d+nnO~FY(m$7aJGCZu$8tPF;kgW8 zMF^y3mh{_G03K$^+^8kZONGGO`-6x5^d0Zsb8tcResl!1ebBz&lUe`YH=d3>yq@U! E0n3p@*Z=?k diff --git a/src/msw/ctl3d/wat32/import32.zip b/src/msw/ctl3d/wat32/import32.zip index ca983075203df5c36a6ee46516b5bbe0f9466d26..ba79bd355d888028026c8a1ca60529190b6aab69 100644 GIT binary patch delta 28 jcmdna@{UP3z?+#xgyVgUqx>I#fsmQZ3Y=UU<)Rq@dmRVy delta 231 zcmV@6aWAK2mtSVK_C225LB51001Bf000UA006NQTLFKFx+T&< zM+Hyl!>Pi`(aN05=Jo4k6E0WfD!KB-!ga|he0bRXLYN|^GQZktd=``->s_luBD

  • A2)f)sIeCCm6RCPo>}x=#NXD=J4-HNBl}8I+bPQ5$WK=<{spK+-;S zS^>Jmat=(1ZlPyoEVLttt}{PcCb>(1Z3Cn0Q?7Z|TaUq+CuCV0veZh}j}NqB1dFs0 h9bm1w3Kz{G;>W2aLY@gJov*b$P^BW-BRz_UFSYxCV}Aeu diff --git a/src/msw/ctl3d/wat386/ctl3d32.obj b/src/msw/ctl3d/wat386/ctl3d32.obj index 11c666054f2b054089a53163be2bc7226d7e579d..a1ca670d0370a0d6139a0ebd9411331bb659c820 100644 GIT binary patch literal 1225 zcma)4O=}xR7-qH7ehO>-DsgIJQZ-d+lMp4gNLra*_ETDCw6pB4>KGP8BH3AiBRSG4 zhMsiX{sDp0UQ8*ZJ(kk;)buwLN>2^skb+B3rMH6JnUxX@ZAuP1^L)%a^X@w{DPPpr zLu6}yxOqF&u@iW<7U}`28eu2it#+$xmCmn;F!>7mYirk)gr9s`-NAdu1RNU-t4GP@ z$~N&pCs>1j{b6n=S%L8K&lMHN|q7j2cG% znFFcR%t(1A^V3wJZm{L@8Vut_g>0GYslX|0uOAnb z;!BxO0dh2CK1m>sdLM7MV;T5;s<&eaguQs!?d|NeV_v!baM0_r^+Ev@&s346daj4{ zCx_qiUkku#7$cITZ3U(P{3iAc<IiEpk_bXrS5b}hQpqS#o9VNF z0@PA-#soO02Dq6Wa;#;@V9sxWkUZ2Kb9N_WQG;}a7G#qLtvb3X!$zZtjTSPqC4tKW z($zq3Xf11jHsl2n$&NtvZxz6*J2Wkg=r*9QAs9sq-ioF zP6x4?W%vV;TG&Jgsjx(dvZDM3B-9m1EQ&Z}=*)scR{|N^wQ=+u?DgQ`sxGf1D)I*%!py+q))BM0ECXrAtnpvgoPC z@oF%66`lRM>;G`+fAsogvJGP7Jlx5(_x;g{f77NuXwwl(CAjL|ea2S>gfbgk?5BHa zB%H_2`SbXB0^f_le!Wc`I4yCyeB;c(mz#m#ZQH|PtSNB!~b4GE2UxB5q&Vmr7w zlq6}~U&)gaHwp&Ba8rVs1s(x{#P|APM#?>dAx&mcf^}Km(^-@n^*%gmg=<+Po-(Qx z0+>7rhn-%x+X_YL+MPkK!`CvIERtMZ#)j-VE>R!OzDDAg%rvY;Aq2CYN|Wkv7Y~W6 zNh_m|2mM>AEP7631QRqYo5Gy@p(DF;U6gpH0HA;)0NfO?t9uPhc_R%4JB~+P=&)n6 z05FK3$Mbj%>R!N(8WA}lt~ksGZ{&b@5ib$}y1eAT*eA2EkoX>l5N`+|eg!j-H!eW@ zn#24-427@bMN$Cbs)LDL$&RBvu~03-Q2jr08_)!8ziz8nhGQH zW=*q*au9`zMeDK?xpQBv~8bUws@4=jLND#65cbz?P#Wf?W- ztlNz`v&Y3SkGk*o;^U~2Yj@7W0i=!)paVf^TK+J ry0NSQ%8(V}Qr0taerRjaO6nkq0t>!IaNxjH8?Hy(bmiHeader.biBitCount))); // Get a hDC so we can create a bitmap compatible with it - hDC = CreateDC( T("DISPLAY"), NULL, NULL, NULL); + hDC = CreateDC( wxT("DISPLAY"), NULL, NULL, NULL); // 5) Create a device dependent bitmap with the XOR bits. hbmXor = CreateDIBitmap( hDC, (LPBITMAPINFOHEADER)&(lpDIB->bmiHeader), @@ -579,7 +579,7 @@ HCURSOR MakeCursor( HANDLE hDIB, LPPOINT lpptHotSpot, HINSTANCE hInst) lpDIB->bmiHeader.biBitCount))); // Get a hDC so we can create a bitmap compatible with it - hDC = CreateDC( T("DISPLAY"), NULL, NULL, NULL); + hDC = CreateDC( wxT("DISPLAY"), NULL, NULL, NULL); // 5) Create a device dependent bitmap with the XOR bits. hbmXor = CreateBitmap( (int )lpDIB->bmiHeader.biWidth, diff --git a/src/msw/cursor.cpp b/src/msw/cursor.cpp index 7781b4db12..56c4a8b9a3 100644 --- a/src/msw/cursor.cpp +++ b/src/msw/cursor.cpp @@ -165,27 +165,27 @@ wxCursor::wxCursor(int cursor_type) } case wxCURSOR_HAND: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_HAND")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_HAND")); break; } case wxCURSOR_BULLSEYE: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_BULLSEYE")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_BULLSEYE")); break; } case wxCURSOR_PENCIL: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_PENCIL")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_PENCIL")); break; } case wxCURSOR_MAGNIFIER: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_MAGNIFIER")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_MAGNIFIER")); break; } case wxCURSOR_NO_ENTRY: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_NO_ENTRY")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_NO_ENTRY")); break; } case wxCURSOR_LEFT_BUTTON: @@ -205,42 +205,42 @@ wxCursor::wxCursor(int cursor_type) } case wxCURSOR_SIZING: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_SIZING")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_SIZING")); break; } case wxCURSOR_WATCH: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_WATCH")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_WATCH")); break; } case wxCURSOR_SPRAYCAN: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_ROLLER")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_ROLLER")); break; } case wxCURSOR_PAINT_BRUSH: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_PBRUSH")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_PBRUSH")); break; } case wxCURSOR_POINT_LEFT: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_PLEFT")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_PLEFT")); break; } case wxCURSOR_POINT_RIGHT: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_PRIGHT")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_PRIGHT")); break; } case wxCURSOR_QUESTION_ARROW: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_QARROW")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_QARROW")); break; } case wxCURSOR_BLANK: { - M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), T("wxCURSOR_BLANK")); + M_CURSORDATA->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), wxT("wxCURSOR_BLANK")); break; } default: diff --git a/src/msw/data.cpp b/src/msw/data.cpp index 0878e4bb34..f9d4da15a8 100644 --- a/src/msw/data.cpp +++ b/src/msw/data.cpp @@ -118,49 +118,49 @@ wxFont wxNullFont; wxColour wxNullColour; // Default window names -const wxChar *wxButtonNameStr = T("button"); -const wxChar *wxCanvasNameStr = T("canvas"); -const wxChar *wxCheckBoxNameStr = T("check"); -const wxChar *wxChoiceNameStr = T("choice"); -const wxChar *wxComboBoxNameStr = T("comboBox"); -const wxChar *wxDialogNameStr = T("dialog"); -const wxChar *wxFrameNameStr = T("frame"); -const wxChar *wxGaugeNameStr = T("gauge"); -const wxChar *wxStaticBoxNameStr = T("groupBox"); -const wxChar *wxListBoxNameStr = T("listBox"); -const wxChar *wxStaticTextNameStr = T("message"); -const wxChar *wxStaticBitmapNameStr = T("message"); -const wxChar *wxMultiTextNameStr = T("multitext"); -const wxChar *wxPanelNameStr = T("panel"); -const wxChar *wxRadioBoxNameStr = T("radioBox"); -const wxChar *wxRadioButtonNameStr = T("radioButton"); -const wxChar *wxBitmapRadioButtonNameStr = T("radioButton"); -const wxChar *wxScrollBarNameStr = T("scrollBar"); -const wxChar *wxSliderNameStr = T("slider"); -const wxChar *wxStaticNameStr = T("static"); -const wxChar *wxTextCtrlWindowNameStr = T("textWindow"); -const wxChar *wxTextCtrlNameStr = T("text"); -const wxChar *wxVirtListBoxNameStr = T("virtListBox"); -const wxChar *wxButtonBarNameStr = T("buttonbar"); -const wxChar *wxEnhDialogNameStr = T("Shell"); -const wxChar *wxToolBarNameStr = T("toolbar"); -const wxChar *wxStatusLineNameStr = T("status_line"); -const wxChar *wxGetTextFromUserPromptStr = T("Input Text"); -const wxChar *wxMessageBoxCaptionStr = T("Message"); -const wxChar *wxFileSelectorPromptStr = T("Select a file"); -const wxChar *wxFileSelectorDefaultWildcardStr = T("*.*"); -const wxChar *wxInternalErrorStr = T("wxWindows Internal Error"); -const wxChar *wxFatalErrorStr = T("wxWindows Fatal Error"); -const wxChar *wxTreeCtrlNameStr = T("treeCtrl"); -const wxChar *wxDirDialogNameStr = T("wxDirCtrl"); -const wxChar *wxDirDialogDefaultFolderStr = T("/"); +const wxChar *wxButtonNameStr = wxT("button"); +const wxChar *wxCanvasNameStr = wxT("canvas"); +const wxChar *wxCheckBoxNameStr = wxT("check"); +const wxChar *wxChoiceNameStr = wxT("choice"); +const wxChar *wxComboBoxNameStr = wxT("comboBox"); +const wxChar *wxDialogNameStr = wxT("dialog"); +const wxChar *wxFrameNameStr = wxT("frame"); +const wxChar *wxGaugeNameStr = wxT("gauge"); +const wxChar *wxStaticBoxNameStr = wxT("groupBox"); +const wxChar *wxListBoxNameStr = wxT("listBox"); +const wxChar *wxStaticTextNameStr = wxT("message"); +const wxChar *wxStaticBitmapNameStr = wxT("message"); +const wxChar *wxMultiTextNameStr = wxT("multitext"); +const wxChar *wxPanelNameStr = wxT("panel"); +const wxChar *wxRadioBoxNameStr = wxT("radioBox"); +const wxChar *wxRadioButtonNameStr = wxT("radioButton"); +const wxChar *wxBitmapRadioButtonNameStr = wxT("radioButton"); +const wxChar *wxScrollBarNameStr = wxT("scrollBar"); +const wxChar *wxSliderNameStr = wxT("slider"); +const wxChar *wxStaticNameStr = wxT("static"); +const wxChar *wxTextCtrlWindowNameStr = wxT("textWindow"); +const wxChar *wxTextCtrlNameStr = wxT("text"); +const wxChar *wxVirtListBoxNameStr = wxT("virtListBox"); +const wxChar *wxButtonBarNameStr = wxT("buttonbar"); +const wxChar *wxEnhDialogNameStr = wxT("Shell"); +const wxChar *wxToolBarNameStr = wxT("toolbar"); +const wxChar *wxStatusLineNameStr = wxT("status_line"); +const wxChar *wxGetTextFromUserPromptStr = wxT("Input Text"); +const wxChar *wxMessageBoxCaptionStr = wxT("Message"); +const wxChar *wxFileSelectorPromptStr = wxT("Select a file"); +const wxChar *wxFileSelectorDefaultWildcardStr = wxT("*.*"); +const wxChar *wxInternalErrorStr = wxT("wxWindows Internal Error"); +const wxChar *wxFatalErrorStr = wxT("wxWindows Fatal Error"); +const wxChar *wxTreeCtrlNameStr = wxT("treeCtrl"); +const wxChar *wxDirDialogNameStr = wxT("wxDirCtrl"); +const wxChar *wxDirDialogDefaultFolderStr = wxT("/"); // See wx/utils.h -const wxChar *wxFloatToStringStr = T("%.2f"); -const wxChar *wxDoubleToStringStr = T("%.2f"); +const wxChar *wxFloatToStringStr = wxT("%.2f"); +const wxChar *wxDoubleToStringStr = wxT("%.2f"); #ifdef __WXMSW__ -const wxChar *wxUserResourceStr = T("TEXT"); +const wxChar *wxUserResourceStr = wxT("TEXT"); #endif #if wxUSE_SHARED_LIBRARY diff --git a/src/msw/dc.cpp b/src/msw/dc.cpp index 13f84710e2..c32a359fd1 100644 --- a/src/msw/dc.cpp +++ b/src/msw/dc.cpp @@ -177,7 +177,7 @@ void wxDC::DoSetClippingRegion(long cx, long cy, long cw, long ch) void wxDC::DoSetClippingRegionAsRegion(const wxRegion& region) { - wxCHECK_RET( region.GetHRGN(), T("invalid clipping region") ); + wxCHECK_RET( region.GetHRGN(), wxT("invalid clipping region") ); wxRect box = region.GetBox(); @@ -252,7 +252,7 @@ void wxDC::Clear() } else { - wxCHECK_RET( m_selectedBitmap.Ok(), T("this DC can't be cleared") ); + wxCHECK_RET( m_selectedBitmap.Ok(), wxT("this DC can't be cleared") ); rect.left = 0; rect.top = 0; rect.right = m_selectedBitmap.GetWidth(); @@ -595,7 +595,7 @@ void wxDC::DoDrawBitmap( const wxBitmap &bmp, long x, long y, bool useMask ) HDC memdc = ::CreateCompatibleDC( cdc ); HBITMAP hbitmap = (HBITMAP) bmp.GetHBITMAP( ); - wxASSERT_MSG( hbitmap, T("bitmap is ok but HBITMAP is NULL?") ); + wxASSERT_MSG( hbitmap, wxT("bitmap is ok but HBITMAP is NULL?") ); ::SelectObject( memdc, hbitmap ); ::BitBlt( cdc, x, y, bmp.GetWidth(), bmp.GetHeight(), memdc, 0, 0, SRCCOPY); @@ -718,7 +718,7 @@ void wxDC::SetFont(const wxFont& the_font) HFONT f = (HFONT) ::SelectObject(GetHdc(), (HFONT) m_font.GetResourceHandle()); if (f == (HFONT) NULL) { - wxLogDebug(T("::SelectObject failed in wxDC::SetFont.")); + wxLogDebug(wxT("::SelectObject failed in wxDC::SetFont.")); } if (!m_oldFont) m_oldFont = (WXHFONT) f; diff --git a/src/msw/dcclient.cpp b/src/msw/dcclient.cpp index d76f002aba..ec20193357 100644 --- a/src/msw/dcclient.cpp +++ b/src/msw/dcclient.cpp @@ -184,12 +184,12 @@ wxPaintDC::wxPaintDC() wxPaintDC::wxPaintDC(wxWindow *canvas) { - wxCHECK_RET( canvas, T("NULL canvas in wxPaintDC ctor") ); + wxCHECK_RET( canvas, wxT("NULL canvas in wxPaintDC ctor") ); #ifdef __WXDEBUG__ if ( g_isPainting <= 0 ) { - wxFAIL_MSG( T("wxPaintDC may be created only in EVT_PAINT handler!") ); + wxFAIL_MSG( wxT("wxPaintDC may be created only in EVT_PAINT handler!") ); return; } @@ -227,7 +227,7 @@ wxPaintDC::~wxPaintDC() size_t index; wxPaintDCInfo *info = FindInCache(&index); - wxCHECK_RET( info, T("existing DC should have a cache entry") ); + wxCHECK_RET( info, wxT("existing DC should have a cache entry") ); if ( !--info->count ) { diff --git a/src/msw/dcmemory.cpp b/src/msw/dcmemory.cpp index cf93c27c32..c8ce5662de 100644 --- a/src/msw/dcmemory.cpp +++ b/src/msw/dcmemory.cpp @@ -93,7 +93,7 @@ void wxMemoryDC::SelectObject(const wxBitmap& bitmap) // a device context if (bitmap.GetSelectedInto() && (bitmap.GetSelectedInto() != this)) { - wxFatalError(T("Error in wxMemoryDC::SelectObject\nBitmap is selected in another wxMemoryDC.\nDelete the first wxMemoryDC or use SelectObject(NULL)")); + wxFatalError(wxT("Error in wxMemoryDC::SelectObject\nBitmap is selected in another wxMemoryDC.\nDelete the first wxMemoryDC or use SelectObject(NULL)")); return; } @@ -122,7 +122,7 @@ void wxMemoryDC::SelectObject(const wxBitmap& bitmap) if (bm == ERROR) { - wxFatalError(T("Error in wxMemoryDC::SelectObject\nBitmap may not be loaded, or may be selected in another wxMemoryDC.\nDelete the first wxMemoryDC to deselect bitmap.")); + wxFatalError(wxT("Error in wxMemoryDC::SelectObject\nBitmap may not be loaded, or may be selected in another wxMemoryDC.\nDelete the first wxMemoryDC to deselect bitmap.")); } else if (!m_oldBitmap) m_oldBitmap = (WXHBITMAP) bm; diff --git a/src/msw/dcprint.cpp b/src/msw/dcprint.cpp index 0ec356c405..ffd7d73fda 100644 --- a/src/msw/dcprint.cpp +++ b/src/msw/dcprint.cpp @@ -47,7 +47,7 @@ wxPrinterDC::wxPrinterDC(const wxString& driver_name, const wxString& device_nam { m_isInteractive = interactive; - if (!file.IsNull() && file != T("")) + if (!file.IsNull() && file != wxT("")) m_printData.SetFilename(file); #if wxUSE_COMMON_DIALOGS @@ -82,9 +82,9 @@ wxPrinterDC::wxPrinterDC(const wxString& driver_name, const wxString& device_nam } else #endif - if ((!driver_name.IsNull() && driver_name != T("")) && - (!device_name.IsNull() && device_name != T("")) && - (!file.IsNull() && file != T(""))) + if ((!driver_name.IsNull() && driver_name != wxT("")) && + (!device_name.IsNull() && device_name != wxT("")) && + (!file.IsNull() && file != wxT(""))) { m_hDC = (WXHDC) CreateDC(WXSTRINGCAST driver_name, WXSTRINGCAST device_name, WXSTRINGCAST file, NULL); m_ok = m_hDC ? TRUE: FALSE; @@ -184,7 +184,7 @@ bool wxPrinterDC::StartDoc(const wxString& message) if (ret <= 0) { DWORD lastError = GetLastError(); - wxLogDebug(T("wxDC::StartDoc failed with error: %d\n"), lastError); + wxLogDebug(wxT("wxDC::StartDoc failed with error: %d\n"), lastError); } #endif @@ -262,7 +262,7 @@ static bool wxGetDefaultDeviceName(wxString& deviceName, wxString& portName) GlobalFree(pd.hDevMode); pd.hDevMode=NULL; } - return ( deviceName != T("") ); + return ( deviceName != wxT("") ); } #if 0 @@ -354,7 +354,7 @@ WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& printDataConst) wxChar* deviceName; wxChar* portName = (wxChar*) NULL; // Obsolete in WIN32 - if (devNameStr == T("")) + if (devNameStr == wxT("")) deviceName = (wxChar*) NULL; else deviceName = WXSTRINGCAST devNameStr; @@ -366,13 +366,13 @@ WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& printDataConst) if ( hDevMode ) lpDevMode = (DEVMODE*) GlobalLock(hDevMode); - if (devNameStr == T("")) + if (devNameStr == wxT("")) { // Retrieve the default device name wxString portName; bool ret = wxGetDefaultDeviceName(devNameStr, portName); - wxASSERT_MSG( ret, T("Could not get default device name.") ); + wxASSERT_MSG( ret, wxT("Could not get default device name.") ); deviceName = WXSTRINGCAST devNameStr; } diff --git a/src/msw/dde.cpp b/src/msw/dde.cpp index 80c49e0796..ad4f8174a2 100644 --- a/src/msw/dde.cpp +++ b/src/msw/dde.cpp @@ -228,7 +228,7 @@ bool wxDDEServer::Create(const wxString& server_name) wxDDEServer::~wxDDEServer(void) { - if (m_serviceName != T("")) + if (m_serviceName != wxT("")) { HSZ serviceName = DdeCreateStringHandle(DDEIdInst, WXSTRINGCAST m_serviceName, CP_WINANSI); if (DdeNameService(DDEIdInst, serviceName, NULL, DNS_UNREGISTER) == 0) @@ -742,64 +742,64 @@ void DDEPrintError(void) switch (DdeGetLastError(DDEIdInst)) { case DMLERR_ADVACKTIMEOUT: - err = T("A request for a synchronous advise transaction has timed out."); + err = wxT("A request for a synchronous advise transaction has timed out."); break; case DMLERR_BUSY: - err = T("The response to the transaction caused the DDE_FBUSY bit to be set."); + err = wxT("The response to the transaction caused the DDE_FBUSY bit to be set."); break; case DMLERR_DATAACKTIMEOUT: - err = T("A request for a synchronous data transaction has timed out."); + err = wxT("A request for a synchronous data transaction has timed out."); break; case DMLERR_DLL_NOT_INITIALIZED: - err = T("A DDEML function was called without first calling the DdeInitialize function,\n\ror an invalid instance identifier\n\rwas passed to a DDEML function."); + err = wxT("A DDEML function was called without first calling the DdeInitialize function,\n\ror an invalid instance identifier\n\rwas passed to a DDEML function."); break; case DMLERR_DLL_USAGE: - err = T("An application initialized as APPCLASS_MONITOR has\n\rattempted to perform a DDE transaction,\n\ror an application initialized as APPCMD_CLIENTONLY has \n\rattempted to perform server transactions."); + err = wxT("An application initialized as APPCLASS_MONITOR has\n\rattempted to perform a DDE transaction,\n\ror an application initialized as APPCMD_CLIENTONLY has \n\rattempted to perform server transactions."); break; case DMLERR_EXECACKTIMEOUT: - err = T("A request for a synchronous execute transaction has timed out."); + err = wxT("A request for a synchronous execute transaction has timed out."); break; case DMLERR_INVALIDPARAMETER: - err = T("A parameter failed to be validated by the DDEML."); + err = wxT("A parameter failed to be validated by the DDEML."); break; case DMLERR_LOW_MEMORY: - err = T("A DDEML application has created a prolonged race condition."); + err = wxT("A DDEML application has created a prolonged race condition."); break; case DMLERR_MEMORY_ERROR: - err = T("A memory allocation failed."); + err = wxT("A memory allocation failed."); break; case DMLERR_NO_CONV_ESTABLISHED: - err = T("A client's attempt to establish a conversation has failed."); + err = wxT("A client's attempt to establish a conversation has failed."); break; case DMLERR_NOTPROCESSED: - err = T("A transaction failed."); + err = wxT("A transaction failed."); break; case DMLERR_POKEACKTIMEOUT: - err = T("A request for a synchronous poke transaction has timed out."); + err = wxT("A request for a synchronous poke transaction has timed out."); break; case DMLERR_POSTMSG_FAILED: - err = T("An internal call to the PostMessage function has failed. "); + err = wxT("An internal call to the PostMessage function has failed. "); break; case DMLERR_REENTRANCY: - err = T("Reentrancy problem."); + err = wxT("Reentrancy problem."); break; case DMLERR_SERVER_DIED: - err = T("A server-side transaction was attempted on a conversation\n\rthat was terminated by the client, or the server\n\rterminated before completing a transaction."); + err = wxT("A server-side transaction was attempted on a conversation\n\rthat was terminated by the client, or the server\n\rterminated before completing a transaction."); break; case DMLERR_SYS_ERROR: - err = T("An internal error has occurred in the DDEML."); + err = wxT("An internal error has occurred in the DDEML."); break; case DMLERR_UNADVACKTIMEOUT: - err = T("A request to end an advise transaction has timed out."); + err = wxT("A request to end an advise transaction has timed out."); break; case DMLERR_UNFOUND_QUEUE_ID: - err = T("An invalid transaction identifier was passed to a DDEML function.\n\rOnce the application has returned from an XTYP_XACT_COMPLETE callback,\n\rthe transaction identifier for that callback is no longer valid."); + err = wxT("An invalid transaction identifier was passed to a DDEML function.\n\rOnce the application has returned from an XTYP_XACT_COMPLETE callback,\n\rthe transaction identifier for that callback is no longer valid."); break; default: - err = T("Unrecognised error type."); + err = wxT("Unrecognised error type."); break; } - MessageBox((HWND) NULL, (LPCTSTR)err, T("DDE Error"), MB_OK | MB_ICONINFORMATION); + MessageBox((HWND) NULL, (LPCTSTR)err, wxT("DDE Error"), MB_OK | MB_ICONINFORMATION); } #endif diff --git a/src/msw/dialog.cpp b/src/msw/dialog.cpp index 8c3f4e9afa..764e4518a1 100644 --- a/src/msw/dialog.cpp +++ b/src/msw/dialog.cpp @@ -124,11 +124,11 @@ bool wxDialog::Create(wxWindow *parent, wxWindowID id, // otherwise it would look too strange) const wxChar *dlg; if ( style & wxRESIZE_BORDER ) - dlg = T("wxResizeableDialog"); + dlg = wxT("wxResizeableDialog"); else if ( style & wxCAPTION ) - dlg = T("wxCaptionDialog"); + dlg = wxT("wxCaptionDialog"); else - dlg = T("wxNoCaptionDialog"); + dlg = wxT("wxNoCaptionDialog"); MSWCreate(m_windowId, parent, NULL, this, NULL, x, y, width, height, 0, // style is not used if we have dlg template diff --git a/src/msw/dialup.cpp b/src/msw/dialup.cpp index 409b762930..fad3b9aac2 100644 --- a/src/msw/dialup.cpp +++ b/src/msw/dialup.cpp @@ -704,11 +704,11 @@ bool wxDialUpManagerMSW::Dial(const wxString& nameOfISP, bool async) { // check preconditions - wxCHECK_MSG( IsOk(), FALSE, T("using uninitialized wxDialUpManager") ); + wxCHECK_MSG( IsOk(), FALSE, wxT("using uninitialized wxDialUpManager") ); if ( ms_hRasConnection ) { - wxFAIL_MSG(T("there is already an active connection")); + wxFAIL_MSG(wxT("there is already an active connection")); return TRUE; } @@ -875,7 +875,7 @@ bool wxDialUpManagerMSW::CancelDialing() return FALSE; } - wxASSERT_MSG( ms_hRasConnection, T("dialing but no connection?") ); + wxASSERT_MSG( ms_hRasConnection, wxT("dialing but no connection?") ); ms_dialer = NULL; @@ -884,7 +884,7 @@ bool wxDialUpManagerMSW::CancelDialing() bool wxDialUpManagerMSW::HangUp() { - wxCHECK_MSG( IsOk(), FALSE, T("using uninitialized wxDialUpManager") ); + wxCHECK_MSG( IsOk(), FALSE, wxT("using uninitialized wxDialUpManager") ); // we may terminate either the connection we initiated or another one which // is active now @@ -982,14 +982,14 @@ bool wxDialUpManagerMSW::IsAlwaysOnline() const } } - wxASSERT_MSG( ms_isAlwaysOnline != -1, T("logic error") ); + wxASSERT_MSG( ms_isAlwaysOnline != -1, wxT("logic error") ); return ms_isAlwaysOnline != 0; } bool wxDialUpManagerMSW::IsOnline() const { - wxCHECK_MSG( IsOk(), FALSE, T("using uninitialized wxDialUpManager") ); + wxCHECK_MSG( IsOk(), FALSE, wxT("using uninitialized wxDialUpManager") ); if ( ms_userSpecifiedOnlineStatus != -1 ) { @@ -1005,14 +1005,14 @@ bool wxDialUpManagerMSW::IsOnline() const void wxDialUpManagerMSW::SetOnlineStatus(bool isOnline) { - wxCHECK_RET( IsOk(), T("using uninitialized wxDialUpManager") ); + wxCHECK_RET( IsOk(), wxT("using uninitialized wxDialUpManager") ); ms_userSpecifiedOnlineStatus = isOnline; } bool wxDialUpManagerMSW::EnableAutoCheckOnlineStatus(size_t nSeconds) { - wxCHECK_MSG( IsOk(), FALSE, T("using uninitialized wxDialUpManager") ); + wxCHECK_MSG( IsOk(), FALSE, wxT("using uninitialized wxDialUpManager") ); bool ok = ms_pfnRasConnectionNotification != 0; @@ -1144,7 +1144,7 @@ bool wxDialUpManagerMSW::EnableAutoCheckOnlineStatus(size_t nSeconds) if ( dwRet != 0 ) { - wxLogDebug(T("RasConnectionNotification() failed: %s"), + wxLogDebug(wxT("RasConnectionNotification() failed: %s"), GetErrorString(dwRet)); CleanUpThreadData(); @@ -1170,7 +1170,7 @@ bool wxDialUpManagerMSW::EnableAutoCheckOnlineStatus(size_t nSeconds) void wxDialUpManagerMSW::DisableAutoCheckOnlineStatus() { - wxCHECK_RET( IsOk(), T("using uninitialized wxDialUpManager") ); + wxCHECK_RET( IsOk(), wxT("using uninitialized wxDialUpManager") ); if ( m_hThread ) { @@ -1194,7 +1194,7 @@ void wxDialUpManagerMSW::DisableAutoCheckOnlineStatus() void wxDialUpManagerMSW::SetWellKnownHost(const wxString& WXUNUSED(hostname), int WXUNUSED(port)) { - wxCHECK_RET( IsOk(), T("using uninitialized wxDialUpManager") ); + wxCHECK_RET( IsOk(), wxT("using uninitialized wxDialUpManager") ); // nothing to do - we don't use this } @@ -1202,7 +1202,7 @@ void wxDialUpManagerMSW::SetWellKnownHost(const wxString& WXUNUSED(hostname), void wxDialUpManagerMSW::SetConnectCommand(const wxString& WXUNUSED(dial), const wxString& WXUNUSED(hangup)) { - wxCHECK_RET( IsOk(), T("using uninitialized wxDialUpManager") ); + wxCHECK_RET( IsOk(), wxT("using uninitialized wxDialUpManager") ); // nothing to do - we don't use this } @@ -1267,7 +1267,7 @@ static void WINAPI wxRasDialFunc(UINT unMsg, { wxDialUpManagerMSW *dialUpManager = wxDialUpManagerMSW::GetDialer(); - wxCHECK_RET( dialUpManager, T("who started to dial then?") ); + wxCHECK_RET( dialUpManager, wxT("who started to dial then?") ); SendMessage(dialUpManager->GetRasWindow(), wxWM_RAS_DIALING_PROGRESS, rasconnstate, dwError); diff --git a/src/msw/dib.cpp b/src/msw/dib.cpp index e42603f23e..3d13eb4ba0 100644 --- a/src/msw/dib.cpp +++ b/src/msw/dib.cpp @@ -436,8 +436,8 @@ BOOL wxReadDIB(LPTSTR lpFileName, HBITMAP *bitmap, HPALETTE *palette) fh = OpenFile (wxFNCONV(lpFileName), &of, OF_READ); if (fh == -1) { - wsprintf(str,T("Can't open file '%s'"), lpFileName); - MessageBox(NULL, str, T("Error"), MB_ICONSTOP | MB_OK); + wsprintf(str,wxT("Can't open file '%s'"), lpFileName); + MessageBox(NULL, str, wxT("Error"), MB_ICONSTOP | MB_OK); return (0); } diff --git a/src/msw/dragimag.cpp b/src/msw/dragimag.cpp index a23f964c4e..27dc25f1b4 100644 --- a/src/msw/dragimag.cpp +++ b/src/msw/dragimag.cpp @@ -172,11 +172,11 @@ bool wxDragImage::Create(const wxListCtrl& listCtrl, long id) // Begin drag bool wxDragImage::BeginDrag(const wxPoint& hotspot, wxWindow* WXUNUSED(window)) { - wxASSERT_MSG( (m_hImageList != 0), T("Image list must not be null in BeginDrag.")); + wxASSERT_MSG( (m_hImageList != 0), wxT("Image list must not be null in BeginDrag.")); bool ret = (ImageList_BeginDrag((HIMAGELIST) m_hImageList, 0, hotspot.x, hotspot.y) != 0); - wxASSERT_MSG( (ret), T("BeginDrag failed.")); + wxASSERT_MSG( (ret), wxT("BeginDrag failed.")); if (!ret) return FALSE; @@ -186,7 +186,7 @@ bool wxDragImage::BeginDrag(const wxPoint& hotspot, wxWindow* WXUNUSED(window)) // First add the cursor to the image list int cursorIndex = ImageList_AddIcon((HIMAGELIST) m_hImageList, (HICON) m_cursor.GetHCURSOR()); - wxASSERT_MSG( (cursorIndex != -1), T("ImageList_AddIcon failed in BeginDrag.")); + wxASSERT_MSG( (cursorIndex != -1), wxT("ImageList_AddIcon failed in BeginDrag.")); if (cursorIndex != -1) { @@ -202,7 +202,7 @@ bool wxDragImage::BeginDrag(const wxPoint& hotspot, wxWindow* WXUNUSED(window)) // End drag bool wxDragImage::EndDrag(wxWindow* WXUNUSED(window)) { - wxASSERT_MSG( (m_hImageList != 0), T("Image list must not be null in EndDrag.")); + wxASSERT_MSG( (m_hImageList != 0), wxT("Image list must not be null in EndDrag.")); ImageList_EndDrag(); @@ -215,7 +215,7 @@ bool wxDragImage::EndDrag(wxWindow* WXUNUSED(window)) // is non-NULL, or in screen coordinates if NULL. bool wxDragImage::Move(const wxPoint& pt, wxWindow* window) { - wxASSERT_MSG( (m_hImageList != 0), T("Image list must not be null in Move.")); + wxASSERT_MSG( (m_hImageList != 0), wxT("Image list must not be null in Move.")); // TODO: what coordinates are these in: window, client, or screen? bool ret = (ImageList_DragMove( pt.x, pt.y ) != 0); @@ -227,7 +227,7 @@ bool wxDragImage::Move(const wxPoint& pt, wxWindow* window) bool wxDragImage::Show(wxWindow* window) { - wxASSERT_MSG( (m_hImageList != 0), T("Image list must not be null in Show.")); + wxASSERT_MSG( (m_hImageList != 0), wxT("Image list must not be null in Show.")); HWND hWnd = 0; if (window) @@ -240,7 +240,7 @@ bool wxDragImage::Show(wxWindow* window) bool wxDragImage::Hide(wxWindow* window) { - wxASSERT_MSG( (m_hImageList != 0), T("Image list must not be null in Hide.")); + wxASSERT_MSG( (m_hImageList != 0), wxT("Image list must not be null in Hide.")); HWND hWnd = 0; if (window) diff --git a/src/msw/filedlg.cpp b/src/msw/filedlg.cpp index 5bddc8cf66..1cd0d4355c 100644 --- a/src/msw/filedlg.cpp +++ b/src/msw/filedlg.cpp @@ -70,7 +70,7 @@ wxString wxFileSelector(const wxChar *title, wxString filter2; if ( defaultExtension && !filter ) - filter2 = wxString(T("*.")) + defaultExtension; + filter2 = wxString(wxT("*.")) + defaultExtension; else if ( filter ) filter2 = filter; @@ -92,7 +92,7 @@ wxString wxFileSelector(const wxChar *title, for( unsigned int i = 0; i < filter2.Len(); i++ ) { - if( filter2.GetChar(i) == T('|') ) + if( filter2.GetChar(i) == wxT('|') ) { // save the start index of the new filter unsigned int is = i++; @@ -101,7 +101,7 @@ wxString wxFileSelector(const wxChar *title, // find the end of the filter for( ; i < filter2.Len(); i++ ) { - if(filter2[i] == T('|')) + if(filter2[i] == wxT('|')) break; } @@ -161,8 +161,8 @@ wxString wxFileSelectorEx(const wxChar *title, int y) { - wxFileDialog fileDialog(parent, title ? title : T(""), defaultDir ? defaultDir : T(""), - defaultFileName ? defaultFileName : T(""), filter ? filter : T(""), flags, wxPoint(x, y)); + wxFileDialog fileDialog(parent, title ? title : wxT(""), defaultDir ? defaultDir : wxT(""), + defaultFileName ? defaultFileName : wxT(""), filter ? filter : wxT(""), flags, wxPoint(x, y)); if ( fileDialog.ShowModal() == wxID_OK ) { @@ -181,7 +181,7 @@ wxFileDialog::wxFileDialog(wxWindow *parent, const wxString& message, m_message = message; m_dialogStyle = style; m_parent = parent; - m_path = T(""); + m_path = wxT(""); m_fileName = defaultFileName; m_dir = defaultDir; m_wildCard = wildCard; @@ -196,8 +196,8 @@ int wxFileDialog::ShowModal(void) static wxChar fileNameBuffer [ MAXPATH ]; // the file-name wxChar titleBuffer [ MAXFILE+1+MAXEXT ]; // the file-name, without path - *fileNameBuffer = T('\0'); - *titleBuffer = T('\0'); + *fileNameBuffer = wxT('\0'); + *titleBuffer = wxT('\0'); long msw_flags = 0; if ( (m_dialogStyle & wxHIDE_READONLY) || (m_dialogStyle & wxSAVE) ) @@ -228,8 +228,8 @@ int wxFileDialog::ShowModal(void) size_t i = 0; size_t len = m_dir.Length(); for (i = 0; i < len; i++) - if (m_dir[i] == T('/')) - m_dir[i] = T('\\'); + if (m_dir[i] == wxT('/')) + m_dir[i] = wxT('\\'); of.lpstrInitialDir = m_dir.c_str(); @@ -251,12 +251,12 @@ int wxFileDialog::ShowModal(void) wxString theFilter; if ( wxStrlen(m_wildCard) == 0 ) - theFilter = wxString(T("*.*")); + theFilter = wxString(wxT("*.*")); else theFilter = m_wildCard ; wxString filterBuffer; - if ( !wxStrchr( theFilter, T('|') ) ) { // only one filter ==> default text + if ( !wxStrchr( theFilter, wxT('|') ) ) { // only one filter ==> default text filterBuffer.Printf(_("Files (%s)|%s"), theFilter.c_str(), theFilter.c_str()); } @@ -265,11 +265,11 @@ int wxFileDialog::ShowModal(void) } - filterBuffer += T("|"); + filterBuffer += wxT("|"); // Replace | with \0 for (i = 0; i < filterBuffer.Len(); i++ ) { - if ( filterBuffer.GetChar(i) == T('|') ) { - filterBuffer[i] = T('\0'); + if ( filterBuffer.GetChar(i) == wxT('|') ) { + filterBuffer[i] = wxT('\0'); } } @@ -279,7 +279,7 @@ int wxFileDialog::ShowModal(void) //=== Setting defaultFileName >>========================================= wxStrncpy( fileNameBuffer, (const wxChar *)m_fileName, MAXPATH-1 ); - fileNameBuffer[ MAXPATH-1 ] = T('\0'); + fileNameBuffer[ MAXPATH-1 ] = wxT('\0'); of.lpstrFile = fileNameBuffer; // holds returned filename of.nMaxFile = MAXPATH; @@ -297,7 +297,7 @@ int wxFileDialog::ShowModal(void) m_filterIndex = (int)of.nFilterIndex; - if ( of.nFileExtension && fileNameBuffer[ of.nFileExtension-1] != T('.') ) + if ( of.nFileExtension && fileNameBuffer[ of.nFileExtension-1] != wxT('.') ) { // user has typed an filename // without an extension: @@ -308,19 +308,19 @@ int wxFileDialog::ShowModal(void) extension = extension + wxStrlen( extension ) +1; } - extension = wxStrrchr( extension, T('.') ); + extension = wxStrrchr( extension, wxT('.') ); if ( extension // != "blabla" - && !wxStrrchr( extension, T('*') ) // != "blabla.*" - && !wxStrrchr( extension, T('?') ) // != "blabla.?" + && !wxStrrchr( extension, wxT('*') ) // != "blabla.*" + && !wxStrrchr( extension, wxT('?') ) // != "blabla.?" && extension[1] // != "blabla." - && extension[1] != T(' ') ) // != "blabla. " + && extension[1] != wxT(' ') ) // != "blabla. " { // now concat extension to the fileName: m_fileName = wxString(fileNameBuffer) + extension; int len = wxStrlen( fileNameBuffer ); wxStrncpy( fileNameBuffer + len, extension, MAXPATH - len ); - fileNameBuffer[ MAXPATH -1 ] = T('\0'); + fileNameBuffer[ MAXPATH -1 ] = wxT('\0'); } } @@ -352,7 +352,7 @@ int wxFileDialog::ShowModal(void) if ( dwErr != 0 ) { // this msg is only for developers - wxLogError(T("Common dialog failed with error code %0lx."), + wxLogError(wxT("Common dialog failed with error code %0lx."), dwErr); } //else: it was just cancelled @@ -378,11 +378,11 @@ wxString wxDefaultFileSelector(bool load, prompt.Printf(str, what); const wxChar *ext = extension; - if (*ext == T('.')) + if (*ext == wxT('.')) ext++; wxString wild; - wild.Printf(T("*.%s"), ext); + wild.Printf(wxT("*.%s"), ext); return wxFileSelector (prompt, NULL, default_name, ext, wild, 0, parent); } diff --git a/src/msw/font.cpp b/src/msw/font.cpp index 6f1ea88cf8..9f3858a2bd 100644 --- a/src/msw/font.cpp +++ b/src/msw/font.cpp @@ -200,7 +200,7 @@ bool wxFont::RealizeResource() { // VZ: the old code returned FALSE in this case, but it doesn't seem // to make sense because the font _was_ created - wxLogDebug(T("Calling wxFont::RealizeResource() twice")); + wxLogDebug(wxT("Calling wxFont::RealizeResource() twice")); return TRUE; } @@ -212,7 +212,7 @@ bool wxFont::RealizeResource() { case wxSCRIPT: ff_family = FF_SCRIPT ; - ff_face = T("Script") ; + ff_face = wxT("Script") ; break ; case wxDECORATIVE: @@ -221,24 +221,24 @@ bool wxFont::RealizeResource() case wxROMAN: ff_family = FF_ROMAN; - ff_face = T("Times New Roman") ; + ff_face = wxT("Times New Roman") ; break; case wxTELETYPE: case wxMODERN: ff_family = FF_MODERN; - ff_face = T("Courier New") ; + ff_face = wxT("Courier New") ; break; case wxSWISS: ff_family = FF_SWISS; - ff_face = T("Arial") ; + ff_face = wxT("Arial") ; break; case wxDEFAULT: default: ff_family = FF_SWISS; - ff_face = T("Arial") ; + ff_face = wxT("Arial") ; } BYTE ff_italic; @@ -250,7 +250,7 @@ bool wxFont::RealizeResource() break; default: - wxFAIL_MSG(T("unknown font slant")); + wxFAIL_MSG(wxT("unknown font slant")); // fall through case wxNORMAL: @@ -261,7 +261,7 @@ bool wxFont::RealizeResource() switch ( M_FONTDATA->m_weight ) { default: - wxFAIL_MSG(T("unknown font weight")); + wxFAIL_MSG(wxT("unknown font weight")); // fall through case wxNORMAL: @@ -383,7 +383,7 @@ bool wxFont::RealizeResource() break; default: - wxFAIL_MSG(T("unsupported encoding")); + wxFAIL_MSG(wxT("unsupported encoding")); // fall through case wxFONTENCODING_SYSTEM: diff --git a/src/msw/frame.cpp b/src/msw/frame.cpp index 9f079fd138..ffa5812de3 100644 --- a/src/msw/frame.cpp +++ b/src/msw/frame.cpp @@ -363,7 +363,7 @@ wxStatusBar* wxFrame::CreateStatusBar(int number, long style, wxWindowID id, { // VZ: calling CreateStatusBar twice is an error - why anyone would do it? wxCHECK_MSG( m_frameStatusBar == NULL, FALSE, - T("recreating status bar in wxFrame") ); + wxT("recreating status bar in wxFrame") ); m_frameStatusBar = OnCreateStatusBar(number, style, id, name); @@ -378,14 +378,14 @@ wxStatusBar* wxFrame::CreateStatusBar(int number, long style, wxWindowID id, void wxFrame::SetStatusText(const wxString& text, int number) { - wxCHECK_RET( m_frameStatusBar != NULL, T("no statusbar to set text for") ); + wxCHECK_RET( m_frameStatusBar != NULL, wxT("no statusbar to set text for") ); m_frameStatusBar->SetStatusText(text, number); } void wxFrame::SetStatusWidths(int n, const int widths_field[]) { - wxCHECK_RET( m_frameStatusBar != NULL, T("no statusbar to set widths for") ); + wxCHECK_RET( m_frameStatusBar != NULL, wxT("no statusbar to set widths for") ); m_frameStatusBar->SetStatusWidths(n, widths_field); PositionStatusBar(); @@ -429,7 +429,7 @@ void wxFrame::SetMenuBar(wxMenuBar *menu_bar) return; } - wxCHECK_RET( !menu_bar->GetFrame(), T("this menubar is already attached") ); + wxCHECK_RET( !menu_bar->GetFrame(), wxT("this menubar is already attached") ); if (m_frameMenuBar) delete m_frameMenuBar; @@ -733,7 +733,7 @@ void wxFrame::ClientToScreen(int *x, int *y) const wxToolBar* wxFrame::CreateToolBar(long style, wxWindowID id, const wxString& name) { wxCHECK_MSG( m_frameToolBar == NULL, FALSE, - T("recreating toolbar in wxFrame") ); + wxT("recreating toolbar in wxFrame") ); wxToolBar* toolBar = OnCreateToolBar(style, id, name); if (toolBar) diff --git a/src/msw/gaugemsw.cpp b/src/msw/gaugemsw.cpp index 0a06c08f03..5a86380c51 100644 --- a/src/msw/gaugemsw.cpp +++ b/src/msw/gaugemsw.cpp @@ -107,7 +107,7 @@ bool wxGaugeMSW::Create(wxWindow *parent, wxWindowID id, msFlags |= ZYZGS_3D; HWND wx_button = - CreateWindowEx(MakeExtendedStyle(m_windowStyle), T("zYzGauge"), NULL, msFlags, + CreateWindowEx(MakeExtendedStyle(m_windowStyle), wxT("zYzGauge"), NULL, msFlags, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)m_windowId, wxGetInstance(), NULL); @@ -642,7 +642,7 @@ void FAR PASCAL Draw3DLine(HDC hdc, WORD x, WORD y, WORD nLen, /* static global variables */ -static wxChar gszzYzGaugeClass[] = T("zYzGauge"); +static wxChar gszzYzGaugeClass[] = wxT("zYzGauge"); /* window word position definitions */ @@ -754,7 +754,7 @@ BOOL FAR PASCAL gaugeInit(HINSTANCE hInstance) /* Get a DC to determine whether device is mono or not, and set * default foreground/background colors as appropriate. */ - hdc = CreateIC(T("DISPLAY"), NULL, NULL, 0L) ; + hdc = CreateIC(wxT("DISPLAY"), NULL, NULL, 0L) ; if (hdc) { /* check for mono-display */ @@ -909,7 +909,7 @@ static void PASCAL gaugePaint(HWND hwnd, HDC hdc) hFont = (HFONT) SelectObject(hdc, pgauge->hFont); /* build up a string to blit out--ie the meaning of life: "42%" */ - wsprintf(ach, T("%3d%%"), (WORD)((DWORD)iPos * 100 / iRange)); + wsprintf(ach, wxT("%3d%%"), (WORD)((DWORD)iPos * 100 / iRange)); /* Win32s has no GetTextExtent(); let's try GetTextExtentPoint() instead */ #if defined(__WIN32__) GetTextExtentPoint(hdc, ach, wGomerX = lstrlen(ach), &size); diff --git a/src/msw/helpwin.cpp b/src/msw/helpwin.cpp index 835aeb48c2..63d62492e0 100644 --- a/src/msw/helpwin.cpp +++ b/src/msw/helpwin.cpp @@ -68,12 +68,12 @@ bool wxWinHelpController::LoadFile(const wxString& file) bool wxWinHelpController::DisplayContents(void) { - if (m_helpFile == T("")) return FALSE; + if (m_helpFile == wxT("")) return FALSE; wxString str = m_helpFile; size_t len = str.Length(); - if (!(str[(size_t)(len-1)] == T('p') && str[(size_t)(len-2)] == T('l') && str[(size_t)(len-3)] == T('h') && str[(size_t)(len-4)] == T('.'))) - str += T(".hlp"); + if (!(str[(size_t)(len-1)] == wxT('p') && str[(size_t)(len-2)] == wxT('l') && str[(size_t)(len-3)] == wxT('h') && str[(size_t)(len-4)] == wxT('.'))) + str += wxT(".hlp"); if (wxTheApp->GetTopWindow()) { @@ -90,12 +90,12 @@ bool wxWinHelpController::DisplayContents(void) bool wxWinHelpController::DisplaySection(int section) { // Use context number - if (m_helpFile == T("")) return FALSE; + if (m_helpFile == wxT("")) return FALSE; wxString str = m_helpFile; size_t len = str.Length(); - if (!(str[(size_t)(len-1)] == T('p') && str[(size_t)(len-2)] == T('l') && str[(size_t)(len-3)] == T('h') && str[(size_t)(len-4)] == T('.'))) - str += T(".hlp"); + if (!(str[(size_t)(len-1)] == wxT('p') && str[(size_t)(len-2)] == wxT('l') && str[(size_t)(len-3)] == wxT('h') && str[(size_t)(len-4)] == wxT('.'))) + str += wxT(".hlp"); if (wxTheApp->GetTopWindow()) { @@ -108,12 +108,12 @@ bool wxWinHelpController::DisplaySection(int section) bool wxWinHelpController::DisplayBlock(long block) { // Use context number -- a very rough equivalent to block id! - if (m_helpFile == T("")) return FALSE; + if (m_helpFile == wxT("")) return FALSE; wxString str = m_helpFile; size_t len = str.Length(); if (!(str[(size_t)(len-1)] == 'p' && str[(size_t)(len-2)] == 'l' && str[(size_t)(len-3)] == 'h' && str[(size_t)(len-4)] == '.')) - str += T(".hlp"); + str += wxT(".hlp"); if (wxTheApp->GetTopWindow()) { @@ -125,12 +125,12 @@ bool wxWinHelpController::DisplayBlock(long block) bool wxWinHelpController::KeywordSearch(const wxString& k) { - if (m_helpFile == T("")) return FALSE; + if (m_helpFile == wxT("")) return FALSE; wxString str = m_helpFile; size_t len = str.Length(); - if (!(str[(size_t)(len-1)] == T('p') && str[(size_t)(len-2)] == T('l') && str[(size_t)(len-3)] == T('h') && str[(size_t)(len-4)] == T('.'))) - str += T(".hlp"); + if (!(str[(size_t)(len-1)] == wxT('p') && str[(size_t)(len-2)] == wxT('l') && str[(size_t)(len-3)] == wxT('h') && str[(size_t)(len-4)] == wxT('.'))) + str += wxT(".hlp"); if (wxTheApp->GetTopWindow()) { diff --git a/src/msw/listbox.cpp b/src/msw/listbox.cpp index 6d50248628..5374d816a7 100644 --- a/src/msw/listbox.cpp +++ b/src/msw/listbox.cpp @@ -133,7 +133,7 @@ bool wxListBox::MSWCommand(WXUINT param, WXWORD WXUNUSED(id)) event.m_commandInt = aSelections[0] ; event.m_clientData = GetClientData(event.m_commandInt); wxString str(GetString(event.m_commandInt)); - if (str != T("")) + if (str != wxT("")) { event.m_commandString = str; } @@ -232,13 +232,13 @@ bool wxListBox::Create(wxWindow *parent, wstyle |= WS_BORDER; } - m_hWnd = (WXHWND)::CreateWindowEx(exStyle, T("LISTBOX"), NULL, + m_hWnd = (WXHWND)::CreateWindowEx(exStyle, wxT("LISTBOX"), NULL, wstyle | WS_CHILD, 0, 0, 0, 0, (HWND)parent->GetHWND(), (HMENU)m_windowId, wxGetInstance(), NULL); - wxCHECK_MSG( m_hWnd, FALSE, T("Failed to create listbox") ); + wxCHECK_MSG( m_hWnd, FALSE, wxT("Failed to create listbox") ); #if wxUSE_CTL3D if (want3D) @@ -287,7 +287,7 @@ void wxListBox::SetupColours() void wxListBox::SetFirstItem(int N) { wxCHECK_RET( N >= 0 && N < m_noItems, - T("invalid index in wxListBox::SetFirstItem") ); + wxT("invalid index in wxListBox::SetFirstItem") ); SendMessage(GetHwnd(),LB_SETTOPINDEX,(WPARAM)N,(LPARAM)0) ; } @@ -303,7 +303,7 @@ void wxListBox::SetFirstItem(const wxString& s) void wxListBox::Delete(int N) { wxCHECK_RET( N >= 0 && N < m_noItems, - T("invalid index in wxListBox::Delete") ); + wxT("invalid index in wxListBox::Delete") ); SendMessage(GetHwnd(), LB_DELETESTRING, N, 0); m_noItems--; @@ -337,7 +337,7 @@ void wxListBox::Append(const wxString& item, void *Client_data) if ( m_windowStyle & wxLB_OWNERDRAW ) { // client data must be pointer to wxOwnerDrawn, otherwise we would crash // in OnMeasure/OnDraw. - wxFAIL_MSG(T("Can't use client data with owner-drawn listboxes")); + wxFAIL_MSG(wxT("Can't use client data with owner-drawn listboxes")); } else #endif @@ -377,7 +377,7 @@ void wxListBox::Set(int n, const wxString *choices, void** clientData) ListBox_SetItemData(GetHwnd(), ui, pNewItem); wxASSERT_MSG(clientData[ui] == NULL, - T("Can't use client data with owner-drawn listboxes")); + wxT("Can't use client data with owner-drawn listboxes")); } } #endif @@ -415,7 +415,7 @@ void wxListBox::Clear() void wxListBox::SetSelection(int N, bool select) { wxCHECK_RET( N >= 0 && N < m_noItems, - T("invalid index in wxListBox::SetSelection") ); + wxT("invalid index in wxListBox::SetSelection") ); if ((m_windowStyle & wxLB_MULTIPLE) || (m_windowStyle & wxLB_EXTENDED)) SendMessage(GetHwnd(), LB_SETSEL, select, N); @@ -431,7 +431,7 @@ void wxListBox::SetSelection(int N, bool select) bool wxListBox::Selected(int N) const { wxCHECK_MSG( N >= 0 && N < m_noItems, FALSE, - T("invalid index in wxListBox::Selected") ); + wxT("invalid index in wxListBox::Selected") ); return SendMessage(GetHwnd(), LB_GETSEL, N, 0) == 0 ? FALSE : TRUE; } @@ -439,7 +439,7 @@ bool wxListBox::Selected(int N) const void wxListBox::Deselect(int N) { wxCHECK_RET( N >= 0 && N < m_noItems, - T("invalid index in wxListBox::Deselect") ); + wxT("invalid index in wxListBox::Deselect") ); if ((m_windowStyle & wxLB_MULTIPLE) || (m_windowStyle & wxLB_EXTENDED)) SendMessage(GetHwnd(), LB_SETSEL, FALSE, N); @@ -448,7 +448,7 @@ void wxListBox::Deselect(int N) void *wxListBox::GetClientData(int N) const { wxCHECK_MSG( N >= 0 && N < m_noItems, NULL, - T("invalid index in wxListBox::GetClientData") ); + wxT("invalid index in wxListBox::GetClientData") ); return (void *)SendMessage(GetHwnd(), LB_GETITEMDATA, N, 0); } @@ -456,10 +456,10 @@ void *wxListBox::GetClientData(int N) const void wxListBox::SetClientData(int N, void *Client_data) { wxCHECK_RET( N >= 0 && N < m_noItems, - T("invalid index in wxListBox::SetClientData") ); + wxT("invalid index in wxListBox::SetClientData") ); if ( ListBox_SetItemData(GetHwnd(), N, Client_data) == LB_ERR ) - wxLogDebug(T("LB_SETITEMDATA failed")); + wxLogDebug(wxT("LB_SETITEMDATA failed")); } // Return number of selections and an array of selected integers @@ -473,7 +473,7 @@ int wxListBox::GetSelections(wxArrayInt& aSelections) const if (no_sel != 0) { int *selections = new int[no_sel]; if ( ListBox_GetSelItems(GetHwnd(), no_sel, selections) == LB_ERR ) { - wxFAIL_MSG(T("This listbox can't have single-selection style!")); + wxFAIL_MSG(wxT("This listbox can't have single-selection style!")); } aSelections.Alloc(no_sel); @@ -499,7 +499,7 @@ int wxListBox::GetSelection() const wxCHECK_MSG( !(m_windowStyle & wxLB_MULTIPLE) && !(m_windowStyle & wxLB_EXTENDED), -1, - T("GetSelection() can't be used with multiple-selection " + wxT("GetSelection() can't be used with multiple-selection " "listboxes, use GetSelections() instead.") ); return ListBox_GetCurSel(GetHwnd()); @@ -509,7 +509,7 @@ int wxListBox::GetSelection() const wxString wxListBox::GetString(int N) const { wxCHECK_MSG( N >= 0 && N < m_noItems, "", - T("invalid index in wxListBox::GetClientData") ); + wxT("invalid index in wxListBox::GetClientData") ); int len = ListBox_GetTextLen(GetHwnd(), N); @@ -531,7 +531,7 @@ void wxListBox::SetHorizontalExtent(const wxString& s) return; TEXTMETRIC lpTextMetric; - if (s != T("")) + if (s != wxT("")) { int existingExtent = (int)SendMessage(GetHwnd(), LB_GETHORIZONTALEXTENT, 0, 0L); HDC dc = GetWindowDC(GetHwnd()); @@ -584,20 +584,20 @@ void wxListBox::InsertItems(int nItems, const wxString items[], int pos) { wxCHECK_RET( pos >= 0 && pos <= m_noItems, - T("invalid index in wxListBox::InsertItems") ); + wxT("invalid index in wxListBox::InsertItems") ); int i; for (i = 0; i < nItems; i++) ListBox_InsertString(GetHwnd(), i + pos, items[i]); m_noItems += nItems; - SetHorizontalExtent(T("")); + SetHorizontalExtent(wxT("")); } void wxListBox::SetString(int N, const wxString& s) { wxCHECK_RET( N >= 0 && N < m_noItems, - T("invalid index in wxListBox::SetString") ); + wxT("invalid index in wxListBox::SetString") ); int sel = -1; if (!(m_windowStyle & wxLB_MULTIPLE) && !(m_windowStyle & wxLB_EXTENDED)) @@ -754,7 +754,7 @@ bool wxListBox::MSWOnMeasure(WXMEASUREITEMSTRUCT *item) MEASUREITEMSTRUCT *pStruct = (MEASUREITEMSTRUCT *)item; wxDC dc; - dc.SetHDC((WXHDC)CreateIC(T("DISPLAY"), NULL, NULL, 0)); + dc.SetHDC((WXHDC)CreateIC(wxT("DISPLAY"), NULL, NULL, 0)); dc.SetFont(wxSystemSettings::GetSystemFont(wxSYS_ANSI_VAR_FONT)); pStruct->itemHeight = dc.GetCharHeight() + 2*OWNER_DRAWN_LISTBOX_EXTRA_SPACE; diff --git a/src/msw/listctrl.cpp b/src/msw/listctrl.cpp index 0d71e4aead..145eca12b4 100644 --- a/src/msw/listctrl.cpp +++ b/src/msw/listctrl.cpp @@ -149,7 +149,7 @@ bool wxListCtrl::DoCreateControl(int x, int y, int w, int h) // Create the ListView control. m_hWnd = (WXHWND)CreateWindowEx(exStyle, WC_LISTVIEW, - T(""), + wxT(""), wstyle, x, y, w, h, GetWinHwnd(GetParent()), @@ -159,7 +159,7 @@ bool wxListCtrl::DoCreateControl(int x, int y, int w, int h) if ( !m_hWnd ) { - wxLogError(T("Can't create list control window.")); + wxLogError(wxT("Can't create list control window.")); return FALSE; } @@ -871,7 +871,7 @@ bool wxListCtrl::DeleteAllColumns() m_colCount--; } - wxASSERT_MSG( m_colCount == 0, T("no columns should be left") ); + wxASSERT_MSG( m_colCount == 0, wxT("no columns should be left") ); return TRUE; } @@ -1116,7 +1116,7 @@ long wxListCtrl::InsertColumn(long col, wxListItem& item) } else { - wxLogDebug(T("Failed to insert the column '%s' into listview!"), + wxLogDebug(wxT("Failed to insert the column '%s' into listview!"), lvCol.pszText); } diff --git a/src/msw/mdi.cpp b/src/msw/mdi.cpp index 37eb51058e..08360e1d02 100644 --- a/src/msw/mdi.cpp +++ b/src/msw/mdi.cpp @@ -174,7 +174,7 @@ bool wxMDIParentFrame::Create(wxWindow *parent, int width = size.x; int height = size.y; - m_windowMenu = (WXHMENU) ::LoadMenu(wxGetInstance(), T("wxWindowMenu")); + m_windowMenu = (WXHMENU) ::LoadMenu(wxGetInstance(), wxT("wxWindowMenu")); DWORD msflags = WS_OVERLAPPED; if (style & wxMINIMIZE_BOX) @@ -505,7 +505,7 @@ bool wxMDIParentFrame::HandleCommand(WXWORD id, WXWORD cmd, WXHWND hwnd) { // this shouldn't happen because it means that our messages are being // lost (they're not sent to the parent frame nor to the children) - wxFAIL_MSG(T("MDI parent frame is not active, " + wxFAIL_MSG(wxT("MDI parent frame is not active, " "yet there is no active MDI child?")); } @@ -926,7 +926,7 @@ bool wxMDIChildFrame::HandleMDIActivate(long WXUNUSED(activate), else if ( m_hWnd == hwndDeact ) { wxASSERT_MSG( parent->m_currentChild == this, - T("can't deactivate MDI child which wasn't active!") ); + wxT("can't deactivate MDI child which wasn't active!") ); activated = FALSE; parent->m_currentChild = NULL; @@ -1099,7 +1099,7 @@ bool wxMDIClientWindow::CreateClient(wxMDIParentFrame *parent, long style) m_hWnd = (WXHWND)::CreateWindowEx ( exStyle, - T("MDICLIENT"), + wxT("MDICLIENT"), NULL, msStyle, 0, 0, 0, 0, @@ -1152,7 +1152,7 @@ static void MDISetMenu(wxWindow *win, HMENU hmenuFrame, HMENU hmenuWindow) // update menu bar of the parent window wxWindow *parent = win->GetParent(); - wxCHECK_RET( parent, T("MDI client without parent frame? weird...") ); + wxCHECK_RET( parent, wxT("MDI client without parent frame? weird...") ); ::DrawMenuBar(GetWinHwnd(parent)); } @@ -1169,23 +1169,23 @@ static void InsertWindowMenu(wxWindow *win, WXHMENU menu, HMENU subMenu) int chars = GetMenuString(hmenu, i, buf, WXSIZEOF(buf), MF_BYPOSITION); if ( chars == 0 ) { - wxLogLastError(T("GetMenuString")); + wxLogLastError(wxT("GetMenuString")); continue; } - if ( wxStripMenuCodes(wxString(buf)).IsSameAs(T("Help")) ) + if ( wxStripMenuCodes(wxString(buf)).IsSameAs(wxT("Help")) ) { success = TRUE; ::InsertMenu(hmenu, i, MF_BYPOSITION | MF_POPUP | MF_STRING, - (UINT)subMenu, T("&Window")); + (UINT)subMenu, wxT("&Window")); break; } } if ( !success ) { - ::AppendMenu(hmenu, MF_POPUP, (UINT)subMenu, T("&Window")); + ::AppendMenu(hmenu, MF_POPUP, (UINT)subMenu, wxT("&Window")); } MDISetMenu(win, hmenu, subMenu); diff --git a/src/msw/menu.cpp b/src/msw/menu.cpp index f36cf6573d..8e19e7acb3 100644 --- a/src/msw/menu.cpp +++ b/src/msw/menu.cpp @@ -138,12 +138,12 @@ void wxMenu::Break() // function appends a new item or submenu to the menu void wxMenu::Append(wxMenuItem *pItem) { - wxCHECK_RET( pItem != NULL, T("can't append NULL item to the menu") ); + wxCHECK_RET( pItem != NULL, wxT("can't append NULL item to the menu") ); #if wxUSE_ACCEL // check for accelerators: they are given after '\t' wxString label = pItem->GetName(); - int posTab = label.Find(T('\t')); + int posTab = label.Find(wxT('\t')); if ( posTab != wxNOT_FOUND ) { // parse the accelerator string int keyCode = 0; @@ -158,7 +158,7 @@ void wxMenu::Append(wxMenuItem *pItem) else if ( current == _("shift") ) accelFlags |= wxACCEL_SHIFT; else { - wxLogDebug(T("Unknown accel modifier: '%s'"), + wxLogDebug(wxT("Unknown accel modifier: '%s'"), current.c_str()); } @@ -170,7 +170,7 @@ void wxMenu::Append(wxMenuItem *pItem) } if ( current.IsEmpty() ) { - wxLogDebug(T("No accel key found, accel string ignored.")); + wxLogDebug(wxT("No accel key found, accel string ignored.")); } else { if ( current.Len() == 1 ) { @@ -183,12 +183,12 @@ void wxMenu::Append(wxMenuItem *pItem) (current.Len() == 2 || (current.Len() == 3 && isdigit(current[2U]))) ) { int n; - wxSscanf(current.c_str() + 1, T("%d"), &n); + wxSscanf(current.c_str() + 1, wxT("%d"), &n); keyCode = VK_F1 + n - 1; } else { - wxLogDebug(T("Unrecognized accel key '%s', accel " + wxLogDebug(wxT("Unrecognized accel key '%s', accel " "string ignored."), current.c_str()); } } @@ -268,7 +268,7 @@ void wxMenu::Append(wxMenuItem *pItem) if ( !SetMenuItemInfo(GetHmenu(), (unsigned)id, FALSE, &mii) ) { - wxLogLastError(T("SetMenuItemInfo")); + wxLogLastError(wxT("SetMenuItemInfo")); } } #endif // __WIN32__ @@ -315,7 +315,7 @@ void wxMenu::Delete(int id) break; } - wxCHECK_RET( node, T("wxMenu::Delete(): item doesn't exist") ); + wxCHECK_RET( node, wxT("wxMenu::Delete(): item doesn't exist") ); HMENU menu = GetHmenu(); @@ -368,7 +368,7 @@ size_t wxMenu::CopyAccels(wxAcceleratorEntry *accels) const void wxMenu::Enable(int id, bool Flag) { wxMenuItem *item = FindItemForId(id); - wxCHECK_RET( item != NULL, T("can't enable non-existing menu item") ); + wxCHECK_RET( item != NULL, wxT("can't enable non-existing menu item") ); item->Enable(Flag); } @@ -376,7 +376,7 @@ void wxMenu::Enable(int id, bool Flag) bool wxMenu::IsEnabled(int id) const { wxMenuItem *item = FindItemForId(id); - wxCHECK_MSG( item != NULL, FALSE, T("invalid item id") ); + wxCHECK_MSG( item != NULL, FALSE, wxT("invalid item id") ); return item->IsEnabled(); } @@ -384,7 +384,7 @@ bool wxMenu::IsEnabled(int id) const void wxMenu::Check(int id, bool Flag) { wxMenuItem *item = FindItemForId(id); - wxCHECK_RET( item != NULL, T("can't get status of non-existing menu item") ); + wxCHECK_RET( item != NULL, wxT("can't get status of non-existing menu item") ); item->Check(Flag); } @@ -392,7 +392,7 @@ void wxMenu::Check(int id, bool Flag) bool wxMenu::IsChecked(int id) const { wxMenuItem *item = FindItemForId(id); - wxCHECK_MSG( item != NULL, FALSE, T("invalid item id") ); + wxCHECK_MSG( item != NULL, FALSE, wxT("invalid item id") ); return item->IsChecked(); } @@ -400,7 +400,7 @@ bool wxMenu::IsChecked(int id) const void wxMenu::SetLabel(int id, const wxString& label) { wxMenuItem *item = FindItemForId(id) ; - wxCHECK_RET( item, T("wxMenu::SetLabel: no such item") ); + wxCHECK_RET( item, wxT("wxMenu::SetLabel: no such item") ); item->SetName(label); } @@ -412,7 +412,7 @@ wxString wxMenu::GetLabel(int id) const if (pItem) label = pItem->GetName() ; else - wxFAIL_MSG(T("wxMenu::GetLabel: item doesn't exist")); + wxFAIL_MSG(wxT("wxMenu::GetLabel: item doesn't exist")); return label; } @@ -423,7 +423,7 @@ void wxMenu::SetHelpString(int itemId, const wxString& helpString) if (item) item->SetHelp(helpString); else - wxFAIL_MSG(T("wxMenu::SetHelpString: item doesn't exist")); + wxFAIL_MSG(wxT("wxMenu::SetHelpString: item doesn't exist")); } wxString wxMenu::GetHelpString (int itemId) const @@ -433,7 +433,7 @@ wxString wxMenu::GetHelpString (int itemId) const if (item) help = item->GetHelp(); else - wxFAIL_MSG(T("wxMenu::GetHelpString: item doesn't exist")); + wxFAIL_MSG(wxT("wxMenu::GetHelpString: item doesn't exist")); return help; } @@ -457,7 +457,7 @@ void wxMenu::SetTitle(const wxString& label) (unsigned)idMenuTitle, m_title) || !InsertMenu(hMenu, 1u, MF_BYPOSITION, (unsigned)-1, NULL) ) { - wxLogLastError(T("InsertMenu")); + wxLogLastError(wxT("InsertMenu")); } } } @@ -618,7 +618,7 @@ void wxMenu::Attach(wxMenuBar *menubar) { // menu can be in at most one menubar because otherwise they would both // delete the menu pointer - wxASSERT_MSG( !m_menuBar, T("menu belongs to 2 menubars, expect a crash") ); + wxASSERT_MSG( !m_menuBar, wxT("menu belongs to 2 menubars, expect a crash") ); m_menuBar = menubar; m_savehMenu = m_hMenu; @@ -627,7 +627,7 @@ void wxMenu::Attach(wxMenuBar *menubar) void wxMenu::Detach() { - wxASSERT_MSG( m_menuBar, T("can't detach menu if it's not attached") ); + wxASSERT_MSG( m_menuBar, wxT("can't detach menu if it's not attached") ); m_hMenu = m_savehMenu; m_savehMenu = 0; @@ -690,7 +690,7 @@ wxMenuBar::~wxMenuBar() void wxMenuBar::Refresh() { - wxCHECK_RET( m_menuBarFrame, T("can't refresh a menubar withotu a frame") ); + wxCHECK_RET( m_menuBarFrame, wxT("can't refresh a menubar withotu a frame") ); DrawMenuBar((HWND)m_menuBarFrame->GetHWND()) ; } @@ -700,7 +700,7 @@ WXHMENU wxMenuBar::Create() if (m_hMenu != 0 ) return m_hMenu; - wxCHECK_MSG( !m_hMenu, TRUE, T("menubar already created") ); + wxCHECK_MSG( !m_hMenu, TRUE, wxT("menubar already created") ); m_hMenu = (WXHMENU)::CreateMenu(); @@ -735,7 +735,7 @@ void wxMenuBar::Enable(int id, bool enable) wxMenu *itemMenu = NULL; wxMenuItem *item = FindItemForId(id, &itemMenu) ; - wxCHECK_RET( item, T("attempt to enable an item which doesn't exist") ); + wxCHECK_RET( item, wxT("attempt to enable an item which doesn't exist") ); item->Enable(enable); } @@ -754,8 +754,8 @@ void wxMenuBar::Check(int id, bool check) wxMenu *itemMenu = NULL; wxMenuItem *item = FindItemForId(id, &itemMenu) ; - wxCHECK_RET( item, T("attempt to check an item which doesn't exist") ); - wxCHECK_RET( item->IsCheckable(), T("attempt to check an uncheckable item") ); + wxCHECK_RET( item, wxT("attempt to check an item which doesn't exist") ); + wxCHECK_RET( item->IsCheckable(), wxT("attempt to check an uncheckable item") ); item->Check(check); } @@ -765,7 +765,7 @@ bool wxMenuBar::IsChecked(int id) const wxMenu *itemMenu = NULL; wxMenuItem *item = FindItemForId(id, &itemMenu) ; - wxCHECK_MSG( item, FALSE, T("wxMenuBar::IsChecked(): no such item") ); + wxCHECK_MSG( item, FALSE, wxT("wxMenuBar::IsChecked(): no such item") ); int flag = ::GetMenuState(GetHmenuOf(itemMenu), id, MF_BYCOMMAND); @@ -777,7 +777,7 @@ bool wxMenuBar::IsEnabled(int id) const wxMenu *itemMenu = NULL; wxMenuItem *item = FindItemForId(id, &itemMenu) ; - wxCHECK_MSG( item, FALSE, T("wxMenuBar::IsEnabled(): no such item") ); + wxCHECK_MSG( item, FALSE, wxT("wxMenuBar::IsEnabled(): no such item") ); int flag = ::GetMenuState(GetHmenuOf(itemMenu), id, MF_BYCOMMAND) ; @@ -790,7 +790,7 @@ void wxMenuBar::SetLabel(int id, const wxString& label) wxMenu *itemMenu = NULL; wxMenuItem *item = FindItemForId(id, &itemMenu) ; - wxCHECK_RET( item, T("wxMenuBar::SetLabel(): no such item") ); + wxCHECK_RET( item, wxT("wxMenuBar::SetLabel(): no such item") ); item->SetName(label); } @@ -800,7 +800,7 @@ wxString wxMenuBar::GetLabel(int id) const wxMenu *itemMenu = NULL; wxMenuItem *item = FindItemForId(id, &itemMenu) ; - wxCHECK_MSG( item, T(""), T("wxMenuBar::GetLabel(): no such item") ); + wxCHECK_MSG( item, wxT(""), wxT("wxMenuBar::GetLabel(): no such item") ); return item->GetName(); } @@ -810,7 +810,7 @@ void wxMenuBar::SetHelpString (int id, const wxString& helpString) wxMenu *itemMenu = NULL; wxMenuItem *item = FindItemForId(id, &itemMenu) ; - wxCHECK_RET( item, T("wxMenuBar::SetHelpString(): no such item") ); + wxCHECK_RET( item, wxT("wxMenuBar::SetHelpString(): no such item") ); item->SetHelp(helpString); } @@ -820,7 +820,7 @@ wxString wxMenuBar::GetHelpString (int id) const wxMenu *itemMenu = NULL; wxMenuItem *item = FindItemForId(id, &itemMenu) ; - wxCHECK_MSG( item, T(""), T("wxMenuBar::GetHelpString(): no such item") ); + wxCHECK_MSG( item, wxT(""), wxT("wxMenuBar::GetHelpString(): no such item") ); return item->GetHelp(); } @@ -838,7 +838,7 @@ void wxMenuBar::SetLabelTop(int pos, const wxString& label) UINT flagsOld = ::GetMenuState((HMENU)m_hMenu, pos, MF_BYPOSITION); if ( flagsOld == 0xFFFFFFFF ) { - wxLogLastError(T("GetMenuState")); + wxLogLastError(wxT("GetMenuState")); return; } @@ -885,7 +885,7 @@ bool wxMenuBar::OnDelete(wxMenu *a_menu, int pos) if ( ::RemoveMenu((HMENU)m_hMenu, (UINT)pos, MF_BYPOSITION) ) { // VZ: I'm not sure about what's going on here, so I leave an assert - wxASSERT_MSG( m_menus[pos] == a_menu, T("what is this parameter for??") ); + wxASSERT_MSG( m_menus[pos] == a_menu, wxT("what is this parameter for??") ); a_menu->Detach(); @@ -916,7 +916,7 @@ bool wxMenuBar::OnAppend(wxMenu *a_menu, const wxChar *title) if ( !::AppendMenu(GetHmenu(), MF_POPUP | MF_STRING, (UINT)submenu, title) ) { - wxLogLastError(T("AppendMenu")); + wxLogLastError(wxT("AppendMenu")); } Refresh(); @@ -971,7 +971,7 @@ void wxMenuBar::Insert(int pos, wxMenu * menu, const wxString& title) new_menus[i] = m_menus[i]; m_menus[i] = NULL; new_titles[i] = m_titles[i]; - m_titles[i] = T(""); + m_titles[i] = wxT(""); } new_menus[pos] = (wxMenu *)menu; @@ -982,7 +982,7 @@ void wxMenuBar::Insert(int pos, wxMenu * menu, const wxString& title) new_menus[i] = m_menus[i-1]; m_menus[i-1] = NULL; new_titles[i] = m_titles[i-1]; - m_titles[i-1] = T(""); + m_titles[i-1] = wxT(""); } if (m_menus) { @@ -1012,7 +1012,7 @@ void wxMenuBar::Append (wxMenu * menu, const wxString& title) new_menus[i] = m_menus[i]; m_menus[i] = NULL; new_titles[i] = m_titles[i]; - m_titles[i] = T(""); + m_titles[i] = wxT(""); } if (m_menus) { @@ -1060,7 +1060,7 @@ void wxMenuBar::Delete(wxMenu * menu, int i) void wxMenuBar::Attach(wxFrame *frame) { - wxASSERT_MSG( !m_menuBarFrame, T("menubar already attached!") ); + wxASSERT_MSG( !m_menuBarFrame, wxT("menubar already attached!") ); m_menuBarFrame = frame; @@ -1154,7 +1154,7 @@ WXHMENU wxMenu::GetHMenu() const else if ( m_savehMenu != 0 ) return m_savehMenu; - wxFAIL_MSG(T("wxMenu without HMENU")); + wxFAIL_MSG(wxT("wxMenu without HMENU")); return 0; } diff --git a/src/msw/menuitem.cpp b/src/msw/menuitem.cpp index f95be7f540..d7c5bef8aa 100644 --- a/src/msw/menuitem.cpp +++ b/src/msw/menuitem.cpp @@ -87,7 +87,7 @@ wxMenuItem::wxMenuItem(wxMenu *pParentMenu, int id, #endif //owner drawn m_strHelp(strHelp) { - wxASSERT_MSG( pParentMenu != NULL, T("a menu item should have a parent") ); + wxASSERT_MSG( pParentMenu != NULL, wxT("a menu item should have a parent") ); #if wxUSE_OWNER_DRAWN // set default menu colors @@ -151,7 +151,7 @@ void wxMenuItem::Enable(bool bDoEnable) void wxMenuItem::Check(bool bDoCheck) { - wxCHECK_RET( IsCheckable(), T("only checkable items may be checked") ); + wxCHECK_RET( IsCheckable(), wxT("only checkable items may be checked") ); if ( m_bChecked != bDoCheck ) { long rc = CheckMenuItem(GetHMenuOf(m_pParentMenu), @@ -210,7 +210,7 @@ void wxMenuItem::SetName(const wxString& strName) MF_BYCOMMAND | flagsOld, id, data) == 0xFFFFFFFF ) { - wxLogLastError(T("ModifyMenu")); + wxLogLastError(wxT("ModifyMenu")); } } } diff --git a/src/msw/metafile.cpp b/src/msw/metafile.cpp index 72bf474c32..7f99f93c63 100644 --- a/src/msw/metafile.cpp +++ b/src/msw/metafile.cpp @@ -72,7 +72,7 @@ wxMetafile::wxMetafile(const wxString& file) M_METAFILEDATA->m_windowsMappingMode = wxMM_ANISOTROPIC; M_METAFILEDATA->m_metafile = 0; - if (!file.IsNull() && (file.Cmp(T("")) == 0)) + if (!file.IsNull() && (file.Cmp(wxT("")) == 0)) M_METAFILEDATA->m_metafile = (WXHANDLE) GetMetaFile(file); } @@ -146,7 +146,7 @@ wxMetafileDC::wxMetafileDC(const wxString& file) if (!file.IsNull() && wxFileExists(file)) wxRemoveFile(file); - if (!file.IsNull() && (file != T(""))) + if (!file.IsNull() && (file != wxT(""))) m_hDC = (WXHDC) CreateMetaFile(file); else m_hDC = (WXHDC) CreateMetaFile(NULL); @@ -167,7 +167,7 @@ wxMetafileDC::wxMetafileDC(const wxString& file, int xext, int yext, int xorg, i m_minY = 10000; m_maxX = -10000; m_maxY = -10000; - if (file != T("") && wxFileExists(file)) wxRemoveFile(file); + if (file != wxT("") && wxFileExists(file)) wxRemoveFile(file); m_hDC = (WXHDC) CreateMetaFile(file); m_ok = TRUE; @@ -344,7 +344,7 @@ bool wxMakeMetafilePlaceable(const wxString& filename, int x1, int y1, int x2, i if (!fd) return FALSE; wxChar tempFileBuf[256]; - wxGetTempFileName(T("mf"), tempFileBuf); + wxGetTempFileName(wxT("mf"), tempFileBuf); FILE *fHandle = fopen(wxConvFile.cWX2MB(tempFileBuf), "wb"); if (!fHandle) return FALSE; diff --git a/src/msw/minifram.cpp b/src/msw/minifram.cpp index ce0bee53ec..57464f4e18 100644 --- a/src/msw/minifram.cpp +++ b/src/msw/minifram.cpp @@ -181,13 +181,13 @@ wxMiniFrame::~wxMiniFrame(void) #define HASCAPTION( hwnd ) (TestWinStyle( hwnd, IBS_VERTCAPTION ) ||\ TestWinStyle( hwnd, IBS_HORZCAPTION )) -#define SETCAPTIONSIZE(h,i) (UINT)SetProp(h,T("ibSize"),(HANDLE)i) -#define GETCAPTIONSIZE(h) (UINT)GetProp(h,T("ibSize")) -#define FREECAPTIONSIZE(h) RemoveProp(h,T("ibSize")) +#define SETCAPTIONSIZE(h,i) (UINT)SetProp(h,wxT("ibSize"),(HANDLE)i) +#define GETCAPTIONSIZE(h) (UINT)GetProp(h,wxT("ibSize")) +#define FREECAPTIONSIZE(h) RemoveProp(h,wxT("ibSize")) -#define SETMENUWASUPFLAG(h,i) (UINT)SetProp(h,T("ibFlag"),(HANDLE)i) -#define GETMENUWASUPFLAG(h) (UINT)GetProp(h,T("ibFlag")) -#define FREEMENUWASUPFLAG(h) RemoveProp(h,T("ibFlag")) +#define SETMENUWASUPFLAG(h,i) (UINT)SetProp(h,wxT("ibFlag"),(HANDLE)i) +#define GETMENUWASUPFLAG(h) (UINT)GetProp(h,wxT("ibFlag")) +#define FREEMENUWASUPFLAG(h) RemoveProp(h,wxT("ibFlag")) ///////////////////////////////////////////////////////////////////// // Little known fact: @@ -405,7 +405,7 @@ LRESULT WINAPI ibDefWindowProc( HWND hWnd, UINT uiMsg, WPARAM wParam, LPARAM lPa { // VZ: I don't know what should be here, but the vars must // be inited! - wxFAIL_MSG(T("don't know how to initialize cx, cy")); + wxFAIL_MSG(wxT("don't know how to initialize cx, cy")); cx = cy = 0; } @@ -916,7 +916,7 @@ BOOL PASCAL DrawCaption( HDC hDC, HWND hWnd, LPRECT lprc, { // Can only rotate true type fonts (well, ok, we could // try and use "modern"). - wxStrcpy( lf.lfFaceName, T("Arial") ) ; + wxStrcpy( lf.lfFaceName, wxT("Arial") ) ; lf.lfPitchAndFamily = FF_SWISS | 0x04; lf.lfEscapement = 900 ; diff --git a/src/msw/nativdlg.cpp b/src/msw/nativdlg.cpp index 6ec8d751c1..ce9a5db6b8 100644 --- a/src/msw/nativdlg.cpp +++ b/src/msw/nativdlg.cpp @@ -173,7 +173,7 @@ wxWindow* wxWindow::CreateWindowFromHWND(wxWindow* parent, WXHWND hWnd) wxWindow* win = NULL; - if (str == T("BUTTON")) + if (str == wxT("BUTTON")) { int style1 = (style & 0xFF); if ((style1 == BS_3STATE) || (style1 == BS_AUTO3STATE) || (style1 == BS_AUTOCHECKBOX) || @@ -190,7 +190,7 @@ wxWindow* wxWindow::CreateWindowFromHWND(wxWindow* parent, WXHWND hWnd) { // TODO: how to find the bitmap? win = new wxBitmapButton; - wxLogError(T("Have not yet implemented bitmap button as BS_BITMAP button.")); + wxLogError(wxT("Have not yet implemented bitmap button as BS_BITMAP button.")); } #endif else if (style1 == BS_OWNERDRAW) @@ -213,11 +213,11 @@ wxWindow* wxWindow::CreateWindowFromHWND(wxWindow* parent, WXHWND hWnd) } else { - wxLogError(T("Don't know what kind of button this is: id = %d"), + wxLogError(wxT("Don't know what kind of button this is: id = %d"), id); } } - else if (str == T("COMBOBOX")) + else if (str == wxT("COMBOBOX")) { win = new wxComboBox; } @@ -227,30 +227,30 @@ wxWindow* wxWindow::CreateWindowFromHWND(wxWindow* parent, WXHWND hWnd) // for correct functioning. // Could have wxWindow::AdoptAttributesFromHWND(WXHWND) // to be overridden by each control class. - else if (str == T("EDIT")) + else if (str == wxT("EDIT")) { win = new wxTextCtrl; } - else if (str == T("LISTBOX")) + else if (str == wxT("LISTBOX")) { win = new wxListBox; } - else if (str == T("SCROLLBAR")) + else if (str == wxT("SCROLLBAR")) { win = new wxScrollBar; } #if defined(__WIN95__) && !defined(__TWIN32__) - else if (str == T("MSCTLS_UPDOWN32")) + else if (str == wxT("MSCTLS_UPDOWN32")) { win = new wxSpinButton; } #endif - else if (str == T("MSCTLS_TRACKBAR32")) + else if (str == wxT("MSCTLS_TRACKBAR32")) { // Need to ascertain if it's horiz or vert win = new wxSlider; } - else if (str == T("STATIC")) + else if (str == wxT("STATIC")) { int style1 = (style & 0xFF); @@ -262,13 +262,13 @@ wxWindow* wxWindow::CreateWindowFromHWND(wxWindow* parent, WXHWND hWnd) win = new wxStaticBitmap; // Help! this doesn't correspond with the wxWin implementation. - wxLogError(T("Please make SS_BITMAP statics into owner-draw buttons.")); + wxLogError(wxT("Please make SS_BITMAP statics into owner-draw buttons.")); } #endif } else { - wxString msg(T("Don't know how to convert from Windows class ")); + wxString msg(wxT("Don't know how to convert from Windows class ")); msg += str; wxLogError(msg); } diff --git a/src/msw/notebook.cpp b/src/msw/notebook.cpp index 5ffffe5781..ef0944b4af 100644 --- a/src/msw/notebook.cpp +++ b/src/msw/notebook.cpp @@ -212,7 +212,7 @@ int wxNotebook::GetRowCount() const int wxNotebook::SetSelection(int nPage) { - wxCHECK_MSG( IS_VALID_PAGE(nPage), -1, T("notebook page out of range") ); + wxCHECK_MSG( IS_VALID_PAGE(nPage), -1, wxT("notebook page out of range") ); ChangePage(m_nSelection, nPage); @@ -231,7 +231,7 @@ void wxNotebook::AdvanceSelection(bool bForward) bool wxNotebook::SetPageText(int nPage, const wxString& strText) { - wxCHECK_MSG( IS_VALID_PAGE(nPage), FALSE, T("notebook page out of range") ); + wxCHECK_MSG( IS_VALID_PAGE(nPage), FALSE, wxT("notebook page out of range") ); TC_ITEM tcItem; tcItem.mask = TCIF_TEXT; @@ -242,7 +242,7 @@ bool wxNotebook::SetPageText(int nPage, const wxString& strText) wxString wxNotebook::GetPageText(int nPage) const { - wxCHECK_MSG( IS_VALID_PAGE(nPage), T(""), T("notebook page out of range") ); + wxCHECK_MSG( IS_VALID_PAGE(nPage), wxT(""), wxT("notebook page out of range") ); wxChar buf[256]; TC_ITEM tcItem; @@ -259,7 +259,7 @@ wxString wxNotebook::GetPageText(int nPage) const int wxNotebook::GetPageImage(int nPage) const { - wxCHECK_MSG( IS_VALID_PAGE(nPage), -1, T("notebook page out of range") ); + wxCHECK_MSG( IS_VALID_PAGE(nPage), -1, wxT("notebook page out of range") ); TC_ITEM tcItem; tcItem.mask = TCIF_IMAGE; @@ -269,7 +269,7 @@ int wxNotebook::GetPageImage(int nPage) const bool wxNotebook::SetPageImage(int nPage, int nImage) { - wxCHECK_MSG( IS_VALID_PAGE(nPage), FALSE, T("notebook page out of range") ); + wxCHECK_MSG( IS_VALID_PAGE(nPage), FALSE, wxT("notebook page out of range") ); TC_ITEM tcItem; tcItem.mask = TCIF_IMAGE; @@ -299,7 +299,7 @@ void wxNotebook::SetTabSize(const wxSize& sz) // remove one page from the notebook bool wxNotebook::DeletePage(int nPage) { - wxCHECK_MSG( IS_VALID_PAGE(nPage), FALSE, T("notebook page out of range") ); + wxCHECK_MSG( IS_VALID_PAGE(nPage), FALSE, wxT("notebook page out of range") ); if ( m_nSelection == nPage ) { // advance selection backwards - the page being deleted shouldn't be left @@ -323,7 +323,7 @@ bool wxNotebook::DeletePage(int nPage) // remove one page from the notebook, without deleting bool wxNotebook::RemovePage(int nPage) { - wxCHECK_MSG( IS_VALID_PAGE(nPage), FALSE, T("notebook page out of range") ); + wxCHECK_MSG( IS_VALID_PAGE(nPage), FALSE, wxT("notebook page out of range") ); TabCtrl_DeleteItem(m_hwnd, nPage); @@ -385,7 +385,7 @@ bool wxNotebook::InsertPage(int nPage, } if ( TabCtrl_InsertItem(m_hwnd, nPage, &tcItem) == -1 ) { - wxLogError(T("Can't create the notebook page '%s'."), strText.c_str()); + wxLogError(wxT("Can't create the notebook page '%s'."), strText.c_str()); return FALSE; } diff --git a/src/msw/ole/automtn.cpp b/src/msw/ole/automtn.cpp index 5f83323c4c..75a049fbcf 100644 --- a/src/msw/ole/automtn.cpp +++ b/src/msw/ole/automtn.cpp @@ -427,7 +427,7 @@ WXIDISPATCH* wxAutomationObject::GetDispatchProperty(const wxString& property, i wxVariant retVariant; if (Invoke(property, DISPATCH_PROPERTYGET, retVariant, noArgs, args)) { - if (retVariant.GetType() == T("void*")) + if (retVariant.GetType() == wxT("void*")) { return (WXIDISPATCH*) retVariant.GetVoidPtr(); } @@ -467,19 +467,19 @@ bool wxAutomationObject::GetInstance(const wxString& classId) const if (FAILED(CLSIDFromProgID((BSTR) unicodeName, &clsId))) { - wxLogWarning(T("Cannot obtain CLSID from ProgID")); + wxLogWarning(wxT("Cannot obtain CLSID from ProgID")); return FALSE; } if (FAILED(GetActiveObject(clsId, NULL, &pUnk))) { - wxLogWarning(T("Cannot find an active object")); + wxLogWarning(wxT("Cannot find an active object")); return FALSE; } if (pUnk->QueryInterface(IID_IDispatch, (LPVOID*) &m_dispatchPtr) != S_OK) { - wxLogWarning(T("Cannot find IDispatch interface")); + wxLogWarning(wxT("Cannot find IDispatch interface")); return FALSE; } @@ -499,14 +499,14 @@ bool wxAutomationObject::CreateInstance(const wxString& classId) const if (FAILED(CLSIDFromProgID((BSTR) unicodeName, &clsId))) { - wxLogWarning(T("Cannot obtain CLSID from ProgID")); + wxLogWarning(wxT("Cannot obtain CLSID from ProgID")); return FALSE; } // start a new copy of Excel, grab the IDispatch interface if (FAILED(CoCreateInstance(clsId, NULL, CLSCTX_LOCAL_SERVER, IID_IDispatch, (void**)&m_dispatchPtr))) { - wxLogWarning(T("Cannot start an instance of this class.")); + wxLogWarning(wxT("Cannot start an instance of this class.")); return FALSE; } @@ -525,17 +525,17 @@ bool ConvertVariantToOle(const wxVariant& variant, VARIANTARG& oleVariant) wxString type(variant.GetType()); - if (type == T("long")) + if (type == wxT("long")) { oleVariant.vt = VT_I4; oleVariant.lVal = variant.GetLong() ; } - else if (type == T("double")) + else if (type == wxT("double")) { oleVariant.vt = VT_R8; oleVariant.dblVal = variant.GetDouble(); } - else if (type == T("bool")) + else if (type == wxT("bool")) { oleVariant.vt = VT_BOOL; // 'bool' required for VC++ 4 apparently @@ -545,13 +545,13 @@ bool ConvertVariantToOle(const wxVariant& variant, VARIANTARG& oleVariant) oleVariant.boolVal = variant.GetBool(); #endif } - else if (type == T("string")) + else if (type == wxT("string")) { wxString str( variant.GetString() ); oleVariant.vt = VT_BSTR; oleVariant.bstrVal = ConvertStringToOle(str); } - else if (type == T("date")) + else if (type == wxT("date")) { wxDate date( variant.GetDate() ); oleVariant.vt = VT_DATE; @@ -560,7 +560,7 @@ bool ConvertVariantToOle(const wxVariant& variant, VARIANTARG& oleVariant) 0, 0, 0, oleVariant.date)) return FALSE; } - else if (type == T("time")) + else if (type == wxT("time")) { wxTime time( variant.GetTime() ); oleVariant.vt = VT_DATE; @@ -569,12 +569,12 @@ bool ConvertVariantToOle(const wxVariant& variant, VARIANTARG& oleVariant) time.GetHour(), time.GetMinute(), time.GetSecond(), oleVariant.date)) return FALSE; } - else if (type == T("void*")) + else if (type == wxT("void*")) { oleVariant.vt = VT_DISPATCH; oleVariant.pdispVal = (IDispatch*) variant.GetVoidPtr(); } - else if (type == T("list") || type == T("stringlist")) + else if (type == wxT("list") || type == wxT("stringlist")) { oleVariant.vt = VT_VARIANT | VT_ARRAY; @@ -728,7 +728,7 @@ bool ConvertOleToVariant(const VARIANTARG& oleVariant, wxVariant& variant) } default: { - wxLogError(T("wxAutomationObject::ConvertOleToVariant: Unknown variant value type")); + wxLogError(wxT("wxAutomationObject::ConvertOleToVariant: Unknown variant value type")); return FALSE; } } @@ -1061,7 +1061,7 @@ static void ReleaseVariant(VARIANTARG *pvarg) } else { - wxLogWarning(T("ReleaseVariant: Array contains non-variant type")); + wxLogWarning(wxT("ReleaseVariant: Array contains non-variant type")); } // Free the array itself. @@ -1088,7 +1088,7 @@ static void ReleaseVariant(VARIANTARG *pvarg) break; default: - wxLogWarning(T("ReleaseVariant: Unknown type")); + wxLogWarning(wxT("ReleaseVariant: Unknown type")); break; } } diff --git a/src/msw/ole/dataobj.cpp b/src/msw/ole/dataobj.cpp index 61ceeb2c74..dbc7f122e6 100644 --- a/src/msw/ole/dataobj.cpp +++ b/src/msw/ole/dataobj.cpp @@ -126,7 +126,7 @@ wxString wxDataFormat::GetId() const wxString s; wxCHECK_MSG( !IsStandard(), s, - T("name of predefined format cannot be retrieved") ); + wxT("name of predefined format cannot be retrieved") ); int len = ::GetClipboardFormatName(m_format, s.GetWriteBuf(max), max); s.UngetWriteBuf(); @@ -165,7 +165,7 @@ STDMETHODIMP wxIEnumFORMATETC::Next(ULONG celt, FORMATETC *rgelt, ULONG *pceltFetched) { - wxLogTrace(T("wxIEnumFORMATETC::Next")); + wxLogTrace(wxT("wxIEnumFORMATETC::Next")); if ( celt > 1 ) return S_FALSE; @@ -182,7 +182,7 @@ STDMETHODIMP wxIEnumFORMATETC::Next(ULONG celt, STDMETHODIMP wxIEnumFORMATETC::Skip(ULONG celt) { - wxLogTrace(T("wxIEnumFORMATETC::Skip")); + wxLogTrace(wxT("wxIEnumFORMATETC::Skip")); if ( m_nCurrent == 0 ) m_nCurrent++; @@ -192,7 +192,7 @@ STDMETHODIMP wxIEnumFORMATETC::Skip(ULONG celt) STDMETHODIMP wxIEnumFORMATETC::Reset() { - wxLogTrace(T("wxIEnumFORMATETC::Reset")); + wxLogTrace(wxT("wxIEnumFORMATETC::Reset")); m_nCurrent = 0; @@ -201,7 +201,7 @@ STDMETHODIMP wxIEnumFORMATETC::Reset() STDMETHODIMP wxIEnumFORMATETC::Clone(IEnumFORMATETC **ppenum) { - wxLogTrace(T("wxIEnumFORMATETC::Clone")); + wxLogTrace(wxT("wxIEnumFORMATETC::Clone")); wxIEnumFORMATETC *pNew = new wxIEnumFORMATETC(m_format.cfFormat); pNew->AddRef(); @@ -230,7 +230,7 @@ wxIDataObject::wxIDataObject(wxDataObject *pDataObject) // get data functions STDMETHODIMP wxIDataObject::GetData(FORMATETC *pformatetcIn, STGMEDIUM *pmedium) { - wxLogTrace(T("wxIDataObject::GetData")); + wxLogTrace(wxT("wxIDataObject::GetData")); // is data is in our format? HRESULT hr = QueryGetData(pformatetcIn); @@ -262,7 +262,7 @@ STDMETHODIMP wxIDataObject::GetData(FORMATETC *pformatetcIn, STGMEDIUM *pmedium) STDMETHODIMP wxIDataObject::GetDataHere(FORMATETC *pformatetc, STGMEDIUM *pmedium) { - wxLogTrace(T("wxIDataObject::GetDataHere")); + wxLogTrace(wxT("wxIDataObject::GetDataHere")); // put data in caller provided medium if ( pmedium->tymed != TYMED_HGLOBAL ) @@ -271,7 +271,7 @@ STDMETHODIMP wxIDataObject::GetDataHere(FORMATETC *pformatetc, // copy data void *pBuf = GlobalLock(pmedium->hGlobal); if ( pBuf == NULL ) { - wxLogLastError(T("GlobalLock")); + wxLogLastError(wxT("GlobalLock")); return E_OUTOFMEMORY; } @@ -287,7 +287,7 @@ STDMETHODIMP wxIDataObject::SetData(FORMATETC *pformatetc, STGMEDIUM *pmedium, BOOL fRelease) { - wxLogTrace(T("wxIDataObject::SetData")); + wxLogTrace(wxT("wxIDataObject::SetData")); return E_NOTIMPL; } @@ -296,39 +296,39 @@ STDMETHODIMP wxIDataObject::QueryGetData(FORMATETC *pformatetc) { // do we accept data in this format? if ( pformatetc == NULL ) { - wxLogTrace(T("wxIDataObject::QueryGetData: invalid ptr.")); + wxLogTrace(wxT("wxIDataObject::QueryGetData: invalid ptr.")); return E_INVALIDARG; } // the only one allowed by current COM implementation if ( pformatetc->lindex != -1 ) { - wxLogTrace(T("wxIDataObject::QueryGetData: bad lindex %d"), + wxLogTrace(wxT("wxIDataObject::QueryGetData: bad lindex %d"), pformatetc->lindex); return DV_E_LINDEX; } // we don't support anything other (THUMBNAIL, ICON, DOCPRINT...) if ( pformatetc->dwAspect != DVASPECT_CONTENT ) { - wxLogTrace(T("wxIDataObject::QueryGetData: bad dwAspect %d"), + wxLogTrace(wxT("wxIDataObject::QueryGetData: bad dwAspect %d"), pformatetc->dwAspect); return DV_E_DVASPECT; } // @@ we only transfer data by global memory (bad for large amounts of it!) if ( !(pformatetc->tymed & TYMED_HGLOBAL) ) { - wxLogTrace(T("wxIDataObject::QueryGetData: %s != TYMED_HGLOBAL."), + wxLogTrace(wxT("wxIDataObject::QueryGetData: %s != TYMED_HGLOBAL."), GetTymedName(pformatetc->tymed)); return DV_E_TYMED; } // and now check the type of data requested if ( m_pDataObject->IsSupportedFormat((wxDataFormatId)pformatetc->cfFormat) ) { - wxLogTrace(T("wxIDataObject::QueryGetData: %s ok"), + wxLogTrace(wxT("wxIDataObject::QueryGetData: %s ok"), wxDataObject::GetFormatName((wxDataFormatId)pformatetc->cfFormat)); return S_OK; } else { - wxLogTrace(T("wxIDataObject::QueryGetData: %s unsupported"), + wxLogTrace(wxT("wxIDataObject::QueryGetData: %s unsupported"), wxDataObject::GetFormatName((wxDataFormatId)pformatetc->cfFormat)); return DV_E_FORMATETC; } @@ -337,7 +337,7 @@ STDMETHODIMP wxIDataObject::QueryGetData(FORMATETC *pformatetc) STDMETHODIMP wxIDataObject::GetCanonicalFormatEtc(FORMATETC *pFormatetcIn, FORMATETC *pFormatetcOut) { - wxLogTrace(T("wxIDataObject::GetCanonicalFormatEtc")); + wxLogTrace(wxT("wxIDataObject::GetCanonicalFormatEtc")); // @@ implementation is trivial, we might want something better here if ( pFormatetcOut != NULL ) @@ -348,7 +348,7 @@ STDMETHODIMP wxIDataObject::GetCanonicalFormatEtc(FORMATETC *pFormatetcIn, STDMETHODIMP wxIDataObject::EnumFormatEtc(DWORD dwDirection, IEnumFORMATETC **ppenumFormatEtc) { - wxLogTrace(T("wxIDataObject::EnumFormatEtc")); + wxLogTrace(wxT("wxIDataObject::EnumFormatEtc")); if ( dwDirection == DATADIR_SET ) { // we don't allow setting of data anyhow diff --git a/src/msw/ole/dropsrc.cpp b/src/msw/ole/dropsrc.cpp index 2943fd55d7..6e6e2886d5 100644 --- a/src/msw/ole/dropsrc.cpp +++ b/src/msw/ole/dropsrc.cpp @@ -189,7 +189,7 @@ wxDropSource::~wxDropSource() // Notes : you must call SetData() before if you had used def ctor wxDragResult wxDropSource::DoDragDrop(bool bAllowMove) { - wxCHECK_MSG( m_pData != NULL, wxDragNone, T("No data in wxDropSource!") ); + wxCHECK_MSG( m_pData != NULL, wxDragNone, wxT("No data in wxDropSource!") ); DWORD dwEffect; HRESULT hr = ::DoDragDrop(m_pData->GetInterface(), @@ -221,10 +221,10 @@ wxDragResult wxDropSource::DoDragDrop(bool bAllowMove) else { if ( FAILED(hr) ) { wxLogApiError("DoDragDrop", hr); - wxLogError(T("Drag & drop operation failed.")); + wxLogError(wxT("Drag & drop operation failed.")); } else { - wxLogDebug(T("Unexpected success return code %08lx from DoDragDrop."), hr); + wxLogDebug(wxT("Unexpected success return code %08lx from DoDragDrop."), hr); } return wxDragError; diff --git a/src/msw/ole/droptgt.cpp b/src/msw/ole/droptgt.cpp index 7101ef5eb2..003a29891a 100644 --- a/src/msw/ole/droptgt.cpp +++ b/src/msw/ole/droptgt.cpp @@ -136,7 +136,7 @@ STDMETHODIMP wxIDropTarget::DragEnter(IDataObject *pIDataSource, POINTL pt, DWORD *pdwEffect) { - wxLogDebug(T("IDropTarget::DragEnter")); + wxLogDebug(wxT("IDropTarget::DragEnter")); wxASSERT( m_pIDataObject == NULL ); @@ -187,7 +187,7 @@ STDMETHODIMP wxIDropTarget::DragOver(DWORD grfKeyState, // Notes : good place to do any clean-up STDMETHODIMP wxIDropTarget::DragLeave() { - wxLogDebug(T("IDropTarget::DragLeave")); + wxLogDebug(wxT("IDropTarget::DragLeave")); // remove the UI feedback m_pTarget->OnLeave(); @@ -212,7 +212,7 @@ STDMETHODIMP wxIDropTarget::Drop(IDataObject *pIDataSource, POINTL pt, DWORD *pdwEffect) { - wxLogDebug(T("IDropTarget::Drop")); + wxLogDebug(wxT("IDropTarget::Drop")); // TODO I don't know why there is this parameter, but so far I assume // that it's the same we've already got in DragEnter @@ -385,7 +385,7 @@ bool wxFileDropTarget::OnDrop(long x, long y, const void *pData) UINT len2 = ::DragQueryFile(hdrop, n, aszFiles[n], len); if ( len2 != len - 1 ) { - wxLogDebug(T("In wxFileDropTarget::OnDrop DragQueryFile returned %d " + wxLogDebug(wxT("In wxFileDropTarget::OnDrop DragQueryFile returned %d " "characters, %d expected."), len2, len - 1); } } diff --git a/src/msw/ole/uuid.cpp b/src/msw/ole/uuid.cpp index 8f0d4eb98c..67f2d2710f 100644 --- a/src/msw/ole/uuid.cpp +++ b/src/msw/ole/uuid.cpp @@ -165,7 +165,7 @@ void Uuid::UuidToCForm() if ( m_pszCForm == NULL ) m_pszCForm = new wxChar[UUID_CSTRLEN]; - wsprintf(m_pszCForm, T("0x%8.8X,0x%4.4X,0x%4.4X,0x%2.2X,0x2.2%X," + wsprintf(m_pszCForm, wxT("0x%8.8X,0x%4.4X,0x%4.4X,0x%2.2X,0x2.2%X," "0x2.2%X,0x2.2%X,0x2.2%X,0x2.2%X,0x2.2%X,0x2.2%X"), m_uuid.Data1, m_uuid.Data2, m_uuid.Data3, m_uuid.Data4[1], m_uuid.Data4[2], m_uuid.Data4[3], m_uuid.Data4[4], diff --git a/src/msw/ownerdrw.cpp b/src/msw/ownerdrw.cpp index 090c670bbf..5cc44d6be0 100644 --- a/src/msw/ownerdrw.cpp +++ b/src/msw/ownerdrw.cpp @@ -74,7 +74,7 @@ bool wxOwnerDrawn::OnMeasureItem(size_t *pwidth, size_t *pheight) delete [] szStripped; // # without this menu items look too tightly packed (at least under Windows) - str += T('W'); // 'W' is typically the widest letter + str += wxT('W'); // 'W' is typically the widest letter dc.GetTextExtent(str, (long *)pwidth, (long *)pheight); diff --git a/src/msw/printwin.cpp b/src/msw/printwin.cpp index 847557f7e4..c8b1a50dd2 100644 --- a/src/msw/printwin.cpp +++ b/src/msw/printwin.cpp @@ -217,7 +217,7 @@ bool wxWindowsPrinter::Print(wxWindow *parent, wxPrintout *printout, bool prompt if (!win) { wxEndBusyCursor(); - wxLogDebug(T("Could not create an abort dialog.")); + wxLogDebug(wxT("Could not create an abort dialog.")); delete dc; } diff --git a/src/msw/radiobox.cpp b/src/msw/radiobox.cpp index 9734f7914a..426599d197 100644 --- a/src/msw/radiobox.cpp +++ b/src/msw/radiobox.cpp @@ -110,7 +110,7 @@ bool wxRadioBox::MSWCommand(WXUINT cmd, WXWORD id) } } - wxASSERT_MSG( selectedButton != -1, T("click from alien button?") ); + wxASSERT_MSG( selectedButton != -1, wxT("click from alien button?") ); if ( selectedButton != m_selectedButton ) { @@ -257,7 +257,7 @@ bool wxRadioBox::Create(wxWindow *parent, wxWindowID id, const wxString& title, } // Create a dummy radio control to end the group. - (void)CreateWindowEx(0, RADIO_CLASS, T(""), WS_GROUP | RADIO_FLAGS, + (void)CreateWindowEx(0, RADIO_CLASS, wxT(""), WS_GROUP | RADIO_FLAGS, 0, 0, 0, 0, hwndParent, (HMENU)NewControlId(), wxGetInstance(), NULL); @@ -289,14 +289,14 @@ wxRadioBox::~wxRadioBox() wxString wxRadioBox::GetLabel(int item) const { - wxCHECK_MSG( item >= 0 && item < m_noItems, T(""), T("invalid radiobox index") ); + wxCHECK_MSG( item >= 0 && item < m_noItems, wxT(""), wxT("invalid radiobox index") ); return wxGetWindowText(m_radioButtons[item]); } void wxRadioBox::SetLabel(int item, const wxString& label) { - wxCHECK_RET( item >= 0 && item < m_noItems, T("invalid radiobox index") ); + wxCHECK_RET( item >= 0 && item < m_noItems, wxT("invalid radiobox index") ); m_radioWidth[item] = m_radioHeight[item] = -1; SetWindowText((HWND)m_radioButtons[item], label.c_str()); @@ -308,7 +308,7 @@ void wxRadioBox::SetLabel(int item, wxBitmap *bitmap) m_radioWidth[item] = bitmap->GetWidth() + FB_MARGIN; m_radioHeight[item] = bitmap->GetHeight() + FB_MARGIN; */ - wxFAIL_MSG(T("not implemented")); + wxFAIL_MSG(wxT("not implemented")); } int wxRadioBox::FindString(const wxString& s) const @@ -324,7 +324,7 @@ int wxRadioBox::FindString(const wxString& s) const void wxRadioBox::SetSelection(int N) { - wxCHECK_RET( (N >= 0) && (N < m_noItems), T("invalid radiobox index") ); + wxCHECK_RET( (N >= 0) && (N < m_noItems), wxT("invalid radiobox index") ); // Following necessary for Win32s, because Win32s translate BM_SETCHECK if (m_selectedButton >= 0 && m_selectedButton < m_noItems) @@ -591,7 +591,7 @@ bool wxRadioBox::Show(bool show) void wxRadioBox::Enable(int item, bool enable) { wxCHECK_RET( item >= 0 && item < m_noItems, - T("invalid item in wxRadioBox::Enable()") ); + wxT("invalid item in wxRadioBox::Enable()") ); ::EnableWindow((HWND) m_radioButtons[item], enable); } @@ -612,7 +612,7 @@ bool wxRadioBox::Enable(bool enable) void wxRadioBox::Show(int item, bool show) { wxCHECK_RET( item >= 0 && item < m_noItems, - T("invalid item in wxRadioBox::Show()") ); + wxT("invalid item in wxRadioBox::Show()") ); ::ShowWindow((HWND)m_radioButtons[item], show ? SW_SHOW : SW_HIDE); } @@ -724,7 +724,7 @@ LRESULT APIENTRY _EXPORT wxRadioBtnWndProc(HWND hwnd, { wxRadioBox *radiobox = (wxRadioBox *)::GetWindowLong(hwnd, GWL_USERDATA); - wxCHECK_MSG( radiobox, 0, T("radio button without radio box?") ); + wxCHECK_MSG( radiobox, 0, wxT("radio button without radio box?") ); int sel = radiobox->GetSelection(); diff --git a/src/msw/radiobut.cpp b/src/msw/radiobut.cpp index 61dc038847..2995d49228 100644 --- a/src/msw/radiobut.cpp +++ b/src/msw/radiobut.cpp @@ -94,7 +94,7 @@ bool wxRadioButton::Create(wxWindow *parent, wxWindowID id, msStyle,0,0,0,0, (HWND) parent->GetHWND(), (HMENU)m_windowId, wxGetInstance(), NULL); - wxCHECK_MSG( m_hWnd, FALSE, T("Failed to create radiobutton") ); + wxCHECK_MSG( m_hWnd, FALSE, wxT("Failed to create radiobutton") ); #if wxUSE_CTL3D if (want3D) @@ -112,7 +112,7 @@ bool wxRadioButton::Create(wxWindow *parent, wxWindowID id, // SetValue(value); // start GRW fix - if (label != T("")) + if (label != wxT("")) { int label_width, label_height; GetTextExtent(label, &label_width, &label_height, NULL, NULL, & this->GetFont()); diff --git a/src/msw/regconf.cpp b/src/msw/regconf.cpp index 5d18e7f81a..4fb34f240d 100644 --- a/src/msw/regconf.cpp +++ b/src/msw/regconf.cpp @@ -98,7 +98,7 @@ wxRegConfig::wxRegConfig(const wxString& appName, const wxString& vendorName, if ( appName.IsEmpty() ) { - wxCHECK_RET( wxTheApp, T("No application name in wxRegConfig ctor!") ); + wxCHECK_RET( wxTheApp, wxT("No application name in wxRegConfig ctor!") ); strRoot << wxTheApp->GetAppName(); } else @@ -337,7 +337,7 @@ bool wxRegConfig::Read(const wxString& key, wxString *pStr) const if ( IsImmutable(path.Name()) ) { if ( TryGetValue(m_keyGlobal, path.Name(), *pStr) ) { if ( m_keyLocal.HasValue(path.Name()) ) { - wxLogWarning(T("User value for immutable key '%s' ignored."), + wxLogWarning(wxT("User value for immutable key '%s' ignored."), path.Name().c_str()); } *pStr = wxConfigBase::ExpandEnvVars(*pStr); @@ -373,7 +373,7 @@ bool wxRegConfig::Read(const wxString& key, wxString *pStr, if ( IsImmutable(path.Name()) ) { if ( TryGetValue(m_keyGlobal, path.Name(), *pStr) ) { if ( m_keyLocal.HasValue(path.Name()) ) { - wxLogWarning(T("User value for immutable key '%s' ignored."), + wxLogWarning(wxT("User value for immutable key '%s' ignored."), path.Name().c_str()); } @@ -416,7 +416,7 @@ bool wxRegConfig::Read(const wxString& key, long *plResult) const if ( IsImmutable(path.Name()) ) { if ( TryGetValue(m_keyGlobal, path.Name(), plResult) ) { if ( m_keyLocal.HasValue(path.Name()) ) { - wxLogWarning(T("User value for immutable key '%s' ignored."), + wxLogWarning(wxT("User value for immutable key '%s' ignored."), path.Name().c_str()); } @@ -441,7 +441,7 @@ bool wxRegConfig::Write(const wxString& key, const wxString& szValue) wxConfigPathChanger path(this, key); if ( IsImmutable(path.Name()) ) { - wxLogError(T("Can't change immutable entry '%s'."), path.Name().c_str()); + wxLogError(wxT("Can't change immutable entry '%s'."), path.Name().c_str()); return FALSE; } @@ -453,7 +453,7 @@ bool wxRegConfig::Write(const wxString& key, long lValue) wxConfigPathChanger path(this, key); if ( IsImmutable(path.Name()) ) { - wxLogError(T("Can't change immutable entry '%s'."), path.Name().c_str()); + wxLogError(wxT("Can't change immutable entry '%s'."), path.Name().c_str()); return FALSE; } @@ -516,7 +516,7 @@ bool wxRegConfig::RenameGroup(const wxString& oldName, const wxString& newName) // TODO there is no way to rename a registry key - we must do a deep copy // ourselves - wxFAIL_MSG(T("Registry key renaming not implemented")); + wxFAIL_MSG(wxT("Registry key renaming not implemented")); return FALSE; } diff --git a/src/msw/registry.cpp b/src/msw/registry.cpp index 50481be383..135825ec85 100644 --- a/src/msw/registry.cpp +++ b/src/msw/registry.cpp @@ -67,23 +67,23 @@ static struct } aStdKeys[] = { - { HKEY_CLASSES_ROOT, T("HKEY_CLASSES_ROOT"), T("HKCR") }, + { HKEY_CLASSES_ROOT, wxT("HKEY_CLASSES_ROOT"), wxT("HKCR") }, #ifdef __WIN32__ - { HKEY_CURRENT_USER, T("HKEY_CURRENT_USER"), T("HKCU") }, - { HKEY_LOCAL_MACHINE, T("HKEY_LOCAL_MACHINE"), T("HKLM") }, - { HKEY_USERS, T("HKEY_USERS"), T("HKU") }, // short name? - { HKEY_PERFORMANCE_DATA, T("HKEY_PERFORMANCE_DATA"), T("HKPD") }, + { HKEY_CURRENT_USER, wxT("HKEY_CURRENT_USER"), wxT("HKCU") }, + { HKEY_LOCAL_MACHINE, wxT("HKEY_LOCAL_MACHINE"), wxT("HKLM") }, + { HKEY_USERS, wxT("HKEY_USERS"), wxT("HKU") }, // short name? + { HKEY_PERFORMANCE_DATA, wxT("HKEY_PERFORMANCE_DATA"), wxT("HKPD") }, #if WINVER >= 0x0400 - { HKEY_CURRENT_CONFIG, T("HKEY_CURRENT_CONFIG"), T("HKCC") }, + { HKEY_CURRENT_CONFIG, wxT("HKEY_CURRENT_CONFIG"), wxT("HKCC") }, #ifndef __GNUWIN32__ - { HKEY_DYN_DATA, T("HKEY_DYN_DATA"), T("HKDD") }, // short name? + { HKEY_DYN_DATA, wxT("HKEY_DYN_DATA"), wxT("HKDD") }, // short name? #endif //GNUWIN32 #endif //WINVER >= 4.0 #endif //WIN32 }; // the registry name separator (perhaps one day MS will change it to '/' ;-) -#define REG_SEPARATOR T('\\') +#define REG_SEPARATOR wxT('\\') // useful for Windows programmers: makes somewhat more clear all these zeroes // being passed to Windows APIs @@ -128,7 +128,7 @@ const size_t wxRegKey::nStdKeys = WXSIZEOF(aStdKeys); const wxChar *wxRegKey::GetStdKeyName(size_t key) { // return empty string if key is invalid - wxCHECK_MSG( key < nStdKeys, T(""), T("invalid key in wxRegKey::GetStdKeyName") ); + wxCHECK_MSG( key < nStdKeys, wxT(""), wxT("invalid key in wxRegKey::GetStdKeyName") ); return aStdKeys[key].szName; } @@ -136,7 +136,7 @@ const wxChar *wxRegKey::GetStdKeyName(size_t key) const wxChar *wxRegKey::GetStdKeyShortName(size_t key) { // return empty string if key is invalid - wxCHECK( key < nStdKeys, T("") ); + wxCHECK( key < nStdKeys, wxT("") ); return aStdKeys[key].szShortName; } @@ -156,7 +156,7 @@ wxRegKey::StdKey wxRegKey::ExtractKeyName(wxString& strKey) } if ( ui == nStdKeys ) { - wxFAIL_MSG(T("invalid key prefix in wxRegKey::ExtractKeyName.")); + wxFAIL_MSG(wxT("invalid key prefix in wxRegKey::ExtractKeyName.")); hRootKey = HKEY_CLASSES_ROOT; } @@ -176,7 +176,7 @@ wxRegKey::StdKey wxRegKey::GetStdKeyFromHkey(WXHKEY hkey) return (StdKey)ui; } - wxFAIL_MSG(T("non root hkey passed to wxRegKey::GetStdKeyFromHkey.")); + wxFAIL_MSG(wxT("non root hkey passed to wxRegKey::GetStdKeyFromHkey.")); return HKCR; } @@ -624,7 +624,7 @@ bool wxRegKey::QueryValue(const wxChar *szValue, long *plValue) const else { // check that we read the value of right type wxASSERT_MSG( dwType == REG_DWORD, - T("Type mismatch in wxRegKey::QueryValue().") ); + wxT("Type mismatch in wxRegKey::QueryValue().") ); return TRUE; } @@ -651,7 +651,7 @@ bool wxRegKey::QueryValue(const wxChar *szValue, wxString& strValue) const if ( m_dwLastError == ERROR_SUCCESS ) { // check that it was the right type wxASSERT_MSG( dwType == REG_SZ, - T("Type mismatch in wxRegKey::QueryValue().") ); + wxT("Type mismatch in wxRegKey::QueryValue().") ); return TRUE; } @@ -833,7 +833,7 @@ const wxChar *GetFullName(const wxRegKey *pKey, const wxChar *szValue) static wxString s_str; s_str = pKey->GetName(); if ( !wxIsEmpty(szValue) ) - s_str << T("\\") << szValue; + s_str << wxT("\\") << szValue; return s_str.c_str(); } diff --git a/src/msw/scrolbar.cpp b/src/msw/scrolbar.cpp index 2971968636..955d42de97 100644 --- a/src/msw/scrolbar.cpp +++ b/src/msw/scrolbar.cpp @@ -84,7 +84,7 @@ bool wxScrollBar::Create(wxWindow *parent, wxWindowID id, // Now create scrollbar DWORD _direction = (style & wxHORIZONTAL) ? SBS_HORZ: SBS_VERT; - HWND scroll_bar = CreateWindowEx(MakeExtendedStyle(style), T("SCROLLBAR"), T("scrollbar"), + HWND scroll_bar = CreateWindowEx(MakeExtendedStyle(style), wxT("SCROLLBAR"), wxT("scrollbar"), _direction | WS_CHILD | WS_VISIBLE, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)m_windowId, wxGetInstance(), NULL); diff --git a/src/msw/slider95.cpp b/src/msw/slider95.cpp index fc1dd236c5..bc9805ff4d 100644 --- a/src/msw/slider95.cpp +++ b/src/msw/slider95.cpp @@ -93,14 +93,14 @@ bool wxSlider95::Create(wxWindow *parent, wxWindowID id, bool want3D; WXDWORD exStyle = Determine3DEffects(WS_EX_CLIENTEDGE, &want3D) ; - m_staticValue = (WXHWND) CreateWindowEx(exStyle, T("STATIC"), NULL, + m_staticValue = (WXHWND) CreateWindowEx(exStyle, wxT("STATIC"), NULL, msStyle, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)NewControlId(), wxGetInstance(), NULL); // Now create min static control - wxSprintf(wxBuffer, T("%d"), minValue); - m_staticMin = (WXHWND) CreateWindowEx(0, T("STATIC"), wxBuffer, + wxSprintf(wxBuffer, wxT("%d"), minValue); + m_staticMin = (WXHWND) CreateWindowEx(0, wxT("STATIC"), wxBuffer, STATIC_FLAGS, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)NewControlId(), wxGetInstance(), NULL); @@ -149,15 +149,15 @@ bool wxSlider95::Create(wxWindow *parent, wxWindowID id, SubclassWin(GetHWND()); - SetWindowText((HWND) m_hWnd, T("")); + SetWindowText((HWND) m_hWnd, wxT("")); SetFont(parent->GetFont()); if ( m_windowStyle & wxSL_LABELS ) { // Finally, create max value static item - wxSprintf(wxBuffer, T("%d"), maxValue); - m_staticMax = (WXHWND) CreateWindowEx(0, T("STATIC"), wxBuffer, + wxSprintf(wxBuffer, wxT("%d"), maxValue); + m_staticMax = (WXHWND) CreateWindowEx(0, wxT("STATIC"), wxBuffer, STATIC_FLAGS, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)NewControlId(), wxGetInstance(), NULL); @@ -285,7 +285,7 @@ void wxSlider95::SetValue(int value) ::SendMessage(GetHwnd(), TBM_SETPOS, (WPARAM)TRUE, (LPARAM)value); if (m_staticValue) { - wxSprintf(wxBuffer, T("%d"), value); + wxSprintf(wxBuffer, wxT("%d"), value); SetWindowText((HWND) m_staticValue, wxBuffer); } } @@ -513,13 +513,13 @@ void wxSlider95::SetRange(int minValue, int maxValue) wxChar buf[40]; if ( m_staticMin ) { - wxSprintf(buf, T("%d"), m_rangeMin); + wxSprintf(buf, wxT("%d"), m_rangeMin); SetWindowText((HWND) m_staticMin, buf); } if ( m_staticMax ) { - wxSprintf(buf, T("%d"), m_rangeMax); + wxSprintf(buf, wxT("%d"), m_rangeMax); SetWindowText((HWND) m_staticMax, buf); } } diff --git a/src/msw/slidrmsw.cpp b/src/msw/slidrmsw.cpp index 13a7b15ac4..c2d4ed2a4a 100644 --- a/src/msw/slidrmsw.cpp +++ b/src/msw/slidrmsw.cpp @@ -85,14 +85,14 @@ bool wxSliderMSW::Create(wxWindow *parent, wxWindowID id, bool want3D; WXDWORD exStyle = Determine3DEffects(WS_EX_CLIENTEDGE, &want3D) ; - m_staticValue = (WXHWND) CreateWindowEx(exStyle, T("STATIC"), NULL, + m_staticValue = (WXHWND) CreateWindowEx(exStyle, wxT("STATIC"), NULL, msStyle, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)NewControlId(), wxGetInstance(), NULL); // Now create min static control - wxSprintf(wxBuffer, T("%d"), minValue); - m_staticMin = (WXHWND) CreateWindowEx(0, T("STATIC"), wxBuffer, + wxSprintf(wxBuffer, wxT("%d"), minValue); + m_staticMin = (WXHWND) CreateWindowEx(0, wxT("STATIC"), wxBuffer, STATIC_FLAGS, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)NewControlId(), wxGetInstance(), NULL); @@ -106,7 +106,7 @@ bool wxSliderMSW::Create(wxWindow *parent, wxWindowID id, else msStyle = SBS_HORZ | WS_CHILD | WS_VISIBLE | WS_TABSTOP ; - HWND scroll_bar = CreateWindowEx(MakeExtendedStyle(m_windowStyle), T("SCROLLBAR"), wxBuffer, + HWND scroll_bar = CreateWindowEx(MakeExtendedStyle(m_windowStyle), wxT("SCROLLBAR"), wxBuffer, msStyle, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)m_windowId, wxGetInstance(), NULL); @@ -125,8 +125,8 @@ bool wxSliderMSW::Create(wxWindow *parent, wxWindowID id, SubclassWin(GetHWND()); // Finally, create max value static item - wxSprintf(wxBuffer, T("%d"), maxValue); - m_staticMax = (WXHWND) CreateWindowEx(0, T("STATIC"), wxBuffer, + wxSprintf(wxBuffer, wxT("%d"), maxValue); + m_staticMax = (WXHWND) CreateWindowEx(0, wxT("STATIC"), wxBuffer, STATIC_FLAGS, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)NewControlId(), wxGetInstance(), NULL); @@ -256,7 +256,7 @@ void wxSliderMSW::SetValue(int value) ::SetScrollPos(GetHwnd(), SB_CTL, value, TRUE); if (m_staticValue) { - wxSprintf(wxBuffer, T("%d"), value); + wxSprintf(wxBuffer, wxT("%d"), value); SetWindowText((HWND) m_staticValue, wxBuffer); } } @@ -463,13 +463,13 @@ void wxSliderMSW::SetRange(int minValue, int maxValue) wxChar buf[40]; if ( m_staticMin ) { - wxSprintf(buf, T("%d"), m_rangeMin); + wxSprintf(buf, wxT("%d"), m_rangeMin); SetWindowText((HWND) m_staticMin, buf); } if ( m_staticMax ) { - wxSprintf(buf, T("%d"), m_rangeMax); + wxSprintf(buf, wxT("%d"), m_rangeMax); SetWindowText((HWND) m_staticMax, buf); } } diff --git a/src/msw/spinbutt.cpp b/src/msw/spinbutt.cpp index 1b89986f8d..b91080bd70 100644 --- a/src/msw/spinbutt.cpp +++ b/src/msw/spinbutt.cpp @@ -133,7 +133,7 @@ void wxSpinButton::SetRange(int minVal, int maxVal) bool wxSpinButton::MSWOnScroll(int orientation, WXWORD wParam, WXWORD pos, WXHWND control) { - wxCHECK_MSG( control, FALSE, T("scrolling what?") ) + wxCHECK_MSG( control, FALSE, wxT("scrolling what?") ) if ( wParam != SB_THUMBPOSITION ) { diff --git a/src/msw/statbmp.cpp b/src/msw/statbmp.cpp index 1c0042887b..9b809e110e 100644 --- a/src/msw/statbmp.cpp +++ b/src/msw/statbmp.cpp @@ -87,17 +87,17 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id, #ifdef __WIN32__ // create a static control with either SS_BITMAP or SS_ICON style depending // on what we have here - const wxChar *classname = T("STATIC"); + const wxChar *classname = wxT("STATIC"); int winstyle = m_isIcon ? SS_ICON : SS_BITMAP; #else // Win16 - const wxChar *classname = T("BUTTON"); + const wxChar *classname = wxT("BUTTON"); int winstyle = BS_OWNERDRAW; #endif // Win32 m_hWnd = (WXHWND)::CreateWindow ( classname, - T(""), + wxT(""), winstyle | WS_CHILD | WS_VISIBLE, 0, 0, 0, 0, (HWND)parent->GetHWND(), @@ -106,7 +106,7 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id, NULL ); - wxCHECK_MSG( m_hWnd, FALSE, T("Failed to create static bitmap") ); + wxCHECK_MSG( m_hWnd, FALSE, wxT("Failed to create static bitmap") ); SetBitmap(bitmap); diff --git a/src/msw/statbox.cpp b/src/msw/statbox.cpp index f8d0a9d693..7ef4f3bddd 100644 --- a/src/msw/statbox.cpp +++ b/src/msw/statbox.cpp @@ -75,7 +75,7 @@ bool wxStaticBox::Create(wxWindow *parent, wxWindowID id, WXDWORD exStyle = Determine3DEffects(0, &want3D) ; HWND wx_button = - CreateWindowEx(exStyle, T("BUTTON"), (const wxChar *)label, msStyle, + CreateWindowEx(exStyle, wxT("BUTTON"), (const wxChar *)label, msStyle, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)m_windowId, wxGetInstance(), NULL); #if wxUSE_CTL3D diff --git a/src/msw/statbr95.cpp b/src/msw/statbr95.cpp index 17418306b8..5f91a3c092 100644 --- a/src/msw/statbr95.cpp +++ b/src/msw/statbr95.cpp @@ -97,11 +97,11 @@ bool wxStatusBar95::Create(wxWindow *parent, wxWindowID id, long style) wstyle |= SBARS_SIZEGRIP; m_hWnd = (WXHWND)CreateStatusWindow(wstyle, - T(""), + wxT(""), (HWND)parent->GetHWND(), m_windowId); if ( m_hWnd == 0 ) { - wxLogSysError(T("can't create status bar window")); + wxLogSysError(wxT("can't create status bar window")); return FALSE; } @@ -191,7 +191,7 @@ void wxStatusBar95::SetFieldsWidth() } if ( !StatusBar_SetParts(hwnd, m_nFields, pWidths) ) { - wxLogLastError(T("StatusBar_SetParts")); + wxLogLastError(wxT("StatusBar_SetParts")); } delete [] pWidths; @@ -200,7 +200,7 @@ void wxStatusBar95::SetFieldsWidth() void wxStatusBar95::SetStatusText(const wxString& strText, int nField) { if ( !StatusBar_SetText(hwnd, nField, strText) ) { - wxLogLastError(T("StatusBar_SetText")); + wxLogLastError(wxT("StatusBar_SetText")); } } @@ -208,7 +208,7 @@ wxString wxStatusBar95::GetStatusText(int nField) const { wxASSERT( (nField > -1) && (nField < m_nFields) ); - wxString str(T("")); + wxString str(wxT("")); int len = StatusBar_GetTextLen(hwnd, nField); if (len > 0) { diff --git a/src/msw/statline.cpp b/src/msw/statline.cpp index 23318390bb..75bc183dc8 100644 --- a/src/msw/statline.cpp +++ b/src/msw/statline.cpp @@ -64,8 +64,8 @@ bool wxStaticLine::Create( wxWindow *parent, m_hWnd = (WXHWND)::CreateWindow ( - T("STATIC"), - T(""), + wxT("STATIC"), + wxT(""), WS_VISIBLE | WS_CHILD | SS_GRAYRECT | SS_SUNKEN, // | SS_ETCHEDFRAME, pos.x, pos.y, sizeReal.x, sizeReal.y, @@ -78,7 +78,7 @@ bool wxStaticLine::Create( wxWindow *parent, if ( !m_hWnd ) { #ifdef __WXDEBUG__ - wxLogDebug(T("Failed to create static control")); + wxLogDebug(wxT("Failed to create static control")); #endif return FALSE; } diff --git a/src/msw/stattext.cpp b/src/msw/stattext.cpp index d8afd05b0c..f1a947d266 100644 --- a/src/msw/stattext.cpp +++ b/src/msw/stattext.cpp @@ -72,12 +72,12 @@ bool wxStaticText::Create(wxWindow *parent, wxWindowID id, if ( wxStyleHasBorder(m_windowStyle) ) msStyle |= WS_BORDER; - m_hWnd = (WXHWND)::CreateWindowEx(MakeExtendedStyle(m_windowStyle), T("STATIC"), (const wxChar *)label, + m_hWnd = (WXHWND)::CreateWindowEx(MakeExtendedStyle(m_windowStyle), wxT("STATIC"), (const wxChar *)label, msStyle, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)m_windowId, wxGetInstance(), NULL); - wxCHECK_MSG( m_hWnd, FALSE, T("Failed to create static ctrl") ); + wxCHECK_MSG( m_hWnd, FALSE, wxT("Failed to create static ctrl") ); #if wxUSE_CTL3D /* @@ -103,13 +103,13 @@ wxSize wxStaticText::DoGetBestSize() wxString curLine; for ( const wxChar *pc = text; ; pc++ ) { - if ( *pc == T('\n') || *pc == T('\0') ) { + if ( *pc == wxT('\n') || *pc == wxT('\0') ) { GetTextExtent(curLine, &widthLine, &heightLine); if ( widthLine > widthTextMax ) widthTextMax = widthLine; heightTextTotal += heightLine; - if ( *pc == T('\n') ) { + if ( *pc == wxT('\n') ) { curLine.Empty(); } else { diff --git a/src/msw/tabctrl.cpp b/src/msw/tabctrl.cpp index 67043d3879..b13f837e5e 100644 --- a/src/msw/tabctrl.cpp +++ b/src/msw/tabctrl.cpp @@ -116,7 +116,7 @@ bool wxTabCtrl::Create(wxWindow *parent, wxWindowID id, const wxPoint& pos, cons // Create the toolbar control. HWND hWndTabCtrl = CreateWindowEx(0L, // No extended styles. WC_TABCONTROL, // Class name for the tab control - T(""), // No default text. + wxT(""), // No default text. WS_CHILD | WS_BORDER | WS_VISIBLE | tabStyle, // Styles and defaults. x, y, width, height, // Standard size and position. (HWND) parent->GetHWND(), // Parent window @@ -244,7 +244,7 @@ int wxTabCtrl::GetRowCount() const wxString wxTabCtrl::GetItemText(int item) const { wxChar buf[256]; - wxString str(T("")); + wxString str(wxT("")); TC_ITEM tcItem; tcItem.mask = TCIF_TEXT; tcItem.pszText = buf; @@ -306,7 +306,7 @@ bool wxTabCtrl::InsertItem(int item, const wxString& text, int imageId, void* da TC_ITEM tcItem; tcItem.mask = TCIF_PARAM; tcItem.lParam = (long) data; - if (text != T("")) + if (text != wxT("")) { tcItem.mask |= TCIF_TEXT; wxStrcpy(buf, (const wxChar*) text); diff --git a/src/msw/taskbar.cpp b/src/msw/taskbar.cpp index b64a50cdf1..89246bd8a2 100644 --- a/src/msw/taskbar.cpp +++ b/src/msw/taskbar.cpp @@ -51,7 +51,7 @@ LRESULT APIENTRY _EXPORT wxTaskBarIconWindowProc( HWND hWnd, unsigned msg, UINT wParam, LONG lParam ); -wxChar *wxTaskBarWindowClass = T("wxTaskBarWindowClass"); +wxChar *wxTaskBarWindowClass = wxT("wxTaskBarWindowClass"); wxList wxTaskBarIcon::sm_taskBarIcons; bool wxTaskBarIcon::sm_registeredClass = FALSE; @@ -120,7 +120,7 @@ bool wxTaskBarIcon::SetIcon(const wxIcon& icon, const wxString& tooltip) notifyData.hIcon = (HICON) icon.GetHICON(); } - if (((const wxChar*) tooltip != NULL) && (tooltip != T(""))) + if (((const wxChar*) tooltip != NULL) && (tooltip != wxT(""))) { notifyData.uFlags |= NIF_TIP ; lstrcpyn(notifyData.szTip, WXSTRINGCAST tooltip, sizeof(notifyData.szTip)); @@ -262,7 +262,7 @@ bool wxTaskBarIcon::RegisterWindowClass() return TRUE; // Also register the taskbar message here - sm_taskbarMsg = ::RegisterWindowMessage(T("wxTaskBarIconMessage")); + sm_taskbarMsg = ::RegisterWindowMessage(wxT("wxTaskBarIconMessage")); WNDCLASS wc; bool rc; @@ -294,7 +294,7 @@ WXHWND wxTaskBarIcon::CreateTaskBarWindow() HINSTANCE hInstance = GetModuleHandle(NULL); HWND hWnd = CreateWindowEx (0, wxTaskBarWindowClass, - T("wxTaskBarWindow"), + wxT("wxTaskBarWindow"), WS_OVERLAPPED, 0, 0, diff --git a/src/msw/tbar95.cpp b/src/msw/tbar95.cpp index 89e95ab321..1c0cb2d5cc 100644 --- a/src/msw/tbar95.cpp +++ b/src/msw/tbar95.cpp @@ -109,7 +109,7 @@ bool wxToolBar95::Create(wxWindow *parent, m_foregroundColour = *wxBLACK ; wxASSERT_MSG( (style & wxTB_VERTICAL) == 0, - T("Sorry, wxToolBar95 under Windows 95 only " + wxT("Sorry, wxToolBar95 under Windows 95 only " "supports horizontal orientation.") ); m_maxWidth = -1; @@ -165,7 +165,7 @@ bool wxToolBar95::Create(wxWindow *parent, ( exStyle, // Extended styles. TOOLBARCLASSNAME, // Class name for the toolbar. - T(""), // No default text. + wxT(""), // No default text. msflags, // Styles x, y, width, height, // Standard toolbar size and position. (HWND) parent->GetHWND(), // Parent window of the toolbar. @@ -174,7 +174,7 @@ bool wxToolBar95::Create(wxWindow *parent, NULL // No class data. ); - wxCHECK_MSG( hWndToolbar, FALSE, T("Toolbar creation failed") ); + wxCHECK_MSG( hWndToolbar, FALSE, wxT("Toolbar creation failed") ); // Toolbar-specific initialisation ::SendMessage(hWndToolbar, TB_BUTTONSTRUCTSIZE, @@ -257,7 +257,7 @@ bool wxToolBar95::CreateTools() replaceBitmap.nButtons = noButtons; if (::SendMessage((HWND) GetHWND(), TB_REPLACEBITMAP, (WPARAM) 0, (LPARAM) &replaceBitmap) == -1) { - wxFAIL_MSG(T("Could not add bitmap to toolbar")); + wxFAIL_MSG(wxT("Could not add bitmap to toolbar")); } ::DeleteObject((HBITMAP) oldToolBarBitmap); @@ -278,7 +278,7 @@ bool wxToolBar95::CreateTools() addBitmap.nID = (UINT)m_hBitmap; if (::SendMessage((HWND) GetHWND(), TB_ADDBITMAP, (WPARAM) noButtons, (LPARAM) &addBitmap) == -1) { - wxFAIL_MSG(T("Could not add bitmap to toolbar")); + wxFAIL_MSG(wxT("Could not add bitmap to toolbar")); } } @@ -324,7 +324,7 @@ bool wxToolBar95::CreateTools() long rc = ::SendMessage((HWND) GetHWND(), TB_ADDBUTTONS, (WPARAM)i, (LPARAM)& buttons); - wxCHECK_MSG( rc, FALSE, T("failed to add buttons to the toolbar") ); + wxCHECK_MSG( rc, FALSE, wxT("failed to add buttons to the toolbar") ); (void)::SendMessage((HWND) GetHWND(), TB_AUTOSIZE, (WPARAM)0, (LPARAM) 0); diff --git a/src/msw/textctrl.cpp b/src/msw/textctrl.cpp index 0b25964bb4..2e6d785284 100644 --- a/src/msw/textctrl.cpp +++ b/src/msw/textctrl.cpp @@ -129,7 +129,7 @@ bool wxTextCtrl::Create(wxWindow *parent, wxWindowID id, if ( m_windowStyle & wxTE_MULTILINE ) { wxASSERT_MSG( !(m_windowStyle & wxTE_PROCESS_ENTER), - T("wxTE_PROCESS_ENTER style is ignored for multiline " + wxT("wxTE_PROCESS_ENTER style is ignored for multiline " "text controls (they always process it)") ); msStyle |= ES_MULTILINE | ES_WANTRETURN; @@ -167,14 +167,14 @@ bool wxTextCtrl::Create(wxWindow *parent, wxWindowID id, m_lDlgCode |= DLGC_WANTTAB; // do create the control - either an EDIT or RICHEDIT - const wxChar *windowClass = T("EDIT"); + const wxChar *windowClass = wxT("EDIT"); #if wxUSE_RICHEDIT if ( m_windowStyle & wxTE_RICH ) { msStyle |= ES_AUTOVSCROLL; m_isRich = TRUE; - windowClass = T("RICHEDIT"); + windowClass = wxT("RICHEDIT"); } else m_isRich = FALSE; @@ -201,7 +201,7 @@ bool wxTextCtrl::Create(wxWindow *parent, wxWindowID id, wxGetInstance(), NULL); - wxCHECK_MSG( m_hWnd, FALSE, T("Failed to create text ctrl") ); + wxCHECK_MSG( m_hWnd, FALSE, wxT("Failed to create text ctrl") ); #if wxUSE_CTL3D if ( want3D ) @@ -260,7 +260,7 @@ void wxTextCtrl::AdoptAttributesFromHWND() GetClassName(hWnd, buf, WXSIZEOF(buf)); - if ( wxStricmp(buf, T("EDIT")) == 0 ) + if ( wxStricmp(buf, wxT("EDIT")) == 0 ) m_isRich = FALSE; else m_isRich = TRUE; @@ -318,7 +318,7 @@ void wxTextCtrl::AppendText(const wxString& text) void wxTextCtrl::Clear() { - SetWindowText(GetHwnd(), T("")); + SetWindowText(GetHwnd(), wxT("")); } // ---------------------------------------------------------------------------- diff --git a/src/msw/thread.cpp b/src/msw/thread.cpp index 8ac282a86e..0722bd9361 100644 --- a/src/msw/thread.cpp +++ b/src/msw/thread.cpp @@ -105,7 +105,7 @@ wxMutex::wxMutex() wxMutex::~wxMutex() { if (m_locked > 0) - wxLogDebug(T("Warning: freeing a locked mutex (%d locks)."), m_locked); + wxLogDebug(wxT("Warning: freeing a locked mutex (%d locks)."), m_locked); CloseHandle(p_internal->p_mutex); } @@ -129,7 +129,7 @@ wxMutexError wxMutex::Lock() case WAIT_TIMEOUT: default: - wxFAIL_MSG(T("impossible return value in wxMutex::Lock")); + wxFAIL_MSG(wxT("impossible return value in wxMutex::Lock")); } m_locked++; @@ -375,7 +375,7 @@ bool wxThreadInternal::Create(wxThread *thread) win_priority = THREAD_PRIORITY_HIGHEST; else { - wxFAIL_MSG(T("invalid value of thread priority parameter")); + wxFAIL_MSG(wxT("invalid value of thread priority parameter")); win_priority = THREAD_PRIORITY_NORMAL; } @@ -575,7 +575,7 @@ wxThread::ExitCode wxThread::Delete() break; default: - wxFAIL_MSG(T("unexpected result of MsgWaitForMultipleObject")); + wxFAIL_MSG(wxT("unexpected result of MsgWaitForMultipleObject")); } } while ( result != WAIT_OBJECT_0 ); @@ -594,7 +594,7 @@ wxThread::ExitCode wxThread::Delete() } wxASSERT_MSG( (LPVOID)rc != (LPVOID)STILL_ACTIVE, - T("thread must be already terminated.") ); + wxT("thread must be already terminated.") ); ::CloseHandle(hThread); } @@ -625,7 +625,7 @@ void wxThread::Exit(void *status) ::ExitThread((DWORD)status); - wxFAIL_MSG(T("Couldn't return from ExitThread()!")); + wxFAIL_MSG(wxT("Couldn't return from ExitThread()!")); } void wxThread::SetPriority(unsigned int prio) @@ -770,7 +770,7 @@ void WXDLLEXPORT wxMutexGuiEnter() { // this would dead lock everything... wxASSERT_MSG( !wxThread::IsMain(), - T("main thread doesn't want to block in wxMutexGuiEnter()!") ); + wxT("main thread doesn't want to block in wxMutexGuiEnter()!") ); // the order in which we enter the critical sections here is crucial!! @@ -800,7 +800,7 @@ void WXDLLEXPORT wxMutexGuiLeave() { // decrement the number of waiters now wxASSERT_MSG( s_nWaitingForGui > 0, - T("calling wxMutexGuiLeave() without entering it first?") ); + wxT("calling wxMutexGuiLeave() without entering it first?") ); s_nWaitingForGui--; @@ -813,7 +813,7 @@ void WXDLLEXPORT wxMutexGuiLeave() void WXDLLEXPORT wxMutexGuiLeaveOrEnter() { wxASSERT_MSG( wxThread::IsMain(), - T("only main thread may call wxMutexGuiLeaveOrEnter()!") ); + wxT("only main thread may call wxMutexGuiLeaveOrEnter()!") ); wxCriticalSectionLocker enter(*s_critsectWaitingForGui); diff --git a/src/msw/timer.cpp b/src/msw/timer.cpp index 79419ead0f..119e7a0642 100644 --- a/src/msw/timer.cpp +++ b/src/msw/timer.cpp @@ -91,7 +91,7 @@ bool wxTimer::Start(int milliseconds, bool mode) if (milliseconds < 0) milliseconds = lastMilli; - wxCHECK_MSG( milliseconds > 0, FALSE, T("invalid value for timer timeour") ); + wxCHECK_MSG( milliseconds > 0, FALSE, wxT("invalid value for timer timeour") ); lastMilli = milli = milliseconds; @@ -146,7 +146,7 @@ UINT WINAPI _EXPORT wxTimerProc(HWND WXUNUSED(hwnd), WORD, int idTimer, DWORD) { wxNode *node = wxTimerList.Find((long)idTimer); - wxCHECK_MSG( node, 0, T("bogus timer id in wxTimerProc") ); + wxCHECK_MSG( node, 0, wxT("bogus timer id in wxTimerProc") ); wxProcessTimer(*(wxTimer *)node->Data()); diff --git a/src/msw/treectrl.cpp b/src/msw/treectrl.cpp index 530535f27a..f7ac36c718 100644 --- a/src/msw/treectrl.cpp +++ b/src/msw/treectrl.cpp @@ -352,7 +352,7 @@ bool wxTreeCtrl::Create(wxWindow *parent, DFC_BUTTON, DFCS_BUTTONCHECK | DFCS_CHECKED) ) { - wxLogLastError(T("DrawFrameControl(check)")); + wxLogLastError(wxT("DrawFrameControl(check)")); } bmp.SetHBITMAP((WXHBITMAP)hbmpCheck); @@ -362,7 +362,7 @@ bool wxTreeCtrl::Create(wxWindow *parent, DFC_BUTTON, DFCS_BUTTONCHECK) ) { - wxLogLastError(T("DrawFrameControl(uncheck)")); + wxLogLastError(wxT("DrawFrameControl(uncheck)")); } bmp.SetHBITMAP((WXHBITMAP)hbmpCheck); @@ -480,7 +480,7 @@ wxString wxTreeCtrl::GetItemText(const wxTreeItemId& item) const if ( !DoGetItem(&tvItem) ) { // don't return some garbage which was on stack, but an empty string - buf[0] = T('\0'); + buf[0] = wxT('\0'); } return wxString(buf); @@ -555,7 +555,7 @@ int wxTreeCtrl::GetItemImage(const wxTreeItemId& item, switch ( which ) { default: - wxFAIL_MSG( T("unknown tree item image type") ); + wxFAIL_MSG( wxT("unknown tree item image type") ); case wxTreeItemIcon_Normal: mask = TVIF_IMAGE; @@ -583,7 +583,7 @@ void wxTreeCtrl::SetItemImage(const wxTreeItemId& item, int image, switch ( which ) { default: - wxFAIL_MSG( T("unknown tree item image type") ); + wxFAIL_MSG( wxT("unknown tree item image type") ); case wxTreeItemIcon_Normal: imageNormal = image; @@ -659,7 +659,7 @@ void wxTreeCtrl::SetItemData(const wxTreeItemId& item, wxTreeItemData *data) } else { - wxFAIL_MSG( T("failed to change tree items data") ); + wxFAIL_MSG( wxT("failed to change tree items data") ); } } else @@ -676,7 +676,7 @@ void wxTreeCtrl::SetIndirectItemData(const wxTreeItemId& item, // to crash too because the code elsewhere supposes that the pointer the // wxTreeItemIndirectData has is a real wxItemData and not // wxTreeItemIndirectData as well - wxASSERT_MSG( !HasIndirectData(item), T("setting indirect data twice?") ); + wxASSERT_MSG( !HasIndirectData(item), wxT("setting indirect data twice?") ); SetItemData(item, (wxTreeItemData *)data); @@ -768,7 +768,7 @@ wxTreeItemId wxTreeCtrl::GetRootItem() const wxTreeItemId wxTreeCtrl::GetSelection() const { wxCHECK_MSG( !(m_windowStyle & wxTR_MULTIPLE), (WXHTREEITEM)0, - T("this only works with single selection controls") ); + wxT("this only works with single selection controls") ); return wxTreeItemId((WXHTREEITEM) TreeView_GetSelection(GetHwnd())); } @@ -830,7 +830,7 @@ wxTreeItemId wxTreeCtrl::GetFirstVisibleItem() const wxTreeItemId wxTreeCtrl::GetNextVisible(const wxTreeItemId& item) const { - wxASSERT_MSG( IsVisible(item), T("The item you call GetNextVisible() " + wxASSERT_MSG( IsVisible(item), wxT("The item you call GetNextVisible() " "for must be visible itself!")); return wxTreeItemId((WXHTREEITEM) TreeView_GetNextVisible(GetHwnd(), (HTREEITEM) (WXHTREEITEM) item)); @@ -838,7 +838,7 @@ wxTreeItemId wxTreeCtrl::GetNextVisible(const wxTreeItemId& item) const wxTreeItemId wxTreeCtrl::GetPrevVisible(const wxTreeItemId& item) const { - wxASSERT_MSG( IsVisible(item), T("The item you call GetPrevVisible() " + wxASSERT_MSG( IsVisible(item), wxT("The item you call GetPrevVisible() " "for must be visible itself!")); return wxTreeItemId((WXHTREEITEM) TreeView_GetPrevVisible(GetHwnd(), (HTREEITEM) (WXHTREEITEM) item)); @@ -1036,7 +1036,7 @@ void wxTreeCtrl::DoExpand(const wxTreeItemId& item, int flag) flag == (TVE_COLLAPSE | TVE_COLLAPSERESET) || flag == TVE_EXPAND || flag == TVE_TOGGLE, - T("Unknown flag in wxTreeCtrl::DoExpand") ); + wxT("Unknown flag in wxTreeCtrl::DoExpand") ); // TreeView_Expand doesn't send TVN_ITEMEXPAND(ING) messages, so we must // emulate them. This behaviour has changed slightly with comctl32.dll @@ -1096,7 +1096,7 @@ void wxTreeCtrl::ExpandItem(const wxTreeItemId& item, int action) void wxTreeCtrl::Unselect() { - wxASSERT_MSG( !(m_windowStyle & wxTR_MULTIPLE), T("doesn't make sense") ); + wxASSERT_MSG( !(m_windowStyle & wxTR_MULTIPLE), wxT("doesn't make sense") ); // just remove the selection SelectItem(wxTreeItemId((WXHTREEITEM) 0)); @@ -1274,7 +1274,7 @@ static int CALLBACK TreeView_CompareCallback(wxTreeItemData *pItem1, wxTreeCtrl *tree) { wxCHECK_MSG( pItem1 && pItem2, 0, - T("sorting tree without data doesn't make sense") ); + wxT("sorting tree without data doesn't make sense") ); return tree->OnCompareItems(pItem1->GetId(), pItem2->GetId()); } @@ -1423,7 +1423,7 @@ bool wxTreeCtrl::MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result) break; default: - wxLogDebug(T("unexpected code %d in TVN_ITEMEXPAND " + wxLogDebug(wxT("unexpected code %d in TVN_ITEMEXPAND " "message"), tv->action); } diff --git a/src/msw/utils.cpp b/src/msw/utils.cpp index a4d3fbe045..5590eb7fb3 100644 --- a/src/msw/utils.cpp +++ b/src/msw/utils.cpp @@ -119,10 +119,10 @@ /// END for console support // In the WIN.INI file -static const wxChar WX_SECTION[] = T("wxWindows"); -static const wxChar eHOSTNAME[] = T("HostName"); -static const wxChar eUSERID[] = T("UserId"); -static const wxChar eUSERNAME[] = T("UserName"); +static const wxChar WX_SECTION[] = wxT("wxWindows"); +static const wxChar eHOSTNAME[] = wxT("HostName"); +static const wxChar eUSERID[] = wxT("UserId"); +static const wxChar eUSERNAME[] = wxT("UserName"); // For the following functions we SHOULD fill in support // for Windows-NT (which I don't know) as I assume it begin @@ -137,13 +137,13 @@ bool wxGetHostName(wxChar *buf, int maxSize) return (::GetComputerName(buf, &nSize) != 0); #else wxChar *sysname; - const wxChar *default_host = T("noname"); + const wxChar *default_host = wxT("noname"); - if ((sysname = wxGetenv(T("SYSTEM_NAME"))) == NULL) { + if ((sysname = wxGetenv(wxT("SYSTEM_NAME"))) == NULL) { GetProfileString(WX_SECTION, eHOSTNAME, default_host, buf, maxSize - 1); } else wxStrncpy(buf, sysname, maxSize - 1); - buf[maxSize] = T('\0'); + buf[maxSize] = wxT('\0'); return *buf ? TRUE : FALSE; #endif } @@ -156,7 +156,7 @@ bool wxGetUserId(wxChar *buf, int maxSize) if ( ::GetUserName(buf, &nSize) == 0 ) { // actually, it does happen on Win9x if the user didn't log on - DWORD res = ::GetEnvironmentVariable(T("username"), buf, maxSize); + DWORD res = ::GetEnvironmentVariable(wxT("username"), buf, maxSize); if ( res == 0 ) { // not found @@ -167,12 +167,12 @@ bool wxGetUserId(wxChar *buf, int maxSize) return TRUE; #else // Win16 or Win32s wxChar *user; - const wxChar *default_id = T("anonymous"); + const wxChar *default_id = wxT("anonymous"); // Can't assume we have NIS (PC-NFS) or some other ID daemon // So we ... - if ( (user = wxGetenv(T("USER"))) == NULL && - (user = wxGetenv(T("LOGNAME"))) == NULL ) + if ( (user = wxGetenv(wxT("USER"))) == NULL && + (user = wxGetenv(wxT("LOGNAME"))) == NULL ) { // Use wxWindows configuration data (comming soon) GetProfileString(WX_SECTION, eUSERID, default_id, buf, maxSize - 1); @@ -225,7 +225,7 @@ bool wxGetUserName(wxChar *buf, int maxSize) // Get the computer name of a DC for the domain. if ( NetGetDCName( NULL, wszDomain, &ComputerName ) != NERR_Success ) { - wxLogError(T("Can not find domain controller")); + wxLogError(wxT("Can not find domain controller")); goto error; } @@ -242,17 +242,17 @@ bool wxGetUserName(wxChar *buf, int maxSize) break; case NERR_InvalidComputer: - wxLogError(T("Invalid domain controller name.")); + wxLogError(wxT("Invalid domain controller name.")); goto error; case NERR_UserNotFound: - wxLogError(T("Invalid user name '%s'."), szUserName); + wxLogError(wxT("Invalid user name '%s'."), szUserName); goto error; default: - wxLogSysError(T("Can't get information about user")); + wxLogSysError(wxT("Can't get information about user")); goto error; } @@ -264,13 +264,13 @@ bool wxGetUserName(wxChar *buf, int maxSize) return TRUE; error: - wxLogError(T("Couldn't look up full user name.")); + wxLogError(wxT("Couldn't look up full user name.")); return FALSE; #else // !USE_NET_API // Could use NIS, MS-Mail or other site specific programs // Use wxWindows configuration data - bool ok = GetProfileString(WX_SECTION, eUSERNAME, T(""), buf, maxSize - 1) != 0; + bool ok = GetProfileString(WX_SECTION, eUSERNAME, wxT(""), buf, maxSize - 1) != 0; if ( !ok ) { ok = wxGetUserId(buf, maxSize); @@ -278,7 +278,7 @@ error: if ( !ok ) { - wxStrncpy(buf, T("Unknown User"), maxSize); + wxStrncpy(buf, wxT("Unknown User"), maxSize); } #endif // Win32/16 } @@ -298,12 +298,12 @@ bool wxShell(const wxString& command) { wxChar *shell; - if ((shell = wxGetenv(T("COMSPEC"))) == NULL) - shell = T("\\COMMAND.COM"); + if ((shell = wxGetenv(wxT("COMSPEC"))) == NULL) + shell = wxT("\\COMMAND.COM"); wxChar tmp[255]; - if (command != T("")) - wxSprintf(tmp, T("%s /c %s"), shell, WXSTRINGCAST command); + if (command != wxT("")) + wxSprintf(tmp, wxT("%s /c %s"), shell, WXSTRINGCAST command); else wxStrcpy(tmp, shell); @@ -405,7 +405,7 @@ void wxDebugMsg(const wxChar *fmt ...) // Non-fatal error: pop up message box and (possibly) continue void wxError(const wxString& msg, const wxString& title) { - wxSprintf(wxBuffer, T("%s\nContinue?"), WXSTRINGCAST msg); + wxSprintf(wxBuffer, wxT("%s\nContinue?"), WXSTRINGCAST msg); if (MessageBox(NULL, (LPCTSTR)wxBuffer, (LPCTSTR)WXSTRINGCAST title, MB_ICONSTOP | MB_YESNO) == IDNO) wxExit(); @@ -414,7 +414,7 @@ void wxError(const wxString& msg, const wxString& title) // Fatal error: pop up message box and abort void wxFatalError(const wxString& msg, const wxString& title) { - wxSprintf(wxBuffer, T("%s: %s"), WXSTRINGCAST title, WXSTRINGCAST msg); + wxSprintf(wxBuffer, wxT("%s: %s"), WXSTRINGCAST title, WXSTRINGCAST msg); FatalAppExit(0, (LPCTSTR)wxBuffer); } @@ -482,7 +482,7 @@ int wxGetOsVersion(int *majorVsn, int *minorVsn) #if wxUSE_RESOURCES bool wxWriteResource(const wxString& section, const wxString& entry, const wxString& value, const wxString& file) { - if (file != T("")) + if (file != wxT("")) return (WritePrivateProfileString((LPCTSTR)WXSTRINGCAST section, (LPCTSTR)WXSTRINGCAST entry, (LPCTSTR)value, (LPCTSTR)WXSTRINGCAST file) != 0); else return (WriteProfileString((LPCTSTR)WXSTRINGCAST section, (LPCTSTR)WXSTRINGCAST entry, (LPCTSTR)WXSTRINGCAST value) != 0); @@ -491,28 +491,28 @@ bool wxWriteResource(const wxString& section, const wxString& entry, const wxStr bool wxWriteResource(const wxString& section, const wxString& entry, float value, const wxString& file) { wxChar buf[50]; - wxSprintf(buf, T("%.4f"), value); + wxSprintf(buf, wxT("%.4f"), value); return wxWriteResource(section, entry, buf, file); } bool wxWriteResource(const wxString& section, const wxString& entry, long value, const wxString& file) { wxChar buf[50]; - wxSprintf(buf, T("%ld"), value); + wxSprintf(buf, wxT("%ld"), value); return wxWriteResource(section, entry, buf, file); } bool wxWriteResource(const wxString& section, const wxString& entry, int value, const wxString& file) { wxChar buf[50]; - wxSprintf(buf, T("%d"), value); + wxSprintf(buf, wxT("%d"), value); return wxWriteResource(section, entry, buf, file); } bool wxGetResource(const wxString& section, const wxString& entry, wxChar **value, const wxString& file) { - static const wxChar defunkt[] = T("$$default"); - if (file != T("")) + static const wxChar defunkt[] = wxT("$$default"); + if (file != wxT("")) { int n = GetPrivateProfileString((LPCTSTR)WXSTRINGCAST section, (LPCTSTR)WXSTRINGCAST entry, (LPCTSTR)defunkt, (LPTSTR)wxBuffer, 1000, (LPCTSTR)WXSTRINGCAST file); @@ -594,7 +594,7 @@ void wxBeginBusyCursor(wxCursor *cursor) void wxEndBusyCursor() { wxCHECK_RET( gs_wxBusyCursorCount > 0, - T("no matching wxBeginBusyCursor() for wxEndBusyCursor()") ); + wxT("no matching wxBeginBusyCursor() for wxEndBusyCursor()") ); if ( --gs_wxBusyCursorCount == 0 ) { @@ -620,20 +620,20 @@ const wxChar* wxGetHomeDir(wxString *pstr) if ( szHome == NULL ) { // we're homeless... wxLogWarning(_("can't find user's HOME, using current directory.")); - strDir = T("."); + strDir = wxT("."); } else strDir = szHome; // add a trailing slash if needed - if ( strDir.Last() != T('/') ) - strDir << T('/'); + if ( strDir.Last() != wxT('/') ) + strDir << wxT('/'); #else // Windows #ifdef __WIN32__ - const wxChar *szHome = wxGetenv(T("HOMEDRIVE")); + const wxChar *szHome = wxGetenv(wxT("HOMEDRIVE")); if ( szHome != NULL ) strDir << szHome; - szHome = wxGetenv(T("HOMEPATH")); + szHome = wxGetenv(wxT("HOMEPATH")); if ( szHome != NULL ) { strDir << szHome; @@ -643,7 +643,7 @@ const wxChar* wxGetHomeDir(wxString *pstr) // create it in our program's dir. However, if the user took care // to set HOMEPATH to something other than "\\", we suppose that he // knows what he is doing and use the supplied value. - if ( wxStrcmp(szHome, T("\\")) != 0 ) + if ( wxStrcmp(szHome, wxT("\\")) != 0 ) return strDir.c_str(); } @@ -675,22 +675,22 @@ wxChar *wxGetUserHome (const wxString& user) wxChar *home; wxString user1(user); - if (user1 != T("")) { + if (user1 != wxT("")) { wxChar tmp[64]; if (wxGetUserId(tmp, sizeof(tmp)/sizeof(char))) { // Guests belong in the temp dir - if (wxStricmp(tmp, T("annonymous")) == 0) { - if ((home = wxGetenv(T("TMP"))) != NULL || - (home = wxGetenv(T("TMPDIR"))) != NULL || - (home = wxGetenv(T("TEMP"))) != NULL) - return *home ? home : (wxChar*)T("\\"); + if (wxStricmp(tmp, wxT("annonymous")) == 0) { + if ((home = wxGetenv(wxT("TMP"))) != NULL || + (home = wxGetenv(wxT("TMPDIR"))) != NULL || + (home = wxGetenv(wxT("TEMP"))) != NULL) + return *home ? home : (wxChar*)wxT("\\"); } if (wxStricmp(tmp, WXSTRINGCAST user1) == 0) - user1 = T(""); + user1 = wxT(""); } } - if (user1 == T("")) - if ((home = wxGetenv(T("HOME"))) != NULL) + if (user1 == wxT("")) + if ((home = wxGetenv(wxT("HOME"))) != NULL) { wxStrcpy(wxBuffer, home); Unix2DosFilename(wxBuffer); @@ -713,7 +713,7 @@ bool wxCheckForInterrupt(wxWindow *wnd) return TRUE;//*** temporary? } else{ - wxFAIL_MSG(T("wnd==NULL !!!")); + wxFAIL_MSG(wxT("wnd==NULL !!!")); return FALSE;//*** temporary? } @@ -1132,26 +1132,26 @@ void OutputDebugStringW95(const wxChar* lpOutputString, ...) } /* make sure DBWIN is open and waiting */ - heventDBWIN = OpenEvent(EVENT_MODIFY_STATE, FALSE, T("DBWIN_BUFFER_READY")); + heventDBWIN = OpenEvent(EVENT_MODIFY_STATE, FALSE, wxT("DBWIN_BUFFER_READY")); if ( !heventDBWIN ) { - //MessageBox(NULL, T("DBWIN_BUFFER_READY nonexistent"), NULL, MB_OK); + //MessageBox(NULL, wxT("DBWIN_BUFFER_READY nonexistent"), NULL, MB_OK); return; } /* get a handle to the data synch object */ - heventData = OpenEvent(EVENT_MODIFY_STATE, FALSE, T("DBWIN_DATA_READY")); + heventData = OpenEvent(EVENT_MODIFY_STATE, FALSE, wxT("DBWIN_DATA_READY")); if ( !heventData ) { - // MessageBox(NULL, T("DBWIN_DATA_READY nonexistent"), NULL, MB_OK); + // MessageBox(NULL, wxT("DBWIN_DATA_READY nonexistent"), NULL, MB_OK); CloseHandle(heventDBWIN); return; } - hSharedFile = CreateFileMapping((HANDLE)-1, NULL, PAGE_READWRITE, 0, 4096, T("DBWIN_BUFFER")); + hSharedFile = CreateFileMapping((HANDLE)-1, NULL, PAGE_READWRITE, 0, 4096, wxT("DBWIN_BUFFER")); if (!hSharedFile) { - //MessageBox(NULL, T("DebugTrace: Unable to create file mapping object DBWIN_BUFFER"), T("Error"), MB_OK); + //MessageBox(NULL, wxT("DebugTrace: Unable to create file mapping object DBWIN_BUFFER"), wxT("Error"), MB_OK); CloseHandle(heventDBWIN); CloseHandle(heventData); return; @@ -1160,7 +1160,7 @@ void OutputDebugStringW95(const wxChar* lpOutputString, ...) lpszSharedMem = (LPSTR)MapViewOfFile(hSharedFile, FILE_MAP_WRITE, 0, 0, 512); if (!lpszSharedMem) { - //MessageBox(NULL, T("DebugTrace: Unable to map shared memory"), T("Error"), MB_OK); + //MessageBox(NULL, wxT("DebugTrace: Unable to map shared memory"), wxT("Error"), MB_OK); CloseHandle(heventDBWIN); CloseHandle(heventData); return; @@ -1176,7 +1176,7 @@ void OutputDebugStringW95(const wxChar* lpOutputString, ...) *((LPDWORD)lpszSharedMem) = _getpid(); #endif - wsprintf((LPTSTR)(lpszSharedMem + sizeof(DWORD)), T("%s"), achBuffer); + wsprintf((LPTSTR)(lpszSharedMem + sizeof(DWORD)), wxT("%s"), achBuffer); /* signal data ready event */ SetEvent(heventData); diff --git a/src/msw/utilsexc.cpp b/src/msw/utilsexc.cpp index a05db17293..d287d7fad2 100644 --- a/src/msw/utilsexc.cpp +++ b/src/msw/utilsexc.cpp @@ -109,7 +109,7 @@ static DWORD wxExecuteThread(wxExecuteData *data) } wxASSERT_MSG( data->dwExitCode != STILL_ACTIVE, - T("process should have terminated") ); + wxT("process should have terminated") ); // send a message indicating process termination to the window SendMessage(data->hWnd, wxWM_PROC_TERMINATED, 0, (LPARAM)data); @@ -154,7 +154,7 @@ extern wxChar wxPanelClassName[]; long wxExecute(const wxString& command, bool sync, wxProcess *handler) { - wxCHECK_MSG( !!command, 0, T("empty command in wxExecute") ); + wxCHECK_MSG( !!command, 0, wxT("empty command in wxExecute") ); #if defined(__WIN32__) && !defined(__TWIN32__) // the old code is disabled because we really need a process handle @@ -250,7 +250,7 @@ long wxExecute(const wxString& command, bool sync, wxProcess *handler) // termination HWND hwnd = ::CreateWindow(wxPanelClassName, NULL, 0, 0, 0, 0, 0, NULL, (HMENU)NULL, wxGetInstance(), 0); - wxASSERT_MSG( hwnd, T("can't create a hidden window for wxExecute") ); + wxASSERT_MSG( hwnd, wxT("can't create a hidden window for wxExecute") ); FARPROC ExecuteWindowInstance = MakeProcInstance((FARPROC)wxExecuteWindowCbk, wxGetInstance()); @@ -265,7 +265,7 @@ long wxExecute(const wxString& command, bool sync, wxProcess *handler) data->state = sync; if ( sync ) { - wxASSERT_MSG( !handler, T("wxProcess param ignored for sync execution") ); + wxASSERT_MSG( !handler, wxT("wxProcess param ignored for sync execution") ); data->handler = NULL; } diff --git a/src/msw/wave.cpp b/src/msw/wave.cpp index 699b92ebee..8f2edf9af5 100644 --- a/src/msw/wave.cpp +++ b/src/msw/wave.cpp @@ -76,12 +76,12 @@ bool wxWave::Create(const wxString& fileName, bool isResource) HRSRC hresInfo; #if defined(__WIN32__) && !defined(__TWIN32__) #ifdef _UNICODE - hresInfo = ::FindResourceW((HMODULE) wxhInstance, fileName, T("WAVE")); + hresInfo = ::FindResourceW((HMODULE) wxhInstance, fileName, wxT("WAVE")); #else - hresInfo = ::FindResourceA((HMODULE) wxhInstance, fileName, T("WAVE")); + hresInfo = ::FindResourceA((HMODULE) wxhInstance, fileName, wxT("WAVE")); #endif #else - hresInfo = ::FindResource((HMODULE) wxhInstance, fileName, T("WAVE")); + hresInfo = ::FindResource((HMODULE) wxhInstance, fileName, wxT("WAVE")); #endif if (!hresInfo) return FALSE; diff --git a/src/msw/window.cpp b/src/msw/window.cpp index 2e72e79b92..b050eb8258 100644 --- a/src/msw/window.cpp +++ b/src/msw/window.cpp @@ -297,7 +297,7 @@ bool wxWindow::Create(wxWindow *parent, wxWindowID id, long style, const wxString& name) { - wxCHECK_MSG( parent, FALSE, T("can't create wxWindow without parent") ); + wxCHECK_MSG( parent, FALSE, wxT("can't create wxWindow without parent") ); if ( !CreateBase(parent, id, pos, size, style, wxDefaultValidator, name) ) return FALSE; @@ -448,7 +448,7 @@ bool wxWindow::SetFont(const wxFont& font) { WXHANDLE hFont = m_font.GetResourceHandle(); - wxASSERT_MSG( hFont, T("should have valid font") ); + wxASSERT_MSG( hFont, wxT("should have valid font") ); ::SendMessage(hWnd, WM_SETFONT, (WPARAM)hFont, MAKELPARAM(TRUE, 0)); } @@ -464,7 +464,7 @@ bool wxWindow::SetCursor(const wxCursor& cursor) } wxASSERT_MSG( m_cursor.Ok(), - T("cursor must be valid after call to the base version")); + wxT("cursor must be valid after call to the base version")); HWND hWnd = GetHwnd(); @@ -801,10 +801,10 @@ void wxWindow::ScrollWindow(int dx, int dy, const wxRect *rect) void wxWindow::SubclassWin(WXHWND hWnd) { - wxASSERT_MSG( !m_oldWndProc, T("subclassing window twice?") ); + wxASSERT_MSG( !m_oldWndProc, wxT("subclassing window twice?") ); HWND hwnd = (HWND)hWnd; - wxCHECK_RET( ::IsWindow(hwnd), T("invalid HWND in SubclassWin") ); + wxCHECK_RET( ::IsWindow(hwnd), wxT("invalid HWND in SubclassWin") ); wxAssociateWinWithHandle(hwnd, this); @@ -822,7 +822,7 @@ void wxWindow::UnsubclassWin() { m_hWnd = 0; - wxCHECK_RET( ::IsWindow(hwnd), T("invalid HWND in UnsubclassWin") ); + wxCHECK_RET( ::IsWindow(hwnd), wxT("invalid HWND in UnsubclassWin") ); FARPROC farProc = (FARPROC) GetWindowLong(hwnd, GWL_WNDPROC); if ( (m_oldWndProc != 0) && (farProc != (FARPROC) m_oldWndProc) ) @@ -1709,7 +1709,7 @@ LRESULT APIENTRY _EXPORT wxWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA { // trace all messages - useful for the debugging #ifdef __WXDEBUG__ - wxLogTrace(wxTraceMessages, T("Processing %s(wParam=%8lx, lParam=%8lx)"), + wxLogTrace(wxTraceMessages, wxT("Processing %s(wParam=%8lx, lParam=%8lx)"), wxGetMessageName(message), wParam, lParam); #endif // __WXDEBUG__ @@ -2094,7 +2094,7 @@ long wxWindow::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam) if ( !processed ) { #ifdef __WXDEBUG__ - wxLogTrace(wxTraceMessages, T("Forwarding %s to DefWindowProc."), + wxLogTrace(wxTraceMessages, wxT("Forwarding %s to DefWindowProc."), wxGetMessageName(message)); #endif // __WXDEBUG__ rc.result = MSWDefWindowProc(message, wParam, lParam); @@ -2139,7 +2139,7 @@ void wxAssociateWinWithHandle(HWND hWnd, wxWindow *win) // adding NULL hWnd is (first) surely a result of an error and // (secondly) breaks menu command processing wxCHECK_RET( hWnd != (HWND)NULL, - T("attempt to add a NULL hWnd to window list ignored") ); + wxT("attempt to add a NULL hWnd to window list ignored") ); wxWindow *oldWin = wxFindWinFromHandle((WXHWND) hWnd); @@ -2191,12 +2191,12 @@ void wxWindow::MSWDetachWindowMenu() int chars = GetMenuString(hMenu, i, buf, 100, MF_BYPOSITION); if ( !chars ) { - wxLogLastError(T("GetMenuString")); + wxLogLastError(wxT("GetMenuString")); continue; } - if ( wxStrcmp(buf, T("&Window")) == 0 ) + if ( wxStrcmp(buf, wxT("&Window")) == 0 ) { RemoveMenu(hMenu, i, MF_BYPOSITION); @@ -2268,14 +2268,14 @@ bool wxWindow::MSWCreate(int id, if ( !::SetWindowPos(GetHwnd(), HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE) ) { - wxLogLastError(T("SetWindowPos")); + wxLogLastError(wxT("SetWindowPos")); } } // move the dialog to its initial position without forcing repainting if ( !::MoveWindow(GetHwnd(), x1, y1, width1, height1, FALSE) ) { - wxLogLastError(T("MoveWindow")); + wxLogLastError(wxT("MoveWindow")); } } else @@ -2287,12 +2287,12 @@ bool wxWindow::MSWCreate(int id, wxString className(wclass); if ( GetWindowStyleFlag() & wxNO_FULL_REPAINT_ON_RESIZE ) { - className += T("NR"); + className += wxT("NR"); } m_hWnd = (WXHWND)CreateWindowEx(extendedStyle, wclass, - title ? title : T(""), + title ? title : wxT(""), style, x1, y1, width1, height1, @@ -3267,7 +3267,7 @@ bool wxWindow::HandleJoystickEvent(WXUINT msg, int x, int y, WXUINT flags) break; default: - wxFAIL_MSG(T("no such joystick event")); + wxFAIL_MSG(wxT("no such joystick event")); return FALSE; } diff --git a/src/os2/control.cpp b/src/os2/control.cpp index 859f4f7b61..57cfe9e6df 100644 --- a/src/os2/control.cpp +++ b/src/os2/control.cpp @@ -66,7 +66,7 @@ bool wxControl::OS2CreateControl(const wxChar *classname, WXDWORD style) if ( !m_hWnd ) { #ifdef __WXDEBUG__ - wxLogError(T("Failed to create a control of class '%s'"), classname); + wxLogError(wxT("Failed to create a control of class '%s'"), classname); #endif // DEBUG return FALSE; diff --git a/src/os2/data.cpp b/src/os2/data.cpp index e89049242e..fe49334c2a 100644 --- a/src/os2/data.cpp +++ b/src/os2/data.cpp @@ -114,50 +114,50 @@ wxFont wxNullFont; wxColour wxNullColour; // Default window names -const wxChar *wxButtonNameStr = T("button"); -const wxChar *wxCanvasNameStr = T("canvas"); -const wxChar *wxCheckBoxNameStr = T("check"); -const wxChar *wxChoiceNameStr = T("choice"); -const wxChar *wxComboBoxNameStr = T("comboBox"); -const wxChar *wxDialogNameStr = T("dialog"); -const wxChar *wxFrameNameStr = T("frame"); -const wxChar *wxGaugeNameStr = T("gauge"); -const wxChar *wxStaticBoxNameStr = T("groupBox"); -const wxChar *wxListBoxNameStr = T("listBox"); -const wxChar *wxStaticTextNameStr = T("message"); -const wxChar *wxStaticBitmapNameStr = T("message"); -const wxChar *wxMultiTextNameStr = T("multitext"); -const wxChar *wxPanelNameStr = T("panel"); -const wxChar *wxRadioBoxNameStr = T("radioBox"); -const wxChar *wxRadioButtonNameStr = T("radioButton"); -const wxChar *wxBitmapRadioButtonNameStr = T("radioButton"); -const wxChar *wxScrollBarNameStr = T("scrollBar"); -const wxChar *wxSliderNameStr = T("slider"); -const wxChar *wxStaticNameStr = T("static"); -const wxChar *wxTextCtrlWindowNameStr = T("textWindow"); -const wxChar *wxTextCtrlNameStr = T("text"); -const wxChar *wxVirtListBoxNameStr = T("virtListBox"); -const wxChar *wxButtonBarNameStr = T("buttonbar"); -const wxChar *wxEnhDialogNameStr = T("Shell"); -const wxChar *wxToolBarNameStr = T("toolbar"); -const wxChar *wxStatusLineNameStr = T("status_line"); -const wxChar *wxEmptyString = T(""); -const wxChar *wxGetTextFromUserPromptStr = T("Input Text"); -const wxChar *wxMessageBoxCaptionStr = T("Message"); -const wxChar *wxFileSelectorPromptStr = T("Select a file"); -const wxChar *wxFileSelectorDefaultWildcardStr = T("*.*"); -const wxChar *wxInternalErrorStr = T("wxWindows Internal Error"); -const wxChar *wxFatalErrorStr = T("wxWindows Fatal Error"); -const wxChar *wxTreeCtrlNameStr = T("treeCtrl"); -const wxChar *wxDirDialogNameStr = T("wxDirCtrl"); -const wxChar *wxDirDialogDefaultFolderStr = T("/"); +const wxChar *wxButtonNameStr = wxT("button"); +const wxChar *wxCanvasNameStr = wxT("canvas"); +const wxChar *wxCheckBoxNameStr = wxT("check"); +const wxChar *wxChoiceNameStr = wxT("choice"); +const wxChar *wxComboBoxNameStr = wxT("comboBox"); +const wxChar *wxDialogNameStr = wxT("dialog"); +const wxChar *wxFrameNameStr = wxT("frame"); +const wxChar *wxGaugeNameStr = wxT("gauge"); +const wxChar *wxStaticBoxNameStr = wxT("groupBox"); +const wxChar *wxListBoxNameStr = wxT("listBox"); +const wxChar *wxStaticTextNameStr = wxT("message"); +const wxChar *wxStaticBitmapNameStr = wxT("message"); +const wxChar *wxMultiTextNameStr = wxT("multitext"); +const wxChar *wxPanelNameStr = wxT("panel"); +const wxChar *wxRadioBoxNameStr = wxT("radioBox"); +const wxChar *wxRadioButtonNameStr = wxT("radioButton"); +const wxChar *wxBitmapRadioButtonNameStr = wxT("radioButton"); +const wxChar *wxScrollBarNameStr = wxT("scrollBar"); +const wxChar *wxSliderNameStr = wxT("slider"); +const wxChar *wxStaticNameStr = wxT("static"); +const wxChar *wxTextCtrlWindowNameStr = wxT("textWindow"); +const wxChar *wxTextCtrlNameStr = wxT("text"); +const wxChar *wxVirtListBoxNameStr = wxT("virtListBox"); +const wxChar *wxButtonBarNameStr = wxT("buttonbar"); +const wxChar *wxEnhDialogNameStr = wxT("Shell"); +const wxChar *wxToolBarNameStr = wxT("toolbar"); +const wxChar *wxStatusLineNameStr = wxT("status_line"); +const wxChar *wxEmptyString = wxT(""); +const wxChar *wxGetTextFromUserPromptStr = wxT("Input Text"); +const wxChar *wxMessageBoxCaptionStr = wxT("Message"); +const wxChar *wxFileSelectorPromptStr = wxT("Select a file"); +const wxChar *wxFileSelectorDefaultWildcardStr = wxT("*.*"); +const wxChar *wxInternalErrorStr = wxT("wxWindows Internal Error"); +const wxChar *wxFatalErrorStr = wxT("wxWindows Fatal Error"); +const wxChar *wxTreeCtrlNameStr = wxT("treeCtrl"); +const wxChar *wxDirDialogNameStr = wxT("wxDirCtrl"); +const wxChar *wxDirDialogDefaultFolderStr = wxT("/"); // See wx/utils.h -const wxChar *wxFloatToStringStr = T("%.2f"); -const wxChar *wxDoubleToStringStr = T("%.2f"); +const wxChar *wxFloatToStringStr = wxT("%.2f"); +const wxChar *wxDoubleToStringStr = wxT("%.2f"); #ifdef __WXMSW__ -const wxChar *wxUserResourceStr = T("TEXT"); +const wxChar *wxUserResourceStr = wxT("TEXT"); #endif #if wxUSE_SHARED_LIBRARY diff --git a/src/os2/dcclient.cpp b/src/os2/dcclient.cpp index 0a0226b279..c32978beb7 100644 --- a/src/os2/dcclient.cpp +++ b/src/os2/dcclient.cpp @@ -203,12 +203,12 @@ wxPaintDC::wxPaintDC() wxPaintDC::wxPaintDC(wxWindow *canvas) { - wxCHECK_RET( canvas, T("NULL canvas in wxPaintDC ctor") ); + wxCHECK_RET( canvas, wxT("NULL canvas in wxPaintDC ctor") ); #ifdef __WXDEBUG__ if ( g_isPainting <= 0 ) { - wxFAIL_MSG( T("wxPaintDC may be created only in EVT_PAINT handler!") ); + wxFAIL_MSG( wxT("wxPaintDC may be created only in EVT_PAINT handler!") ); return; } @@ -240,7 +240,7 @@ wxPaintDC::~wxPaintDC() size_t index; wxPaintDCInfo *info = FindInCache(&index); - wxCHECK_RET( info, T("existing DC should have a cache entry") ); + wxCHECK_RET( info, wxT("existing DC should have a cache entry") ); if ( !--info->count ) { diff --git a/src/os2/dcprint.cpp b/src/os2/dcprint.cpp index 8367bb3940..aa26aac871 100644 --- a/src/os2/dcprint.cpp +++ b/src/os2/dcprint.cpp @@ -52,7 +52,7 @@ wxPrinterDC::wxPrinterDC(const wxString& driver_name, const wxString& device_nam m_isInteractive = interactive; - if (!file.IsNull() && file != T("")) + if (!file.IsNull() && file != wxT("")) m_printData.SetFilename(file); /* @@ -90,9 +90,9 @@ wxPrinterDC::wxPrinterDC(const wxString& driver_name, const wxString& device_nam else #endif */ - if ((!driver_name.IsNull() && driver_name != T("")) && - (!device_name.IsNull() && device_name != T("")) && - (!file.IsNull() && file != T(""))) + if ((!driver_name.IsNull() && driver_name != wxT("")) && + (!device_name.IsNull() && device_name != wxT("")) && + (!file.IsNull() && file != wxT(""))) { m_hDC = (WXHDC) ::DevOpenDC( hab ,OD_QUEUED @@ -199,7 +199,7 @@ bool wxPrinterDC::StartDoc(const wxString& message) if (ret <= 0) { DWORD lastError = GetLastError(); - wxLogDebug(T("wxDC::StartDoc failed with error: %d\n"), lastError); + wxLogDebug(wxT("wxDC::StartDoc failed with error: %d\n"), lastError); } #endif return (ret > 0); @@ -278,7 +278,7 @@ static bool wxGetDefaultDeviceName(wxString& deviceName, wxString& portName) GlobalFree(pd.hDevMode); pd.hDevMode=NULL; } - return ( deviceName != T("") ); + return ( deviceName != wxT("") ); */ return(TRUE); } @@ -297,7 +297,7 @@ WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& printDataConst) wxChar* deviceName; wxChar* portName = (wxChar*) NULL; // Obsolete in WIN32 - if (devNameStr == T("")) + if (devNameStr == wxT("")) deviceName = (wxChar*) NULL; else deviceName = WXSTRINGCAST devNameStr; @@ -309,13 +309,13 @@ WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& printDataConst) if ( hDevMode ) lpDevMode = (DEVMODE*) GlobalLock(hDevMode); - if (devNameStr == T("")) + if (devNameStr == wxT("")) { // Retrieve the default device name wxString portName; bool ret = wxGetDefaultDeviceName(devNameStr, portName); - wxASSERT_MSG( ret, T("Could not get default device name.") ); + wxASSERT_MSG( ret, wxT("Could not get default device name.") ); deviceName = WXSTRINGCAST devNameStr; } diff --git a/src/os2/dialog.cpp b/src/os2/dialog.cpp index fe94c51472..90afc50400 100644 --- a/src/os2/dialog.cpp +++ b/src/os2/dialog.cpp @@ -116,11 +116,11 @@ bool wxDialog::Create(wxWindow *parent, wxWindowID id, // otherwise it would look too strange) // const wxChar *dlg; // if ( style & wxRESIZE_BORDER ) -// dlg = T("wxResizeableDialog"); +// dlg = wxT("wxResizeableDialog"); // else if ( style & wxCAPTION ) -// dlg = T("wxCaptionDialog"); +// dlg = wxT("wxCaptionDialog"); // else -// dlg = T("wxNoCaptionDialog"); +// dlg = wxT("wxNoCaptionDialog"); // MSWCreate(m_windowId, parent, NULL, this, NULL, // x, y, width, height, // 0, // style is not used if we have dlg template @@ -131,7 +131,7 @@ bool wxDialog::Create(wxWindow *parent, wxWindowID id, // // if ( !hwnd ) // { -// wxLogError(T("Failed to create dialog.")); +// wxLogError(wxT("Failed to create dialog.")); // // return FALSE; // } diff --git a/src/os2/font.cpp b/src/os2/font.cpp index 1564ebd8af..c205ca28bb 100644 --- a/src/os2/font.cpp +++ b/src/os2/font.cpp @@ -193,7 +193,7 @@ bool wxFont::RealizeResource() { // VZ: the old code returned FALSE in this case, but it doesn't seem // to make sense because the font _was_ created - wxLogDebug(T("Calling wxFont::RealizeResource() twice")); + wxLogDebug(wxT("Calling wxFont::RealizeResource() twice")); return TRUE; } @@ -207,7 +207,7 @@ bool wxFont::RealizeResource() { case wxSCRIPT: // ff_family = FF_SCRIPT ; - ff_face = T("Script") ; + ff_face = wxT("Script") ; break ; case wxDECORATIVE: @@ -216,24 +216,24 @@ bool wxFont::RealizeResource() case wxROMAN: // ff_family = FF_ROMAN; - ff_face = T("Times New Roman") ; + ff_face = wxT("Times New Roman") ; break; case wxTELETYPE: case wxMODERN: // ff_family = FF_MODERN; - ff_face = T("Courier New") ; + ff_face = wxT("Courier New") ; break; case wxSWISS: // ff_family = FF_SWISS; - ff_face = T("Arial") ; + ff_face = wxT("Arial") ; break; case wxDEFAULT: default: // ff_family = FF_SWISS; - ff_face = T("Arial") ; + ff_face = wxT("Arial") ; } BYTE ff_italic; @@ -245,7 +245,7 @@ bool wxFont::RealizeResource() break; default: - wxFAIL_MSG(T("unknown font slant")); + wxFAIL_MSG(wxT("unknown font slant")); // fall through case wxNORMAL: @@ -256,7 +256,7 @@ bool wxFont::RealizeResource() switch ( M_FONTDATA->m_weight ) { default: - wxFAIL_MSG(T("unknown font weight")); + wxFAIL_MSG(wxT("unknown font weight")); // fall through case wxNORMAL: @@ -378,7 +378,7 @@ bool wxFont::RealizeResource() break; default: - wxFAIL_MSG(T("unsupported encoding")); + wxFAIL_MSG(wxT("unsupported encoding")); // fall through case wxFONTENCODING_SYSTEM: diff --git a/src/os2/frame.cpp b/src/os2/frame.cpp index ec935b6d24..25ff00e438 100644 --- a/src/os2/frame.cpp +++ b/src/os2/frame.cpp @@ -339,7 +339,7 @@ wxStatusBar* wxFrame::CreateStatusBar(int number, long style, wxWindowID id, { // VZ: calling CreateStatusBar twice is an error - why anyone would do it? wxCHECK_MSG( m_frameStatusBar == NULL, FALSE, - T("recreating status bar in wxFrame") ); + wxT("recreating status bar in wxFrame") ); m_frameStatusBar = OnCreateStatusBar(number, style, id, name); @@ -354,14 +354,14 @@ wxStatusBar* wxFrame::CreateStatusBar(int number, long style, wxWindowID id, void wxFrame::SetStatusText(const wxString& text, int number) { - wxCHECK_RET( m_frameStatusBar != NULL, T("no statusbar to set text for") ); + wxCHECK_RET( m_frameStatusBar != NULL, wxT("no statusbar to set text for") ); m_frameStatusBar->SetStatusText(text, number); } void wxFrame::SetStatusWidths(int n, const int widths_field[]) { - wxCHECK_RET( m_frameStatusBar != NULL, T("no statusbar to set widths for") ); + wxCHECK_RET( m_frameStatusBar != NULL, wxT("no statusbar to set widths for") ); m_frameStatusBar->SetStatusWidths(n, widths_field); PositionStatusBar(); @@ -401,7 +401,7 @@ void wxFrame::SetMenuBar(wxMenuBar *menu_bar) return; } -// Fix this in wxMenuBar wxCHECK_RET( !menu_bar->GetFrame(), T("this menubar is already attached") ); +// Fix this in wxMenuBar wxCHECK_RET( !menu_bar->GetFrame(), wxT("this menubar is already attached") ); if (m_frameMenuBar) delete m_frameMenuBar; @@ -711,7 +711,7 @@ void wxFrame::ClientToScreen(int *x, int *y) const wxToolBar* wxFrame::CreateToolBar(long style, wxWindowID id, const wxString& name) { wxCHECK_MSG( m_frameToolBar == NULL, FALSE, - T("recreating toolbar in wxFrame") ); + wxT("recreating toolbar in wxFrame") ); wxToolBar* toolBar = OnCreateToolBar(style, id, name); if (toolBar) diff --git a/src/os2/gauge.cpp b/src/os2/gauge.cpp index 8ce4c3e013..89d6f45340 100644 --- a/src/os2/gauge.cpp +++ b/src/os2/gauge.cpp @@ -99,7 +99,7 @@ bool wxGauge::Create(wxWindow *parent, wxWindowID id, msFlags |= ZYZGS_3D; HWND wx_button = - CreateWindowEx(MakeExtendedStyle(m_windowStyle), T("zYzGauge"), NULL, msFlags, + CreateWindowEx(MakeExtendedStyle(m_windowStyle), wxT("zYzGauge"), NULL, msFlags, 0, 0, 0, 0, (HWND) parent->GetHWND(), (HMENU)m_windowId, wxGetInstance(), NULL); @@ -636,7 +636,7 @@ bool wxGauge::SetBackgroundColour(const wxColour& col) /* static global variables */ -//static wxChar gszzYzGaugeClass[] = T("zYzGauge"); +//static wxChar gszzYzGaugeClass[] = wxT("zYzGauge"); /* window word position definitions */ @@ -748,7 +748,7 @@ bool wxGauge::SetBackgroundColour(const wxColour& col) /* Get a DC to determine whether device is mono or not, and set * default foreground/background colors as appropriate. */ -// hdc = CreateIC(T("DISPLAY"), NULL, NULL, 0L) ; +// hdc = CreateIC(wxT("DISPLAY"), NULL, NULL, 0L) ; // if (hdc) // { /* check for mono-display */ @@ -903,7 +903,7 @@ bool wxGauge::SetBackgroundColour(const wxColour& col) // hFont = (HFONT) SelectObject(hdc, pgauge->hFont); /* build up a string to blit out--ie the meaning of life: "42%" */ -// wsprintf(ach, T("%3d%%"), (WORD)((DWORD)iPos * 100 / iRange)); +// wsprintf(ach, wxT("%3d%%"), (WORD)((DWORD)iPos * 100 / iRange)); /* Win32s has no GetTextExtent(); let's try GetTextExtentPoint() instead */ //#if defined(__WIN32__) // GetTextExtentPoint(hdc, ach, wGomerX = lstrlen(ach), &size); diff --git a/src/os2/menuitem.cpp b/src/os2/menuitem.cpp index bd2f876a38..38d31737e7 100644 --- a/src/os2/menuitem.cpp +++ b/src/os2/menuitem.cpp @@ -93,4 +93,3 @@ void wxMenuItem::Check(bool bDoCheck) // TODO m_bChecked = bDoCheck; } -} \ No newline at end of file diff --git a/src/os2/window.cpp b/src/os2/window.cpp index 2277fcb09a..3372ee7028 100644 --- a/src/os2/window.cpp +++ b/src/os2/window.cpp @@ -151,7 +151,7 @@ bool wxWindow::Create(wxWindow *parent, wxWindowID id, long style, const wxString& name) { - wxCHECK_MSG( parent, FALSE, T("can't create wxWindow without parent") ); + wxCHECK_MSG( parent, FALSE, wxT("can't create wxWindow without parent") ); if ( !CreateBase(parent, id, pos, size, style, wxDefaultValidator, name) ) return FALSE; @@ -174,7 +174,7 @@ wxWindow::~wxWindow() if (m_hWnd) { if(!WinDestroyWindow(GetHWND())) - wxLogLastError(T("DestroyWindow")); + wxLogLastError(wxT("DestroyWindow")); // remove hWnd <-> wxWindow association wxRemoveHandleAssociation(this); } @@ -509,12 +509,12 @@ void wxWindow::PMDetachWindowMenu() int chars = (int)WinSendMsg(hMenu, MM_QUERYITEMTEXT, MPFROM2SHORT(i, N), buf); if ( !chars ) { - wxLogLastError(T("GetMenuString")); + wxLogLastError(wxT("GetMenuString")); continue; } - if ( wxStrcmp(buf, T("&Window")) == 0 ) + if ( wxStrcmp(buf, wxT("&Window")) == 0 ) { WinSendMsg(hMenu, MM_DELETEITEM, MPFROM2SHORT(i, TRUE), 0); break; @@ -528,7 +528,7 @@ void wxAssociateWinWithHandle(HWND hWnd, wxWindow *win) // adding NULL hWnd is (first) surely a result of an error and // (secondly) breaks menu command processing wxCHECK_RET( hWnd != (HWND)NULL, - T("attempt to add a NULL hWnd to window list ignored") ); + wxT("attempt to add a NULL hWnd to window list ignored") ); if ( !wxWinHandleList->Find((long)hWnd) ) wxWinHandleList->Append((long)hWnd, win); @@ -549,12 +549,12 @@ void wxRemoveHandleAssociation(wxWindow *win) void wxWindow::SubclassWin(WXHWND hWnd) { - wxASSERT_MSG( !m_oldWndProc, T("subclassing window twice?") ); + wxASSERT_MSG( !m_oldWndProc, wxT("subclassing window twice?") ); HWND hwnd = (HWND)hWnd; /* * TODO: implement something like this: -* wxCHECK_RET( ::IsWindow(hwnd), T("invalid HWND in SubclassWin") ); +* wxCHECK_RET( ::IsWindow(hwnd), wxT("invalid HWND in SubclassWin") ); * * wxAssociateWinWithHandle(hwnd, this); * @@ -576,7 +576,7 @@ void wxWindow::UnsubclassWin() { m_hWnd = 0; - wxCHECK_RET( ::IsWindow(hwnd), T("invalid HWND in UnsubclassWin") ); + wxCHECK_RET( ::IsWindow(hwnd), wxT("invalid HWND in UnsubclassWin") ); FARPROC farProc = (FARPROC) GetWindowLong(hwnd, GWL_WNDPROC); if ( (m_oldWndProc != 0) && (farProc != (FARPROC) m_oldWndProc) ) diff --git a/src/png/makefile.b32 b/src/png/makefile.b32 index 6e23194470..39f20aa402 100644 --- a/src/png/makefile.b32 +++ b/src/png/makefile.b32 @@ -17,4 +17,3 @@ OBJECTS = png.obj pngread.obj pngrtran.obj pngrutil.obj \ pngpread.obj pngtrans.obj pngwrite.obj pngwtran.obj pngwutil.obj \ pngerror.obj pngmem.obj pngwio.obj pngrio.obj pngget.obj pngset.obj -!include $(WXWIN)\src\makelib.b32 \ No newline at end of file diff --git a/src/stubs/menuitem.cpp b/src/stubs/menuitem.cpp index bd2f876a38..38d31737e7 100644 --- a/src/stubs/menuitem.cpp +++ b/src/stubs/menuitem.cpp @@ -93,4 +93,3 @@ void wxMenuItem::Check(bool bDoCheck) // TODO m_bChecked = bDoCheck; } -} \ No newline at end of file diff --git a/src/unix/threadpsx.cpp b/src/unix/threadpsx.cpp index 701bf1eb1d..8fc3c664e1 100644 --- a/src/unix/threadpsx.cpp +++ b/src/unix/threadpsx.cpp @@ -109,7 +109,7 @@ wxMutex::wxMutex() wxMutex::~wxMutex() { if (m_locked > 0) - wxLogDebug(T("Freeing a locked mutex (%d locks)"), m_locked); + wxLogDebug(wxT("Freeing a locked mutex (%d locks)"), m_locked); pthread_mutex_destroy( &(p_internal->p_mutex) ); delete p_internal; @@ -120,7 +120,7 @@ wxMutexError wxMutex::Lock() int err = pthread_mutex_lock( &(p_internal->p_mutex) ); if (err == EDEADLK) { - wxLogDebug(T("Locking this mutex would lead to deadlock!")); + wxLogDebug(wxT("Locking this mutex would lead to deadlock!")); return wxMUTEX_DEAD_LOCK; } @@ -156,7 +156,7 @@ wxMutexError wxMutex::Unlock() } else { - wxLogDebug(T("Unlocking not locked mutex.")); + wxLogDebug(wxT("Unlocking not locked mutex.")); return wxMUTEX_UNLOCKED; } @@ -320,7 +320,7 @@ void *wxThreadInternal::PthreadStart(void *ptr) // terminate the thread thread->Exit(status); - wxFAIL_MSG(T("wxThread::Exit() can't return.")); + wxFAIL_MSG(wxT("wxThread::Exit() can't return.")); return NULL; } @@ -391,7 +391,7 @@ wxThreadInternal::~wxThreadInternal() wxThreadError wxThreadInternal::Run() { wxCHECK_MSG( GetState() == STATE_NEW, wxTHREAD_RUNNING, - T("thread may only be started once after successful Create()") ); + wxT("thread may only be started once after successful Create()") ); // the mutex was locked on Create(), so we will be able to lock it again // only when the thread really starts executing and enters the wait - @@ -410,7 +410,7 @@ wxThreadError wxThreadInternal::Run() void wxThreadInternal::Wait() { - wxCHECK_RET( WasCancelled(), T("thread should have been cancelled first") ); + wxCHECK_RET( WasCancelled(), wxT("thread should have been cancelled first") ); // if the thread we're waiting for is waiting for the GUI mutex, we will // deadlock so make sure we release it temporarily @@ -454,7 +454,7 @@ void wxThreadInternal::Pause() // the state is set from the thread which pauses us first, this function // is called later so the state should have been already set wxCHECK_RET( m_state == STATE_PAUSED, - T("thread must first be paused with wxThread::Pause().") ); + wxT("thread must first be paused with wxThread::Pause().") ); // don't pause the thread which is being terminated - this would lead to // deadlock if the thread is paused after Delete() had called Resume() but @@ -469,7 +469,7 @@ void wxThreadInternal::Pause() void wxThreadInternal::Resume() { wxCHECK_RET( m_state == STATE_PAUSED, - T("can't resume thread which is not suspended.") ); + wxT("can't resume thread which is not suspended.") ); // we will be able to lock this mutex only when Pause() starts waiting wxMutexLocker lock(m_mutexSuspend); @@ -581,7 +581,7 @@ wxThreadError wxThread::Create() wxThreadError wxThread::Run() { wxCHECK_MSG( p_internal->GetId(), wxTHREAD_MISC_ERROR, - T("must call wxThread::Create() first") ); + wxT("must call wxThread::Create() first") ); return p_internal->Run(); } @@ -594,7 +594,7 @@ void wxThread::SetPriority(unsigned int prio) { wxCHECK_RET( ((int)WXTHREAD_MIN_PRIORITY <= (int)prio) && ((int)prio <= (int)WXTHREAD_MAX_PRIORITY), - T("invalid thread priority") ); + wxT("invalid thread priority") ); wxCriticalSectionLocker lock(m_critsect); @@ -623,7 +623,7 @@ void wxThread::SetPriority(unsigned int prio) case STATE_EXITED: default: - wxFAIL_MSG(T("impossible to set thread priority in this state")); + wxFAIL_MSG(wxT("impossible to set thread priority in this state")); } } @@ -649,7 +649,7 @@ wxThreadError wxThread::Pause() if ( p_internal->GetState() != STATE_RUNNING ) { - wxLogDebug(T("Can't pause thread which is not running.")); + wxLogDebug(wxT("Can't pause thread which is not running.")); return wxTHREAD_NOT_RUNNING; } @@ -673,7 +673,7 @@ wxThreadError wxThread::Resume() } else { - wxLogDebug(T("Attempt to resume a thread which is not paused.")); + wxLogDebug(wxT("Attempt to resume a thread which is not paused.")); return wxTHREAD_MISC_ERROR; } @@ -786,7 +786,7 @@ wxThread::~wxThread() if ( p_internal->GetState() != STATE_EXITED && p_internal->GetState() != STATE_NEW ) { - wxLogDebug(T("The thread is being destroyed although it is still " + wxLogDebug(wxT("The thread is being destroyed although it is still " "running! The application may crash.")); } @@ -869,12 +869,12 @@ bool wxThreadModule::OnInit() void wxThreadModule::OnExit() { - wxASSERT_MSG( wxThread::IsMain(), T("only main thread can be here") ); + wxASSERT_MSG( wxThread::IsMain(), wxT("only main thread can be here") ); // terminate any threads left size_t count = gs_allThreads.GetCount(); if ( count != 0u ) - wxLogDebug(T("Some threads were not terminated by the application.")); + wxLogDebug(wxT("Some threads were not terminated by the application.")); for ( size_t n = 0u; n < count; n++ ) { diff --git a/src/unix/utilsunx.cpp b/src/unix/utilsunx.cpp index 57d3977889..e031c31654 100644 --- a/src/unix/utilsunx.cpp +++ b/src/unix/utilsunx.cpp @@ -130,31 +130,31 @@ int wxKill(long pid, wxSignal sig) long wxExecute( const wxString& command, bool sync, wxProcess *process ) { - wxCHECK_MSG( !command.IsEmpty(), 0, T("can't exec empty command") ); + wxCHECK_MSG( !command.IsEmpty(), 0, wxT("can't exec empty command") ); int argc = 0; wxChar *argv[WXEXECUTE_NARGS]; wxString argument; const wxChar *cptr = command.c_str(); - wxChar quotechar = T('\0'); // is arg quoted? + wxChar quotechar = wxT('\0'); // is arg quoted? bool escaped = FALSE; // split the command line in arguments do { - argument=T(""); - quotechar = T('\0'); + argument=wxT(""); + quotechar = wxT('\0'); // eat leading whitespace: while ( wxIsspace(*cptr) ) cptr++; - if ( *cptr == T('\'') || *cptr == T('"') ) + if ( *cptr == wxT('\'') || *cptr == wxT('"') ) quotechar = *cptr++; do { - if ( *cptr == T('\\') && ! escaped ) + if ( *cptr == wxT('\\') && ! escaped ) { escaped = TRUE; cptr++; @@ -167,11 +167,11 @@ long wxExecute( const wxString& command, bool sync, wxProcess *process ) // have we reached the end of the argument? if ( (*cptr == quotechar && ! escaped) - || (quotechar == T('\0') && wxIsspace(*cptr)) - || *cptr == T('\0') ) + || (quotechar == wxT('\0') && wxIsspace(*cptr)) + || *cptr == wxT('\0') ) { wxASSERT_MSG( argc < WXEXECUTE_NARGS, - T("too many arguments in wxExecute") ); + wxT("too many arguments in wxExecute") ); argv[argc] = new wxChar[argument.length() + 1]; wxStrcpy(argv[argc], argument.c_str()); @@ -202,7 +202,7 @@ bool wxShell(const wxString& command) { wxString cmd; if ( !!command ) - cmd.Printf(T("xterm -e %s"), command.c_str()); + cmd.Printf(wxT("xterm -e %s"), command.c_str()); else cmd = command; @@ -247,7 +247,7 @@ void wxHandleProcessTermination(wxEndProcessData *proc_data) long wxExecute( wxChar **argv, bool sync, wxProcess *process ) { - wxCHECK_MSG( *argv, 0, T("can't exec empty command") ); + wxCHECK_MSG( *argv, 0, wxT("can't exec empty command") ); #if wxUSE_UNICODE int mb_argc = 0; @@ -355,7 +355,7 @@ long wxExecute( wxChar **argv, bool sync, wxProcess *process ) if ( sync ) { - wxASSERT_MSG( !process, T("wxProcess param ignored for sync exec") ); + wxASSERT_MSG( !process, wxT("wxProcess param ignored for sync exec") ); data->process = NULL; // sync execution: indicate it by negating the pid @@ -382,7 +382,7 @@ long wxExecute( wxChar **argv, bool sync, wxProcess *process ) return pid; } #else // !wxUSE_GUI - wxASSERT_MSG( sync, T("async execution not supported yet") ); + wxASSERT_MSG( sync, wxT("async execution not supported yet") ); int exitcode = 0; if ( waitpid(pid, &exitcode, 0) == -1 || !WIFEXITED(exitcode) ) @@ -405,7 +405,7 @@ const wxChar* wxGetHomeDir( wxString *home ) { *home = wxGetUserHome( wxString() ); if ( home->IsEmpty() ) - *home = T("/"); + *home = wxT("/"); return home->c_str(); } @@ -422,11 +422,11 @@ char *wxGetUserHome( const wxString &user ) { wxChar *ptr; - if ((ptr = wxGetenv(T("HOME"))) != NULL) + if ((ptr = wxGetenv(wxT("HOME"))) != NULL) { return ptr; } - if ((ptr = wxGetenv(T("USER"))) != NULL || (ptr = wxGetenv(T("LOGNAME"))) != NULL) + if ((ptr = wxGetenv(wxT("USER"))) != NULL || (ptr = wxGetenv(wxT("LOGNAME"))) != NULL) { who = getpwnam(wxConvertWX2MB(ptr)); } @@ -454,9 +454,9 @@ char *wxGetUserHome( const wxString &user ) // private use only) static bool wxGetHostNameInternal(wxChar *buf, int sz) { - wxCHECK_MSG( buf, FALSE, T("NULL pointer in wxGetHostNameInternal") ); + wxCHECK_MSG( buf, FALSE, wxT("NULL pointer in wxGetHostNameInternal") ); - *buf = T('\0'); + *buf = wxT('\0'); // we're using uname() which is POSIX instead of less standard sysinfo() #if defined(HAVE_UNAME) @@ -465,12 +465,12 @@ static bool wxGetHostNameInternal(wxChar *buf, int sz) if ( ok ) { wxStrncpy(buf, wxConvertMB2WX(uts.nodename), sz - 1); - buf[sz] = T('\0'); + buf[sz] = wxT('\0'); } #elif defined(HAVE_GETHOSTNAME) bool ok = gethostname(buf, sz) != -1; #else // no uname, no gethostname - wxFAIL_MSG(T("don't know host name for this machine")); + wxFAIL_MSG(wxT("don't know host name for this machine")); bool ok = FALSE; #endif // uname/gethostname @@ -491,11 +491,11 @@ bool wxGetHostName(wxChar *buf, int sz) { // BSD systems return the FQDN, we only want the hostname, so extract // it (we consider that dots are domain separators) - wxChar *dot = wxStrchr(buf, T('.')); + wxChar *dot = wxStrchr(buf, wxT('.')); if ( dot ) { // nuke it - *dot = T('\0'); + *dot = wxT('\0'); } } @@ -508,7 +508,7 @@ bool wxGetFullHostName(wxChar *buf, int sz) if ( ok ) { - if ( !wxStrchr(buf, T('.')) ) + if ( !wxStrchr(buf, wxT('.')) ) { struct hostent *host = gethostbyname(wxConvertWX2MB(buf)); if ( !host ) @@ -533,7 +533,7 @@ bool wxGetUserId(wxChar *buf, int sz) { struct passwd *who; - *buf = T('\0'); + *buf = wxT('\0'); if ((who = getpwuid(getuid ())) != NULL) { wxStrncpy (buf, wxConvertMB2WX(who->pw_name), sz - 1); @@ -548,7 +548,7 @@ bool wxGetUserName(wxChar *buf, int sz) struct passwd *who; char *comma; - *buf = T('\0'); + *buf = wxT('\0'); if ((who = getpwuid (getuid ())) != NULL) { comma = strchr(who->pw_gecos, ','); if (comma) @@ -578,17 +578,17 @@ void wxDebugMsg( const char *format, ... ) void wxError( const wxString &msg, const wxString &title ) { wxFprintf( stderr, _("Error ") ); - if (!title.IsNull()) wxFprintf( stderr, T("%s "), WXSTRINGCAST(title) ); - if (!msg.IsNull()) wxFprintf( stderr, T(": %s"), WXSTRINGCAST(msg) ); - wxFprintf( stderr, T(".\n") ); + if (!title.IsNull()) wxFprintf( stderr, wxT("%s "), WXSTRINGCAST(title) ); + if (!msg.IsNull()) wxFprintf( stderr, wxT(": %s"), WXSTRINGCAST(msg) ); + wxFprintf( stderr, wxT(".\n") ); } void wxFatalError( const wxString &msg, const wxString &title ) { wxFprintf( stderr, _("Error ") ); - if (!title.IsNull()) wxFprintf( stderr, T("%s "), WXSTRINGCAST(title) ); - if (!msg.IsNull()) wxFprintf( stderr, T(": %s"), WXSTRINGCAST(msg) ); - wxFprintf( stderr, T(".\n") ); + if (!title.IsNull()) wxFprintf( stderr, wxT("%s "), WXSTRINGCAST(title) ); + if (!msg.IsNull()) wxFprintf( stderr, wxT(": %s"), WXSTRINGCAST(msg) ); + wxFprintf( stderr, wxT(".\n") ); exit(3); // the same exit code as for abort() } @@ -652,19 +652,19 @@ static wxNativeFont wxLoadQueryFont(int pointSize, wxString xfamily; switch (family) { - case wxDECORATIVE: xfamily = T("lucida"); break; - case wxROMAN: xfamily = T("times"); break; - case wxMODERN: xfamily = T("courier"); break; - case wxSWISS: xfamily = T("helvetica"); break; - case wxTELETYPE: xfamily = T("lucidatypewriter"); break; - case wxSCRIPT: xfamily = T("utopia"); break; - default: xfamily = T("*"); + case wxDECORATIVE: xfamily = wxT("lucida"); break; + case wxROMAN: xfamily = wxT("times"); break; + case wxMODERN: xfamily = wxT("courier"); break; + case wxSWISS: xfamily = wxT("helvetica"); break; + case wxTELETYPE: xfamily = wxT("lucidatypewriter"); break; + case wxSCRIPT: xfamily = wxT("utopia"); break; + default: xfamily = wxT("*"); } wxString fontSpec; if (!facename.IsEmpty()) { - fontSpec.Printf(T("-*-%s-*-*-normal-*-*-*-*-*-*-*-*-*"), + fontSpec.Printf(wxT("-*-%s-*-*-normal-*-*-*-*-*-*-*-*-*"), facename.c_str()); if ( wxTestFontSpec(fontSpec) ) @@ -677,19 +677,19 @@ static wxNativeFont wxLoadQueryFont(int pointSize, wxString xstyle; switch (style) { - case wxITALIC: xstyle = T("i"); break; - case wxSLANT: xstyle = T("o"); break; - case wxNORMAL: xstyle = T("r"); break; - default: xstyle = T("*"); break; + case wxITALIC: xstyle = wxT("i"); break; + case wxSLANT: xstyle = wxT("o"); break; + case wxNORMAL: xstyle = wxT("r"); break; + default: xstyle = wxT("*"); break; } wxString xweight; switch (weight) { - case wxBOLD: xweight = T("bold"); break; + case wxBOLD: xweight = wxT("bold"); break; case wxLIGHT: - case wxNORMAL: xweight = T("medium"); break; - default: xweight = T("*"); break; + case wxNORMAL: xweight = wxT("medium"); break; + default: xweight = wxT("*"); break; } wxString xregistry, xencoding; @@ -718,23 +718,23 @@ static wxNativeFont wxLoadQueryFont(int pointSize, case wxFONTENCODING_ISO8859_15: { int cp = encoding - wxFONTENCODING_ISO8859_1 + 1; - xregistry = T("iso8859"); - xencoding.Printf(T("%d"), cp); + xregistry = wxT("iso8859"); + xencoding.Printf(wxT("%d"), cp); } break; case wxFONTENCODING_KOI8: - xregistry = T("koi8"); - if ( wxTestFontSpec(T("-*-*-*-*-*-*-*-*-*-*-*-*-koi8-1")) ) + xregistry = wxT("koi8"); + if ( wxTestFontSpec(wxT("-*-*-*-*-*-*-*-*-*-*-*-*-koi8-1")) ) { - xencoding = T("1"); + xencoding = wxT("1"); // test passed, no need to do it once more test = FALSE; } else { - xencoding = T("*"); + xencoding = wxT("*"); } break; @@ -743,12 +743,12 @@ static wxNativeFont wxLoadQueryFont(int pointSize, case wxFONTENCODING_CP1252: { int cp = encoding - wxFONTENCODING_CP1250 + 1250; - fontSpec.Printf(T("-*-*-*-*-*-*-*-*-*-*-*-*-microsoft-cp%d"), + fontSpec.Printf(wxT("-*-*-*-*-*-*-*-*-*-*-*-*-microsoft-cp%d"), cp); if ( wxTestFontSpec(fontSpec) ) { - xregistry = T("microsoft"); - xencoding.Printf(T("cp%d"), cp); + xregistry = wxT("microsoft"); + xencoding.Printf(wxT("cp%d"), cp); // test passed, no need to do it once more test = FALSE; @@ -756,8 +756,8 @@ static wxNativeFont wxLoadQueryFont(int pointSize, else { // fall back to LatinX - xregistry = T("iso8859"); - xencoding.Printf(T("%d"), cp - 1249); + xregistry = wxT("iso8859"); + xencoding.Printf(wxT("%d"), cp - 1249); } } break; @@ -766,23 +766,23 @@ static wxNativeFont wxLoadQueryFont(int pointSize, default: test = FALSE; xregistry = - xencoding = T("*"); + xencoding = wxT("*"); } if ( test ) { - fontSpec.Printf(T("-*-*-*-*-*-*-*-*-*-*-*-*-%s-%s"), + fontSpec.Printf(wxT("-*-*-*-*-*-*-*-*-*-*-*-*-%s-%s"), xregistry.c_str(), xencoding.c_str()); if ( !wxTestFontSpec(fontSpec) ) { // this encoding isn't available - what to do? xregistry = - xencoding = T("*"); + xencoding = wxT("*"); } } // construct the X font spec from our data - fontSpec.Printf(T("-*-%s-%s-%s-normal-*-*-%d-*-*-*-*-%s-%s"), + fontSpec.Printf(wxT("-*-%s-%s-%s-normal-*-*-%d-*-*-*-*-%s-%s"), xfamily.c_str(), xweight.c_str(), xstyle.c_str(), pointSize, xregistry.c_str(), xencoding.c_str()); -- 2.45.2