Added wxRichTextCtrl

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2005-10-19 12:52:47 +00:00
parent 65de19d80a
commit 5d7836c47d
63 changed files with 18991 additions and 1963 deletions

View File

@@ -2394,6 +2394,10 @@ COND_WXUNIV_0_ADVANCED_HDR = \
wx/tipdlg.h \ wx/tipdlg.h \
wx/wave.h \ wx/wave.h \
wx/wizard.h \ wx/wizard.h \
wx/richtext/richtextctrl.h \
wx/richtext/richtextbuffer.h \
wx/richtext/richtextstyles.h \
wx/richtext/richtextxml.h \
wx/datectrl.h \ wx/datectrl.h \
$(ADVANCED_PLATFORM_HDR) \ $(ADVANCED_PLATFORM_HDR) \
$(ADVANCED_PLATFORM_NATIVE_HDR) $(ADVANCED_PLATFORM_NATIVE_HDR)
@@ -2424,6 +2428,10 @@ COND_WXUNIV_1_ADVANCED_HDR = \
wx/tipdlg.h \ wx/tipdlg.h \
wx/wave.h \ wx/wave.h \
wx/wizard.h \ wx/wizard.h \
wx/richtext/richtextctrl.h \
wx/richtext/richtextbuffer.h \
wx/richtext/richtextstyles.h \
wx/richtext/richtextxml.h \
$(ADVANCED_PLATFORM_HDR) $(ADVANCED_PLATFORM_HDR)
@COND_WXUNIV_1@ADVANCED_HDR = $(COND_WXUNIV_1_ADVANCED_HDR) @COND_WXUNIV_1@ADVANCED_HDR = $(COND_WXUNIV_1_ADVANCED_HDR)
@COND_TOOLKIT_COCOA@MEDIA_PLATFORM_HDR = @COND_TOOLKIT_COCOA@MEDIA_PLATFORM_HDR =
@@ -4189,6 +4197,10 @@ COND_WXUNIV_0___ADVANCED_SRC_OBJECTS = \
monodll_splash.o \ monodll_splash.o \
monodll_tipdlg.o \ monodll_tipdlg.o \
monodll_wizard.o \ monodll_wizard.o \
monodll_richtextctrl.o \
monodll_richtextbuffer.o \
monodll_richtextstyles.o \
monodll_richtextxml.o \
$(__ADVANCED_PLATFORM_SRC_OBJECTS) \ $(__ADVANCED_PLATFORM_SRC_OBJECTS) \
$(__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS) $(__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS)
@COND_WXUNIV_0@__ADVANCED_SRC_OBJECTS = $(COND_WXUNIV_0___ADVANCED_SRC_OBJECTS) @COND_WXUNIV_0@__ADVANCED_SRC_OBJECTS = $(COND_WXUNIV_0___ADVANCED_SRC_OBJECTS)
@@ -4205,6 +4217,10 @@ COND_WXUNIV_1___ADVANCED_SRC_OBJECTS = \
monodll_splash.o \ monodll_splash.o \
monodll_tipdlg.o \ monodll_tipdlg.o \
monodll_wizard.o \ monodll_wizard.o \
monodll_richtextctrl.o \
monodll_richtextbuffer.o \
monodll_richtextstyles.o \
monodll_richtextxml.o \
$(__ADVANCED_PLATFORM_SRC_OBJECTS) $(__ADVANCED_PLATFORM_SRC_OBJECTS)
@COND_WXUNIV_1@__ADVANCED_SRC_OBJECTS = $(COND_WXUNIV_1___ADVANCED_SRC_OBJECTS) @COND_WXUNIV_1@__ADVANCED_SRC_OBJECTS = $(COND_WXUNIV_1___ADVANCED_SRC_OBJECTS)
@COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS \ @COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS \
@@ -5661,6 +5677,10 @@ COND_WXUNIV_0___ADVANCED_SRC_OBJECTS_1 = \
monolib_splash.o \ monolib_splash.o \
monolib_tipdlg.o \ monolib_tipdlg.o \
monolib_wizard.o \ monolib_wizard.o \
monolib_richtextctrl.o \
monolib_richtextbuffer.o \
monolib_richtextstyles.o \
monolib_richtextxml.o \
$(__ADVANCED_PLATFORM_SRC_OBJECTS_0) \ $(__ADVANCED_PLATFORM_SRC_OBJECTS_0) \
$(__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1) $(__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1)
@COND_WXUNIV_0@__ADVANCED_SRC_OBJECTS_1 = $(COND_WXUNIV_0___ADVANCED_SRC_OBJECTS_1) @COND_WXUNIV_0@__ADVANCED_SRC_OBJECTS_1 = $(COND_WXUNIV_0___ADVANCED_SRC_OBJECTS_1)
@@ -5677,6 +5697,10 @@ COND_WXUNIV_1___ADVANCED_SRC_OBJECTS_1 = \
monolib_splash.o \ monolib_splash.o \
monolib_tipdlg.o \ monolib_tipdlg.o \
monolib_wizard.o \ monolib_wizard.o \
monolib_richtextctrl.o \
monolib_richtextbuffer.o \
monolib_richtextstyles.o \
monolib_richtextxml.o \
$(__ADVANCED_PLATFORM_SRC_OBJECTS_0) $(__ADVANCED_PLATFORM_SRC_OBJECTS_0)
@COND_WXUNIV_1@__ADVANCED_SRC_OBJECTS_1 = $(COND_WXUNIV_1___ADVANCED_SRC_OBJECTS_1) @COND_WXUNIV_1@__ADVANCED_SRC_OBJECTS_1 = $(COND_WXUNIV_1___ADVANCED_SRC_OBJECTS_1)
@COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 \ @COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 \
@@ -8601,6 +8625,10 @@ COND_WXUNIV_0___ADVANCED_SRC_OBJECTS_2 = \
advdll_splash.o \ advdll_splash.o \
advdll_tipdlg.o \ advdll_tipdlg.o \
advdll_wizard.o \ advdll_wizard.o \
advdll_richtextctrl.o \
advdll_richtextbuffer.o \
advdll_richtextstyles.o \
advdll_richtextxml.o \
$(__ADVANCED_PLATFORM_SRC_OBJECTS_8) \ $(__ADVANCED_PLATFORM_SRC_OBJECTS_8) \
$(__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2) $(__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2)
@COND_WXUNIV_0@__ADVANCED_SRC_OBJECTS_2 = $(COND_WXUNIV_0___ADVANCED_SRC_OBJECTS_2) @COND_WXUNIV_0@__ADVANCED_SRC_OBJECTS_2 = $(COND_WXUNIV_0___ADVANCED_SRC_OBJECTS_2)
@@ -8617,6 +8645,10 @@ COND_WXUNIV_1___ADVANCED_SRC_OBJECTS_2 = \
advdll_splash.o \ advdll_splash.o \
advdll_tipdlg.o \ advdll_tipdlg.o \
advdll_wizard.o \ advdll_wizard.o \
advdll_richtextctrl.o \
advdll_richtextbuffer.o \
advdll_richtextstyles.o \
advdll_richtextxml.o \
$(__ADVANCED_PLATFORM_SRC_OBJECTS_8) $(__ADVANCED_PLATFORM_SRC_OBJECTS_8)
@COND_WXUNIV_1@__ADVANCED_SRC_OBJECTS_2 = $(COND_WXUNIV_1___ADVANCED_SRC_OBJECTS_2) @COND_WXUNIV_1@__ADVANCED_SRC_OBJECTS_2 = $(COND_WXUNIV_1___ADVANCED_SRC_OBJECTS_2)
@COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 \ @COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 \
@@ -8646,6 +8678,10 @@ COND_WXUNIV_0___ADVANCED_SRC_OBJECTS_3 = \
advlib_splash.o \ advlib_splash.o \
advlib_tipdlg.o \ advlib_tipdlg.o \
advlib_wizard.o \ advlib_wizard.o \
advlib_richtextctrl.o \
advlib_richtextbuffer.o \
advlib_richtextstyles.o \
advlib_richtextxml.o \
$(__ADVANCED_PLATFORM_SRC_OBJECTS_9) \ $(__ADVANCED_PLATFORM_SRC_OBJECTS_9) \
$(__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3) $(__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3)
@COND_WXUNIV_0@__ADVANCED_SRC_OBJECTS_3 = $(COND_WXUNIV_0___ADVANCED_SRC_OBJECTS_3) @COND_WXUNIV_0@__ADVANCED_SRC_OBJECTS_3 = $(COND_WXUNIV_0___ADVANCED_SRC_OBJECTS_3)
@@ -8662,6 +8698,10 @@ COND_WXUNIV_1___ADVANCED_SRC_OBJECTS_3 = \
advlib_splash.o \ advlib_splash.o \
advlib_tipdlg.o \ advlib_tipdlg.o \
advlib_wizard.o \ advlib_wizard.o \
advlib_richtextctrl.o \
advlib_richtextbuffer.o \
advlib_richtextstyles.o \
advlib_richtextxml.o \
$(__ADVANCED_PLATFORM_SRC_OBJECTS_9) $(__ADVANCED_PLATFORM_SRC_OBJECTS_9)
@COND_WXUNIV_1@__ADVANCED_SRC_OBJECTS_3 = $(COND_WXUNIV_1___ADVANCED_SRC_OBJECTS_3) @COND_WXUNIV_1@__ADVANCED_SRC_OBJECTS_3 = $(COND_WXUNIV_1___ADVANCED_SRC_OBJECTS_3)
@COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 \ @COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 \
@@ -13693,6 +13733,18 @@ monodll_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONODLL_ODEP)
@COND_USE_GUI_1@monodll_wizard.o: $(srcdir)/src/generic/wizard.cpp $(MONODLL_ODEP) @COND_USE_GUI_1@monodll_wizard.o: $(srcdir)/src/generic/wizard.cpp $(MONODLL_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/wizard.cpp @COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/wizard.cpp
@COND_USE_GUI_1@monodll_richtextctrl.o: $(srcdir)/src/richtext/richtextctrl.cpp $(MONODLL_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/richtext/richtextctrl.cpp
@COND_USE_GUI_1@monodll_richtextbuffer.o: $(srcdir)/src/richtext/richtextbuffer.cpp $(MONODLL_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/richtext/richtextbuffer.cpp
@COND_USE_GUI_1@monodll_richtextstyles.o: $(srcdir)/src/richtext/richtextstyles.cpp $(MONODLL_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/richtext/richtextstyles.cpp
@COND_USE_GUI_1@monodll_richtextxml.o: $(srcdir)/src/richtext/richtextxml.cpp $(MONODLL_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/richtext/richtextxml.cpp
@COND_TOOLKIT_MSW_USE_GUI_1@monodll_taskbarcmn.o: $(srcdir)/src/common/taskbarcmn.cpp $(MONODLL_ODEP) @COND_TOOLKIT_MSW_USE_GUI_1@monodll_taskbarcmn.o: $(srcdir)/src/common/taskbarcmn.cpp $(MONODLL_ODEP)
@COND_TOOLKIT_MSW_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/taskbarcmn.cpp @COND_TOOLKIT_MSW_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/taskbarcmn.cpp
@@ -17167,6 +17219,18 @@ monolib_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONOLIB_ODEP)
@COND_USE_GUI_1@monolib_wizard.o: $(srcdir)/src/generic/wizard.cpp $(MONOLIB_ODEP) @COND_USE_GUI_1@monolib_wizard.o: $(srcdir)/src/generic/wizard.cpp $(MONOLIB_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/wizard.cpp @COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/wizard.cpp
@COND_USE_GUI_1@monolib_richtextctrl.o: $(srcdir)/src/richtext/richtextctrl.cpp $(MONOLIB_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/richtext/richtextctrl.cpp
@COND_USE_GUI_1@monolib_richtextbuffer.o: $(srcdir)/src/richtext/richtextbuffer.cpp $(MONOLIB_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/richtext/richtextbuffer.cpp
@COND_USE_GUI_1@monolib_richtextstyles.o: $(srcdir)/src/richtext/richtextstyles.cpp $(MONOLIB_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/richtext/richtextstyles.cpp
@COND_USE_GUI_1@monolib_richtextxml.o: $(srcdir)/src/richtext/richtextxml.cpp $(MONOLIB_ODEP)
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/richtext/richtextxml.cpp
@COND_TOOLKIT_MSW_USE_GUI_1@monolib_taskbarcmn.o: $(srcdir)/src/common/taskbarcmn.cpp $(MONOLIB_ODEP) @COND_TOOLKIT_MSW_USE_GUI_1@monolib_taskbarcmn.o: $(srcdir)/src/common/taskbarcmn.cpp $(MONOLIB_ODEP)
@COND_TOOLKIT_MSW_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/taskbarcmn.cpp @COND_TOOLKIT_MSW_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/taskbarcmn.cpp
@@ -23554,6 +23618,18 @@ advdll_tipdlg.o: $(srcdir)/src/generic/tipdlg.cpp $(ADVDLL_ODEP)
advdll_wizard.o: $(srcdir)/src/generic/wizard.cpp $(ADVDLL_ODEP) advdll_wizard.o: $(srcdir)/src/generic/wizard.cpp $(ADVDLL_ODEP)
$(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/generic/wizard.cpp $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/generic/wizard.cpp
advdll_richtextctrl.o: $(srcdir)/src/richtext/richtextctrl.cpp $(ADVDLL_ODEP)
$(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/richtext/richtextctrl.cpp
advdll_richtextbuffer.o: $(srcdir)/src/richtext/richtextbuffer.cpp $(ADVDLL_ODEP)
$(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/richtext/richtextbuffer.cpp
advdll_richtextstyles.o: $(srcdir)/src/richtext/richtextstyles.cpp $(ADVDLL_ODEP)
$(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/richtext/richtextstyles.cpp
advdll_richtextxml.o: $(srcdir)/src/richtext/richtextxml.cpp $(ADVDLL_ODEP)
$(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/richtext/richtextxml.cpp
@COND_TOOLKIT_MSW@advdll_taskbarcmn.o: $(srcdir)/src/common/taskbarcmn.cpp $(ADVDLL_ODEP) @COND_TOOLKIT_MSW@advdll_taskbarcmn.o: $(srcdir)/src/common/taskbarcmn.cpp $(ADVDLL_ODEP)
@COND_TOOLKIT_MSW@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/common/taskbarcmn.cpp @COND_TOOLKIT_MSW@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/common/taskbarcmn.cpp
@@ -23692,6 +23768,18 @@ advlib_tipdlg.o: $(srcdir)/src/generic/tipdlg.cpp $(ADVLIB_ODEP)
advlib_wizard.o: $(srcdir)/src/generic/wizard.cpp $(ADVLIB_ODEP) advlib_wizard.o: $(srcdir)/src/generic/wizard.cpp $(ADVLIB_ODEP)
$(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/generic/wizard.cpp $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/generic/wizard.cpp
advlib_richtextctrl.o: $(srcdir)/src/richtext/richtextctrl.cpp $(ADVLIB_ODEP)
$(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/richtext/richtextctrl.cpp
advlib_richtextbuffer.o: $(srcdir)/src/richtext/richtextbuffer.cpp $(ADVLIB_ODEP)
$(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/richtext/richtextbuffer.cpp
advlib_richtextstyles.o: $(srcdir)/src/richtext/richtextstyles.cpp $(ADVLIB_ODEP)
$(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/richtext/richtextstyles.cpp
advlib_richtextxml.o: $(srcdir)/src/richtext/richtextxml.cpp $(ADVLIB_ODEP)
$(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/richtext/richtextxml.cpp
@COND_TOOLKIT_MSW@advlib_taskbarcmn.o: $(srcdir)/src/common/taskbarcmn.cpp $(ADVLIB_ODEP) @COND_TOOLKIT_MSW@advlib_taskbarcmn.o: $(srcdir)/src/common/taskbarcmn.cpp $(ADVLIB_ODEP)
@COND_TOOLKIT_MSW@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/common/taskbarcmn.cpp @COND_TOOLKIT_MSW@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/common/taskbarcmn.cpp
@@ -24392,6 +24480,7 @@ SRCDIR = $(WXDIR)/src
GENDIR = $(WXDIR)/src/generic GENDIR = $(WXDIR)/src/generic
COMMDIR = $(WXDIR)/src/common COMMDIR = $(WXDIR)/src/common
HTMLDIR = $(WXDIR)/src/html HTMLDIR = $(WXDIR)/src/html
RICHTEXTDIR = $(WXDIR)/src/richtext
UNIXDIR = $(WXDIR)/src/unix UNIXDIR = $(WXDIR)/src/unix
PNGDIR = $(WXDIR)/src/png PNGDIR = $(WXDIR)/src/png
JPEGDIR = $(WXDIR)/src/jpeg JPEGDIR = $(WXDIR)/src/jpeg
@@ -24534,6 +24623,7 @@ ALL_GUI_DIST: ALL_DIST
mkdir $(DISTDIR)/include/wx/$(TOOLKITDIR) mkdir $(DISTDIR)/include/wx/$(TOOLKITDIR)
mkdir $(DISTDIR)/include/wx/generic mkdir $(DISTDIR)/include/wx/generic
mkdir $(DISTDIR)/include/wx/html mkdir $(DISTDIR)/include/wx/html
mkdir $(DISTDIR)/include/wx/richtext
mkdir $(DISTDIR)/include/wx/protocol mkdir $(DISTDIR)/include/wx/protocol
mkdir $(DISTDIR)/include/wx/unix mkdir $(DISTDIR)/include/wx/unix
mkdir $(DISTDIR)/include/wx/xml mkdir $(DISTDIR)/include/wx/xml
@@ -24542,6 +24632,7 @@ ALL_GUI_DIST: ALL_DIST
ln -sf $(INCDIR)/wx/*.cpp $(DISTDIR)/include/wx ln -sf $(INCDIR)/wx/*.cpp $(DISTDIR)/include/wx
ln -sf $(INCDIR)/wx/generic/*.h $(DISTDIR)/include/wx/generic ln -sf $(INCDIR)/wx/generic/*.h $(DISTDIR)/include/wx/generic
ln -sf $(INCDIR)/wx/html/*.h $(DISTDIR)/include/wx/html ln -sf $(INCDIR)/wx/html/*.h $(DISTDIR)/include/wx/html
ln -sf $(INCDIR)/wx/richtext/*.h $(DISTDIR)/include/wx/richtext
ln -sf $(INCDIR)/wx/unix/*.h $(DISTDIR)/include/wx/unix ln -sf $(INCDIR)/wx/unix/*.h $(DISTDIR)/include/wx/unix
ln -sf $(INCDIR)/wx/xml/*.h $(DISTDIR)/include/wx/xml ln -sf $(INCDIR)/wx/xml/*.h $(DISTDIR)/include/wx/xml
ln -sf $(INCDIR)/wx/xrc/*.h $(DISTDIR)/include/wx/xrc ln -sf $(INCDIR)/wx/xrc/*.h $(DISTDIR)/include/wx/xrc
@@ -24554,6 +24645,7 @@ ALL_GUI_DIST: ALL_DIST
ln -sf $(WXDIR)/art/motif/*.xpm $(DISTDIR)/art/motif ln -sf $(WXDIR)/art/motif/*.xpm $(DISTDIR)/art/motif
mkdir $(DISTDIR)/src/generic mkdir $(DISTDIR)/src/generic
mkdir $(DISTDIR)/src/html mkdir $(DISTDIR)/src/html
mkdir $(DISTDIR)/src/richtext
mkdir $(DISTDIR)/src/$(TOOLKITDIR) mkdir $(DISTDIR)/src/$(TOOLKITDIR)
mkdir $(DISTDIR)/src/png mkdir $(DISTDIR)/src/png
mkdir $(DISTDIR)/src/jpeg mkdir $(DISTDIR)/src/jpeg
@@ -24570,6 +24662,7 @@ ALL_GUI_DIST: ALL_DIST
ln -sf $(GENDIR)/*.cpp $(DISTDIR)/src/generic ln -sf $(GENDIR)/*.cpp $(DISTDIR)/src/generic
ln -sf $(GENDIR)/*.mms $(DISTDIR)/src/generic ln -sf $(GENDIR)/*.mms $(DISTDIR)/src/generic
ln -sf $(HTMLDIR)/*.cpp $(DISTDIR)/src/html ln -sf $(HTMLDIR)/*.cpp $(DISTDIR)/src/html
ln -sf $(RICHTEXTDIR)/*.cpp $(DISTDIR)/src/richtext
ln -sf $(PNGDIR)/*.h $(DISTDIR)/src/png ln -sf $(PNGDIR)/*.h $(DISTDIR)/src/png
ln -sf $(PNGDIR)/*.c $(DISTDIR)/src/png ln -sf $(PNGDIR)/*.c $(DISTDIR)/src/png
ln -sf $(PNGDIR)/README $(DISTDIR)/src/png ln -sf $(PNGDIR)/README $(DISTDIR)/src/png
@@ -24595,6 +24688,7 @@ BASE_DIST: ALL_DIST
mkdir $(DISTDIR)/include/wx/msdos mkdir $(DISTDIR)/include/wx/msdos
mkdir $(DISTDIR)/include/wx/msw mkdir $(DISTDIR)/include/wx/msw
mkdir $(DISTDIR)/include/wx/html mkdir $(DISTDIR)/include/wx/html
mkdir $(DISTDIR)/include/wx/richtext
mkdir $(DISTDIR)/src/unix mkdir $(DISTDIR)/src/unix
mkdir $(DISTDIR)/src/msdos mkdir $(DISTDIR)/src/msdos
mkdir $(DISTDIR)/src/msw mkdir $(DISTDIR)/src/msw
@@ -25227,6 +25321,16 @@ SAMPLES_DIST: ALL_GUI_DIST
ln -sf $(SAMPDIR)/richedit/README $(DISTDIR)/samples/richedit ln -sf $(SAMPDIR)/richedit/README $(DISTDIR)/samples/richedit
ln -sf $(SAMPDIR)/richedit/TODO $(DISTDIR)/samples/richedit ln -sf $(SAMPDIR)/richedit/TODO $(DISTDIR)/samples/richedit
mkdir $(DISTDIR)/samples/richtext
mkdir $(DISTDIR)/samples/richtext/bitmaps
ln -sf $(SAMPDIR)/richtext/Makefile.in $(DISTDIR)/samples/richtext
ln -sf $(SAMPDIR)/richtext/makefile.unx $(DISTDIR)/samples/richtext
ln -sf $(SAMPDIR)/richtext/*.cpp $(DISTDIR)/samples/richtext
ln -sf $(SAMPDIR)/richtext/*.h $(DISTDIR)/samples/richtext
ln -sf $(SAMPDIR)/richtext/bitmaps/*.xpm $(DISTDIR)/samples/richtext/bitmaps
ln -sf $(SAMPDIR)/richtext/readme.txt $(DISTDIR)/samples/richtext
ln -sf $(SAMPDIR)/richtext/todo.txt $(DISTDIR)/samples/richtext
mkdir $(DISTDIR)/samples/propsize mkdir $(DISTDIR)/samples/propsize
ln -sf $(SAMPDIR)/propsize/Makefile.in $(DISTDIR)/samples/propsize ln -sf $(SAMPDIR)/propsize/Makefile.in $(DISTDIR)/samples/propsize
ln -sf $(SAMPDIR)/propsize/makefile.unx $(DISTDIR)/samples/propsize ln -sf $(SAMPDIR)/propsize/makefile.unx $(DISTDIR)/samples/propsize

File diff suppressed because one or more lines are too long

View File

@@ -2346,6 +2346,10 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
src/generic/splash.cpp src/generic/splash.cpp
src/generic/tipdlg.cpp src/generic/tipdlg.cpp
src/generic/wizard.cpp src/generic/wizard.cpp
src/richtext/richtextctrl.cpp
src/richtext/richtextbuffer.cpp
src/richtext/richtextstyles.cpp
src/richtext/richtextxml.cpp
</set> </set>
<set var="ADVANCED_CMN_HDR" hints="files"> <set var="ADVANCED_CMN_HDR" hints="files">
@@ -2374,6 +2378,10 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
wx/tipdlg.h wx/tipdlg.h
wx/wave.h wx/wave.h
wx/wizard.h wx/wizard.h
wx/richtext/richtextctrl.h
wx/richtext/richtextbuffer.h
wx/richtext/richtextstyles.h
wx/richtext/richtextxml.h
</set> </set>
<set var="ADVANCED_CMN_NATIVE_HDR" hints="files"> <set var="ADVANCED_CMN_NATIVE_HDR" hints="files">

View File

@@ -13,6 +13,7 @@ SRCDIR = $(WXDIR)/src
GENDIR = $(WXDIR)/src/generic GENDIR = $(WXDIR)/src/generic
COMMDIR = $(WXDIR)/src/common COMMDIR = $(WXDIR)/src/common
HTMLDIR = $(WXDIR)/src/html HTMLDIR = $(WXDIR)/src/html
RICHTEXTDIR = $(WXDIR)/src/richtext
UNIXDIR = $(WXDIR)/src/unix UNIXDIR = $(WXDIR)/src/unix
PNGDIR = $(WXDIR)/src/png PNGDIR = $(WXDIR)/src/png
JPEGDIR = $(WXDIR)/src/jpeg JPEGDIR = $(WXDIR)/src/jpeg
@@ -155,6 +156,7 @@ ALL_GUI_DIST: ALL_DIST
mkdir $(DISTDIR)/include/wx/$(TOOLKITDIR) mkdir $(DISTDIR)/include/wx/$(TOOLKITDIR)
mkdir $(DISTDIR)/include/wx/generic mkdir $(DISTDIR)/include/wx/generic
mkdir $(DISTDIR)/include/wx/html mkdir $(DISTDIR)/include/wx/html
mkdir $(DISTDIR)/include/wx/richtext
mkdir $(DISTDIR)/include/wx/protocol mkdir $(DISTDIR)/include/wx/protocol
mkdir $(DISTDIR)/include/wx/unix mkdir $(DISTDIR)/include/wx/unix
mkdir $(DISTDIR)/include/wx/xml mkdir $(DISTDIR)/include/wx/xml
@@ -163,6 +165,7 @@ ALL_GUI_DIST: ALL_DIST
ln -sf $(INCDIR)/wx/*.cpp $(DISTDIR)/include/wx ln -sf $(INCDIR)/wx/*.cpp $(DISTDIR)/include/wx
ln -sf $(INCDIR)/wx/generic/*.h $(DISTDIR)/include/wx/generic ln -sf $(INCDIR)/wx/generic/*.h $(DISTDIR)/include/wx/generic
ln -sf $(INCDIR)/wx/html/*.h $(DISTDIR)/include/wx/html ln -sf $(INCDIR)/wx/html/*.h $(DISTDIR)/include/wx/html
ln -sf $(INCDIR)/wx/richtext/*.h $(DISTDIR)/include/wx/richtext
ln -sf $(INCDIR)/wx/unix/*.h $(DISTDIR)/include/wx/unix ln -sf $(INCDIR)/wx/unix/*.h $(DISTDIR)/include/wx/unix
ln -sf $(INCDIR)/wx/xml/*.h $(DISTDIR)/include/wx/xml ln -sf $(INCDIR)/wx/xml/*.h $(DISTDIR)/include/wx/xml
ln -sf $(INCDIR)/wx/xrc/*.h $(DISTDIR)/include/wx/xrc ln -sf $(INCDIR)/wx/xrc/*.h $(DISTDIR)/include/wx/xrc
@@ -175,6 +178,7 @@ ALL_GUI_DIST: ALL_DIST
ln -sf $(WXDIR)/art/motif/*.xpm $(DISTDIR)/art/motif ln -sf $(WXDIR)/art/motif/*.xpm $(DISTDIR)/art/motif
mkdir $(DISTDIR)/src/generic mkdir $(DISTDIR)/src/generic
mkdir $(DISTDIR)/src/html mkdir $(DISTDIR)/src/html
mkdir $(DISTDIR)/src/richtext
mkdir $(DISTDIR)/src/$(TOOLKITDIR) mkdir $(DISTDIR)/src/$(TOOLKITDIR)
mkdir $(DISTDIR)/src/png mkdir $(DISTDIR)/src/png
mkdir $(DISTDIR)/src/jpeg mkdir $(DISTDIR)/src/jpeg
@@ -191,6 +195,7 @@ ALL_GUI_DIST: ALL_DIST
ln -sf $(GENDIR)/*.cpp $(DISTDIR)/src/generic ln -sf $(GENDIR)/*.cpp $(DISTDIR)/src/generic
ln -sf $(GENDIR)/*.mms $(DISTDIR)/src/generic ln -sf $(GENDIR)/*.mms $(DISTDIR)/src/generic
ln -sf $(HTMLDIR)/*.cpp $(DISTDIR)/src/html ln -sf $(HTMLDIR)/*.cpp $(DISTDIR)/src/html
ln -sf $(RICHTEXTDIR)/*.cpp $(DISTDIR)/src/richtext
ln -sf $(PNGDIR)/*.h $(DISTDIR)/src/png ln -sf $(PNGDIR)/*.h $(DISTDIR)/src/png
ln -sf $(PNGDIR)/*.c $(DISTDIR)/src/png ln -sf $(PNGDIR)/*.c $(DISTDIR)/src/png
ln -sf $(PNGDIR)/README $(DISTDIR)/src/png ln -sf $(PNGDIR)/README $(DISTDIR)/src/png
@@ -216,6 +221,7 @@ BASE_DIST: ALL_DIST
mkdir $(DISTDIR)/include/wx/msdos mkdir $(DISTDIR)/include/wx/msdos
mkdir $(DISTDIR)/include/wx/msw mkdir $(DISTDIR)/include/wx/msw
mkdir $(DISTDIR)/include/wx/html mkdir $(DISTDIR)/include/wx/html
mkdir $(DISTDIR)/include/wx/richtext
mkdir $(DISTDIR)/src/unix mkdir $(DISTDIR)/src/unix
mkdir $(DISTDIR)/src/msdos mkdir $(DISTDIR)/src/msdos
mkdir $(DISTDIR)/src/msw mkdir $(DISTDIR)/src/msw
@@ -848,6 +854,16 @@ SAMPLES_DIST: ALL_GUI_DIST
ln -sf $(SAMPDIR)/richedit/README $(DISTDIR)/samples/richedit ln -sf $(SAMPDIR)/richedit/README $(DISTDIR)/samples/richedit
ln -sf $(SAMPDIR)/richedit/TODO $(DISTDIR)/samples/richedit ln -sf $(SAMPDIR)/richedit/TODO $(DISTDIR)/samples/richedit
mkdir $(DISTDIR)/samples/richtext
mkdir $(DISTDIR)/samples/richtext/bitmaps
ln -sf $(SAMPDIR)/richtext/Makefile.in $(DISTDIR)/samples/richtext
ln -sf $(SAMPDIR)/richtext/makefile.unx $(DISTDIR)/samples/richtext
ln -sf $(SAMPDIR)/richtext/*.cpp $(DISTDIR)/samples/richtext
ln -sf $(SAMPDIR)/richtext/*.h $(DISTDIR)/samples/richtext
ln -sf $(SAMPDIR)/richtext/bitmaps/*.xpm $(DISTDIR)/samples/richtext/bitmaps
ln -sf $(SAMPDIR)/richtext/readme.txt $(DISTDIR)/samples/richtext
ln -sf $(SAMPDIR)/richtext/todo.txt $(DISTDIR)/samples/richtext
mkdir $(DISTDIR)/samples/propsize mkdir $(DISTDIR)/samples/propsize
ln -sf $(SAMPDIR)/propsize/Makefile.in $(DISTDIR)/samples/propsize ln -sf $(SAMPDIR)/propsize/Makefile.in $(DISTDIR)/samples/propsize
ln -sf $(SAMPDIR)/propsize/makefile.unx $(DISTDIR)/samples/propsize ln -sf $(SAMPDIR)/propsize/makefile.unx $(DISTDIR)/samples/propsize

View File

@@ -1535,6 +1535,10 @@ ____ADVANCED_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_splash.obj \ $(OBJS)\monodll_splash.obj \
$(OBJS)\monodll_tipdlg.obj \ $(OBJS)\monodll_tipdlg.obj \
$(OBJS)\monodll_wizard.obj \ $(OBJS)\monodll_wizard.obj \
$(OBJS)\monodll_richtextctrl.obj \
$(OBJS)\monodll_richtextbuffer.obj \
$(OBJS)\monodll_richtextstyles.obj \
$(OBJS)\monodll_richtextxml.obj \
$(OBJS)\monodll_taskbarcmn.obj \ $(OBJS)\monodll_taskbarcmn.obj \
$(OBJS)\monodll_sound.obj \ $(OBJS)\monodll_sound.obj \
$(OBJS)\monodll_taskbar.obj \ $(OBJS)\monodll_taskbar.obj \
@@ -1555,6 +1559,10 @@ ____ADVANCED_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_splash.obj \ $(OBJS)\monodll_splash.obj \
$(OBJS)\monodll_tipdlg.obj \ $(OBJS)\monodll_tipdlg.obj \
$(OBJS)\monodll_wizard.obj \ $(OBJS)\monodll_wizard.obj \
$(OBJS)\monodll_richtextctrl.obj \
$(OBJS)\monodll_richtextbuffer.obj \
$(OBJS)\monodll_richtextstyles.obj \
$(OBJS)\monodll_richtextxml.obj \
$(OBJS)\monodll_taskbarcmn.obj \ $(OBJS)\monodll_taskbarcmn.obj \
$(OBJS)\monodll_sound.obj \ $(OBJS)\monodll_sound.obj \
$(OBJS)\monodll_taskbar.obj \ $(OBJS)\monodll_taskbar.obj \
@@ -2050,6 +2058,10 @@ ____ADVANCED_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_splash.obj \ $(OBJS)\monolib_splash.obj \
$(OBJS)\monolib_tipdlg.obj \ $(OBJS)\monolib_tipdlg.obj \
$(OBJS)\monolib_wizard.obj \ $(OBJS)\monolib_wizard.obj \
$(OBJS)\monolib_richtextctrl.obj \
$(OBJS)\monolib_richtextbuffer.obj \
$(OBJS)\monolib_richtextstyles.obj \
$(OBJS)\monolib_richtextxml.obj \
$(OBJS)\monolib_taskbarcmn.obj \ $(OBJS)\monolib_taskbarcmn.obj \
$(OBJS)\monolib_sound.obj \ $(OBJS)\monolib_sound.obj \
$(OBJS)\monolib_taskbar.obj \ $(OBJS)\monolib_taskbar.obj \
@@ -2070,6 +2082,10 @@ ____ADVANCED_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_splash.obj \ $(OBJS)\monolib_splash.obj \
$(OBJS)\monolib_tipdlg.obj \ $(OBJS)\monolib_tipdlg.obj \
$(OBJS)\monolib_wizard.obj \ $(OBJS)\monolib_wizard.obj \
$(OBJS)\monolib_richtextctrl.obj \
$(OBJS)\monolib_richtextbuffer.obj \
$(OBJS)\monolib_richtextstyles.obj \
$(OBJS)\monolib_richtextxml.obj \
$(OBJS)\monolib_taskbarcmn.obj \ $(OBJS)\monolib_taskbarcmn.obj \
$(OBJS)\monolib_sound.obj \ $(OBJS)\monolib_sound.obj \
$(OBJS)\monolib_taskbar.obj \ $(OBJS)\monolib_taskbar.obj \
@@ -2903,6 +2919,10 @@ ____ADVANCED_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\advdll_splash.obj \ $(OBJS)\advdll_splash.obj \
$(OBJS)\advdll_tipdlg.obj \ $(OBJS)\advdll_tipdlg.obj \
$(OBJS)\advdll_wizard.obj \ $(OBJS)\advdll_wizard.obj \
$(OBJS)\advdll_richtextctrl.obj \
$(OBJS)\advdll_richtextbuffer.obj \
$(OBJS)\advdll_richtextstyles.obj \
$(OBJS)\advdll_richtextxml.obj \
$(OBJS)\advdll_taskbarcmn.obj \ $(OBJS)\advdll_taskbarcmn.obj \
$(OBJS)\advdll_sound.obj \ $(OBJS)\advdll_sound.obj \
$(OBJS)\advdll_taskbar.obj \ $(OBJS)\advdll_taskbar.obj \
@@ -2923,6 +2943,10 @@ ____ADVANCED_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\advdll_splash.obj \ $(OBJS)\advdll_splash.obj \
$(OBJS)\advdll_tipdlg.obj \ $(OBJS)\advdll_tipdlg.obj \
$(OBJS)\advdll_wizard.obj \ $(OBJS)\advdll_wizard.obj \
$(OBJS)\advdll_richtextctrl.obj \
$(OBJS)\advdll_richtextbuffer.obj \
$(OBJS)\advdll_richtextstyles.obj \
$(OBJS)\advdll_richtextxml.obj \
$(OBJS)\advdll_taskbarcmn.obj \ $(OBJS)\advdll_taskbarcmn.obj \
$(OBJS)\advdll_sound.obj \ $(OBJS)\advdll_sound.obj \
$(OBJS)\advdll_taskbar.obj \ $(OBJS)\advdll_taskbar.obj \
@@ -2946,6 +2970,10 @@ ____ADVANCED_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\advlib_splash.obj \ $(OBJS)\advlib_splash.obj \
$(OBJS)\advlib_tipdlg.obj \ $(OBJS)\advlib_tipdlg.obj \
$(OBJS)\advlib_wizard.obj \ $(OBJS)\advlib_wizard.obj \
$(OBJS)\advlib_richtextctrl.obj \
$(OBJS)\advlib_richtextbuffer.obj \
$(OBJS)\advlib_richtextstyles.obj \
$(OBJS)\advlib_richtextxml.obj \
$(OBJS)\advlib_taskbarcmn.obj \ $(OBJS)\advlib_taskbarcmn.obj \
$(OBJS)\advlib_sound.obj \ $(OBJS)\advlib_sound.obj \
$(OBJS)\advlib_taskbar.obj \ $(OBJS)\advlib_taskbar.obj \
@@ -2966,6 +2994,10 @@ ____ADVANCED_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\advlib_splash.obj \ $(OBJS)\advlib_splash.obj \
$(OBJS)\advlib_tipdlg.obj \ $(OBJS)\advlib_tipdlg.obj \
$(OBJS)\advlib_wizard.obj \ $(OBJS)\advlib_wizard.obj \
$(OBJS)\advlib_richtextctrl.obj \
$(OBJS)\advlib_richtextbuffer.obj \
$(OBJS)\advlib_richtextstyles.obj \
$(OBJS)\advlib_richtextxml.obj \
$(OBJS)\advlib_taskbarcmn.obj \ $(OBJS)\advlib_taskbarcmn.obj \
$(OBJS)\advlib_sound.obj \ $(OBJS)\advlib_sound.obj \
$(OBJS)\advlib_taskbar.obj \ $(OBJS)\advlib_taskbar.obj \
@@ -5618,6 +5650,26 @@ $(OBJS)\monodll_wizard.obj: ..\..\src\generic\wizard.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $** $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
!endif !endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_richtextctrl.obj: ..\..\src\richtext\richtextctrl.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_richtextbuffer.obj: ..\..\src\richtext\richtextbuffer.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_richtextstyles.obj: ..\..\src\richtext\richtextstyles.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_richtextxml.obj: ..\..\src\richtext\richtextxml.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1" !if "$(USE_GUI)" == "1"
$(OBJS)\monodll_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp $(OBJS)\monodll_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $** $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
@@ -7314,6 +7366,26 @@ $(OBJS)\monolib_wizard.obj: ..\..\src\generic\wizard.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $** $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
!endif !endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_richtextctrl.obj: ..\..\src\richtext\richtextctrl.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_richtextbuffer.obj: ..\..\src\richtext\richtextbuffer.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_richtextstyles.obj: ..\..\src\richtext\richtextstyles.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_richtextxml.obj: ..\..\src\richtext\richtextxml.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1" !if "$(USE_GUI)" == "1"
$(OBJS)\monolib_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp $(OBJS)\monolib_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $** $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
@@ -10212,6 +10284,18 @@ $(OBJS)\advdll_tipdlg.obj: ..\..\src\generic\tipdlg.cpp
$(OBJS)\advdll_wizard.obj: ..\..\src\generic\wizard.cpp $(OBJS)\advdll_wizard.obj: ..\..\src\generic\wizard.cpp
$(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) $** $(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advdll_richtextctrl.obj: ..\..\src\richtext\richtextctrl.cpp
$(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advdll_richtextbuffer.obj: ..\..\src\richtext\richtextbuffer.cpp
$(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advdll_richtextstyles.obj: ..\..\src\richtext\richtextstyles.cpp
$(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advdll_richtextxml.obj: ..\..\src\richtext\richtextxml.cpp
$(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advdll_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp $(OBJS)\advdll_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp
$(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) $** $(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) $**
@@ -10266,6 +10350,18 @@ $(OBJS)\advlib_tipdlg.obj: ..\..\src\generic\tipdlg.cpp
$(OBJS)\advlib_wizard.obj: ..\..\src\generic\wizard.cpp $(OBJS)\advlib_wizard.obj: ..\..\src\generic\wizard.cpp
$(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) $** $(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\advlib_richtextctrl.obj: ..\..\src\richtext\richtextctrl.cpp
$(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\advlib_richtextbuffer.obj: ..\..\src\richtext\richtextbuffer.cpp
$(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\advlib_richtextstyles.obj: ..\..\src\richtext\richtextstyles.cpp
$(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\advlib_richtextxml.obj: ..\..\src\richtext\richtextxml.cpp
$(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\advlib_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp $(OBJS)\advlib_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp
$(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) $** $(CXX) -q -c -P -o$@ $(ADVLIB_CXXFLAGS) $**

View File

@@ -1549,6 +1549,10 @@ ____ADVANCED_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_splash.o \ $(OBJS)\monodll_splash.o \
$(OBJS)\monodll_tipdlg.o \ $(OBJS)\monodll_tipdlg.o \
$(OBJS)\monodll_wizard.o \ $(OBJS)\monodll_wizard.o \
$(OBJS)\monodll_richtextctrl.o \
$(OBJS)\monodll_richtextbuffer.o \
$(OBJS)\monodll_richtextstyles.o \
$(OBJS)\monodll_richtextxml.o \
$(OBJS)\monodll_taskbarcmn.o \ $(OBJS)\monodll_taskbarcmn.o \
$(OBJS)\monodll_sound.o \ $(OBJS)\monodll_sound.o \
$(OBJS)\monodll_taskbar.o \ $(OBJS)\monodll_taskbar.o \
@@ -1569,6 +1573,10 @@ ____ADVANCED_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_splash.o \ $(OBJS)\monodll_splash.o \
$(OBJS)\monodll_tipdlg.o \ $(OBJS)\monodll_tipdlg.o \
$(OBJS)\monodll_wizard.o \ $(OBJS)\monodll_wizard.o \
$(OBJS)\monodll_richtextctrl.o \
$(OBJS)\monodll_richtextbuffer.o \
$(OBJS)\monodll_richtextstyles.o \
$(OBJS)\monodll_richtextxml.o \
$(OBJS)\monodll_taskbarcmn.o \ $(OBJS)\monodll_taskbarcmn.o \
$(OBJS)\monodll_sound.o \ $(OBJS)\monodll_sound.o \
$(OBJS)\monodll_taskbar.o \ $(OBJS)\monodll_taskbar.o \
@@ -2070,6 +2078,10 @@ ____ADVANCED_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_splash.o \ $(OBJS)\monolib_splash.o \
$(OBJS)\monolib_tipdlg.o \ $(OBJS)\monolib_tipdlg.o \
$(OBJS)\monolib_wizard.o \ $(OBJS)\monolib_wizard.o \
$(OBJS)\monolib_richtextctrl.o \
$(OBJS)\monolib_richtextbuffer.o \
$(OBJS)\monolib_richtextstyles.o \
$(OBJS)\monolib_richtextxml.o \
$(OBJS)\monolib_taskbarcmn.o \ $(OBJS)\monolib_taskbarcmn.o \
$(OBJS)\monolib_sound.o \ $(OBJS)\monolib_sound.o \
$(OBJS)\monolib_taskbar.o \ $(OBJS)\monolib_taskbar.o \
@@ -2090,6 +2102,10 @@ ____ADVANCED_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_splash.o \ $(OBJS)\monolib_splash.o \
$(OBJS)\monolib_tipdlg.o \ $(OBJS)\monolib_tipdlg.o \
$(OBJS)\monolib_wizard.o \ $(OBJS)\monolib_wizard.o \
$(OBJS)\monolib_richtextctrl.o \
$(OBJS)\monolib_richtextbuffer.o \
$(OBJS)\monolib_richtextstyles.o \
$(OBJS)\monolib_richtextxml.o \
$(OBJS)\monolib_taskbarcmn.o \ $(OBJS)\monolib_taskbarcmn.o \
$(OBJS)\monolib_sound.o \ $(OBJS)\monolib_sound.o \
$(OBJS)\monolib_taskbar.o \ $(OBJS)\monolib_taskbar.o \
@@ -2951,6 +2967,10 @@ ____ADVANCED_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\advdll_splash.o \ $(OBJS)\advdll_splash.o \
$(OBJS)\advdll_tipdlg.o \ $(OBJS)\advdll_tipdlg.o \
$(OBJS)\advdll_wizard.o \ $(OBJS)\advdll_wizard.o \
$(OBJS)\advdll_richtextctrl.o \
$(OBJS)\advdll_richtextbuffer.o \
$(OBJS)\advdll_richtextstyles.o \
$(OBJS)\advdll_richtextxml.o \
$(OBJS)\advdll_taskbarcmn.o \ $(OBJS)\advdll_taskbarcmn.o \
$(OBJS)\advdll_sound.o \ $(OBJS)\advdll_sound.o \
$(OBJS)\advdll_taskbar.o \ $(OBJS)\advdll_taskbar.o \
@@ -2971,6 +2991,10 @@ ____ADVANCED_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\advdll_splash.o \ $(OBJS)\advdll_splash.o \
$(OBJS)\advdll_tipdlg.o \ $(OBJS)\advdll_tipdlg.o \
$(OBJS)\advdll_wizard.o \ $(OBJS)\advdll_wizard.o \
$(OBJS)\advdll_richtextctrl.o \
$(OBJS)\advdll_richtextbuffer.o \
$(OBJS)\advdll_richtextstyles.o \
$(OBJS)\advdll_richtextxml.o \
$(OBJS)\advdll_taskbarcmn.o \ $(OBJS)\advdll_taskbarcmn.o \
$(OBJS)\advdll_sound.o \ $(OBJS)\advdll_sound.o \
$(OBJS)\advdll_taskbar.o \ $(OBJS)\advdll_taskbar.o \
@@ -2998,6 +3022,10 @@ ____ADVANCED_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\advlib_splash.o \ $(OBJS)\advlib_splash.o \
$(OBJS)\advlib_tipdlg.o \ $(OBJS)\advlib_tipdlg.o \
$(OBJS)\advlib_wizard.o \ $(OBJS)\advlib_wizard.o \
$(OBJS)\advlib_richtextctrl.o \
$(OBJS)\advlib_richtextbuffer.o \
$(OBJS)\advlib_richtextstyles.o \
$(OBJS)\advlib_richtextxml.o \
$(OBJS)\advlib_taskbarcmn.o \ $(OBJS)\advlib_taskbarcmn.o \
$(OBJS)\advlib_sound.o \ $(OBJS)\advlib_sound.o \
$(OBJS)\advlib_taskbar.o \ $(OBJS)\advlib_taskbar.o \
@@ -3018,6 +3046,10 @@ ____ADVANCED_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\advlib_splash.o \ $(OBJS)\advlib_splash.o \
$(OBJS)\advlib_tipdlg.o \ $(OBJS)\advlib_tipdlg.o \
$(OBJS)\advlib_wizard.o \ $(OBJS)\advlib_wizard.o \
$(OBJS)\advlib_richtextctrl.o \
$(OBJS)\advlib_richtextbuffer.o \
$(OBJS)\advlib_richtextstyles.o \
$(OBJS)\advlib_richtextxml.o \
$(OBJS)\advlib_taskbarcmn.o \ $(OBJS)\advlib_taskbarcmn.o \
$(OBJS)\advlib_sound.o \ $(OBJS)\advlib_sound.o \
$(OBJS)\advlib_taskbar.o \ $(OBJS)\advlib_taskbar.o \
@@ -5814,6 +5846,26 @@ $(OBJS)\monodll_wizard.o: ../../src/generic/wizard.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $< $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
endif endif
ifeq ($(USE_GUI),1)
$(OBJS)\monodll_richtextctrl.o: ../../src/richtext/richtextctrl.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monodll_richtextbuffer.o: ../../src/richtext/richtextbuffer.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monodll_richtextstyles.o: ../../src/richtext/richtextstyles.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monodll_richtextxml.o: ../../src/richtext/richtextxml.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1) ifeq ($(USE_GUI),1)
$(OBJS)\monodll_taskbarcmn.o: ../../src/common/taskbarcmn.cpp $(OBJS)\monodll_taskbarcmn.o: ../../src/common/taskbarcmn.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $< $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
@@ -7610,6 +7662,26 @@ $(OBJS)\monolib_wizard.o: ../../src/generic/wizard.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $< $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
endif endif
ifeq ($(USE_GUI),1)
$(OBJS)\monolib_richtextctrl.o: ../../src/richtext/richtextctrl.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monolib_richtextbuffer.o: ../../src/richtext/richtextbuffer.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monolib_richtextstyles.o: ../../src/richtext/richtextstyles.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monolib_richtextxml.o: ../../src/richtext/richtextxml.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1) ifeq ($(USE_GUI),1)
$(OBJS)\monolib_taskbarcmn.o: ../../src/common/taskbarcmn.cpp $(OBJS)\monolib_taskbarcmn.o: ../../src/common/taskbarcmn.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $< $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
@@ -10708,6 +10780,18 @@ $(OBJS)\advdll_tipdlg.o: ../../src/generic/tipdlg.cpp
$(OBJS)\advdll_wizard.o: ../../src/generic/wizard.cpp $(OBJS)\advdll_wizard.o: ../../src/generic/wizard.cpp
$(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $< $(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advdll_richtextctrl.o: ../../src/richtext/richtextctrl.cpp
$(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advdll_richtextbuffer.o: ../../src/richtext/richtextbuffer.cpp
$(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advdll_richtextstyles.o: ../../src/richtext/richtextstyles.cpp
$(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advdll_richtextxml.o: ../../src/richtext/richtextxml.cpp
$(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advdll_taskbarcmn.o: ../../src/common/taskbarcmn.cpp $(OBJS)\advdll_taskbarcmn.o: ../../src/common/taskbarcmn.cpp
$(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $< $(CXX) -c -o $@ $(ADVDLL_CXXFLAGS) $(CPPDEPS) $<
@@ -10762,6 +10846,18 @@ $(OBJS)\advlib_tipdlg.o: ../../src/generic/tipdlg.cpp
$(OBJS)\advlib_wizard.o: ../../src/generic/wizard.cpp $(OBJS)\advlib_wizard.o: ../../src/generic/wizard.cpp
$(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $< $(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advlib_richtextctrl.o: ../../src/richtext/richtextctrl.cpp
$(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advlib_richtextbuffer.o: ../../src/richtext/richtextbuffer.cpp
$(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advlib_richtextstyles.o: ../../src/richtext/richtextstyles.cpp
$(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advlib_richtextxml.o: ../../src/richtext/richtextxml.cpp
$(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\advlib_taskbarcmn.o: ../../src/common/taskbarcmn.cpp $(OBJS)\advlib_taskbarcmn.o: ../../src/common/taskbarcmn.cpp
$(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $< $(CXX) -c -o $@ $(ADVLIB_CXXFLAGS) $(CPPDEPS) $<

View File

@@ -1682,6 +1682,10 @@ ____ADVANCED_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_splash.obj \ $(OBJS)\monodll_splash.obj \
$(OBJS)\monodll_tipdlg.obj \ $(OBJS)\monodll_tipdlg.obj \
$(OBJS)\monodll_wizard.obj \ $(OBJS)\monodll_wizard.obj \
$(OBJS)\monodll_richtextctrl.obj \
$(OBJS)\monodll_richtextbuffer.obj \
$(OBJS)\monodll_richtextstyles.obj \
$(OBJS)\monodll_richtextxml.obj \
$(OBJS)\monodll_taskbarcmn.obj \ $(OBJS)\monodll_taskbarcmn.obj \
$(OBJS)\monodll_sound.obj \ $(OBJS)\monodll_sound.obj \
$(OBJS)\monodll_taskbar.obj \ $(OBJS)\monodll_taskbar.obj \
@@ -1702,6 +1706,10 @@ ____ADVANCED_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_splash.obj \ $(OBJS)\monodll_splash.obj \
$(OBJS)\monodll_tipdlg.obj \ $(OBJS)\monodll_tipdlg.obj \
$(OBJS)\monodll_wizard.obj \ $(OBJS)\monodll_wizard.obj \
$(OBJS)\monodll_richtextctrl.obj \
$(OBJS)\monodll_richtextbuffer.obj \
$(OBJS)\monodll_richtextstyles.obj \
$(OBJS)\monodll_richtextxml.obj \
$(OBJS)\monodll_taskbarcmn.obj \ $(OBJS)\monodll_taskbarcmn.obj \
$(OBJS)\monodll_sound.obj \ $(OBJS)\monodll_sound.obj \
$(OBJS)\monodll_taskbar.obj \ $(OBJS)\monodll_taskbar.obj \
@@ -2203,6 +2211,10 @@ ____ADVANCED_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_splash.obj \ $(OBJS)\monolib_splash.obj \
$(OBJS)\monolib_tipdlg.obj \ $(OBJS)\monolib_tipdlg.obj \
$(OBJS)\monolib_wizard.obj \ $(OBJS)\monolib_wizard.obj \
$(OBJS)\monolib_richtextctrl.obj \
$(OBJS)\monolib_richtextbuffer.obj \
$(OBJS)\monolib_richtextstyles.obj \
$(OBJS)\monolib_richtextxml.obj \
$(OBJS)\monolib_taskbarcmn.obj \ $(OBJS)\monolib_taskbarcmn.obj \
$(OBJS)\monolib_sound.obj \ $(OBJS)\monolib_sound.obj \
$(OBJS)\monolib_taskbar.obj \ $(OBJS)\monolib_taskbar.obj \
@@ -2223,6 +2235,10 @@ ____ADVANCED_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_splash.obj \ $(OBJS)\monolib_splash.obj \
$(OBJS)\monolib_tipdlg.obj \ $(OBJS)\monolib_tipdlg.obj \
$(OBJS)\monolib_wizard.obj \ $(OBJS)\monolib_wizard.obj \
$(OBJS)\monolib_richtextctrl.obj \
$(OBJS)\monolib_richtextbuffer.obj \
$(OBJS)\monolib_richtextstyles.obj \
$(OBJS)\monolib_richtextxml.obj \
$(OBJS)\monolib_taskbarcmn.obj \ $(OBJS)\monolib_taskbarcmn.obj \
$(OBJS)\monolib_sound.obj \ $(OBJS)\monolib_sound.obj \
$(OBJS)\monolib_taskbar.obj \ $(OBJS)\monolib_taskbar.obj \
@@ -3098,6 +3114,10 @@ ____ADVANCED_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\advdll_splash.obj \ $(OBJS)\advdll_splash.obj \
$(OBJS)\advdll_tipdlg.obj \ $(OBJS)\advdll_tipdlg.obj \
$(OBJS)\advdll_wizard.obj \ $(OBJS)\advdll_wizard.obj \
$(OBJS)\advdll_richtextctrl.obj \
$(OBJS)\advdll_richtextbuffer.obj \
$(OBJS)\advdll_richtextstyles.obj \
$(OBJS)\advdll_richtextxml.obj \
$(OBJS)\advdll_taskbarcmn.obj \ $(OBJS)\advdll_taskbarcmn.obj \
$(OBJS)\advdll_sound.obj \ $(OBJS)\advdll_sound.obj \
$(OBJS)\advdll_taskbar.obj \ $(OBJS)\advdll_taskbar.obj \
@@ -3118,6 +3138,10 @@ ____ADVANCED_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\advdll_splash.obj \ $(OBJS)\advdll_splash.obj \
$(OBJS)\advdll_tipdlg.obj \ $(OBJS)\advdll_tipdlg.obj \
$(OBJS)\advdll_wizard.obj \ $(OBJS)\advdll_wizard.obj \
$(OBJS)\advdll_richtextctrl.obj \
$(OBJS)\advdll_richtextbuffer.obj \
$(OBJS)\advdll_richtextstyles.obj \
$(OBJS)\advdll_richtextxml.obj \
$(OBJS)\advdll_taskbarcmn.obj \ $(OBJS)\advdll_taskbarcmn.obj \
$(OBJS)\advdll_sound.obj \ $(OBJS)\advdll_sound.obj \
$(OBJS)\advdll_taskbar.obj \ $(OBJS)\advdll_taskbar.obj \
@@ -3147,6 +3171,10 @@ ____ADVANCED_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\advlib_splash.obj \ $(OBJS)\advlib_splash.obj \
$(OBJS)\advlib_tipdlg.obj \ $(OBJS)\advlib_tipdlg.obj \
$(OBJS)\advlib_wizard.obj \ $(OBJS)\advlib_wizard.obj \
$(OBJS)\advlib_richtextctrl.obj \
$(OBJS)\advlib_richtextbuffer.obj \
$(OBJS)\advlib_richtextstyles.obj \
$(OBJS)\advlib_richtextxml.obj \
$(OBJS)\advlib_taskbarcmn.obj \ $(OBJS)\advlib_taskbarcmn.obj \
$(OBJS)\advlib_sound.obj \ $(OBJS)\advlib_sound.obj \
$(OBJS)\advlib_taskbar.obj \ $(OBJS)\advlib_taskbar.obj \
@@ -3167,6 +3195,10 @@ ____ADVANCED_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\advlib_splash.obj \ $(OBJS)\advlib_splash.obj \
$(OBJS)\advlib_tipdlg.obj \ $(OBJS)\advlib_tipdlg.obj \
$(OBJS)\advlib_wizard.obj \ $(OBJS)\advlib_wizard.obj \
$(OBJS)\advlib_richtextctrl.obj \
$(OBJS)\advlib_richtextbuffer.obj \
$(OBJS)\advlib_richtextstyles.obj \
$(OBJS)\advlib_richtextxml.obj \
$(OBJS)\advlib_taskbarcmn.obj \ $(OBJS)\advlib_taskbarcmn.obj \
$(OBJS)\advlib_sound.obj \ $(OBJS)\advlib_sound.obj \
$(OBJS)\advlib_taskbar.obj \ $(OBJS)\advlib_taskbar.obj \
@@ -5921,6 +5953,26 @@ $(OBJS)\monodll_wizard.obj: ..\..\src\generic\wizard.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $** $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
!endif !endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_richtextctrl.obj: ..\..\src\richtext\richtextctrl.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_richtextbuffer.obj: ..\..\src\richtext\richtextbuffer.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_richtextstyles.obj: ..\..\src\richtext\richtextstyles.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_richtextxml.obj: ..\..\src\richtext\richtextxml.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1" !if "$(USE_GUI)" == "1"
$(OBJS)\monodll_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp $(OBJS)\monodll_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $** $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
@@ -7617,6 +7669,26 @@ $(OBJS)\monolib_wizard.obj: ..\..\src\generic\wizard.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $** $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
!endif !endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_richtextctrl.obj: ..\..\src\richtext\richtextctrl.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_richtextbuffer.obj: ..\..\src\richtext\richtextbuffer.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_richtextstyles.obj: ..\..\src\richtext\richtextstyles.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_richtextxml.obj: ..\..\src\richtext\richtextxml.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
!endif
!if "$(USE_GUI)" == "1" !if "$(USE_GUI)" == "1"
$(OBJS)\monolib_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp $(OBJS)\monolib_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $** $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
@@ -10515,6 +10587,18 @@ $(OBJS)\advdll_tipdlg.obj: ..\..\src\generic\tipdlg.cpp
$(OBJS)\advdll_wizard.obj: ..\..\src\generic\wizard.cpp $(OBJS)\advdll_wizard.obj: ..\..\src\generic\wizard.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) $** $(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advdll_richtextctrl.obj: ..\..\src\richtext\richtextctrl.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advdll_richtextbuffer.obj: ..\..\src\richtext\richtextbuffer.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advdll_richtextstyles.obj: ..\..\src\richtext\richtextstyles.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advdll_richtextxml.obj: ..\..\src\richtext\richtextxml.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) $**
$(OBJS)\advdll_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp $(OBJS)\advdll_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) $** $(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) $**
@@ -10569,6 +10653,18 @@ $(OBJS)\advlib_tipdlg.obj: ..\..\src\generic\tipdlg.cpp
$(OBJS)\advlib_wizard.obj: ..\..\src\generic\wizard.cpp $(OBJS)\advlib_wizard.obj: ..\..\src\generic\wizard.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) $** $(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\advlib_richtextctrl.obj: ..\..\src\richtext\richtextctrl.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\advlib_richtextbuffer.obj: ..\..\src\richtext\richtextbuffer.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\advlib_richtextstyles.obj: ..\..\src\richtext\richtextstyles.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\advlib_richtextxml.obj: ..\..\src\richtext\richtextxml.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) $**
$(OBJS)\advlib_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp $(OBJS)\advlib_taskbarcmn.obj: ..\..\src\common\taskbarcmn.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) $** $(CXX) /c /nologo /TP /Fo$@ $(ADVLIB_CXXFLAGS) $**

File diff suppressed because it is too large Load Diff

View File

@@ -1034,6 +1034,22 @@ SOURCE=..\..\include\wx\propdlg.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\..\include\wx\richtext\richtextbuffer.h
# End Source File
# Begin Source File
SOURCE=..\..\include\wx\richtext\richtextctrl.h
# End Source File
# Begin Source File
SOURCE=..\..\include\wx\richtext\richtextstyles.h
# End Source File
# Begin Source File
SOURCE=..\..\include\wx\richtext\richtextxml.h
# End Source File
# Begin Source File
SOURCE=..\..\include\wx\sashwin.h SOURCE=..\..\include\wx\sashwin.h
# End Source File # End Source File
# Begin Source File # Begin Source File
@@ -1061,6 +1077,26 @@ SOURCE=..\..\include\wx\wave.h
SOURCE=..\..\include\wx\wizard.h SOURCE=..\..\include\wx\wizard.h
# End Source File # End Source File
# End Group # End Group
# Begin Group "Source Files"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\src\richtext\richtextbuffer.cpp
# End Source File
# Begin Source File
SOURCE=..\..\src\richtext\richtextctrl.cpp
# End Source File
# Begin Source File
SOURCE=..\..\src\richtext\richtextstyles.cpp
# End Source File
# Begin Source File
SOURCE=..\..\src\richtext\richtextxml.cpp
# End Source File
# End Group
# End Target # End Target
# End Project # End Project

View File

@@ -8672,6 +8672,22 @@ SOURCE=..\..\include\wx\renderer.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\..\include\wx\richtext\richtextbuffer.h
# End Source File
# Begin Source File
SOURCE=..\..\include\wx\richtext\richtextctrl.h
# End Source File
# Begin Source File
SOURCE=..\..\include\wx\richtext\richtextstyles.h
# End Source File
# Begin Source File
SOURCE=..\..\include\wx\richtext\richtextxml.h
# End Source File
# Begin Source File
SOURCE=..\..\include\wx\sashwin.h SOURCE=..\..\include\wx\sashwin.h
# End Source File # End Source File
# Begin Source File # Begin Source File
@@ -9008,6 +9024,10 @@ SOURCE=..\..\include\wx\xrc\xh_tree.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\..\include\wx\xrc\xh_treebk.h
# End Source File
# Begin Source File
SOURCE=..\..\include\wx\xrc\xh_unkwn.h SOURCE=..\..\include\wx\xrc\xh_unkwn.h
# End Source File # End Source File
# Begin Source File # Begin Source File

View File

@@ -959,6 +959,10 @@ SOURCE=..\..\include\wx\xrc\xh_tree.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\..\include\wx\xrc\xh_treebk.h
# End Source File
# Begin Source File
SOURCE=..\..\include\wx\xrc\xh_unkwn.h SOURCE=..\..\include\wx\xrc\xh_unkwn.h
# End Source File # End Source File
# Begin Source File # Begin Source File

View File

@@ -479,6 +479,7 @@ if test $DEBUG_CONFIGURE = 1; then
DEFAULT_wxUSE_MENUS=no DEFAULT_wxUSE_MENUS=no
DEFAULT_wxUSE_MINIFRAME=no DEFAULT_wxUSE_MINIFRAME=no
DEFAULT_wxUSE_HTML=no DEFAULT_wxUSE_HTML=no
DEFAULT_wxUSE_RICHTEXT=no
DEFAULT_wxUSE_XRC=no DEFAULT_wxUSE_XRC=no
DEFAULT_wxUSE_WEBKIT=no DEFAULT_wxUSE_WEBKIT=no
DEFAULT_wxUSE_FILESYSTEM=no DEFAULT_wxUSE_FILESYSTEM=no
@@ -676,6 +677,7 @@ else
DEFAULT_wxUSE_MENUS=yes DEFAULT_wxUSE_MENUS=yes
DEFAULT_wxUSE_MINIFRAME=yes DEFAULT_wxUSE_MINIFRAME=yes
DEFAULT_wxUSE_HTML=yes DEFAULT_wxUSE_HTML=yes
DEFAULT_wxUSE_RICHTEXT=yes
DEFAULT_wxUSE_XRC=yes DEFAULT_wxUSE_XRC=yes
DEFAULT_wxUSE_WEBKIT=yes DEFAULT_wxUSE_WEBKIT=yes
DEFAULT_wxUSE_FILESYSTEM=yes DEFAULT_wxUSE_FILESYSTEM=yes
@@ -954,6 +956,7 @@ WX_ARG_ENABLE(loggui, [ --enable-loggui use standard GUI logger],
WX_ARG_ENABLE(logwin, [ --enable-logwin use wxLogWindow], wxUSE_LOGWINDOW) WX_ARG_ENABLE(logwin, [ --enable-logwin use wxLogWindow], wxUSE_LOGWINDOW)
WX_ARG_ENABLE(logdialog, [ --enable-logdialog use wxLogDialog], wxUSE_LOGDIALOG) WX_ARG_ENABLE(logdialog, [ --enable-logdialog use wxLogDialog], wxUSE_LOGDIALOG)
WX_ARG_ENABLE(webkit, [ --enable-webkit use wxWebKitCtrl (Mac)], wxUSE_WEBKIT) WX_ARG_ENABLE(webkit, [ --enable-webkit use wxWebKitCtrl (Mac)], wxUSE_WEBKIT)
WX_ARG_ENABLE(html, [ --enable-richtext use wxRichTextCtrl], wxUSE_RICHTEXT)
dnl --------------------------------------------------------------------------- dnl ---------------------------------------------------------------------------
dnl PostScript options dnl PostScript options
@@ -6566,6 +6569,13 @@ if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_UNICODE_MSLU" = "yes" ; then
LIBS=" -lunicows $LIBS" LIBS=" -lunicows $LIBS"
fi fi
USE_RICHTEXT=0
if test "$wxUSE_RICHTEXT" = "yes"; then
AC_DEFINE(wxUSE_RICHTEXT)
USE_RICHTEXT=1
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS richtext"
fi
dnl --------------------------------------------------------------------------- dnl ---------------------------------------------------------------------------
dnl wxImage options dnl wxImage options
dnl --------------------------------------------------------------------------- dnl ---------------------------------------------------------------------------

View File

@@ -100,6 +100,8 @@ src/html/*.cpp
src/html/*.h src/html/*.h
src/html/bitmaps/*.xpm src/html/bitmaps/*.xpm
src/richtext/*.cpp
src/unix/*.cpp src/unix/*.cpp
src/unix/*.c src/unix/*.c
@@ -168,6 +170,7 @@ include/wx/html/*.h
include/wx/html/msw/*.bmp include/wx/html/msw/*.bmp
include/wx/html/msw/*.ico include/wx/html/msw/*.ico
include/wx/html/msw/*.rc include/wx/html/msw/*.rc
include/wx/richtext/*.h
lib/dummy lib/dummy
tools/gettext/*.* tools/gettext/*.*
@@ -1048,6 +1051,16 @@ samples/richedit/*.bkl
samples/richedit/README samples/richedit/README
samples/richedit/TODO samples/richedit/TODO
samples/richtext/*.cpp
samples/richtext/*.h
samples/richtext/makefile*
samples/richtext/*.rc
samples/richtext/*.pro
samples/richtext/*.bkl
samples/richtext/readme.txt
samples/richtext/todo.txt
samples/richtext/bitmaps/*.xpm
samples/rotate/*.cpp samples/rotate/*.cpp
samples/rotate/*.h samples/rotate/*.h
samples/rotate/makefile* samples/rotate/makefile*

View File

@@ -173,6 +173,7 @@ dospinwxmac()
echo Tarring wxMac... echo Tarring wxMac...
### wxMac ### wxMac
cp $WXSRC/include/wx/mac/setup0.h $WXSRC/include/wx/setup.h cp $WXSRC/include/wx/mac/setup0.h $WXSRC/include/wx/setup.h
cp $WXSRC/include/wx/mac/setup0.h $WXSRC/include/wx/mac/setup.h
cd $WXSRC cd $WXSRC
cat $WXSRC/distrib/msw/mac.rsp $WXSRC/distrib/msw/cocoa.rsp $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/cw_mac.rsp $WXSRC/distrib/msw/tex2rtf.rsp $WXSRC/distrib/msw/utils.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/stc.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/deprecated.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxmac_in.txt cat $WXSRC/distrib/msw/mac.rsp $WXSRC/distrib/msw/cocoa.rsp $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/cw_mac.rsp $WXSRC/distrib/msw/tex2rtf.rsp $WXSRC/distrib/msw/utils.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/stc.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/deprecated.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxmac_in.txt
expandlines /tmp/wxmac_in.txt /tmp/wxmac.txt expandlines /tmp/wxmac_in.txt /tmp/wxmac.txt

View File

@@ -11,22 +11,23 @@ All:
All (GUI): All (GUI):
- added wxTreeBook - Added wxTreeBook.
- added wxDialog::SetEscapeId() - Added wxDialog::SetEscapeId().
- wxItemContainerImmutable::FindString unified (affects wxRadioBox, wxListBox, - wxItemContainerImmutable::FindString unified (affects wxRadioBox, wxListBox,
wxComboBox and wxChoice) wxComboBox and wxChoice).
- wxWindow::Fit() now works correctly for frames and dialogs too - wxWindow::Fit() now works correctly for frames and dialogs too.
- added access to the border size between pages and controller in book - Added access to the border size between pages and controller in book
based controls (wxBookCtrlBase::Get/SetInternalBorder) based controls (wxBookCtrlBase::Get/SetInternalBorder).
- Added initial wxRichTextCtrl implementation.
wxMSW: wxMSW:
- wxFileDialog respects absence of wxCHANGE_DIR flag under NT (Brad Anderson) - wxFileDialog respects absence of wxCHANGE_DIR flag under NT (Brad Anderson).
- Switching page of a hidden notebook doesn't lose focus (Jamie Gadd) - Switching page of a hidden notebook doesn't lose focus (Jamie Gadd).
Unix: Unix:
- NO_GCC_PRAGMA is not used any more, remove checks for it if you used it - NO_GCC_PRAGMA is not used any more, remove checks for it if you used it.
2.6.2 2.6.2

View File

@@ -862,6 +862,14 @@
// Recommended setting: 1 if you intend to use OpenGL, 0 otherwise // Recommended setting: 1 if you intend to use OpenGL, 0 otherwise
#define wxUSE_GLCANVAS 0 #define wxUSE_GLCANVAS 0
// wxRichTextCtrl allows editing of styled text.
//
// Default is 1.
//
// Recommended setting: 1, set to 0 if you want compile a
// smaller library.
#define wxUSE_RICHTEXT 1
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// Data transfer // Data transfer
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------

View File

@@ -129,7 +129,7 @@
// Default is 1 if supported by the compiler. // Default is 1 if supported by the compiler.
// //
// Recommended setting: 1, set to 0 if your programs never crash // Recommended setting: 1, set to 0 if your programs never crash
#define wxUSE_STACKWALKER 0 #define wxUSE_STACKWALKER 1
// Set this to 1 to compile in wxDebugReport class which allows you to create // Set this to 1 to compile in wxDebugReport class which allows you to create
// and optionally upload to your web site a debug report consisting of back // and optionally upload to your web site a debug report consisting of back
@@ -197,11 +197,6 @@
// Recommended setting: 0 (this is still work in progress...) // Recommended setting: 0 (this is still work in progress...)
#define wxUSE_EXTENDED_RTTI 0 #define wxUSE_EXTENDED_RTTI 0
#if defined(__BORLANDC__)
#undef wxUSE_EXTENDED_RTTI
#define wxUSE_EXTENDED_RTTI 1
#endif
// Set wxUSE_STL to 1 to derive wxList(Foo) and wxArray(Foo) from // Set wxUSE_STL to 1 to derive wxList(Foo) and wxArray(Foo) from
// std::list<Foo*> and std::vector<Foo*>, with a compatibility interface, // std::list<Foo*> and std::vector<Foo*>, with a compatibility interface,
// and for wxHashMap to be implemented with templates. // and for wxHashMap to be implemented with templates.
@@ -373,7 +368,7 @@
// Default is 1. // Default is 1.
// //
// Recommended setting: 1 // Recommended setting: 1
#define wxUSE_DIALUP_MANAGER 0 #define wxUSE_DIALUP_MANAGER 1
// Compile in classes for run-time DLL loading and function calling. // Compile in classes for run-time DLL loading and function calling.
// Required by wxUSE_DIALUP_MANAGER. // Required by wxUSE_DIALUP_MANAGER.
@@ -420,7 +415,7 @@
#define wxUSE_APPLE_IEEE 1 #define wxUSE_APPLE_IEEE 1
// Joystick support class // Joystick support class
#define wxUSE_JOYSTICK 0 #define wxUSE_JOYSTICK 1
// wxFontMapper class // wxFontMapper class
#define wxUSE_FONTMAP 1 #define wxUSE_FONTMAP 1
@@ -468,13 +463,13 @@
#define wxUSE_SYSTEM_OPTIONS 1 #define wxUSE_SYSTEM_OPTIONS 1
// wxSound class // wxSound class
#define wxUSE_SOUND 0 #define wxUSE_SOUND 1
// Use wxMediaCtrl // Use wxMediaCtrl
// //
// Default is 1. // Default is 1.
// //
// Recommended setting: 1 // Recommended setting: 1
#define wxUSE_MEDIACTRL 1 #define wxUSE_MEDIACTRL 1
// Use GStreamer for Unix (req a lot of dependancies) // Use GStreamer for Unix (req a lot of dependancies)
@@ -618,6 +613,14 @@
// Recommended setting: 1 // Recommended setting: 1
#define wxUSE_CHOICEBOOK 1 #define wxUSE_CHOICEBOOK 1
// wxTreebook control is similar to wxNotebook but uses wxTreeCtrl instead of
// the tabs
//
// Default is 1.
//
// Recommended setting: 1
#define wxUSE_TREEBOOK 1
// wxTabDialog is a generic version of wxNotebook but it is incompatible with // wxTabDialog is a generic version of wxNotebook but it is incompatible with
// the new class. It shouldn't be used in new code. // the new class. It shouldn't be used in new code.
// //
@@ -666,11 +669,7 @@
// Default is 0 because it isn't yet implemented on all platforms // Default is 0 because it isn't yet implemented on all platforms
// //
// Recommended setting: 1 if you need it, can be safely set to 0 otherwise // Recommended setting: 1 if you need it, can be safely set to 0 otherwise
#if defined(__BORLANDC__) #define wxUSE_DISPLAY 0
#define wxUSE_DISPLAY 1
#else
#define wxUSE_DISPLAY 0
#endif
// Miscellaneous geometry code: needed for Canvas library // Miscellaneous geometry code: needed for Canvas library
#define wxUSE_GEOMETRY 1 #define wxUSE_GEOMETRY 1
@@ -710,7 +709,7 @@
// Default is 1. // Default is 1.
// //
// Recommended setting: 1 // Recommended setting: 1
#define wxUSE_TOOLTIPS 0 #define wxUSE_TOOLTIPS 1
// wxValidator class and related methods // wxValidator class and related methods
#define wxUSE_VALIDATORS 1 #define wxUSE_VALIDATORS 1
@@ -840,7 +839,7 @@
#define wxUSE_MDI_ARCHITECTURE 1 #define wxUSE_MDI_ARCHITECTURE 1
// Set to 0 to disable print/preview architecture code // Set to 0 to disable print/preview architecture code
#define wxUSE_PRINTING_ARCHITECTURE 0 #define wxUSE_PRINTING_ARCHITECTURE 1
// wxHTML sublibrary allows to display HTML in wxWindow programs and much, // wxHTML sublibrary allows to display HTML in wxWindow programs and much,
// much more. // much more.
@@ -860,11 +859,15 @@
// Default is 0. // Default is 0.
// //
// Recommended setting: 1 if you intend to use OpenGL, 0 otherwise // Recommended setting: 1 if you intend to use OpenGL, 0 otherwise
#ifdef __DMC__
#define wxUSE_GLCANVAS 0 #define wxUSE_GLCANVAS 0
#else
#define wxUSE_GLCANVAS 1 // wxRichTextCtrl allows editing of styled text.
#endif //
// Default is 1.
//
// Recommended setting: 1, set to 0 if you want compile a
// smaller library.
#define wxUSE_RICHTEXT 1
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// Data transfer // Data transfer
@@ -892,7 +895,7 @@
// Default is 1. // Default is 1.
// //
// Recommended setting: 1 // Recommended setting: 1
#define wxUSE_DRAG_AND_DROP 0 #define wxUSE_DRAG_AND_DROP 1
// Use wxAccessible for enhanced and customisable accessibility. // Use wxAccessible for enhanced and customisable accessibility.
// Depends on wxUSE_OLE. // Depends on wxUSE_OLE.
@@ -962,7 +965,7 @@
// that use the connection) should support forward only scrolling of cursors, // that use the connection) should support forward only scrolling of cursors,
// or both forward and backward support for backward scrolling cursors is // or both forward and backward support for backward scrolling cursors is
// dependent on the data source as well as the ODBC driver being used. // dependent on the data source as well as the ODBC driver being used.
#define wxODBC_FWD_ONLY_CURSORS 1 #define wxODBC_FWD_ONLY_CURSORS 1
// Default is 0. Set to 1 to use the deprecated classes, enum types, function, // Default is 0. Set to 1 to use the deprecated classes, enum types, function,
// member variables. With a setting of 1, full backward compatibility with the // member variables. With a setting of 1, full backward compatibility with the

View File

@@ -861,6 +861,14 @@
// Recommended setting: 1 if you intend to use OpenGL, 0 otherwise // Recommended setting: 1 if you intend to use OpenGL, 0 otherwise
#define wxUSE_GLCANVAS 0 #define wxUSE_GLCANVAS 0
// wxRichTextCtrl allows editing of styled text.
//
// Default is 1.
//
// Recommended setting: 1, set to 0 if you want compile a
// smaller library.
#define wxUSE_RICHTEXT 1
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// Data transfer // Data transfer
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------

View File

@@ -861,6 +861,14 @@
// Recommended setting: 1 if you intend to use OpenGL, 0 otherwise // Recommended setting: 1 if you intend to use OpenGL, 0 otherwise
#define wxUSE_GLCANVAS 0 #define wxUSE_GLCANVAS 0
// wxRichTextCtrl allows editing of styled text.
//
// Default is 1.
//
// Recommended setting: 1, set to 0 if you want compile a
// smaller library.
#define wxUSE_RICHTEXT 1
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// Data transfer // Data transfer
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------

View File

@@ -13,7 +13,6 @@
#define _WX_SETUP_H_ #define _WX_SETUP_H_
/* --- start common options --- */ /* --- start common options --- */
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// global settings // global settings
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
@@ -130,7 +129,7 @@
// Default is 1 if supported by the compiler. // Default is 1 if supported by the compiler.
// //
// Recommended setting: 1, set to 0 if your programs never crash // Recommended setting: 1, set to 0 if your programs never crash
#define wxUSE_STACKWALKER 0 #define wxUSE_STACKWALKER 1
// Set this to 1 to compile in wxDebugReport class which allows you to create // Set this to 1 to compile in wxDebugReport class which allows you to create
// and optionally upload to your web site a debug report consisting of back // and optionally upload to your web site a debug report consisting of back
@@ -150,6 +149,10 @@
// defined as wchar_t, wxString will use Unicode internally. If you set this // defined as wchar_t, wxString will use Unicode internally. If you set this
// to 1, you must use wxT() macro for all literal strings in the program. // to 1, you must use wxT() macro for all literal strings in the program.
// //
// Unicode is currently only fully supported under Windows NT/2000/XP
// (Windows 9x doesn't support it and the programs compiled in Unicode mode
// will not run under 9x -- but see wxUSE_UNICODE_MSLU below).
//
// Default is 0 // Default is 0
// //
// Recommended setting: 0 (unless you only plan to use Windows NT/2000/XP) // Recommended setting: 0 (unless you only plan to use Windows NT/2000/XP)
@@ -249,7 +252,7 @@
// Use standard C++ streams if 1. If 0, use wxWin streams implementation only. // Use standard C++ streams if 1. If 0, use wxWin streams implementation only.
#define wxUSE_STD_IOSTREAM 0 #define wxUSE_STD_IOSTREAM 0
// Enable conversion to standard C++ string if 1. // Enable conversion to standard C++ string if 1.
#define wxUSE_STD_STRING 0 #define wxUSE_STD_STRING 0
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
@@ -466,7 +469,7 @@
// //
// Default is 1. // Default is 1.
// //
// Recommended setting: 1 // Recommended setting: 1
#define wxUSE_MEDIACTRL 1 #define wxUSE_MEDIACTRL 1
// Use GStreamer for Unix (req a lot of dependancies) // Use GStreamer for Unix (req a lot of dependancies)
@@ -610,6 +613,14 @@
// Recommended setting: 1 // Recommended setting: 1
#define wxUSE_CHOICEBOOK 1 #define wxUSE_CHOICEBOOK 1
// wxTreebook control is similar to wxNotebook but uses wxTreeCtrl instead of
// the tabs
//
// Default is 1.
//
// Recommended setting: 1
#define wxUSE_TREEBOOK 1
// wxTabDialog is a generic version of wxNotebook but it is incompatible with // wxTabDialog is a generic version of wxNotebook but it is incompatible with
// the new class. It shouldn't be used in new code. // the new class. It shouldn't be used in new code.
// //
@@ -735,7 +746,7 @@
#define wxUSE_COLOURDLG 1 #define wxUSE_COLOURDLG 1
// wxDirDlg class for getting a directory name from user // wxDirDlg class for getting a directory name from user
#define wxUSE_DIRDLG 0 #define wxUSE_DIRDLG 1
// TODO: setting to choose the generic or native one // TODO: setting to choose the generic or native one
@@ -744,7 +755,7 @@
// Default is 1 // Default is 1
// //
// Recommended setting: 1 (used in many places in the library itself) // Recommended setting: 1 (used in many places in the library itself)
#define wxUSE_FILEDLG 0 #define wxUSE_FILEDLG 1
// Use find/replace dialogs. // Use find/replace dialogs.
// //
@@ -820,15 +831,15 @@
#define wxUSE_MDI 1 #define wxUSE_MDI 1
// Set to 0 to disable document/view architecture // Set to 0 to disable document/view architecture
#define wxUSE_DOC_VIEW_ARCHITECTURE 0 #define wxUSE_DOC_VIEW_ARCHITECTURE 1
// Set to 0 to disable MDI document/view architecture // Set to 0 to disable MDI document/view architecture
// //
// Requires wxUSE_MDI && wxUSE_DOC_VIEW_ARCHITECTURE // Requires wxUSE_MDI && wxUSE_DOC_VIEW_ARCHITECTURE
#define wxUSE_MDI_ARCHITECTURE 0 #define wxUSE_MDI_ARCHITECTURE 1
// Set to 0 to disable print/preview architecture code // Set to 0 to disable print/preview architecture code
#define wxUSE_PRINTING_ARCHITECTURE 0 #define wxUSE_PRINTING_ARCHITECTURE 1
// wxHTML sublibrary allows to display HTML in wxWindow programs and much, // wxHTML sublibrary allows to display HTML in wxWindow programs and much,
// much more. // much more.
@@ -850,6 +861,14 @@
// Recommended setting: 1 if you intend to use OpenGL, 0 otherwise // Recommended setting: 1 if you intend to use OpenGL, 0 otherwise
#define wxUSE_GLCANVAS 0 #define wxUSE_GLCANVAS 0
// wxRichTextCtrl allows editing of styled text.
//
// Default is 1.
//
// Recommended setting: 1, set to 0 if you want compile a
// smaller library.
#define wxUSE_RICHTEXT 1
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// Data transfer // Data transfer
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
@@ -859,7 +878,7 @@
// Default is 1. // Default is 1.
// //
// Recommended setting: 1 // Recommended setting: 1
#define wxUSE_CLIPBOARD 0 #define wxUSE_CLIPBOARD 1
// Use wxDataObject and related classes. Needed for clipboard and OLE drag and // Use wxDataObject and related classes. Needed for clipboard and OLE drag and
// drop // drop
@@ -867,7 +886,7 @@
// Default is 1. // Default is 1.
// //
// Recommended setting: 1 // Recommended setting: 1
#define wxUSE_DATAOBJ 0 #define wxUSE_DATAOBJ 1
// Use wxDropTarget and wxDropSource classes for drag and drop (this is // Use wxDropTarget and wxDropSource classes for drag and drop (this is
// different from "built in" drag and drop in wxTreeCtrl which is always // different from "built in" drag and drop in wxTreeCtrl which is always
@@ -876,7 +895,7 @@
// Default is 1. // Default is 1.
// //
// Recommended setting: 1 // Recommended setting: 1
#define wxUSE_DRAG_AND_DROP 0 #define wxUSE_DRAG_AND_DROP 1
// Use wxAccessible for enhanced and customisable accessibility. // Use wxAccessible for enhanced and customisable accessibility.
// Depends on wxUSE_OLE. // Depends on wxUSE_OLE.
@@ -905,9 +924,11 @@
// 0 for no interprocess comms // 0 for no interprocess comms
#define wxUSE_HELP 1 #define wxUSE_HELP 1
// 0 for no help facility // 0 for no help facility
#define wxUSE_MS_HTML_HELP 1
// 0 for no MS HTML Help
// Use wxHTML-based help controller? // Use wxHTML-based help controller?
#define wxUSE_WXHTML_HELP 0 #define wxUSE_WXHTML_HELP 1
#define wxUSE_RESOURCES 0 #define wxUSE_RESOURCES 0
// 0 for no wxGetResource/wxWriteResource // 0 for no wxGetResource/wxWriteResource
@@ -944,7 +965,7 @@
// that use the connection) should support forward only scrolling of cursors, // that use the connection) should support forward only scrolling of cursors,
// or both forward and backward support for backward scrolling cursors is // or both forward and backward support for backward scrolling cursors is
// dependent on the data source as well as the ODBC driver being used. // dependent on the data source as well as the ODBC driver being used.
#define wxODBC_FWD_ONLY_CURSORS 1 #define wxODBC_FWD_ONLY_CURSORS 1
// Default is 0. Set to 1 to use the deprecated classes, enum types, function, // Default is 0. Set to 1 to use the deprecated classes, enum types, function,
// member variables. With a setting of 1, full backward compatibility with the // member variables. With a setting of 1, full backward compatibility with the

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,756 @@
/////////////////////////////////////////////////////////////////////////////
// Name: richtextctrl.h
// Purpose: A rich edit control
// Author: Julian Smart
// Modified by:
// Created: 2005-09-30
// RCS-ID:
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_RICHTEXTCTRL_H_
#define _WX_RICHTEXTCTRL_H_
#include "wx/textctrl.h"
#if wxUSE_RICHTEXT
#include "wx/scrolwin.h"
#include "wx/caret.h"
#include "wx/richtext/richtextbuffer.h"
#if wxCHECK_VERSION(2,7,0)
#define wxRICHTEXT_DERIVES_FROM_TEXTCTRLBASE 0
#else
#define wxRICHTEXT_DERIVES_FROM_TEXTCTRLBASE 0
#endif
/*!
* Styles and flags
*/
/* Styles
*/
#define wxRE_READONLY 0x0010
#define wxRE_MULTILINE 0x0020
/* Flags
*/
#define wxRICHTEXT_SHIFT_DOWN 0x01
#define wxRICHTEXT_CTRL_DOWN 0x02
#define wxRICHTEXT_ALT_DOWN 0x04
/* Defaults
*/
#define wxRICHTEXT_DEFAULT_OVERALL_SIZE wxSize(-1, -1)
#define wxRICHTEXT_DEFAULT_IMAGE_SIZE wxSize(80, 80)
#define wxRICHTEXT_DEFAULT_SPACING 3
#define wxRICHTEXT_DEFAULT_MARGIN 3
#define wxRICHTEXT_DEFAULT_UNFOCUSSED_BACKGROUND wxColour(175, 175, 175)
#define wxRICHTEXT_DEFAULT_FOCUSSED_BACKGROUND wxColour(140, 140, 140)
#define wxRICHTEXT_DEFAULT_UNSELECTED_BACKGROUND wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE)
#define wxRICHTEXT_DEFAULT_TYPE_COLOUR wxColour(0, 0, 200)
#define wxRICHTEXT_DEFAULT_FOCUS_RECT_COLOUR wxColour(100, 80, 80)
#define wxRICHTEXT_DEFAULT_CARET_WIDTH 2
/*!
* Forward declarations
*/
/*!
* wxRichTextItem class declaration
*/
// Drawing styles/states
#define wxRICHTEXT_SELECTED 0x01
#define wxRICHTEXT_TAGGED 0x02
// The control is focussed
#define wxRICHTEXT_FOCUSSED 0x04
// The item itself has the focus
#define wxRICHTEXT_IS_FOCUS 0x08
/*!
* wxRichTextCtrl class declaration
*/
class WXDLLIMPEXP_ADV wxRichTextCtrl:
#if wxRICHTEXT_DERIVES_FROM_TEXTCTRLBASE
public wxTextCtrlBase, wxScrollHelper
#else
public wxScrolledWindow
#endif
{
DECLARE_CLASS( wxRichTextCtrl )
DECLARE_EVENT_TABLE()
public:
// Constructors
wxRichTextCtrl( );
wxRichTextCtrl( wxWindow* parent, wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
long style = wxRE_MULTILINE );
~wxRichTextCtrl( );
// Operations
/// Creation
bool Create( wxWindow* parent, wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
long style = wxRE_MULTILINE );
/// Member initialisation
void Init();
///// wxTextCtrl compatibility
// Accessors
virtual wxString GetValue() const;
virtual void SetValue(const wxString& value);
virtual wxString GetRange(long from, long to) const;
virtual int GetLineLength(long lineNo) const ;
virtual wxString GetLineText(long lineNo) const ;
virtual int GetNumberOfLines() const ;
virtual bool IsModified() const ;
virtual bool IsEditable() const ;
// more readable flag testing methods
bool IsSingleLine() const { return !HasFlag(wxRE_MULTILINE); }
bool IsMultiLine() const { return !IsSingleLine(); }
// If the return values from and to are the same, there is no selection.
virtual void GetSelection(long* from, long* to) const;
virtual wxString GetStringSelection() const;
/// Get filename
wxString GetFilename() const { return m_filename; }
/// Set filename
void SetFilename(const wxString& filename) { m_filename = filename; }
// Operations
// editing
virtual void Clear();
virtual void Replace(long from, long to, const wxString& value);
virtual void Remove(long from, long to);
// load/save the controls contents from/to the file
virtual bool LoadFile(const wxString& file, int type = wxRICHTEXT_TYPE_ANY);
virtual bool SaveFile(const wxString& file = wxEmptyString, int type = wxRICHTEXT_TYPE_ANY);
// sets/clears the dirty flag
virtual void MarkDirty();
virtual void DiscardEdits();
// set the max number of characters which may be entered in a single line
// text control
virtual void SetMaxLength(unsigned long WXUNUSED(len)) { }
// writing text inserts it at the current position, appending always
// inserts it at the end
virtual void WriteText(const wxString& text);
virtual void AppendText(const wxString& text);
// text control under some platforms supports the text styles: these
// methods allow to apply the given text style to the given selection or to
// set/get the style which will be used for all appended text
virtual bool SetStyle(long start, long end, const wxTextAttrEx& style);
virtual bool SetStyle(const wxRichTextRange& range, const wxRichTextAttr& style);
virtual bool GetStyle(long position, wxTextAttrEx& style) const;
virtual bool GetStyle(long position, wxRichTextAttr& style) const;
virtual bool SetDefaultStyle(const wxTextAttrEx& style);
// TODO: change to GetDefaultStyle if we merge wxTextAttr and wxTextAttrEx
virtual const wxTextAttrEx& GetDefaultStyleEx() const;
// translate between the position (which is just an index in the text ctrl
// considering all its contents as a single strings) and (x, y) coordinates
// which represent column and line.
virtual long XYToPosition(long x, long y) const;
virtual bool PositionToXY(long pos, long *x, long *y) const;
virtual void ShowPosition(long pos);
// find the character at position given in pixels
//
// NB: pt is in device coords (not adjusted for the client area origin nor
// scrolling)
virtual wxTextCtrlHitTestResult HitTest(const wxPoint& pt, long *pos) const;
virtual wxTextCtrlHitTestResult HitTest(const wxPoint& pt,
wxTextCoord *col,
wxTextCoord *row) const;
// Clipboard operations
virtual void Copy();
virtual void Cut();
virtual void Paste();
virtual void DeleteSelection();
virtual bool CanCopy() const;
virtual bool CanCut() const;
virtual bool CanPaste() const;
virtual bool CanDeleteSelection() const;
// Undo/redo
virtual void Undo();
virtual void Redo();
virtual bool CanUndo() const;
virtual bool CanRedo() const;
// Insertion point
virtual void SetInsertionPoint(long pos);
virtual void SetInsertionPointEnd();
virtual long GetInsertionPoint() const;
virtual wxTextPos GetLastPosition() const;
virtual void SetSelection(long from, long to);
virtual void SelectAll();
virtual void SetEditable(bool editable);
/// Call Freeze to prevent refresh
virtual void Freeze();
/// Call Thaw to refresh
virtual void Thaw(bool refresh = true);
/// Call Thaw to refresh
virtual bool IsFrozen() const { return m_freezeCount > 0; }
virtual bool HasSelection() const;
///// Functionality specific to wxRichTextCtrl
/// Write an image at the current insertion point. Supply optional type to use
/// for internal and file storage of the raw data.
virtual bool WriteImage(const wxImage& image, int bitmapType = wxBITMAP_TYPE_PNG);
/// Write a bitmap at the current insertion point. Supply optional type to use
/// for internal and file storage of the raw data.
virtual bool WriteImage(const wxBitmap& bitmap, int bitmapType = wxBITMAP_TYPE_PNG);
/// Load an image from file and write at the current insertion point.
virtual bool WriteImage(const wxString& filename, int bitmapType);
/// Write an image block at the current insertion point.
virtual bool WriteImage(const wxRichTextImageBlock& imageBlock);
/// Insert a newline (actually paragraph) at the current insertion point.
virtual bool Newline();
/// Set basic (overall) style
virtual void SetBasicStyle(const wxTextAttrEx& style) { GetBuffer().SetBasicStyle(style); }
virtual void SetBasicStyle(const wxRichTextAttr& style) { GetBuffer().SetBasicStyle(style); }
/// Get basic (overall) style
virtual const wxTextAttrEx& GetBasicStyle() const { return GetBuffer().GetBasicStyle(); }
/// Begin using a style
virtual bool BeginStyle(const wxTextAttrEx& style) { return GetBuffer().BeginStyle(style); }
/// End the style
virtual bool EndStyle() { return GetBuffer().EndStyle(); }
/// End all styles
virtual bool EndAllStyles() { return GetBuffer().EndAllStyles(); }
/// Begin using bold
bool BeginBold() { return GetBuffer().BeginBold(); }
/// End using bold
bool EndBold() { return GetBuffer().EndBold(); }
/// Begin using italic
bool BeginItalic() { return GetBuffer().BeginItalic(); }
/// End using italic
bool EndItalic() { return GetBuffer().EndItalic(); }
/// Begin using underline
bool BeginUnderline() { return GetBuffer().BeginUnderline(); }
/// End using underline
bool EndUnderline() { return GetBuffer().EndUnderline(); }
/// Begin using point size
bool BeginFontSize(int pointSize) { return GetBuffer().BeginFontSize(pointSize); }
/// End using point size
bool EndFontSize() { return GetBuffer().EndFontSize(); }
/// Begin using this font
bool BeginFont(const wxFont& font) { return GetBuffer().BeginFont(font); }
/// End using a font
bool EndFont() { return GetBuffer().EndFont(); }
/// Begin using this colour
bool BeginTextColour(const wxColour& colour) { return GetBuffer().BeginTextColour(colour); }
/// End using a colour
bool EndTextColour() { return GetBuffer().EndTextColour(); }
/// Begin using alignment
bool BeginAlignment(wxTextAttrAlignment alignment) { return GetBuffer().BeginAlignment(alignment); }
/// End alignment
bool EndAlignment() { return GetBuffer().EndAlignment(); }
/// Begin left indent
bool BeginLeftIndent(int leftIndent, int leftSubIndent = 0) { return GetBuffer().BeginLeftIndent(leftIndent, leftSubIndent); }
/// End left indent
bool EndLeftIndent() { return GetBuffer().EndLeftIndent(); }
/// Begin right indent
bool BeginRightIndent(int rightIndent) { return GetBuffer().BeginRightIndent(rightIndent); }
/// End right indent
bool EndRightIndent() { return GetBuffer().EndRightIndent(); }
/// Begin paragraph spacing
bool BeginParagraphSpacing(int before, int after) { return GetBuffer().BeginParagraphSpacing(before, after); }
/// End paragraph spacing
bool EndParagraphSpacing() { return GetBuffer().EndParagraphSpacing(); }
/// Begin line spacing
bool BeginLineSpacing(int lineSpacing) { return GetBuffer().BeginLineSpacing(lineSpacing); }
/// End line spacing
bool EndLineSpacing() { return GetBuffer().EndLineSpacing(); }
/// Begin numbered bullet
bool BeginNumberedBullet(int bulletNumber, int leftIndent, int leftSubIndent, int bulletStyle = wxTEXT_ATTR_BULLET_STYLE_ARABIC|wxTEXT_ATTR_BULLET_STYLE_PERIOD)
{ return GetBuffer().BeginNumberedBullet(bulletNumber, leftIndent, leftSubIndent, bulletStyle); }
/// End numbered bullet
bool EndNumberedBullet() { return GetBuffer().EndNumberedBullet(); }
/// Begin symbol bullet
bool BeginSymbolBullet(wxChar symbol, int leftIndent, int leftSubIndent, int bulletStyle = wxTEXT_ATTR_BULLET_STYLE_SYMBOL)
{ return GetBuffer().BeginSymbolBullet(symbol, leftIndent, leftSubIndent, bulletStyle); }
/// End symbol bullet
bool EndSymbolBullet() { return GetBuffer().EndSymbolBullet(); }
/// Begin named character style
bool BeginCharacterStyle(const wxString& characterStyle) { return GetBuffer().BeginCharacterStyle(characterStyle); }
/// End named character style
bool EndCharacterStyle() { return GetBuffer().EndCharacterStyle(); }
/// Begin named paragraph style
bool BeginParagraphStyle(const wxString& paragraphStyle) { return GetBuffer().BeginParagraphStyle(paragraphStyle); }
/// End named character style
bool EndParagraphStyle() { return GetBuffer().EndParagraphStyle(); }
/// Sets the default style to the style under the cursor
bool SetDefaultStyleToCursorStyle();
/// Clear the selection
virtual void SelectNone();
/// Get/set the selection range in character positions. -1, -1 means no selection.
const wxRichTextRange& GetSelectionRange() const { return m_selectionRange; }
void SetSelectionRange(const wxRichTextRange& range) { m_selectionRange = range; }
/// Add a new paragraph of text to the end of the buffer
virtual wxRichTextRange AddParagraph(const wxString& text);
/// Add an image
virtual wxRichTextRange AddImage(const wxImage& image);
/// Layout the buffer: which we must do before certain operations, such as
/// setting the caret position.
virtual bool Layout();
/// Move the caret to the given character position
virtual bool MoveCaret(long pos, bool showAtLineStart = false);
/// Move right
virtual bool MoveRight(int noPositions = 1, int flags = 0);
/// Move left
virtual bool MoveLeft(int noPositions = 1, int flags = 0);
/// Move up
virtual bool MoveUp(int noLines = 1, int flags = 0);
/// Move up
virtual bool MoveDown(int noLines = 1, int flags = 0);
/// Move to the end of the line
virtual bool MoveToLineEnd(int flags = 0);
/// Move to the start of the line
virtual bool MoveToLineStart(int flags = 0);
/// Move to the end of the paragraph
virtual bool MoveToParagraphEnd(int flags = 0);
/// Move to the start of the paragraph
virtual bool MoveToParagraphStart(int flags = 0);
/// Move to the start of the buffer
virtual bool MoveHome(int flags = 0);
/// Move to the end of the buffer
virtual bool MoveEnd(int flags = 0);
/// Move n pages up
virtual bool PageUp(int noPages = 1, int flags = 0);
/// Move n pages down
virtual bool PageDown(int noPages = 1, int flags = 0);
/// Move n words left
virtual bool WordLeft(int noPages = 1, int flags = 0);
/// Move n words right
virtual bool WordRight(int noPages = 1, int flags = 0);
/// Returns the buffer associated with the control.
wxRichTextBuffer& GetBuffer() { return m_buffer; }
const wxRichTextBuffer& GetBuffer() const { return m_buffer; }
/// Start batching undo history for commands.
virtual bool BeginBatchUndo(const wxString& cmdName) { return m_buffer.BeginBatchUndo(cmdName); }
/// End batching undo history for commands.
virtual bool EndBatchUndo() { return m_buffer.EndBatchUndo(); }
/// Are we batching undo history for commands?
virtual bool BatchingUndo() const { return m_buffer.BatchingUndo(); }
/// Start suppressing undo history for commands.
virtual bool BeginSuppressUndo() { return m_buffer.BeginSuppressUndo(); }
/// End suppressing undo history for commands.
virtual bool EndSuppressUndo() { return m_buffer.EndSuppressUndo(); }
/// Are we suppressing undo history for commands?
virtual bool SuppressingUndo() const { return m_buffer.SuppressingUndo(); }
/// Test if this whole range has character attributes of the specified kind. If any
/// of the attributes are different within the range, the test fails. You
/// can use this to implement, for example, bold button updating. style must have
/// flags indicating which attributes are of interest.
virtual bool HasCharacterAttributes(const wxRichTextRange& range, const wxTextAttrEx& style) const
{
return GetBuffer().HasCharacterAttributes(range, style);
}
virtual bool HasCharacterAttributes(const wxRichTextRange& range, const wxRichTextAttr& style) const
{
return GetBuffer().HasCharacterAttributes(range, style);
}
/// Test if this whole range has paragraph attributes of the specified kind. If any
/// of the attributes are different within the range, the test fails. You
/// can use this to implement, for example, centering button updating. style must have
/// flags indicating which attributes are of interest.
virtual bool HasParagraphAttributes(const wxRichTextRange& range, const wxTextAttrEx& style) const
{
return GetBuffer().HasParagraphAttributes(range, style);
}
virtual bool HasParagraphAttributes(const wxRichTextRange& range, const wxRichTextAttr& style) const
{
return GetBuffer().HasParagraphAttributes(range, style);
}
/// Is all of the selection bold?
virtual bool IsSelectionBold() const;
/// Is all of the selection italics?
virtual bool IsSelectionItalics() const;
/// Is all of the selection underlined?
virtual bool IsSelectionUnderlined() const;
/// Is all of the selection aligned according to the specified flag?
virtual bool IsSelectionAligned(wxTextAttrAlignment alignment) const;
/// Apply bold to the selection
virtual bool ApplyBoldToSelection();
/// Apply italic to the selection
virtual bool ApplyItalicToSelection();
/// Apply underline to the selection
virtual bool ApplyUnderlineToSelection();
/// Apply alignment to the selection
virtual bool ApplyAlignmentToSelection(wxTextAttrAlignment alignment);
/// Set style sheet, if any.
void SetStyleSheet(wxRichTextStyleSheet* styleSheet) { GetBuffer().SetStyleSheet(styleSheet); }
wxRichTextStyleSheet* GetStyleSheet() const { return GetBuffer().GetStyleSheet(); }
// Command handlers
void Command(wxCommandEvent & event);
void OnDropFiles(wxDropFilesEvent& event);
void OnCut(wxCommandEvent& event);
void OnCopy(wxCommandEvent& event);
void OnPaste(wxCommandEvent& event);
void OnUndo(wxCommandEvent& event);
void OnRedo(wxCommandEvent& event);
void OnSelectAll(wxCommandEvent& event);
void OnClear(wxCommandEvent& event);
void OnUpdateCut(wxUpdateUIEvent& event);
void OnUpdateCopy(wxUpdateUIEvent& event);
void OnUpdatePaste(wxUpdateUIEvent& event);
void OnUpdateUndo(wxUpdateUIEvent& event);
void OnUpdateRedo(wxUpdateUIEvent& event);
void OnUpdateSelectAll(wxUpdateUIEvent& event);
void OnUpdateClear(wxUpdateUIEvent& event);
// Show a context menu for Rich Edit controls (the standard
// EDIT control has one already)
void OnContextMenu(wxContextMenuEvent& event);
// Event handlers
/// Painting
void OnPaint(wxPaintEvent& event);
void OnEraseBackground(wxEraseEvent& event);
/// Left-click
void OnLeftClick(wxMouseEvent& event);
/// Left-up
void OnLeftUp(wxMouseEvent& event);
/// Motion
void OnMoveMouse(wxMouseEvent& event);
/// Left-double-click
void OnLeftDClick(wxMouseEvent& event);
/// Middle-click
void OnMiddleClick(wxMouseEvent& event);
/// Right-click
void OnRightClick(wxMouseEvent& event);
/// Key press
void OnChar(wxKeyEvent& event);
/// Sizing
void OnSize(wxSizeEvent& event);
/// Setting/losing focus
void OnSetFocus(wxFocusEvent& event);
void OnKillFocus(wxFocusEvent& event);
// Implementation
/// Set font, and also default attributes
virtual bool SetFont(const wxFont& font);
/// Set up scrollbars, e.g. after a resize
virtual void SetupScrollbars();
/// Keyboard navigation
virtual bool Navigate(int keyCode, int flags);
/// Paint the background
virtual void PaintBackground(wxDC& dc);
/// Recreate buffer bitmap if necessary
virtual bool RecreateBuffer(const wxSize& size = wxDefaultSize);
/// Set the selection
virtual void DoSetSelection(long from, long to, bool scrollCaret = true);
/// Write text
virtual void DoWriteText(const wxString& value, bool selectionOnly = true);
/// Send an update event
virtual bool SendUpdateEvent();
/// Init command event
void InitCommandEvent(wxCommandEvent& event) const;
/// do the window-specific processing after processing the update event
virtual void DoUpdateWindowUI(wxUpdateUIEvent& event);
/// Should we inherit colours?
virtual bool ShouldInheritColours() const { return false; }
/// Position the caret
virtual void PositionCaret();
/// Extend the selection, returning true if the selection was
/// changed. Selections are in caret positions.
virtual bool ExtendSelection(long oldPosition, long newPosition, int flags);
/// Scroll into view. This takes a _caret_ position.
virtual bool ScrollIntoView(long position, int keyCode);
/// The caret position is the character position just before the caret.
/// A value of -1 means the caret is at the start of the buffer.
void SetCaretPosition(long position, bool showAtLineStart = false) ;
long GetCaretPosition() const { return m_caretPosition; }
/// Move caret one visual step forward: this may mean setting a flag
/// and keeping the same position if we're going from the end of one line
/// to the start of the next, which may be the exact same caret position.
void MoveCaretForward(long oldPosition) ;
/// Move caret one visual step forward: this may mean setting a flag
/// and keeping the same position if we're going from the end of one line
/// to the start of the next, which may be the exact same caret position.
void MoveCaretBack(long oldPosition) ;
/// Get the caret height and position for the given character position
bool GetCaretPositionForIndex(long position, wxRect& rect);
/// Gets the line for the visible caret position. If the caret is
/// shown at the very end of the line, it means the next character is actually
/// on the following line. So let's get the line we're expecting to find
/// if this is the case.
wxRichTextLine* GetVisibleLineForCaretPosition(long caretPosition) const;
/// Gets the command processor
wxCommandProcessor* GetCommandProcessor() const { return GetBuffer().GetCommandProcessor(); }
/// Delete content if there is a selection, e.g. when pressing a key.
/// Returns the new caret position in newPos, or leaves it if there
/// was no action.
bool DeleteSelectedContent(long* newPos= NULL);
/// Transform logical to physical
wxPoint GetPhysicalPoint(const wxPoint& ptLogical);
/// Transform physical to logical
wxPoint GetLogicalPoint(const wxPoint& ptPhysical);
/// Finds the caret position for the next word. Direction
/// is 1 (forward) or -1 (backwards).
virtual long FindNextWordPosition(int direction = 1) const;
/// Is the given position visible on the screen?
bool IsPositionVisible(long pos) const;
// Overrides
virtual wxSize DoGetBestSize() const ;
// Data members
private:
/// Allows nested Freeze/Thaw
int m_freezeCount;
/// Buffer bitmap
wxBitmap m_bufferBitmap;
/// Text buffer
wxRichTextBuffer m_buffer;
/// Filename
wxString m_filename;
wxMenu* m_contextMenu;
/// Caret position (1 less than the character position, so -1 is the
/// first caret position).
long m_caretPosition;
/// Selection range in character positions. -2, -2 means no selection.
wxRichTextRange m_selectionRange;
/// Anchor so we know how to extend the selection
/// It's a caret position since it's between two characters.
long m_selectionAnchor;
/// Are we editable?
bool m_editable;
/// Are we showing the caret position at the start of a line
/// instead of at the end of the previous one?
bool m_caretAtLineStart;
/// Are we dragging a selection?
bool m_dragging;
/// Start position for drag
wxPoint m_dragStart;
};
/*!
* wxRichTextEvent - the event class for wxRichTextCtrl notifications
*/
class WXDLLIMPEXP_ADV wxRichTextEvent : public wxNotifyEvent
{
public:
wxRichTextEvent(wxEventType commandType = wxEVT_NULL, int winid = 0)
: wxNotifyEvent(commandType, winid),
m_itemIndex(-1), m_flags(0)
{ }
wxRichTextEvent(const wxRichTextEvent& event)
: wxNotifyEvent(event),
m_itemIndex(event.m_itemIndex), m_flags(event.m_flags)
{ }
int GetIndex() const { return m_itemIndex; }
void SetIndex(int n) { m_itemIndex = n; }
int GetFlags() const { return m_flags; }
void SetFlags(int flags) { m_flags = flags; }
virtual wxEvent *Clone() const { return new wxRichTextEvent(*this); }
protected:
int m_itemIndex;
int m_flags;
private:
DECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxRichTextEvent)
};
/*!
* wxRichTextCtrl event macros
*/
BEGIN_DECLARE_EVENT_TYPES()
DECLARE_EVENT_TYPE(wxEVT_COMMAND_RICHTEXT_ITEM_SELECTED, 2600)
DECLARE_EVENT_TYPE(wxEVT_COMMAND_RICHTEXT_ITEM_DESELECTED, 2601)
DECLARE_EVENT_TYPE(wxEVT_COMMAND_RICHTEXT_LEFT_CLICK, 2602)
DECLARE_EVENT_TYPE(wxEVT_COMMAND_RICHTEXT_RIGHT_CLICK, 2603)
DECLARE_EVENT_TYPE(wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK, 2604)
DECLARE_EVENT_TYPE(wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK, 2605)
DECLARE_EVENT_TYPE(wxEVT_COMMAND_RICHTEXT_RETURN, 2606)
END_DECLARE_EVENT_TYPES()
typedef void (wxEvtHandler::*wxRichTextEventFunction)(wxRichTextEvent&);
#define EVT_RICHTEXT_ITEM_SELECTED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_ITEM_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),
#define EVT_RICHTEXT_ITEM_DESELECTED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_ITEM_DESELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),
#define EVT_RICHTEXT_LEFT_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_LEFT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),
#define EVT_RICHTEXT_RIGHT_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_RIGHT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),
#define EVT_RICHTEXT_MIDDLE_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),
#define EVT_RICHTEXT_LEFT_DCLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),
#define EVT_RICHTEXT_RETURN(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_RETURN, id, -1, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),
#endif
// wxUSE_RICHTEXT
#endif
// _WX_RICHTEXTCTRL_H_

View File

@@ -0,0 +1,242 @@
/////////////////////////////////////////////////////////////////////////////
// Name: richtextstyles.h
// Purpose: Style management for wxRichTextCtrl
// Author: Julian Smart
// Modified by:
// Created: 2005-09-30
// RCS-ID:
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_RICHTEXTSTYLES_H_
#define _WX_RICHTEXTSTYLES_H_
/*!
* Includes
*/
#include "wx/defs.h"
#if wxUSE_RICHTEXT
#include "wx/richtext/richtextbuffer.h"
#if wxUSE_HTML
#include "wx/htmllbox.h"
#endif
/*!
* Forward declarations
*/
class WXDLLIMPEXP_ADV wxRichTextCtrl;
class WXDLLIMPEXP_ADV wxRichTextBuffer;
/*!
* wxRichTextStyleDefinition class declaration
* A base class for paragraph and character styles.
*/
class WXDLLIMPEXP_ADV wxRichTextStyleDefinition: public wxObject
{
DECLARE_CLASS(wxRichTextStyleDefinition)
public:
// Constructors
wxRichTextStyleDefinition(const wxString& name = wxEmptyString) { Init(); m_name = name; }
~wxRichTextStyleDefinition() {}
void Init() {}
/// The name of the style.
void SetName(const wxString& name) { m_name = name; }
const wxString& GetName() const { return m_name; }
/// The name of the style that this style is based on.
void SetBaseStyle(const wxString& name) { m_baseStyle = name; }
const wxString& GetBaseStyle() const { return m_baseStyle; }
/// The style.
void SetStyle(const wxRichTextAttr& style) { m_style = style; }
const wxRichTextAttr& GetStyle() const { return m_style; }
wxRichTextAttr& GetStyle() { return m_style; }
protected:
wxString m_name;
wxString m_baseStyle;
wxRichTextAttr m_style;
};
/*!
* wxRichTextCharacterStyleDefinition class declaration
*/
class WXDLLIMPEXP_ADV wxRichTextCharacterStyleDefinition: public wxRichTextStyleDefinition
{
DECLARE_DYNAMIC_CLASS(wxRichTextCharacterStyleDefinition)
public:
// Constructors
wxRichTextCharacterStyleDefinition(const wxString& name = wxEmptyString):
wxRichTextStyleDefinition(name) {}
~wxRichTextCharacterStyleDefinition() {}
protected:
};
/*!
* wxRichTextParagraphStyleDefinition class declaration
*/
class WXDLLIMPEXP_ADV wxRichTextParagraphStyleDefinition: public wxRichTextStyleDefinition
{
DECLARE_DYNAMIC_CLASS(wxRichTextParagraphStyleDefinition)
public:
// Constructors
wxRichTextParagraphStyleDefinition(const wxString& name = wxEmptyString):
wxRichTextStyleDefinition(name) {}
~wxRichTextParagraphStyleDefinition() {}
/// The next style.
void SetNextStyle(const wxString& name) { m_nextStyle = name; }
const wxString& GetNextStyle() const { return m_nextStyle; }
protected:
/// The next style to use when adding a paragraph after this style.
wxString m_nextStyle;
};
/*!
* The style sheet
*/
class WXDLLIMPEXP_ADV wxRichTextStyleSheet: public wxObject
{
DECLARE_CLASS( wxRichTextStyleSheet )
public:
/// Constructors
wxRichTextStyleSheet() { Init(); }
~wxRichTextStyleSheet() { DeleteStyles(); }
/// Initialisation
void Init();
/// Add a definition to the character style list
bool AddCharacterStyle(wxRichTextCharacterStyleDefinition* def) { return AddStyle(m_characterStyleDefinitions, def); }
/// Add a definition to the paragraph style list
bool AddParagraphStyle(wxRichTextParagraphStyleDefinition* def) { return AddStyle(m_paragraphStyleDefinitions, def); }
/// Remove a character style
bool RemoveCharacterStyle(wxRichTextStyleDefinition* def, bool deleteStyle = false) { return RemoveStyle(m_characterStyleDefinitions, def, deleteStyle); }
/// Remove a paragraph style
bool RemoveParagraphStyle(wxRichTextStyleDefinition* def, bool deleteStyle = false) { return RemoveStyle(m_characterStyleDefinitions, def, deleteStyle); }
/// Find a character definition by name
wxRichTextCharacterStyleDefinition* FindCharacterStyle(const wxString& name) const { return (wxRichTextCharacterStyleDefinition*) FindStyle(m_characterStyleDefinitions, name); }
/// Find a paragraph definition by name
wxRichTextParagraphStyleDefinition* FindParagraphStyle(const wxString& name) const { return (wxRichTextParagraphStyleDefinition*) FindStyle(m_characterStyleDefinitions, name); }
/// Return the number of character styes.
size_t GetCharacterStyleCount() const { return m_characterStyleDefinitions.GetCount(); }
/// Return the number of paragraph styes.
size_t GetParagraphStyleCount() const { return m_paragraphStyleDefinitions.GetCount(); }
/// Return the nth character style
wxRichTextCharacterStyleDefinition* GetCharacterStyle(size_t n) const { return (wxRichTextCharacterStyleDefinition*) m_characterStyleDefinitions.Item(n)->GetData(); }
/// Return the nth paragraph style
wxRichTextParagraphStyleDefinition* GetParagraphStyle(size_t n) const { return (wxRichTextParagraphStyleDefinition*) m_paragraphStyleDefinitions.Item(n)->GetData(); }
/// Delete all styles
void DeleteStyles();
/// Implementation
/// Add a definition to one of the style lists
bool AddStyle(wxList& list, wxRichTextStyleDefinition* def);
/// Remove a style
bool RemoveStyle(wxList& list, wxRichTextStyleDefinition* def, bool deleteStyle);
/// Find a definition by name
wxRichTextStyleDefinition* FindStyle(const wxList& list, const wxString& name) const;
protected:
wxList m_characterStyleDefinitions;
wxList m_paragraphStyleDefinitions;
};
#if wxUSE_HTML
/*!
* wxRichTextStyleListBox class declaration
* A listbox to display styles.
*/
class WXDLLIMPEXP_ADV wxRichTextStyleListBox: public wxHtmlListBox
{
DECLARE_CLASS(wxRichTextStyleListBox)
DECLARE_EVENT_TABLE()
public:
wxRichTextStyleListBox(wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = 0);
~wxRichTextStyleListBox();
/// Returns the HTML for this item
virtual wxString OnGetItem(size_t n) const;
/// Creates a suitable HTML fragment for a definition
wxString CreateHTML(wxRichTextStyleDefinition* def) const;
/// Associates the control with a style manager
void SetStyleSheet(wxRichTextStyleSheet* styleSheet) { m_styleSheet = styleSheet; }
wxRichTextStyleSheet* GetStyleSheet() const { return m_styleSheet; }
/// Associates the control with a wxRichTextCtrl
void SetRichTextCtrl(wxRichTextCtrl* ctrl) { m_richTextCtrl = ctrl; }
wxRichTextCtrl* GetRichTextCtrl() const { return m_richTextCtrl; }
// Get style for index
wxRichTextStyleDefinition* GetStyle(size_t i) const ;
/// Updates the list
void UpdateStyles();
/// React to selection
void OnSelect(wxCommandEvent& event);
/// Left click
void OnLeftDown(wxMouseEvent& event);
#if 0
virtual wxColour GetSelectedTextColour(const wxColour& colFg) const;
virtual wxColour GetSelectedTextBgColour(const wxColour& colBg) const;
#endif
// Convert units in tends of a millimetre to device units
int ConvertTenthsMMToPixels(wxDC& dc, int units) const;
private:
wxRichTextStyleSheet* m_styleSheet;
wxRichTextCtrl* m_richTextCtrl;
};
#endif
#endif
// wxUSE_RICHTEXT
#endif
// _WX_RICHTEXTSTYLES_H_

View File

@@ -0,0 +1,114 @@
/////////////////////////////////////////////////////////////////////////////
// Name: richeditxml.h
// Purpose: XML and HTML I/O for wxRichTextCtrl
// Author: Julian Smart
// Modified by:
// Created: 2005-09-30
// RCS-ID:
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_RICHTEXTXML_H_
#define _WX_RICHTEXTXML_H_
/*!
* Includes
*/
#include "wx/defs.h"
#if wxUSE_RICHTEXT
#include "wx/richtext/richtextbuffer.h"
/*!
* wxRichTextXMLHandler
*/
class WXDLLIMPEXP_XML wxXmlNode;
class WXDLLIMPEXP_ADV wxRichTextXMLHandler: public wxRichTextFileHandler
{
DECLARE_CLASS(wxRichTextXMLHandler)
public:
wxRichTextXMLHandler(const wxString& name = wxT("XML"), const wxString& ext = wxT("xml"), int type = wxRICHTEXT_TYPE_XML)
: wxRichTextFileHandler(name, ext, type)
{ }
#if wxUSE_STREAMS
virtual bool LoadFile(wxRichTextBuffer *buffer, wxInputStream& stream);
virtual bool SaveFile(wxRichTextBuffer *buffer, wxOutputStream& stream);
/// Recursively export an object
bool ExportXML(wxOutputStream& stream, wxMBConv* convMem, wxMBConv* convFile, wxRichTextObject& obj, int level);
/// Recursively import an object
bool ImportXML(wxRichTextBuffer* buffer, wxXmlNode* node);
/// Create style parameters
wxString CreateStyle(const wxTextAttrEx& attr, bool isPara = false);
/// Get style parameters
bool GetStyle(wxTextAttrEx& attr, wxXmlNode* node, bool isPara = false);
#endif
/// Can we save using this handler?
virtual bool CanSave() const { return true; }
/// Can we load using this handler?
virtual bool CanLoad() const { return true; }
// Implementation
bool HasParam(wxXmlNode* node, const wxString& param);
wxXmlNode *GetParamNode(wxXmlNode* node, const wxString& param);
wxString GetNodeContent(wxXmlNode *node);
wxString GetParamValue(wxXmlNode *node, const wxString& param);
wxString GetText(wxXmlNode *node, const wxString& param = wxEmptyString, bool translate = false);
protected:
};
/*!
* wxRichTextHTMLHandler
*/
class WXDLLIMPEXP_ADV wxRichTextHTMLHandler: public wxRichTextFileHandler
{
DECLARE_CLASS(wxRichTextHTMLHandler)
public:
wxRichTextHTMLHandler(const wxString& name = wxT("HTML"), const wxString& ext = wxT("html"), int type = wxRICHTEXT_TYPE_HTML)
: wxRichTextFileHandler(name, ext, type)
{ }
#if wxUSE_STREAMS
virtual bool LoadFile(wxRichTextBuffer *buffer, wxInputStream& stream);
virtual bool SaveFile(wxRichTextBuffer *buffer, wxOutputStream& stream);
#endif
/// Can we save using this handler?
virtual bool CanSave() const { return true; }
/// Can we load using this handler?
virtual bool CanLoad() const { return false; }
/// Can we handle this filename (if using files)? By default, checks the extension.
virtual bool CanHandle(const wxString& filename) const;
/// Output character formatting
virtual void OutputCharacterFormatting(const wxTextAttrEx& currentStyle, const wxTextAttrEx& thisStyle, wxOutputStream& stream, bool start);
/// Output paragraph formatting
virtual void OutputParagraphFormatting(const wxTextAttrEx& currentStyle, const wxTextAttrEx& thisStyle, wxOutputStream& stream, bool start);
protected:
};
#endif
// wxUSE_RICHTEXT
#endif
// _WX_RICHTEXTXML_H_

View File

@@ -857,6 +857,14 @@
// Recommended setting: 1 if you intend to use OpenGL, 0 otherwise // Recommended setting: 1 if you intend to use OpenGL, 0 otherwise
#define wxUSE_GLCANVAS 0 #define wxUSE_GLCANVAS 0
// wxRichTextCtrl allows editing of styled text.
//
// Default is 1.
//
// Recommended setting: 1, set to 0 if you want compile a
// smaller library.
#define wxUSE_RICHTEXT 1
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// Data transfer // Data transfer
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------

View File

@@ -0,0 +1,198 @@
# =========================================================================
# This makefile was generated by
# Bakefile 0.1.9 (http://bakefile.sourceforge.net)
# Do not modify, all changes will be overwritten!
# =========================================================================
@MAKE_SET@
prefix = @prefix@
exec_prefix = @exec_prefix@
INSTALL = @INSTALL@
EXEEXT = @EXEEXT@
RESCOMP = @RESCOMP@
SETFILE = @SETFILE@
NM = @NM@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
LDFLAGS_GUI = @LDFLAGS_GUI@
CXX = @CXX@
CXXFLAGS = @CXXFLAGS@
CPPFLAGS = @CPPFLAGS@
LDFLAGS = @LDFLAGS@
WX_LIB_FLAVOUR = @WX_LIB_FLAVOUR@
TOOLKIT = @TOOLKIT@
TOOLKIT_LOWERCASE = @TOOLKIT_LOWERCASE@
TOOLKIT_VERSION = @TOOLKIT_VERSION@
EXTRALIBS = @EXTRALIBS@
EXTRALIBS_XML = @EXTRALIBS_XML@
EXTRALIBS_HTML = @EXTRALIBS_HTML@
EXTRALIBS_GUI = @EXTRALIBS_GUI@
EXTRALIBS_SDL = @EXTRALIBS_SDL@
HOST_SUFFIX = @HOST_SUFFIX@
SAMPLES_RPATH_FLAG = @SAMPLES_RPATH_FLAG@
SAMPLES_RPATH_POSTLINK = @SAMPLES_RPATH_POSTLINK@
### Variables: ###
DESTDIR =
WX_RELEASE = 2.7
WX_VERSION = $(WX_RELEASE).0
LIBDIRNAME = $(top_builddir)lib
RICHTEXT_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \
$(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \
-I$(srcdir) $(__DLLFLAG_p) -I$(srcdir)/../../samples $(CPPFLAGS) $(CXXFLAGS)
RICHTEXT_OBJECTS = \
$(__richtext_os2_lib_res) \
richtext_richtext.o \
$(__richtext___win32rc)
### Conditionally set variables: ###
@COND_DEPS_TRACKING_0@CXXC = $(CXX)
@COND_DEPS_TRACKING_1@CXXC = $(top_builddir)./bk-deps $(CXX)
@COND_USE_PLUGINS_0@PLUGIN_ADV_EXTRALIBS = $(EXTRALIBS_SDL)
@COND_USE_GUI_0@PORTNAME = base
@COND_USE_GUI_1@PORTNAME = $(TOOLKIT_LOWERCASE)$(TOOLKIT_VERSION)
@COND_TOOLKIT_MAC@WXBASEPORT = _carbon
@COND_BUILD_DEBUG_DEBUG_FLAG_DEFAULT@WXDEBUGFLAG = d
@COND_DEBUG_FLAG_1@WXDEBUGFLAG = d
@COND_UNICODE_1@WXUNICODEFLAG = u
@COND_WXUNIV_1@WXUNIVNAME = univ
@COND_MONOLITHIC_0@EXTRALIBS_FOR_BASE = $(EXTRALIBS)
@COND_MONOLITHIC_1@EXTRALIBS_FOR_BASE = $(EXTRALIBS) $(EXTRALIBS_GUI)
@COND_MONOLITHIC_0@EXTRALIBS_FOR_GUI = $(EXTRALIBS_GUI)
@COND_MONOLITHIC_1@EXTRALIBS_FOR_GUI =
@COND_PLATFORM_MAC_1@__richtext___mac_setfilecmd = \
@COND_PLATFORM_MAC_1@ $(SETFILE) -a C richtext$(EXEEXT)
@COND_PLATFORM_MAC_1@__richtext___mac_rezcmd = $(__MACOSX_RESOURCES_p_1)
@COND_WXUNIV_1@__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__
@COND_WXUNIV_1@__WXUNIV_DEFINE_p_1 = -d __WXUNIVERSAL__
@COND_WXUNIV_1@__WXUNIV_DEFINE_p_2 = --define __WXUNIVERSAL__
@COND_USE_EXCEPTIONS_0@__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS
@COND_USE_EXCEPTIONS_0@__EXCEPTIONS_DEFINE_p_1 = -d wxNO_EXCEPTIONS
@COND_USE_EXCEPTIONS_0@__EXCEPTIONS_DEFINE_p_2 = --define wxNO_EXCEPTIONS
@COND_USE_RTTI_0@__RTTI_DEFINE_p = -DwxNO_RTTI
@COND_USE_RTTI_0@__RTTI_DEFINE_p_1 = -d wxNO_RTTI
@COND_USE_RTTI_0@__RTTI_DEFINE_p_2 = --define wxNO_RTTI
@COND_USE_THREADS_0@__THREAD_DEFINE_p = -DwxNO_THREADS
@COND_USE_THREADS_0@__THREAD_DEFINE_p_1 = -d wxNO_THREADS
@COND_USE_THREADS_0@__THREAD_DEFINE_p_2 = --define wxNO_THREADS
@COND_SHARED_1@__DLLFLAG_p = -DWXUSINGDLL
@COND_SHARED_1@__DLLFLAG_p_1 = -d WXUSINGDLL
@COND_SHARED_1@__DLLFLAG_p_2 = --define WXUSINGDLL
COND_PLATFORM_OS2_1___richtext___os2_emxbindcmd = $(NM) richtext$(EXEEXT) | if \
grep -q pmwin.763 ; then emxbind -ep richtext$(EXEEXT) ; fi
@COND_PLATFORM_OS2_1@__richtext___os2_emxbindcmd = $(COND_PLATFORM_OS2_1___richtext___os2_emxbindcmd)
@COND_PLATFORM_OS2_1@__richtext_os2_lib_res = \
@COND_PLATFORM_OS2_1@ $(top_srcdir)/include/wx/os2/wx.res
@COND_PLATFORM_MACOSX_1@__richtext_bundle___depname = richtext_bundle
@COND_TOOLKIT_COCOA@____richtext_BUNDLE_TGT_REF_DEP = \
@COND_TOOLKIT_COCOA@ richtext.app/Contents/PkgInfo
@COND_TOOLKIT_MAC@____richtext_BUNDLE_TGT_REF_DEP = \
@COND_TOOLKIT_MAC@ richtext.app/Contents/PkgInfo
COND_MONOLITHIC_0___WXLIB_ADV_p = \
-lwx_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv-$(WX_RELEASE)$(HOST_SUFFIX)
@COND_MONOLITHIC_0@__WXLIB_ADV_p = $(COND_MONOLITHIC_0___WXLIB_ADV_p)
COND_MONOLITHIC_0___WXLIB_XML_p = \
-lwx_base$(WXBASEPORT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml-$(WX_RELEASE)$(HOST_SUFFIX)
@COND_MONOLITHIC_0@__WXLIB_XML_p = $(COND_MONOLITHIC_0___WXLIB_XML_p)
COND_MONOLITHIC_0___WXLIB_HTML_p = \
-lwx_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_html-$(WX_RELEASE)$(HOST_SUFFIX)
@COND_MONOLITHIC_0@__WXLIB_HTML_p = $(COND_MONOLITHIC_0___WXLIB_HTML_p)
COND_MONOLITHIC_0___WXLIB_CORE_p = \
-lwx_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core-$(WX_RELEASE)$(HOST_SUFFIX)
@COND_MONOLITHIC_0@__WXLIB_CORE_p = $(COND_MONOLITHIC_0___WXLIB_CORE_p)
COND_MONOLITHIC_0___WXLIB_BASE_p = \
-lwx_base$(WXBASEPORT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
@COND_MONOLITHIC_0@__WXLIB_BASE_p = $(COND_MONOLITHIC_0___WXLIB_BASE_p)
@COND_PLATFORM_WIN32_1@__richtext___win32rc = richtext_richtext_rc.o
COND_MONOLITHIC_1___WXLIB_MONO_p = \
-lwx_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
@COND_MONOLITHIC_1@__WXLIB_MONO_p = $(COND_MONOLITHIC_1___WXLIB_MONO_p)
@COND_USE_GUI_1_WXUSE_LIBTIFF_BUILTIN@__LIB_TIFF_p \
@COND_USE_GUI_1_WXUSE_LIBTIFF_BUILTIN@ = \
@COND_USE_GUI_1_WXUSE_LIBTIFF_BUILTIN@ -lwxtiff$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
@COND_USE_GUI_1_WXUSE_LIBJPEG_BUILTIN@__LIB_JPEG_p \
@COND_USE_GUI_1_WXUSE_LIBJPEG_BUILTIN@ = \
@COND_USE_GUI_1_WXUSE_LIBJPEG_BUILTIN@ -lwxjpeg$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
@COND_USE_GUI_1_WXUSE_LIBPNG_BUILTIN@__LIB_PNG_p \
@COND_USE_GUI_1_WXUSE_LIBPNG_BUILTIN@ = \
@COND_USE_GUI_1_WXUSE_LIBPNG_BUILTIN@ -lwxpng$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
@COND_WXUSE_ZLIB_BUILTIN@__LIB_ZLIB_p = \
@COND_WXUSE_ZLIB_BUILTIN@ -lwxzlib$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
@COND_WXUSE_ODBC_BUILTIN@__LIB_ODBC_p = \
@COND_WXUSE_ODBC_BUILTIN@ -lwxodbc$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
COND_WXUSE_REGEX_BUILTIN___LIB_REGEX_p = \
-lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
@COND_WXUSE_REGEX_BUILTIN@__LIB_REGEX_p = $(COND_WXUSE_REGEX_BUILTIN___LIB_REGEX_p)
@COND_WXUSE_EXPAT_BUILTIN@__LIB_EXPAT_p = \
@COND_WXUSE_EXPAT_BUILTIN@ -lwxexpat$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
COND_TOOLKIT_MAC___MACOSX_RESOURCES_p_1 = $(RESCOMP) -d __DARWIN__ -t APPL -d \
__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) \
$(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) -i $(srcdir) $(__DLLFLAG_p_1) -i \
$(srcdir)/../../samples -i $(top_srcdir)/include -o richtext$(EXEEXT) \
Carbon.r sample.r
@COND_TOOLKIT_MAC@__MACOSX_RESOURCES_p_1 = $(COND_TOOLKIT_MAC___MACOSX_RESOURCES_p_1)
### Targets: ###
all: richtext$(EXEEXT) $(__richtext_bundle___depname)
install: all
uninstall:
install-strip: install
clean:
rm -rf ./.deps ./.pch
rm -f ./*.o
rm -f richtext$(EXEEXT)
rm -rf richtext.app
distclean: clean
rm -f config.cache config.log config.status bk-deps bk-make-pch shared-ld-sh Makefile
richtext$(EXEEXT): $(RICHTEXT_OBJECTS) $(__richtext___win32rc)
$(CXX) -o $@ $(RICHTEXT_OBJECTS) $(LDFLAGS) -L$(LIBDIRNAME) $(LDFLAGS_GUI) $(SAMPLES_RPATH_FLAG) $(__WXLIB_ADV_p) $(PLUGIN_ADV_EXTRALIBS) $(__WXLIB_XML_p) $(EXTRALIBS_XML) $(__WXLIB_HTML_p) $(EXTRALIBS_HTML) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) $(__LIB_ZLIB_p) $(__LIB_ODBC_p) $(__LIB_REGEX_p) $(__LIB_EXPAT_p) $(EXTRALIBS_FOR_BASE) $(EXTRALIBS_FOR_GUI)
$(__richtext___mac_rezcmd)
$(__richtext___mac_setfilecmd)
$(__richtext___os2_emxbindcmd)
$(SAMPLES_RPATH_POSTLINK)
richtext.app/Contents/PkgInfo: richtext$(EXEEXT) $(top_srcdir)/src/mac/carbon/Info.plist.in $(top_srcdir)/src/mac/carbon/wxmac.icns
mkdir -p richtext.app/Contents
mkdir -p richtext.app/Contents/MacOS
mkdir -p richtext.app/Contents/Resources
sed -e "s/IDENTIFIER/`echo $(srcdir) | sed -e 's,\.\./,,g' | sed -e 's,/,.,g'`/" \
-e "s/EXECUTABLE/richtext/" \
-e "s/VERSION/$(WX_VERSION)/" \
$(top_srcdir)/src/mac/carbon/Info.plist.in >richtext.app/Contents/Info.plist
echo -n "APPL????" >richtext.app/Contents/PkgInfo
ln -f richtext$(EXEEXT) richtext.app/Contents/MacOS/richtext
cp -f $(top_srcdir)/src/mac/carbon/wxmac.icns richtext.app/Contents/Resources/wxmac.icns
@COND_PLATFORM_MACOSX_1@richtext_bundle: $(____richtext_BUNDLE_TGT_REF_DEP)
richtext_richtext.o: $(srcdir)/richtext.cpp
$(CXXC) -c -o $@ $(RICHTEXT_CXXFLAGS) $(srcdir)/richtext.cpp
richtext_richtext_rc.o: $(srcdir)/richtext.rc
$(RESCOMP) -i$< -o$@ --define __WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p_2) $(__EXCEPTIONS_DEFINE_p_2) $(__RTTI_DEFINE_p_2) $(__THREAD_DEFINE_p_2) --include-dir $(srcdir) $(__DLLFLAG_p_2) --include-dir $(srcdir)/../../samples --include-dir $(top_srcdir)/include
# Include dependency info, if present:
@IF_GNU_MAKE@-include .deps/*.d
.PHONY: all install uninstall clean distclean richtext_bundle

View File

@@ -0,0 +1,24 @@
/* XPM */
static char *alignleft_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 2 1",
". c #4D4D4D",
" c None",
/* pixels */
" ",
" ",
" .............. ",
" ",
" .......... ",
" ",
" .............. ",
" ",
" .......... ",
" ",
" .............. ",
" ",
" .......... ",
" ",
" ",
" "
};

View File

@@ -0,0 +1,24 @@
/* XPM */
static char *alignright_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 2 1",
". c #4D4D4D",
" c None",
/* pixels */
" ",
" ",
" .............. ",
" ",
" .......... ",
" ",
" .............. ",
" ",
" .......... ",
" ",
" .............. ",
" ",
" .......... ",
" ",
" ",
" "
};

View File

@@ -0,0 +1,24 @@
/* XPM */
static char *bold_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 2 1",
". c Black",
" c None",
/* pixels */
" ",
" ",
" ",
" ........ ",
" ... ... ",
" ... ... ",
" ... ... ",
" ....... ",
" ... ... ",
" ... ... ",
" ... ... ",
" ........ ",
" ",
" ",
" ",
" "
};

View File

@@ -0,0 +1,24 @@
/* XPM */
static char *centre_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 2 1",
". c #4D4D4D",
" c None",
/* pixels */
" ",
" ",
" .............. ",
" ",
" .......... ",
" ",
" .............. ",
" ",
" .......... ",
" ",
" .............. ",
" ",
" .......... ",
" ",
" ",
" "
};

View File

@@ -0,0 +1,44 @@
/* XPM */
static char *copy_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 15 23 1",
"o c #97C4E7",
"* c #FFFFFF",
"@ c #60A9DA",
"= c #D1E5F5",
"& c #C3DDF1",
". c #7EA6C0",
" c None",
"X c #2F93CD",
"O c #85BBE2",
", c #EFF6FC",
"; c #DEEDF8",
"+ c #72B2DD",
"3 c #F7FBFD",
"4 c #FAFCFE",
": c #DAEAF7",
"< c #E9F3FA",
"1 c #E2EFF8",
"- c #FDFDFE",
"% c #B6D5EE",
"$ c #A5CCEA",
"> c #E5F0F9",
"# c #AFD1EC",
"2 c #F4F9FD",
/* pixels */
" .....XX ",
" .oO+@X#X ",
" .$oO+X##X ",
" .%$o........ ",
" .&%$.*=&#o.-. ",
" .=&%.*;=&#.--. ",
" .:=&.*>;=&.... ",
" .>:=.*,>;=&#o. ",
" .<1:.*2,>:=&#. ",
" .2<1.*32,>:=&. ",
" .32<.*432,>:=. ",
" .32<.*-432,>:. ",
" .....**-432,>. ",
" .***-432,. ",
" .......... "
};

View File

@@ -0,0 +1,46 @@
/* XPM */
static char *cut_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 15 25 1",
"6 c #D8BDC0",
": c #C3C3C4",
"- c #FFFFFF",
". c #6C6D70",
"2 c #AD3A45",
"o c #DBDBDB",
"# c #939495",
"< c #E42234",
"& c #C3C5C8",
"; c #C6CCD3",
"% c #B7B7B8",
" c None",
"* c #DFE0E2",
"5 c #B69596",
"3 c #9C2A35",
"1 c #CFCFD0",
", c #AB5C64",
"+ c #D2D3D4",
"$ c #BCBDBE",
"@ c #C6C8CA",
"> c #CDC0C1",
"O c #826F72",
"X c #979BA0",
"4 c #9B8687",
"= c #9FA0A0",
/* pixels */
" .X .o ",
" O.+ @. ",
" O. .. ",
" O#$ %.& ",
" O.*.. ",
" #%#.. ",
" O=-.. ",
" #%#;. ",
" OO:=O ",
" >,,<, ,<,,1 ",
" ><23<1 1<32<1 ",
" ,2 4< <5 2, ",
" <, ,2 2, ,< ",
" 23,<5 5<,32 ",
" 6225 522> "
};

View File

@@ -0,0 +1,25 @@
/* XPM */
static char *font_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 3 1",
"X c #A6A6A6",
" c None",
". c #4D4DA6",
/* pixels */
" ",
" ",
" . ",
" X.X ",
" ... ",
" X...X ",
" .. .. ",
" X. ..X ",
" ....... ",
" X. ..X ",
" .. X.. ",
" X. X..X ",
" .... ...... ",
" ",
" ",
" "
};

View File

@@ -0,0 +1,47 @@
/* XPM */
static char *idea_xpm[] = {
/* columns rows colors chars-per-pixel */
"32 32 9 1",
"$ c Black",
"O c #FFFFFF",
"@ c #808080",
"+ c #000080",
"o c #E8EB01",
" c None",
"X c #FFFF40",
"# c #C0C0C0",
". c #ABAD01",
/* pixels */
" ",
" ..... ",
" ..XXXXX.. ",
" ..XXXXXXXXo.. ",
" .XXXOXXXXXXXoo. ",
" .XOOXXX+XXXXXo. ",
" .XOOOXX+++XXXXoo. ",
" .XOOXXX+++XXXXXo. ",
" .XOOOXXX+++XXXXXXo. ",
" .XOOXXXX+++XXXXXXo. ",
" .XXXXXXX+++XXXXXXX. ",
" .XXXXXXX+++XXXXXXo. ",
" .XXXXXXX+++XXXXXoo. ",
" .XXXXXX+++XXXXXo. ",
" .XXXXXXX+XXXXXXo. ",
" .XXXXXXXXXXXXo. ",
" .XXXXX+++XXXoo. ",
" .XXXX+++XXoo. ",
" .XXXXXXXXo. ",
" ..XXXXXXo.. ",
" .XXXXXo.. ",
" @#######@ ",
" @@@@@@@@@ ",
" @#######@ ",
" @@@@@@@@@ ",
" @#######@ ",
" @@@@@@@ ",
" ### ",
" $$$ ",
" ",
" ",
" "
};

View File

@@ -0,0 +1,25 @@
/* XPM */
static char *indentless_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 3 1",
". c #4D4D4D",
" c None",
"X c #4D4DA6",
/* pixels */
" . ",
" ",
" .... .........",
" ",
" X .........",
" XX .........",
"XXXXX ",
" XX ...... ",
" X ...... ",
" ",
" .... .........",
" ",
" .... .. ",
" ",
" . ",
" "
};

View File

@@ -0,0 +1,25 @@
/* XPM */
static char *indentmore_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 3 1",
". c #4D4D4D",
" c None",
"X c #4D4DA6",
/* pixels */
" . ",
" ",
" .... .........",
" ",
" X .........",
" XX .........",
"XXXXX ",
" XX ...... ",
" X ...... ",
" ",
" .... .........",
" ",
" .... .. ",
" ",
" . ",
" "
};

View File

@@ -0,0 +1,25 @@
/* XPM */
static char *italic_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 3 1",
". c Black",
"X c #A6A6A6",
" c None",
/* pixels */
" ",
" ",
" ",
" ..... ",
" ..X ",
" X.. ",
" ..X ",
" X.. ",
" ..X ",
" X.. ",
" ..X ",
" ...... ",
" ",
" ",
" ",
" "
};

View File

@@ -0,0 +1,57 @@
/* XPM */
static char *open_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 15 36 1",
"6 c #9BACC2",
"< c #9AEA53",
"9 c #94A5BD",
"5 c #839CB5",
"; c #4D7492",
". c #376485",
"$ c #7F99B4",
"r c #D1D9E5",
"7 c #EAEDF3",
"@ c #CAD2DC",
"% c #718BA7",
"t c #BECAD9",
"& c #65839D",
"0 c #DCE2EA",
"4 c #F5F6F7",
"w c #597B9A",
"O c #8DA0B9",
" c None",
"+ c #467291",
"u c #305F81",
"= c #B4C4D3",
"# c #CAE2AA",
"1 c #FAFCFE",
"3 c #A8B6CA",
"q c #E4E9ED",
"8 c #EEF1F3",
"X c #215579",
"2 c #7F97B0",
": c #B3BFD1",
"y c #7A90AC",
", c #C2CBDB",
"- c #ADD668",
"* c #B6D791",
"e c #CAD6E1",
"o c #DFF0D0",
"> c #BBC4D6",
/* pixels */
" ",
" .... ",
"XXXXX .oo. ",
"XOOOO+@.#o. ",
"XOOOO$%&.*oXXX ",
"XOOOOOOO.*oX=X ",
"XOXXXX...-oXXXX;",
"XOX:>,.<<<<<oX1;",
"X2X3:>,.<<<oX4=;",
"XX563:>>.<oX78; ",
"XXO963:>>.X0q7; ",
"Xw2O963:>>er0t; ",
"X&y2O963:>,er; ",
"uXXXXXXXXXXXX; ",
" "
};

View File

@@ -0,0 +1,46 @@
/* XPM */
static char *paste_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 15 25 1",
"< c #FEECE4",
"> c #FEE3D7",
"O c #FFFFFF",
"o c #7B767D",
"% c #F79586",
"& c #CAE1F3",
"@ c #F08B62",
"# c #FCCBB8",
"- c #FDD8C9",
"4 c #FFF8F4",
"5 c #FFF5F0",
" c None",
"$ c #F8AA8F",
", c #EFF6FC",
"1 c #F7FBFD",
"2 c #FAFCFE",
"; c #DAEAF7",
": c #E9F3FA",
"6 c #FFFAF8",
". c #3C78A6",
"3 c #FFF1ED",
"X c #9B8687",
"+ c #FBBCA4",
"* c #B6D5EE",
"= c #F4F9FD",
/* pixels */
" ...... ",
" .XoOOOOoo. ",
".+XOOOOOOX@. ",
".+XXXXXXXX@. ",
".#++$$%@..... ",
".##++$$%.&*.=. ",
".-##++$$.;&.==. ",
".--##++$.:;.... ",
".>--##++.,:;&*. ",
".<>--##+.1,:;&. ",
".<<>--##.21,:;. ",
".3<<>--#.O21=:. ",
".45<<>--....... ",
".6453<>----. ",
"............ "
};

View File

@@ -0,0 +1,58 @@
/* XPM */
static char *redo_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 15 37 1",
"4 c #9BACC2",
"; c #4C7398",
"3 c #547B99",
"* c #547897",
"# c #5A89A6",
"8 c #3A749C",
"5 c #5A809C",
", c #7F99B4",
"& c #3F6F93",
"9 c #85A7BC",
"+ c #749BB4",
"> c #718BA7",
"e c #A5B3C8",
"w c #BECAD9",
": c #65839D",
"u c #E1E6EE",
"o c #236289",
"r c #ADBED2",
"= c #597B9A",
"2 c #8DA0B9",
" c None",
"% c #467291",
"1 c #7393AB",
"i c #4C809F",
"- c #A0BACB",
"O c #6591AE",
"X c #407598",
"6 c #6F90A6",
"t c #D2D9E0",
"7 c #ADBACE",
"@ c #326A8F",
"0 c #467A9C",
". c #ACC4D3",
"< c #7F97B0",
"y c #B3BFD1",
"q c #A2B3C5",
"$ c #8FB0C3",
/* pixels */
" .XoooO ",
" +o@@@@@o# +",
" $@%%&@&%%&@ +o",
" X*=@+-+@*=;@#&@",
" @:=+ @=:=*:@",
" &>:$ @:>>>@",
" &,<X X>,,,&",
" +123 @<2222&",
" X44X #@56<44X",
" O1748 .9#&o",
" 0qwe8 ",
" 8rty8 ",
" 8wu+ ",
" i## ",
" "
};

View File

@@ -0,0 +1,44 @@
/* XPM */
static const char *sample_xpm[] = {
/* columns rows colors chars-per-pixel */
"32 32 6 1",
" c black",
". c navy",
"X c red",
"o c yellow",
"O c gray100",
"+ c None",
/* pixels */
"++++++++++++++++++++++++++++++++",
"++++++++++++++++++++++++++++++++",
"++++++++++++++++++++++++++++++++",
"++++++++++++++++++++++++++++++++",
"++++++++++++++++++++++++++++++++",
"++++++++ ++++++++++",
"++++++++ ............ ++++++++++",
"++++++++ ............ ++++++++++",
"++++++++ .OO......... ++++++++++",
"++++++++ .OO......... ++++++++++",
"++++++++ .OO......... ++++++++++",
"++++++++ .OO...... ",
"++++++++ .OO...... oooooooooooo ",
" .OO...... oooooooooooo ",
" XXXXXXX .OO...... oOOooooooooo ",
" XXXXXXX .OO...... oOOooooooooo ",
" XOOXXXX ......... oOOooooooooo ",
" XOOXXXX ......... oOOooooooooo ",
" XOOXXXX oOOooooooooo ",
" XOOXXXXXXXXX ++++ oOOooooooooo ",
" XOOXXXXXXXXX ++++ oOOooooooooo ",
" XOOXXXXXXXXX ++++ oOOooooooooo ",
" XOOXXXXXXXXX ++++ oooooooooooo ",
" XOOXXXXXXXXX ++++ oooooooooooo ",
" XXXXXXXXXXXX ++++ ",
" XXXXXXXXXXXX ++++++++++++++++++",
" ++++++++++++++++++",
"++++++++++++++++++++++++++++++++",
"++++++++++++++++++++++++++++++++",
"++++++++++++++++++++++++++++++++",
"++++++++++++++++++++++++++++++++",
"++++++++++++++++++++++++++++++++"
};

View File

@@ -0,0 +1,42 @@
/* XPM */
static char *save_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 15 21 1",
"O c #FFFFFF",
"> c #D5D6D8",
"; c #446A8C",
"1 c #CAD2DC",
": c #C0C7D1",
" c #5F666D",
"% c #A5B0BA",
"o c #65839D",
", c #DCE2EA",
"< c #C3C5C8",
"- c #E1E6EE",
"* c #C6CCD3",
". c None",
"$ c #305F81",
"2 c #D6DFE7",
"= c #D2D9E0",
"& c #B7BFC7",
"X c #1B4467",
"# c #BCBDBE",
"@ c #7A90AC",
"+ c #5D7C93",
/* pixels */
" .",
" XoOOOOOOOOO+X .",
" @oO#######O+@ .",
" @oOOOOOOOOO+@ .",
" @oO#######O+@ .",
" @oOOOOOOOOO+@ .",
" @@+++++++++@@ .",
" @@@@@@@@@@@@@ .",
" @@@$$$$$$$$@@ .",
" @@$%%%&*=-O$@ .",
" @@$%X;;*=-O$@ .",
" @@$%X;;:>,O$@ .",
" @@$%X;;<12O$@ .",
" @@$<<2OOOOO$@ .",
". .."
};

View File

@@ -0,0 +1,42 @@
/* XPM */
static char *smiley_xpm[] = {
/* columns rows colors chars-per-pixel */
"32 32 4 1",
". c Black",
"X c #FFFF00",
" c None",
"o c #C00000",
/* pixels */
" ",
" ..... ",
" ...XXXXX... ",
" ..XXXXXXXXXXX.. ",
" .XXXXXXXXXXXXXXX. ",
" ..XXXXXXXXXXXXXXXXX.. ",
" .XXXXXXXXXXXXXXXXXXXX. ",
" .XXXXXX.XXXXXXX.XXXXXX. ",
" .XXXXXX.X.XXXXX.X.XXXXXX. ",
" .XXXXX.XXX.XXX.XXX.XXXXXX. ",
" .XXXXX.XXXXXXXXXXXXX.XXXXX. ",
" .XXXXXXXX.XXXXXXX.XXXXXXXX. ",
" .XXXXXXXX.XXXXXXX.XXXXXXXX. ",
" .XXXXXXXXXXXXXXXXXXXXXXXXXXX. ",
" .XXXXXXXXXXXXXXXXXXXXXXXXXXX. ",
" .XXXXXXXXXXXXXXXXXXXXXXXXXXX. ",
" .XXXXXXXXXXXXXXXXXXXXXXXXXXX. ",
" .XXXXXXX.XXXXXXXXXXX.XXXXXXX. ",
" .XXXXXX...XXXXXXX...XXXXXX. ",
" .XXXXXX.oo..XXX..oo.XXXXXX. ",
" .XXXXXXX.ooo...ooo.XXXXXXX. ",
" .XXXXXXX.ooooooo.XXXXXXXX. ",
" .XXXXXXXX..ooo..XXXXXXXX. ",
" .XXXXXXXXX...XXXXXXXXX. ",
" .XXXXXXXXXXXXXXXXXXXX. ",
" ..XXXXXXXXXXXXXXXXX.. ",
" .XXXXXXXXXXXXXXX. ",
" ..XXXXXXXXXXX.. ",
" ...XXXXX... ",
" ..... ",
" ",
" "
};

View File

@@ -0,0 +1,25 @@
/* XPM */
static char *underline_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 3 1",
". c Black",
"X c #A6A6A6",
" c None",
/* pixels */
" ",
" ",
" ",
" .... .... ",
" .. .. ",
" .. .. ",
" .. .. ",
" .. .. ",
" .. .. ",
" .. .. ",
" ..X X.. ",
" ..... ",
" ",
" ......... ",
" ",
" "
};

View File

@@ -0,0 +1,58 @@
/* XPM */
static char *undo_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 15 37 1",
"4 c #9BACC2",
"* c #4C7398",
"2 c #547B99",
"- c #547897",
"@ c #5A89A6",
"8 c #3A749C",
"6 c #5A809C",
", c #7F99B4",
"$ c #3F6F93",
"7 c #85A7BC",
"+ c #749BB4",
"> c #718BA7",
"0 c #A5B3C8",
"q c #BECAD9",
": c #65839D",
"u c #E1E6EE",
"X c #236289",
"y c #ADBED2",
"= c #597B9A",
"1 c #8DA0B9",
" c None",
"% c #467291",
"3 c #7393AB",
"i c #4C809F",
"; c #A0BACB",
". c #6591AE",
"o c #407598",
"5 c #6F90A6",
"t c #D2D9E0",
"9 c #ADBACE",
"# c #326A8F",
"e c #467A9C",
"O c #ACC4D3",
"< c #7F97B0",
"r c #B3BFD1",
"w c #A2B3C5",
"& c #8FB0C3",
/* pixels */
" .XXXoO ",
"+ @X#####X+ ",
"X+ #$%%$#$%%#& ",
"#$@#*=-#+;+#=-o ",
"#:-=:=# +=:# ",
"#>>>:# &:>$ ",
"$,,,>o o<,$ ",
"$1111<# 213+ ",
"o44<56#@ o44o ",
"X$@7O 8493. ",
" 80qwe ",
" 8rty8 ",
" +uq8 ",
" @@i ",
" "
};

View File

@@ -0,0 +1,409 @@
/* XPM */
static char *zebra_xpm[] = {
/* columns rows colors chars-per-pixel */
"200 167 236 2",
"` c #A68369",
" c #FCFEFC",
"). c #9AA45B",
"wX c #CBCEA4",
"0. c #C7CB71",
"aX c #5A7120",
"S. c #1E180D",
"+. c #D9CAAB",
"f. c #96A43B",
"L c #51501B",
"4. c #FAF2CF",
"tX c #401E0C",
"x. c #979459",
"&X c #B5835B",
"jX c #838D77",
"e c #3A3014",
"zX c #424734",
"z. c #DCBF7D",
"X. c #8E8D2F",
"o. c #939441",
"r. c #98785B",
"_. c #6E7828",
"W. c #748C28",
"E. c #D6C866",
"Z. c #ACAE61",
"T c #AAB460",
"yX c #3A3025",
"< c #D0BD89",
",. c #E6CDA4",
"/ c #A69147",
"^ c #97823C",
"qX c #4E4031",
"& c #998254",
"-X c #7C4829",
"P c #C5A287",
"kX c #54573D",
"8X c #ACBA94",
"%X c #A47150",
"'. c #7F7828",
"1. c #8C7056",
"U c #B9A088",
"Q. c #8F942E",
"B. c #C6A35F",
" . c #6A7818",
"X c #ECEDE1",
";X c #A77855",
"3X c #6E492C",
"$ c #95947A",
"bX c #142108",
"% c #99826B",
"vX c #1C2F0A",
"N. c #3A4710",
"[ c #A4B444",
"xX c #4A6012",
"w c #3E3816",
"9. c #9DAD31",
"m c #6E692B",
"x c #B5945B",
"H c #26310B",
"F. c #966644",
"3 c #D0B4A0",
"j. c #838F48",
"} c #A5BB39",
"M c #6F5029",
"F c #52680E",
"C. c #A6A544",
"; c #CEB18C",
"*. c #B4C748",
"= c #B8A175",
"=X c #603E1F",
"4 c #D9DBCC",
":X c #DCA47C",
"]. c #948C42",
"9 c #6E6028",
"I c #D1BEA3",
"s c #918B63",
"=. c #ACBC5E",
"R c #AABC49",
"l. c #4F351F",
"i. c #D8D06B",
"{ c #B6BE4F",
"v c #5F542F",
"|. c #F4E0C8",
"%. c #977052",
"A. c #939C3C",
".. c #44401B",
": c #E8D8B5",
"/. c #959C55",
"L. c #A69C45",
"c. c #BBC873",
"@ c #A8AB98",
"uX c #534F38",
"6 c #747D67",
"Y c #BBBF61",
"v. c #CEBF69",
"5 c #BCBEAC",
"K. c #7E7028",
"k. c #2D1D10",
"fX c #545F3F",
"k c #302712",
"+X c #C7CA8D",
"u c #96773F",
"p c #BAAC64",
"U. c #415010",
"y c #4E3F1F",
"4X c #81512C",
"<. c #8C785F",
", c #DEC1A2",
",X c #D1D8A8",
"J. c #44570E",
"6X c #6E5743",
"M. c #5F6517",
"7X c #727148",
"N c #A58354",
"lX c #2C3020",
"#. c #C1B399",
"R. c #9CA52B",
"t. c #737E43",
"+ c #C9CDC4",
"> c #E6CFB8",
"t c #6F6446",
"Y. c #59710E",
"dX c #5C7B10",
"W c #A1AC43",
"J c #7E7058",
"n c #836832",
"8 c #635F49",
"y. c #727161",
"z c #1E280B",
"2X c #DCB89A",
"q. c #81912B",
"u. c #BEC082",
"@X c #806149",
"2. c #F6DFB2",
"}. c #D49868",
":. c #728229",
"-. c #738C15",
"2 c #BFAD97",
"d. c #8E9D27",
"@. c #D9CB8A",
"~ c #5F5617",
"V. c #A1AC60",
"5. c #E6DA83",
"w. c #444815",
"C c #E8E9CD",
"K c #83684F",
"oX c #82783C",
"g. c #546113",
"b c #5E4931",
"f c #878259",
"`. c #6E8216",
"h c #89826F",
"OX c #B58D5E",
"5X c #C6905C",
"*X c #749314",
"8. c #9EB331",
"rX c #714025",
"#X c #7E583C",
"!. c #DCD8B1",
"| c #8FA426",
";. c #60632B",
"g c #A99179",
"E c #94AB37",
"eX c #5E402E",
"l c #3E2813",
"O c #D9CEBE",
"iX c #413828",
"S c #B9C75B",
"0 c #5F5643",
") c #E6CE8E",
"D. c #B5A448",
".X c #ECB684",
"I. c #819C18",
"{. c #7E9219",
"hX c #4A563A",
"0X c #80785B",
"i c #B7A15D",
". c #F5EFE2",
"h. c #1F200E",
"XX c #84A317",
"3. c #E9DEB3",
"1X c #9C9F8E",
"gX c #636748",
"<X c #68361A",
"[. c #84833A",
"! c #505815",
"G. c #2B3F0A",
"e. c #CEB569",
"d c #83703C",
"* c #A88F62",
"q c #4F481E",
"- c #C1AC86",
"j c #514835",
"o c #E9DECC",
"(. c #8CAB23",
"O. c #6E702A",
" X c #825728",
">. c #806031",
"m. c #808326",
"7 c #6F6657",
"Q c #849D28",
"c c #6F572B",
"' c #E3E7BA",
"^. c #94B625",
"b. c #B9B562",
"p. c #B7B54D",
"V c #F6EACE",
"( c #CEAC63",
"# c #AB9C84",
"a. c #CDBF58",
"$X c #8C5F3C",
"] c #C9CE63",
">X c #4E2C15",
"1 c #C2B385",
"pX c #F0BE88",
"B c #C6A176",
"$. c #958C78",
"&. c #D5D98F",
"r c #5E481F",
"sX c #434032",
"A c #C9D487",
"P. c #DFB27C",
"~. c #94B336",
"_ c #B79275",
"6. c #D8D770",
"n. c #B7AC4E",
"T. c #94AD27",
"H. c #687017",
"s. c #C4BE52",
"cX c #14160B",
"D c #849A49",
"9X c #805135",
"Z c #DAE0B2",
"7. c #C7C85E",
"G c #383F10",
"a c #A8A059",
/* pixels */
" . . . ",
" X X o O + @ # $ % & # * = # = - ; : > , < 1 2 < 3 O O o o o . . ",
" . 4 5 # 6 7 8 9 0 q w e e r t y q y r u * = i p # a s & d & & u s = f t & g g 3 : o . ",
" + 2 h 8 j w e k e l e w e z e e e y r w w y 9 9 x = * & t t c v b n d m c & & M N * B < , , : V > : V . ",
" C Z A S D F G k k H k e k e k e H e k e H e w e e r m r n J K 9 v L y e e y c b r n * i * x = P 3 , I ; P U , , > > o o X ",
" X A Y T R R R E W Q ! e e k k H k e k k e e e w k k e y ~ ^ v c v y b y y w e k e e e c / & u N x ( ) , ; # _ g g ; I < ; P ` g 3 I V ",
" ' Z ] S S W [ T { [ E R } | .G k k H k H k e z e H e w e ..X.o.O.q y r r e l k e l e k l y u u ^ & N N B ; +.@.U # = g ; #.= - = $.%.` _ ; > V ",
" C &.] S *.S S =.=.R { R R =.[ R W E -.G H k k l H k e k e k e e w w ;.:.e e e k l k k l k k e l y >.>.d d N i - = < ,.I = P = ; - = = = <.%.1.%._ P ,.2.3.O 4 . ",
" 4.3.5.5.6.7.7.{ S R [ 8.9.{ *.{ S 0.=.T W 9.q.w.k k k k k H k k k H k H w.L :.G k k k k k k k k k k e y q r r M & = = e.> 3.: a & = = = B - = = & * r.= ; < ,.2.Z t.y.@ C ",
" . Z ' u.7.7.i.] 7.S { ] 7.{ p.W W p.{ a.6.s.7.9.d.R f.g.H k k H k e k k k h.k w.~ j.G H k h.h.k.h.k.k k w l.q y ..y r ^ - = = z.@.) = N x = a & - < - = # 1.* B ,.) : 2.u.;.;.x.T o ",
" . A T W c.Y A A A i.v.Y s.7.b.i.v.i.Y p.n.n.{ p.T [ [ { Y =.m.G z k k z k z z z z e M.t.! N.h.k.e z k l ~ e M.w.L ....w.~ i z.< ; = B e.B.x i = < < 1 - - = x x.* % B , ) @.u.b.V.C.Z.1 u.o ",
" X &.c.[ E W =.=.{ Y =.=.S 7.Y s.{ Y 7.] i.7.{ { s.7.Y p.R [ ] ] ] A.G z k k k z k z G ! ;.O.M.w.z S.H w k q L M.! M.w...w.~ 9 x < e.B.D.e.x a i B.p ; ( p - p 1 # g ` d F.; u.b.b.a p = B = ; < ; : . ",
" . A ] c.S S R [ [ { Y 0.] S c.S =.R R { =.Y 7.i.0.] ] 0.S 0.{ { S { [ | D G z k z z z k G.G H.j.m.m.~ e e G k m.:.q. .F ! N.J.L K./ e.e.e.b.v.b.e.n.n.v.D.L./ / x @.z.1 <.d x , 1 b.p i _ i B.B.B.P.D.( < o . ",
" 4.&.7.0.7.] 0.S { { S { =.] S =.S S S *.R R *.S S 7.7.] ] 6.] 7.6.7.7.=.I.E =.q.N.G.~ w.U.! U.U. .m.m.X.-.Y.M.m.g.q.W f.T.q.d.m.m.R.X.n.p.b.e.E.Y p.[ T p.7.b.D.n.b.s.e.E.p x B.; < 1 ; e.e.( ( ( e.( ( ( B.B.( z.: ",
" 4.V 5.: &.7.c.T { =.=.Y 7.=.=.S V.R =.[ =.=.*.S ] *.R Y Y 7.7.] 7.Y A 6.] R Q [ S =.W :.W.f.Q.f.f.m.W f.[ f.d.W A.f.C.p.W f.[ W [ W [ Z.C.s.s.b.Y 7.T R [ 7.R 7.p.n.p.a.v.E.i.v.0.e.@.v.b.v.v.v.( ( ( z.( P.( ( e.E.z.z.E.3. ",
" . !.v.1 z.3.: &.Y =.[ T { T V.[ E V.~.[ =.R [ f.W E T.=.[ } R [ [ V.{ [ R =.c.=.8.8.8.^.R } [ =.W f.d.f.b.Y T R Y c.{ { { { R [ 9.[ [ W [ W [ Z.=.p.p.{ R 9.[ S p.Y Y Y Y 7.s.E.i.) i.0.7.Y p.p.p.{ a.E.n.a.( e.e.E.5.E.i.) e.v.@.V ",
" V u.p p p p @.: 2.3.@.=.[ T Z.{ T W =.T Y T b./.:.m.d.A.[ W E A.[ R 9.Y W =.[ [ [ ~.E E T.(.^.^.} R [ W =.c.S S Y *.c.R { R } R [ 8.[ 9.C.[ 9.W { W C.{ { W 9.{ 7.R.[ { { { p.=.{ { 7.a.7.a.i.i.E.a.s.s.s.n.s.a.E.E.E.i.) E.E.7.E.i.i.: 4. ",
" C 0.=./.o.u.=.W p.n.e.< @.5.u.p b.@.u.[ =.W R ).W.:.M.m.V.A.W =.[ R [ [ 9.} R ~.[ ~.[ } R } } R [ R { R R R Y S R } 8.R R R S [ [ 8.[ 8.W 9.9.p.{ W p.p.Z.L.p.p.p.{ { L.C.{ C.{ { Y 7.s.Y { 7.7.7.i.E.E.e.B.a.a.a.E.v.a.s.Q.^ p.a.e.a.a.v.s.7.3. ",
" . Z =.W W T | 9.[ W [ [ b.s.1 e.b.T a C.V.W T f.V.W /.f.E W { =.R R R R [ ~.} R } R } } } ~.[ [ } S *.{ E ~.8.R R =.E [ } R R *.*.R R E [ W W [ { Y S Z.R.C.p.p C.{ p.s.7.7.7.s.7.E.7.s.{ p.[ s.7.{ p.s.a.s.( L.B.i e.i.a.s.b.p.p.C.p.i L.E.s.C.7.s.# o ",
" X A =.W [ [ T E E =.f.q.f.f.Z.T V./.:.t._.o.W ).q.D f.[ R S *.} R R } R } } } [ } ~.R ^.^.~.8.~.^.8.} { R W | E E ~.[ [ [ R R S Y R *.{ R p.{ Y 7.s.{ s.S p.{ p.{ 7.{ s.s.{ a.i.] a.7.7.7.S p.C.C.n.a.a.s.s.{ p.( ; e.e.n.p p s.7.s.7.a.v.i.i.i.i.v./ 9 & : ",
" . #._.m.A.W A.C.f.f.q.D A.A.f.E E q.W.`.W.q.q.[ f.d.E 8.[ R R R R R } } [ R =.*.} R ^.~.} ^.} ^.} *.} ^.8.8.9.{ d.d.V.=.=.=.R *.} *.*.p.7.{ Z.[ W p.C.D.n.a.{ A.Q.A.R.{ } { { p.{ { 7.7.s.7.Y { { S p.n.e.s.9.p.p.a.a.p b.e.b.C./ L.L.p.p.p.a.E.7.a.s.u u d n u ,.. ",
" o $ '.].a Y Y { Y c.[ [ [ R =.R [ R R R R [ R [ [ R R R } R R } } } } 8.~.E R ~.E } ~.^.^.} *.^.} } *.*.R R *.{ 9.[ =.S R } { *.[ } 7.p.D.s.p.n.a X.d.m.^ '.^ m.[.K.m.K.Q.{.| D.a.9.C.C.p.{ s.S Y } { { { s.{ { s.7.7.7.s.{ Y Y { T b.i n.n.a.b.a.p.L.K.'.u n n >.}.) |. ",
" o p s.v.7.7.7.Y Y 7.i.7.c.*.{ { 8.[ R S *.=.=.} [ R } } } ~.~.[ [ R ~.~.(.(.E E ~.(.Q (.(.~.} ^.^.*.*.*.*.*.} R S { *.[ R [ 9.} R *.s.7.{ p.D.x / u r r ~ ~ M Xc >.c 9 ~ m.{.X.Q.D.n.C.C.{ { S Y *.} { { p.{ Y Y S 7.R Y Y Y S 7.{ p.s.e.v.b.s.n.a o.u n u / u '.>.u e..X@. ",
" : E.v.7.7.0.7.{ S Y s.a.S 7.W 9.f.8.*.*.S [ ~.[ } R R ~.~.} ~.} ~.E ~.~.~.(.| E | Q ~.Q (.(.XX} } ~.^.} ^.XX} } [ } R [ [ 9.| [ 9.8.} { *.*.] b.B.i B./ m.m.m.X.X.^ oXn ~ X.R.*.A./ b.Y p.C.[ 7.[ { { { { { { S s.7.{ S p.{ Y { { p.v.7.Y s.Y s.=.p.C.'.'.m.L.n.e.s.p./ B.v.B., . ",
" V < e.e.a.7.7.E.i.s.Y { p.W D.{ f.Z.8.8.=.R R 8.8.8.8.} } ~.} ~.^.*.~.~.E ~.[ ~.=.~.~.R (.E (.~.E ~.E 9.d.8.8.8.} R } [ R [ } 9.[ R R *.*.R } } { s.7.s.b.p.p.n.W W C.n.p.n.C.} [ p.C.C.C.{ { R { [ } } { Y { { s.Y s.{ p.{ 7.{ S 7.{ { { Y Y 7.{ Z.[ [ W R.9.W [ p.n.p.[ p.n.i e.e.@.o ",
" . < s.E.7.i.i.i.7.i.] S 7.S { p.[ R [ [ } R *.R } [ } ~.~.} ~.~.~.~.R ~.~.~.[ } R ~.} R [ E E W [ [ p.p = = p p p.} } *.Y Y [ } } } R *.R *.} { } p.R.n.p.W p.8.8.9.} } R.p.s.*.} 8.9.8.*.} *.{ { [ [ 8.[ [ W W { { { { R { { { { { { =.{ [ { R { R n.W d.d.E W R.R.W 9.W R.p.W L.D.p b.n.!. ",
" V 0.E.0.7.s.7.] ] 7.7.7.{ { { } } 8.W | 8.E 8.7.R } ~.8.} ^.~.8.~.~.8.[ } R R ~.~.} ~.~.} R [ V.i = OXOX` * OXOXOX_ i p.p.i.7.7.R =.W | 9.9.9.9.8.{ [ X.C.[ R.| 9.} ^.} } { *.} 8.*.*.*.*.R } *.R { C.d.Q.X./ ^ ^ D.a.p.p.{ [ [ A.C.W T W p.R [ p.p.{ { { p.W f.f.9.W W p.C.Q.L.C.R.X.Q.].X.A.+X. ",
" Z b.{ Y b.Y b.s.s.Y { { { R W 8.[ [ ~.8.R R E | ~.8.} ~.E XX} R ~.(.XX| E E E (.~.(.| [ T.} =./.r.u ` B , +.g @X#X$X$X%X&X; 5.1 Y T Z.f.R.W 9.[ d.Q.C.7.{ R [ 9.R.} } } } } 8.} 8.8.} [ R R | {.8.[ W ].'.K.M M r X XL.D.A.Q.A.f.W [ p.p.p.[ p.8.n.=.0.Z !.c.W W [ C.9.p.p.p.R.D.n.Q. .'.H.;.M.[.s . ",
" 3.W C.A.R.C.{ s.Y n.W n.[ 9.W 9.} W 8.} ~.~.^.E E ~.8.E ~.E } Q I.Q W.{.*X*X-.*XQ (.E | [ E f.A.i < : 2.4.4.4.I 7 b =X-X$X%X;X:Xo C : +Xu.C.A.o.n.C.L./ W R.D.*.[ } } 8.8.T.} 9.d.I.T.9.W W T f.q.d.A.x.<.9 v r y >Xr =X/ D.D.Q.L.m.C.a.s.s.S { W p.@.V C : o C ,XT C.W p.p.a.p.n.Q.o.m w...w e H e H 7 o ",
" !.{ A.A.q.Q.C.s.a.C.C.f.d.Q q.| W } 8.[ (.I.I.E T.XX(.Q XXQ I.q.XX| (.| | E ~.E [ ~.~.R ~.~.W W ) 4.4.2.2.: 4.4.3.5 g b <X-X$XF.F.P |.V V V o !.x.n K./ ].C.L.R.} } } } ^.R.| R.d.{.| R.9.C.i.4.,XZ.x.s d @X@Xr t q y 9 =X>.L.v.p.=.C.s.Y s.{ W p.s.a % g g 1X# I 4.&.7.a.p.p.a.C.m.9 g.w.G w H e m L w.k y.o ",
" u.q.d.d.d.A.Q.C.C.C.o.Q.q.{.m.| d.| W 8.R E (.XXXX| E E (.} ~.~.Q f.E } R =.*.*.=.~.[ R } } R { 5.2.@.B 2X2X,.z.> |.2.o @ @X3X-X4X$XF.5Xo o O O o V o +XD.p.n.p.{ 8.p.{ } } } 8.[ T.XXT.T.[ v. . X = f 7 v 0 @X0 t 6X0 K 6X>XM L.{ =.{ { s.a.s.n.e.7Xw k.k.l.0 y.1.I : v.i.E.5.o.;.L L G w q ..L '.o.[.o.G M.D C ",
" . 8Xd.{.q.Q.Q.| d.R.W d.d.d.Q.q.E [ 8.9.8.| ~.I.| Q E Q (.~.~.E ^.} [ } } } R [ [ [ R R ~.} ~.8.7.< ; P OX= B - P 3 ; +.V C V !.g #X-X9XF.F._ |.. > > o |.C 3.@.s.p.p.n.[ { Y S R R 8.T.8.^.8.R p !.O % 0Xt b qXb 0 @X8 t 0 t f e >Xn W C.p.p.b.s.v.E.a e k.k.k k k.k.k =Xx z.E.E.E.m.~ ~ M.q ~ L ~ M.C.p.C.C.C.f.d.T X ",
" ,XQ.W A.d.f.Q d.f.{.| `.X.-.d.f.R ~.~.E E XXf.d.`.-.| Q {.f.f.E 9.8.~.8.R } 8.8.E } R *.~.[ 9.0.; * & r.g _ _ B _ P > I ; > . . . wXr.#X$X$X%X&X> . : O > o X C 5 [.oX/ A.C.} } R 8.R ^.8.} 8.T & ` K @X3X8 qXl 0 b t 6XJ 7 8 % e e =XQ.p.[ D.p.v.v.b.t k k.>XeX3Xl.k.S.k.M a.a.E.E.p.Q.D.L.Q.X.L.p./ p.a.( C.{ { R.[ c.. ",
" ,XY E E f.| Q.d.{.{.{.{.{.`.{.f.Q Q Q.A.C.[ | R.C.W d.d.m.`.W.E 9.R { W W [ [ 8.} T.~.~.~.8.{ < - J @XK r.%.;XP % ; I g P o : 3 > 4.. o # @X$XF.%.&X2X. X o o o V . wX^ ^ Q.[ R } R } } R 8.E f.A.r >XrX9X#XM j k l.0 6X0 6 t 6Xh 6Xr >X^ p.s.s.p.7.a.f >XtX=X9X#X$X#XyXS.k.rXn.p.p.E.p.s.s.a.a.s.7.p.D.L.L.s.a.n.{ 9.{ 8.Y . ",
" Z ~.(.E f.XXQ *Xq.Q q.| 8.[ E E E | *XO.'./ C.f.9.T.9.f.f.| W 9.8.*.9.| L.].].m.`.{.W.`. .R.a B.U h 6Xt @X@X<.` r.; g ` +.O 2 3 : o I +.. . O %.@X$XF.;XP > o o |.X |.. C u.b.[ 8.[ R [ E W | Q Q.f l.tX<XrX4X$X6XqXk t 0 uX0X8 8 0XK uXtX>.n.E.7.s.a.p.r e eX$X9X$XF.$Xl.k.k.M n.p.s.s.( E.s.( p.p.s.p.n.n.D.D.p.s.s.p.} W 9.A ",
" 4 ~.E | f.(.Q {.{.| E E ~.[ [ W f.E [ q.Y.m.A.[ 9.8.9.[ } W R p.*.8.R.I.{.X.X.K.;.M.M.J.w.'.V.* * s 6X6Xt K %.r.%.; r.` +.U g 3 o I 3 > |.+.o . O r.F.F.F.%X_ > X > > o . . V ,XA.A.X.[.m.m.A.C.A.o.[.l tX<X<X-X4X$X@XyXt 0 uX7 8 8 0XK b k. Xe.a.7.s.7./.b K N ` $XF.F.F.M k.l n s.a.E.a.( e.v.v.a.s.a.a.s.s.p.D.p.p.s.p.n.[ p.p.&. ",
" C XXQ q.Q | XXXX-.{.8.R [ R [ =.[ W [ [ V.| E [ =.R R R } [ [ =.[ 8.9.p.C.R.R.L.m.X.~ L w.'.X.o.<.& <.7 0 6X1.1.@X_ @X;XO g r.+.+.g 2 o O 3 > C O o o # K F.F.%X;X3 . . . . V 1 ].[.~ 9 [.oX]./ & @X>XtX>X<XrX-X4X%X$XM t 0 b 8 7 0X8 iXk.rX= n.D.p.s.[.%.; pX, , P x %X Xl =XD.a.s.a.D./ }.B.( e.E.5.i.E.a.i.p.p.p.n.s.p.p.{ p.p.@. ",
" X [ {.*X-.*XI.*X*X-.Q.W [ E 8.=.R [ ~.[ E ^.E 9.~.=.~.E E E ~.[ { S 8.[ [ n.m.n L.X.L.:.m.-.R.A.m t r.J 0 b 6X6X6X` @Xr.I 1.r.O # r.3 O U 3 o I P I |.o O 2 ` F.F.F.%XP , |.o |.o . V +.Z.o.].N ^ / a & @Xe >XtXtX>X<X-X5X2.1 0Xy.j 0 7 7 eXk.S.>XK u %./ Z./ P _ _ ; 4. : d M.D.s.s.a.n.].N / B.n.n.n.E.E.i.] E.E.s.a.a.a.E.p.s.p.p.7.3. ",
" ).-.-.I.*X-.`.`.-.I.{.W.:.A.W [ V.E E T.(.| (.XXf.f.f.Q XXQ 9.[ [ [ R *.S } { W p.n.{ =.[ 8.} D v j 7 0 0 j qX3X@X6X6X2 @XK , % 1.; #.` 2 O # g , o 2 P |.. I % %.F.F.%X_ , X |.. V V V !.b.p ( p a a x.<.y l k.>XrX>.` 2X4.V g @Xj qXl.qXyXk.S.k.<XF.OXB.x * ,.P $X;X|. wXT W 7.7.*.a.{ R.'.A.p.p.p.E.s.*.s.s.a.E.s.p.a.7.{ [ { p.p.7.7.X ",
" 8XF `.W.{.*XF Y.F g.[.aXF :.q.Q W.q.Q Q {.d.E E f.~.V.~.E | [ [ ~.*.R *.*.R R } } ^.} R [ R } [ O.uX0 b 0 sXj qXqX7 l.` 6X3X2 <.M U 2 @XU I <.;X> I g _ , |.O I o 2 r.F.F.%X&X_ O . . . . . V ,XY Y Y p <.K 6XyXy d s $.$ U +.> u %.6XqXqXb l.S.S.S.>X$XOXB , ; _ ` OX&X, ' =.} R p.{ { { 8.{ p.9.n.} { { s.R C.p.s.E.7.p.p.p.[ p.W p.n.[ W S ",
" 5 ! M. .{.-. .dXU.N.G H L q.E q.W. .q.{.:.`.q.Q f.~.~.R =.} E [ [ E R =.} R } E E 8.} 8.8.d.f.=.D fXuX0 uXsXqXsXqX8 yX@X8 l.U 7 eX_ # 3X` I @XK , U 1._ > I g P |.o 3 U g ;X1.%X&XP 3 > |.. X o V > u.b.a t b c 0 y v J s $.$.= ` F.5Xr.0 0 j qXk.S.S.>XF.2.,.4.I r.$XP ` 2X3.u.W [ n.{ 9.} 8.n.7.8.8.9.9.R R s.{ 7.s.s.b.a.s.{ p.p.[ R.p.8.p.C.p.A ",
" o gX~ A.Q.A.Q.q. .G G G w.O.Q W.`.Y.N.J.! J.H.d.[ E ~.[ } *.[ R R c.[ R *.R R ~.| E f.} *.[ | [ +XD hX0 j 0 uXj qXqX0 yX7 yX1.7 l.%.# eX$X2 6X3X3 # @X` > g % ; O 2 U : o P U _ ` ;X&X_ P > > V o o 3.3.I $ 6XqXiXb uXqXv J f <.K @X` r.eX7 uXj j k.S.tX>X%X> : > C +.- ,.|.+.b.[ 9.9.R.{ 8.{ 7.R ] S 8.p.{ { 8.{ { s.p.p.n.p.n.p.p.a.a.s.*.{ { p.p.[ !. ",
" jX..H.Q.^ x a A._.m w.~ m.q.`.`.H.J.H w.! N.:.E [ ~.R } R R *.=.9.S R [ Y } } [ E E E } c.=.dXD ).7X8 y 8 j qXqXuXj j 6XiXb J l.%.3 j eXP 7 rX_ 2 3X;X+.% K 3 I ` g > I 3 : O _ _ g ` &X_ P 3 > |.|.o > #.0XqXl yXl.j b v 0 0X9 6Xt K 1.0XJ uX6Xj iXk.tXtX-X; V |., > o 4. Z =.[ p.[ { S Y 7.7.R 7.{ R { } s.{ p.8.s.p.p.p.R s.a.a.a.E.a.p.s.7.7.s.p.a.. ",
" ,X'.K.X.X.m.Z.i Y C.X.X.o.C._.`.m.oXO.M.'.q.W.8.~.E (.[ } } ~.*.R [ *.[ [ } ~.~.E XXE Q R ~.W.f.V.E ;.w.8 yXuXuXsXqX8 sX6XiXJ iXF.2 7 eXP $.<Xg I 6X` , <.%., #.1._ > g _ > I I o 2 U _ _ P _ P P 3 3 3 # J qXiXiXiXiX7 j 8 v 7XJ 0Xf h $.h y.7 uXiXk.k.tX>X-X2X: o o +.: C b.=.R.n.W L.W C.9.s.{ { a.7.p.s.C.a.[ p.{ p.} p.p.E.E.s.p.a.a.s.C.X.9.a.s.s.i. ",
" . b.Z.p.R W [ Y } =.W T o.L.L./ / C.L./ q.f.W d.| E R ~.~.~.~.E 8.~.(.[ E ~.R [ E Q *X*Xq.~.[ E Q Q D fX8 sXt 0 qXj sX7 qXuX8 qXqX_ 7 eX_ # eX%.I <.%., % %.O U @X; I % _ I _ 3 O 3 > I % # , P U 3 3 3 I g J 0 qXj b j j j uXqX0 9 0Xf $.$ h y.8 sXyXS.k.>X>XrX; I O : C |.V c.T T R.C.o.X.d.Q.D.C.L.L./ L.C.[ p.7.7.s.s.p.p.} n.p.p.a.6.6.a.B.D.D.p.p.a.p.p.,X ",
" ,X[ R { R } R } } E [ 9.R.f.C.].L.L.C.T R R } ~.} 8.R ~.~.[ [ ~.8.~.(.| E =.=.~.E f.E E f.R [ E Q Q f.;.q 8 j qXj uXqX0 8 yX7 yX@X0 k.l.#.b eXU <.K 2X% % +.% 1.3 #.r.P 3 ` 3 U _ +.O U 3 o 2 U , 2 ; P g <.0 qX0 qXuXsXj j j iXuXj t f h $.h y.j uXyXl l >XeX$X_ 3 O #.I 3.+X=.=.{ [ { p.d.n.9.D.Q.K.~ K.'.L.W { s.0.s.p.n.R.n.D.D.p.a.i.E.E.a.n.a.E.s.s.p.9.W X ",
" C } 8.8.} } E (.~.} ~.8.R R R } } 8.W 8.R } ~.~.} ~.[ 7.[ } R ~.} 8.[ 8.[ E Q E ~.D {.E [ E [ (.E ~.[ ~.fXt iXw 0 qX0 qXb 7 qXj yXh k S.l.<.k eX$.3XP g 1., g K , U %.I #.* 3 % _ !.` ` +.O ` P I 2 ; _ % 1.0 uXuXj 0 sXb qXj uXl 0 qXq J s s y.uX8 iXiXyXyXl.F.` 3 I +.4 2 ,XT W R.[ [ [ { p.s.*.{ { C.].'.^ X.L.9.} p.7.e.b.C.n./ ^ D.a.i.E.a.E.a.n.p.s.s.s.W W A ",
" . c.E (.^.E ~.~.~.(.~.^.~.~.~.^.~.~.(.~.~.E XX(.T.E d.p.Y R ~.~.~.~.8.~.E E E | E E (.8.8.W Q E XX(.Q Q q.fXw t 7 qXj 0 j sX0 b yX6Xh S.S.b uXk.6Xb K g #X3 g @X2X# r.+.# U 2 1.; I %.P o # r.I U ; U U ` <.6X0 qX0 iXuXiXkXyXj uXk.0 w qX9 % $ kX0 j qXqXl.l.$X` OXP I : O o wXW R.W W W [ s.s.8.} 8.8.{ p.W L./ Q.p.[ { { T W p.a.v.z.) e.a.p.a.a.a.E.a.a.7.i.s.E.7.V ",
" ,XT.XX| q.(.R } ~.8.E 8.(.I.Q Q [ (.(.(.Q (.| Q f.E | W.d.E E W | T.E 8.E T.9.9.9.T.| | Q Q Q [ f.Q *X-.Q g.8 j lXj uX0 j sXkXb yXb y.S.S.#XzXk.7 yX% b g # #XP U 1.I _ 2 U %.I 2 1.; +.% N I g ; g _ ` <.0 uXj b iX0 iX0 sXyXqXuXh.b ..iX8 0X6 8 uXj qXj yXl.;X2 ` I g 2X+.o +X[ [ R { [ p.Y R } 8.T.8.8.{ 7.s.0.s.{ p.p.[ p.[ { v.v.) E.a.a.E.a.E.i.E.i.7.7.s.7.] { 0. ",
" =.E E E ~.[ ~.(.| 8.~.| | T.E Q Q XXXXQ XX(.(.Q Q | E E Q q.Q d.| E | | | | | {.XXm.d.q.Q I.Q D q.q.I.W.| gXw q 7 t 0 uXzXqXj qXyXqX0XS.S.@XsXk.7 qX0 eXU 6X;XI 6X; g ; # 1.> # K 2XwXK N +.% ; % U r.% b uX7 yX8 yX0 qX0 yXk iXiXiXw qXj 0 y.7 0 j sXj sXqXj %.3 U P # 2 I > wX[ [ p.{ [ R } 8.^.I.9.T.8.8.T f.[ { p.{ { { p.{ Y { s.a.p.( ( P.e.n.E.a.E.7.s.p.*.{ { { ' ",
" A } 8.E E E E XXI.E | Q | Q f.Q ~.XXE E ~.(.Q E E E D | f.:.{.f.E q.q.f.Q d.| {.`.`.M. .{.Q q.Q {.Q f.f.E E xXt 0 iXj 0 0 qXqXuXiXsXyX0XcXk.@XyXk 8 uXyXK uX3XU 6X_ ` # ` %.> # F.I #.#XU I 1.; 1._ J <.j 7 j 0 qXqXqXuXqX0 yXyXl k.j l iXuXb 0 7 j sXsXuXkXqX6X6X_ 2 % U * I +.+.=.[ [ R 8.8.^.[ R 7.} *.R R 8.W 9.R Y T p.7.7.7.7.s.s.n.n.n.a.( s.n.p.s.{ s.7.7.7.*.{ { 0. ",
" X [ ~.^.E XX*XXX(.E f.q.q.W.`.q.Q XXXXI.XXQ XXI.Q Q {.{.q.q.q.f.W | {.-.Q.Q.9.T.XXm.M.M.W.W.*X{.Q d.f.E ~.(.(.gXsXw e e 0 uXsXj 0 k 8 k.h S.S.y.lXk.0 qXqX7 k.J 6X9Xg ;X% #X< g @X< U 6X= I K P <.r.r.1.6X6XqX7 yX7 lX7 qXqXj iXiXk k j e qXqXuX0 fXiXqX0 j j K 8 @X` U U g _ 2 5 +.Z W [ } ~.} 8.} 8.R R R R R [ R Y R { =.{ 7.Y p.p.{ s.{ { s.s.p.p.} 8.{ } S *.*.} { } { } Z ",
" A Q I.XXE *X*XXXI.f.).A.A.`.`.H.-.{.Q *XQ -.-.*X`.-.*X`._.q.| 9.E Q XX*Xm.d.9.| R.{ R.q.Q {.-.{.[ E E E E (.E J.fX7X0X8 qX0 qX0 j yX8 k J h.k.<.h.l 0 k.6XiXyXJ l.J @X` qX_ ` M P U b ;XI 6X` g 6X$.b % iX7 iX0 qXj qXuXj j j sXsXk.yXiXyXsX..0 8 j sXqXy.iX0 6X%.K % <.% U U - ; I V =.[ } ~.[ } E [ R } [ 8.R R p.{ T p.[ s.b.Z.W Z.Z.s.{ { { *.[ { } } [ 8.p.s.[ 8.9.{ [ p.S ",
" X E *X*XXXQ I.| Q q.W R.9.9.q.q.*X{.Q Q -.`.`.dXdX{. .A.q.q.f.Q | (.(.XX| | d.| T.9.[ R d.W E E ~.E (.(.I.E E | j.uXe k.0 j qXuXuXiX0 b iXJ k k.h lXk 8 k y.k.7 sXl.0 @XqX3X% qX$X2 eX6XP 0 6X# l.<.qX% qX0 qX6XqX8 k 6XiXqX0 j yXqXk.j iXw sXiXj uXsXj qX0 b qX@XK @X7 3X6X%.P #.U +.V T E E 8.8.[ ~.8.[ 8.~.W [ [ [ R [ p.W T Y n.n.n.p.{ } p.[ [ [ } [ } } R 8.8.9.p.8.9.n.[ } Z ",
" u.W.I.Q Q Q Q Q I.d.| XXXXXXQ q.*XW.`.-.-.`.dX .:.Y.H.m.R.f.| | (.~.(.E T.A.{.d.| 9.8.{ R ~.E ~.~.~.E ~.(.~.} ~.t.N.sXw k 6XlXb uXiX8 yXk J lXk.% S.yX8 qXj k h k 0 qX7 yXJ qXeX$.0 yXr.7 >X% 0 J 0 b 6XqX7 yX7 iXuXiXuXuXyX0 0 S.j S.0 iXiXqXiXuXj sXsXj sXuXb K eXr.@X@X6X1.K ` - 2 o c.W E ~.(.E | (.T.E f.T.f.E W W C.[ n.p.p.Y s.p.W W C.} } 9.9.p.[ p.[ 9.[ 8.{ } 8.R.} { { Y ",
" . D q.XXE | Q Q {.I.(.I.XX(.| XX(.I.dXY. .F `.`.q.`.W.f.E f.E | (.(.| | d.| Q.X.{.| 8.~.[ ~.E XXXXE (.(.Q (.| =.E D 7XJ J uXw 8 >X0 uXqXsXS.7 yXk.h S.qX0 qXyXl.y.iXb 7 sXb y.k.6X<.k eX<.yX@X7 eX% qX7 k 7 sX0 sX8 yX0 yX0 k 0 8 S.j S.6XiXiXiXiXj sXj qXsXuXl.g b K K J @XM r.` b _ U : wX~.T.| | I.I.(.E 9.8.9.E f.| | 8.C.[ s.W 9.n.C.[ W 9.p.s.{ [ R.d.^ b.p C.C.p.n.p.R.R p.} } ' ",
" Z D Q | (.~.f.[ Q {.(.(.^.T.^.~.~.XX(.I.`.dX-.{.9.E f.f.{.I.-.{.Q XX(.I.`.`.m. .m.d.| Q XXXXQ I.| Q *X*X(.~.E ~.D D G.k.e 6Xy j uXk 7 k 7 S.b zXk 6 cXeXuXb yX0 7 k j y.k.y.sXyXh sXk.K zXyX% l.J qX0 j qX7 yX7 yX7 k 8 iXj iXqX7 S.j cXuXiXl.yXsXuXj sXzXuXyXr.<.@X@XJ @XK 6XK >.g r.U !.wX| E Q E -.XX| | | 8.[ [ | Q d.T.T.9.p.| Q.Q.L.R.C.R.9.R.n.} R.d.| A.z.< i e.C.W C.{ [ 9.8.] ",
" ).Q XXXX{.8.~.E Q I.XXXXXX^.(.I.I.^.~.(.(.8.T.(.d.9.f.XXdX`.dXdX`.-.T.(.9.9.9.p.f.`.*X*X*XI.*XI.Q XXI.(.D ~.R D E D O.uXk k b j 8 sXl.uX8 iXyXj yX7 S.6XsXuXyX8 sXk.K iXl.y.k.6Xy.k.qX0 k @Xj b y.k 7 yXJ yXb j 7 iXuXiX0 yX0 sX8 S.qXcXb yXzXiXiX0 kX7 yXk k 6X0 @XK 1.<.K @X;X% >._ % . Z D I.I.*XdX-.{.I.f.9.W W {.XXI.| T.9.8.R.X.X.'./ C.C.C.9.d.R.R.{.Q.q.'.1 ,.z.) p D.{ [ 8.9.R C ",
" C | 9.8.R ~.(.^.(.| *XI.I.XX(.(.I.I.8.~.} E E E E E E Q Q -.I.`.`.*X{.| E E E f.W A.-.Q *X*X*X-.*XI.(.~.*XQ ~.E (.(.*XhXt 8 w k y e t iX6XqXuXS.0 iX8 S.7 yX6XyX8 yXsXy.h.7 j k.h j k.7 yXiXy.k 7 j b 0 yXy.k 7 yXJ k 7 yX8 h.6Xj 0 S.j cXqXyXj j ..uX0 y.7 lXj yX6X@XJ % J 6X1.r.# # ` g % Z.f.I.T.~.E | | | q.d.A.f.| | d.XXT.T.T.9.C.Q./ X.X.R.R.R.Q.R.Q.`.`.X.X.f.@.: ,.) b.n.p.8.9.9.&. ",
" +X(.E } ~.~.XXXX(.(.I.XXXXI.XXXXI.T.~.~.[ ~.E E ~.(.~.~.(.(.(.I.{.| f.9.E ~.E E | Q *X*XI.XXXX*XXXXX(.(.Q E E Q I.-.`.L l y 7Xt sXh.l.7 qXiX7 S.0 qX0 k.J k 6XlX6Xk 0 0 k.<.yXl.h k yX7 k.6XuXl.y.k J yX6X8 qX0 b j yX0 qXsXk.7 0 uXS.j cXsXiXuX0 sXuXj y.kXqX8 sXb K 1.$.K qX@X` - U # t & /.XX(.9.R R =.R Y [ 9.{ [ [ R | R.} 9.R.9.[ C.X.L.Q.R.L.d.R.R.| Q.^ .Q.A.p.b.@.@.e.[ L.R.R.9.{ . ",
" X =.E E D | Q *X*XI.(.(.(.^.XXXXI.Q E E ~.} ~.~.[ =.| (.~.XXXX(.~.E ~.E [ ~.Q ^.T.~.=.T Q XX~.(.*XXXXX(.(.(.*X*XQ *X*X`._.L h.k.iXt t yXy 7Xk.0 sX0 j j k 7 k.y.lX0 k K sXyX7 S.7 kXk.6XsXyXy.yX6Xj sX8 k J yX0 qXy.S.0 sX8 h.yX7 8 qXcXqXS.qXiXuX8 zX0 kXj yX0 0 8 yX6X6X% J qXb U ` O +.f +.f.{.| 8.=.8.[ [ 8.R [ [ 9.R [ 8.9.R 8.I.Q.R.p.a.[ 9.[ C.d.X.R.p.Q.W.H.d.| W [ W f.| C.R.R.9.C.R.&. ",
" ,XW.aXdX:.W.:.W.Q XX~.~.XX(.(.A.A.L.E E f.~.E E q.~.Q {.I.XXI.(.^.~.| XXE [ XX*XXXQ E W.Q *XI.*XdX*X*XI.(.(.XXXX*X-.*Xq.gX9 fXiXk.k.j 7 yX0 0 k 8 qXuXj yX7 S.J k 0 k 7 k 6Xj k.h yXyXJ h.j 7 k.y.yX0 iXqX7 k 8 uXj k.7 yX8 k.b kX7 yXS.qXcXiXsX0 0 ..8 uXj e qX6Xj qX7 6Xg J qXl.* # I : - o D -.`.I.f.d.d.| I.T.~.8.[ [ 9.| 9.} 8.R.9.W [ p.{ R p.9.C.Q.m.Q.{ p.R.9.T.T.T.| | 9.f.R.9.9.9.| Y ",
" @ J.N.J.xXM.W.-.Q | [ 8.(.(.| m.o.[.A.Q W.`.dX-.`.| Q I.XXd.| XXI.q.I.Q -.q.E Q I.E E W.Y. .dXq.:.dX*X-.W.*XXX*X:.:.q.j.t.w iXv 8 ..k.iXj S.7 iX8 qXuXsXyX8 S.7 k.8 k 7 k J lXl.y.S.6X7 S.J qXiX7 k 7 h.7 j qXj 7 h.qX7 yXfXk.7 qXy.k cXqXS.l j 0 0 j uX0 kXj w 0 0 j 7 eX_ 0Xb b $.1 I 3.4.C D q.W.C.f.W f.| XX| | 9.~.} W C.9.[ [ } } { } { { { *.} { } A.L.n.Z.9.8.T.T.T.T.| | | d.d.9.9.| [ . ",
" X t.H H G U.M.`.I.:.m.-.o.Q 9.f.q.A.D W.q.`.*XQ {.-.q.[ Q {.Q.dX-.dX`.W.*XdX-.-.f.f.).o.].^ & [.& O.X.W.dXdXdXdXY.U.F M._.f gXe k.l.t 7XuXiXS.>X7 iX0 j j >X8 k.7 k 7 k 0 k J S.0 8 k.h sXk.h yX7 sXqX0 k 7 yX0 sX8 S.J j j sXyXy.yXy.k cXj S.k.b 0 8 b iXv 7X0 <.J 0 8 0 b g g 7 6X% I I V o +.T [ s.C.W f.d.| d.I.| 8.} 8.} p.} } p.} 8.} *.} } } R { *.{ p.C.W p.R.| T.T.| } 8.W [ 9.| T.9.9.W Z ",
" O ;.H e w ! M.`.j.q.H.;.M.o.=.A.q.:.:.:.W.Q Q | (.Q q.C.Y :.:.`.q.| W.dXXXQ *XQ d.x.m 9 M >.n XF.%.& d :.H.aXF J.F G.v s f gXt w.k k.b t J 8 z y 0 uXuXj iX0 k.8 yX0 yXj yX8 S.J sXyX<.lXl.6 yXJ S.7 iXyXK yX0 8 sXyXh yX0 yXiXh k 7 h.cXb S.k.uX0 8 qXj j zXb ;.J 7 8 j b 1.g <.@Xg I > V g !.).9.[ R.f.Q `.I.*X{.| | R.R.} 8.R.} 8.8.9.8.8.8.p.8.9.} } } } [ { =.[ [ 8.8.[ [ 8.8.9.E ~.T.9.[ W +X ",
" 1 x.K.n ~ H.'._._.Y.U.e r o.V._.m.:.| A.d.W.Q {.{.m.d.W W j.q.W.`.*X*X*X^.E ~.f.Q [.g._.;.v M & >.M v r O.D `.F N.J.N.7Xh 6 kXiX0 uXw S.h.l t t yXy 0 uXj iXkXk.0 iXuXiXj iXuXk.<.lXeXy.S.0 7 yXy.k.J yXqX8 sXqXJ k 7 kXk.y.h.qXy.S.7 k.cX0 S.S.j 8 0 sX8 ..0 8 8 0 7 8 0 0 7 % ` $.U 3 > V wX4 A.| T.| XX(.| I.(.q.d.{.{.m.Q.R.9.9.9.9.9.} 9.8.9.9.9.R.8.8.8.9.[ [ } 8.7.S R R E E E 9.| d.9.=.Y Y ",
" s OX/ N ^ L.o.[.M.G k k y ~ C.q.[.q.f.f.D m.M._.m.Q.W [ f.f.W.dXY.-.Q | XX*X[ =.E {.q.m.[.].N x b e l e k H.-.-.W.F .f h gXj e k.y 0 b e S.S.qX7 w qXkXzXiX0 k j l.j qXsXqXsXiXy.S.6X8 S.7 j qX8 yXy.h.0 uXkXqX7 yX<.sXyXJ k.j y.k.6XS.cXb S.S.qX0 b j 0 j 7X7 0 8 7 7 0 0 6X` _ P 3 +.,.V . !.f.9.| I.(.XXI.I.Q W.F . . . .m.m.X.Q.R.R.8.R [ } 8.R.R.XXR.T.XXQ.C.9.9.R { R 9.8.8.8.~.T.8.[ | W [ C ",
" ( K.n K.^ / OXo.M.w.L e ~ / C.A.{.W.m.o.m H.m.{.{.{.`.| [ E Q *XdX-.Q *X`.dXf.V.E f.| Q Q.'.~ >.%.n [.;.L m.q.Q | q.o.jXy.hXiX0 G k.k.qXv j k h.>Xt e r j qX0 k uXqXj j iXuXyXb 8 S.J zXk.h iX0 uXl.7 h.6Xj b uXsXj uX8 iXh k qX7 S.7 S.cX8 S.h.j 7 iX7 l.8 8 j 0 8 7 8 8 0 6Xg _ I , ,.+.3.. 5 f.T.~.I.I.^.I.| f.{.`.`.-.M.H.m.{.C.f.{.9.R.8.9.8.R.| XXXX| I.d.{.| d.R.9.9.9.| E E 8.T.9.T.8.8.[ } ,X ",
" V = L.).Q.L.L.C.o.A. .w.r u ^ p.[ E q.m.].m 9 C.W | R.d.q.d.D Q D Q Q W.dXdXm.j.:.W.*X:.W E D ! 3Xn / a ~ m '.Q.A.D /.$ f fXyXyXiXv q k k.k.y b w h.e 6Xy q sXv k j y j j iXuXyX0 sXS.h yXk.h k 6XsXqX8 S.8 uXj 7 yX7 qXkXyXJ k qX8 k 8 cXS.8 cXk.j 7 yXy.h.t 0 sX8 0 7 8 8 0 @X_ 2 > > > +.+.O 1 D | T.(.XX(.(.^.9.| d.q.d.m.Q.Q.d.C.f.R.9.8.8.9.| XXXX| | XX{.d.{.R.{.| | T.9.9.| 9.[ W (.f.| E 8.8.c. ",
" Z W T p.T Z.b.).X.o.L.L.'.m.L.=.W Q.L.].^ N & u ].D.Q.A.Q.Q d.-.q.W.W.W.:.q.q.:.F g.dX .f.W q.M.K.u n c c n a m.q.W /.jX6 sXlXyX....r v y k S.l b uXk.e y y iXj e j e uXj e 0 S.7 yXk.h k k h h.7 lXb kXS.6X0 iX7 k 7 8 qXiX7 yXj 0 k 0 S.k.8 cXS.uX8 k 7 yXw t 8 uX7 8 7 8 uX@XU ; +.V 3.O O # +Xq.Q | 8.T.^.T.(.8.} R { { Y s.[ W f.[ 9.W W 9.T.{.*XXX| XXd.{.Q.| { { W T.| | 9.8.W E 8.~.8.E | Q | =.. ",
" p C.C.9.C.8.W [ R.p.p.{ [ p.8.[ } W m.u >.^ r =X-X$Xn D.T.| d.9.{ f.f.f.=.D Q W A.W E W.o.W d.X.9 y y l rXn a o.A./.x.6 fXlXh.lX~ :.w k l.r y h.k.e 9 yXk.q y j iXuXl uXy yX0 h.t lXk h h.yX0Xk.y.lXb 0 S.b kXk.J qX0 7 0 qX6XsXqX0 qXkXcXk.7 cXS.0 8 yXqX8 h.b 8 t 0 7 0 0 0 7 3 , > V 4.!.4 - +Xf.T.| ^.8.T.8.^.} *.{ { 9.} 8.9.[ | W W R.9.{.d.-.{.*X| R.{. .{.R.C.9.I.| I.I.8.} 8.E (.T.8.R f.d.{.E X ",
" . f K.m.{.d.W [ W p.n.b.7.{ [ { [ [ A.^ c >.X.L l e M >.Q.8.| W W =.V.=.T =.f.[ *.R S R [ | d.A.^ / oXoX9 '.i b.A.A./.6 7XsXh.h.w m.D M.w.k k.l =Xw k l v ..e r ..q uXe uXiXw 0 k 8 k yX0XS.l.7 k.7 h.qXkXS.qX8 k.0XqX0 8 qXqX0 j qXkXj uXcXk 7 cXS.uX0 sXh.J sXz 0 y 8 gX7 uX7 6XP > |.4.. o O I =.[ T.(.T.9.8.8.9.T.} { p.T.T.^.(.T.| T.9.E 9.| {.I.XXI.(.T.L.A.A.W W W 9.f.q.d.d.| d.XXT.(.(.9.d.q.m.q.,X ",
" X t ~ '.`.X.R.n.C.Z.a p.{ W C.p.9.A.K.3Xr rXoX>.L ~ K.X.d.| Q.| R 9.E [ [ { [ =.=.[ R { E | d.o./ ^ / OX^ b.b.Z.Z.f.j.f hXvXh.h.L C.| _.q L y e h.l y e e q ..q w.uXy ..j iXiX0 k.7 k yX7 h.uX0 k.7Xh.qXt cXl.7Xk y.qX8 qX8 kXqXuXqX0 qXuXcXyXy.cXcX0 qX8 S.y 7Xk v iX..uX7 8 6X7 3 > 4. 4.O 1 =.R (.8.T.8.~.9.T.T.R.p.} 9.(.T.T.^.T.~.| T.T.8.| R.9.T.T.8.R.C.} 8.8.8.9.d.d.{.{.`.I.I.| (.(.^.T.d.Q.m.< ",
" C ].H.{.Q.L.n.Z.p.[ { { R 8.C.{ a o.g.l.>.n K.'.X.R.f.| E 8.| d.| E ~.W f.[ [ [ R { W R p.8.9.Q.R.Q.L.C.L.V.C.f.Z.).j.7XlXk z e m.| | q.g.l e y =Xw k.h.l y r q ~ v ..uXiXw uXj e t yXe 7 S.t sXiXt h.l.7XS.e y.k t qX7 7 sX8 k 0 qX0 sX0 cXtX6 S.S.0 yX0XlXS.t gXw j 0Xj 0 7 7 <.3 : 4. o +X| 9.T.T.T.8.T.^.T.| 9.{ R.I.(.^.^.T.| 8.T.9.E W E W f.| [ [ 8.R.9.I.d.d.{.| W 9.R.{.{.q.d.| (.8.| XXR.X.u. ",
" o [ [ 9.W | [ 9.9.W [ [ } [ 9.C.f.L.m.m M.^ A.W W E d.d.| XX| (.9.E | {.[ W W [ R W { A.X.L.p.W f.].^ L.n.[ C.f.f./.t.zXlXz k ! q.d.f.[ Q L ..l k l r w y y w w L O.q v w j 0 y iX0 w k 7 k.t k 0 7XS.l.7Xh.l 0Xw 8 j 8 kXyX8 l 8 j uXiX8 cXk.h h.S.0 iX0 8 S.l f kXw 7 h v 7 y.% , |.V 4.+Xo.| d.| I.(.XXXXI.XXR.9.E d.XX8.(.T.^.T.^.T.T.| Q E f.f.R E E (.E | 8.8.| T.9.[ 9.T.XX(.XXXXXX^.(.9.| d.b. ",
" Z } W 9.9.[ 8.f.[ 8.[ R 8.E T.(.| | d.R.W W T [ [ 8.R f.Q Q 9.8.[ R E A.[ [ R b.=.f.W [ A.T T [ W A.d.W T R [ f.j.x.aXG e e L X.A.d.W W E g.e y y k l M L ......~ [.m.v ..0 b iXuXy j k.J h.t k b t S.w 0Xe h.t iXqXv t uX7 0 yX7 b uXyX8 S.S.h yXcXk 8 yXf k S.y f 8 uXs 7 7 6 r.2X2.: 4. X u.[.A.d.X.{.d.{.{.Q.d.W W | {.XX8.T.XX(.(.I.T.^.(.(.(.[ 9.| I.(.XX(.(.E 8.(.| 8.T.I.d.| T.XX(.(.(.(.^.8.8.c. ",
" &.[ [ W f.R.f.[ R [ [ [ E | (.~.^.(.E 8.S S *.R R R } f.[ 8.| (.8.R R =.=.=.b.[ =.T R.9.[ R 9.9.R W W W =.8.E | f.j.! U.G ! m.A.| 9.8.} R :.L e tXy y k l.q y w.Q.C.x.;.uX8 q j 0 e 0 h.K lX0 e q t S.>X0XsXS.c kXk t 0 j 0 j iX8 b 0 iX7 cXS.% hXcXcX0 yX0 8 S.S.r f oXuXf 7Xh r.3 |.|.4. V !.Z.A.C.A.A.C.X.Q.L.d.R.W | d.{.I.| XX| T.T.T.9.8.^.^.^.(.~.XXXXT.| | (.| | I.{.T.9.-.dX{.T.9.(.XXXX(.^.} [ S X ",
" c.[ W | I.| [ C.{ R Q (.| ~.E T.8.[ 8.} R *.=.*.R { =.8.[ E T.| 9.9.} Y R T S =.=.Y [ E [ E f.E f.~.~.[ ~.| | | f.:.g.;.U.m.f.C.{ R [ W E W.e ..y e e r r ..y m.[ ).j.t 9 ;.j v uXw 8 e b j w uXe 7 h.k 0XkXS.y 0Xk.9 uXt uXj j 0 j 8 yXy.S.cXy.y.cXcXl t iX6 ..S.S.y d t 8 h h K U |.|.2.|.o - C.f.n.R.R.8.R.d.R.d.d.| XXT.8.| T.8.T.T.9.*.} {.-.T.XX(.XXT.T.| I.| (.XXXXI.XX| I.(.| XXd.T.9.T.XXXXT.^.9.=.X ",
" c.T.9.| | d.R.9.R.f.Q.W 9.R } 9.9.R E 9.8.} 8.R } R } R R } } 8.9.[ =.{ W W R { { S [ [ [ W E E E E R [ ~.D ~.V.Q aXM.U. .| W T { [ E E q.D ..h.k y y w e w w.R.8.W ;.b 9 ;.v ;.y 0 j hXw 8 e t k 9 iXS.>.7Xz >Xf zXb t kX0 j j 0 sX7 k.7 S.S.6Xh sXcXcXk l b 0X..cXS.k d 7X7 0XqX%.> |.pX,.o +Xf.W f.| | | R.9.9.R.d.I.{.d.8.8.} } 9.{ R.R.n.T.d.| | T.T.^.| T.T.T.9.{.| {.d.I.d.I.d.R.9.| [ [ T.XXXXXX8.[ C ",
" c.| 8.9.8.T.d.XXd.m.C.S =.S T E I.q.{.f.E f.[ } 8.} } } } ~.} 8.} { Y c.A.| 9.R.T R [ R [ R =.[ [ 8.~.[ [ [ T E m.H.g.H.A.| f.W [ =.V.E [ :.8 v e k.l y q w ~ R.f.q.w v l.t d v v t ..7Xe 7 w t e qX7Xh.y 0XiXk J gX..d hXuXuXuX8 yXJ k y.h.S.yXh 7 cXcXcXcXS.j 0XhXh.S.k j qXK l.9X:X, .XpX4.!.T 9.9.T.| d.| T.R.9.9.9.d.I.d.E W W 9.).Q.R.d.R.Q.R.R.| 8.8.(.T.8.9.9. .m.d.W d.I.| T.9.R [ R T.T.XXI.I.| 8.' ",
" c.| 9.R.9.d.X.H.~ L.R [ Y =.E W d.| Q.A.-.-.{.T.[ ^.| 8.^.8.8.~.} } 9.[ | Q d.A.C.[ W [ T.8.[ ~.=.[ ~.[ ~.E [ f.t.M.H.R.W C.W Y [ V.| } R D G b v kXq y y w.M.| q._.d q uXe v m 7Xv v v v v 0 v gXe f ..e oXgXk J 0X..0X7X0 0 0 0 yXJ yXh lXcXS.J jXzXcXcXcXcXcXk t 9 w S.uX7Xy.l.<X%.P }..X4.o T W T.d.I.| | | T.T.E T.T.9.d.d.[ f.W f.A.Q.`.X.Q.{.X.{.d.R.9.T.| | f.Q.Q.W.C.[ W Q.| Q.d.d.R.R.9.8.8.9.f.| Z ",
" Y R.W Q.R.L.L.n.p.f.W W E W 9.W W R { W R.R.R.9.9.| 8.8.~.8.~.8.W [ [ W E T W T [ [ [ 9.E E T [ [ E f.A.E W R D .:.q.W [ W R R Y =.R =.[ ).! k k e y y w L X.T f.w.b uXy v w w 7Xm m t t.v 7Xj 0X..d 7 qXm 0Xw t s v J hXqX0 0 0 iX7 iXy.sXS.S.j % jXuXS.cXcXcXS.S.b m ..q h y.>Xl.9XF.}..XV +Xp f.d.9.R.9.W f.f.9.} E 9.[ 8.E [ E W W W [ A.9.9.d.R.Q.Q.d.| d.| | d.A.Q.Q | E f.| q. .f.A.d.| 8.8.R } E [ Z ",
" =.[ E R.L.C.p.{ V.Q.d.[ W [ f.W 8.} } [ R W C.C.R.9.[ E ~.E E W ~.W [ [ ).A.f.d.W 9.[ E ~.W [ f.E D Q Q ~.| f.:.`.{.9.~.8.E R [ { c.[ [ R ~.fXv w k k w q ~ A.[ o.gXy r q y 7Xt m m d d oX7Xt t 0Xt 0 t.b 0Xf 7Xv s 7X0X7 8 j 8 b uX0 uX0 7 S.cXk.J h $.gXiXS.S.cXS.S.w c v 7 J l.>X<X9X&X:X2.+.Y { W 9.9.f.[ W W [ [ [ T.8.^.T.T.| | A.W W f.W 8.9.W W W A.R.f.9.| f.| E Q I.9.f.A.[ f.o.f.f.E [ [ 8.[ =.[ Z ",
" *.9.8.} { p.C.V.d.q.Q.W [ [ [ W E 8.8.9.A.d.d.f.{ R } 9.[ E | E [ f.f.V.W A.).| f.E E E 8.~.E [ E [ [ W =.f.q.{.Q | 8.E 9.~.R *.[ W R ~.[ V.kXe r v ;.;.q v C.T ;.L v uXy 0 w ..iXw v m oXoXoXoX7Xf ;.& t oXf h m h h f 0 qXj 0 j 7 qX8 qXy.sXcXS.l h $.s jX7XuXG k h.S.h.e 7Xy.>X>Xl.<XF.5X2.3.Y R | W [ | A.f.[ W f.T.| XXI.I.XX~.W E 9.d.T.| 8.8.9.{ [ W W 9.| | E [ W [ E T.} [ [ q.m.W D | W [ W W T.~.&.",
" =.9.8.[ [ { Y =.T E 9.8.8.9.E Q | 9.[ f.W [ | f.{ =.[ W T E 9.Q f.f.f.| A.f.I.I.| E [ R } (.(.^.[ [ ~.[ A ~.| Q | E Q ~.E | T.[ ~.} [ E =.j.~ q w w w q v m f.[.j v q q uXw w j v q q m.o.[.[.oXoXoX0XoX0Xf f s f s f f 8 7 v j 0 0 qXy.0 0 7 h.S.S.qXh f h f f t.t.'.m ;.m 0X0 k l.>XrXF.F..X2.E.R 9.d.R.p.9.C.f.W Q Q Q I.`.`.{.8.9.E E f.W E T.(.XX8.| 8.W [ d.f.E E E E f.E | E Q.W ).Q.A.f.q.f.q.{.I.I.A ",
". { C.} [ S S Y Y R { { ~.T.[ [ 8.E 8.[ R { R W f.W =.[ =.{ 9.9.9.W Y [ [ 9.| | | [ ~.8.R } (.(.^.E 8.~.E ~.E ~.E 8.8.R 8.[ E 8.E [ W *.[ =.aX..y q v 0 L w m ).m r iXb j qX;.7XgXkX~ `.Q f.q.j.[.[.oXoXd d oXf & s s f f 8 uX0 v fXb uX7 j 7 j yXcXS.S.eXf s f j.f f oXK.O.7Xy.qXl e <X<X;X%X;X:X,.s.} C.R.f.f.W Q.f.f.d.W T.I.q.d.9.T.8.T.f.E E ^.| T.T.| [ 9.9.| | I.W E E W f.Q.d.A.W p.A.W q.f.| | q.Q I.,X",
" 0.p.p.C.[ { =.W [ [ R =.8.R [ 8.[ 8.| 9.[ T [ W W R [ R 8.8.8.8.[ R [ 8.E [ 8.8.9.T.~.~.~.XXXX(.8.} 8.| ^.8.} 8.E 8.=.=.R E { } f.(.W | 8._.uXy v L uX;.v .| ;.iXy qXw w k e e w ~ f.} Q I.-.q.O.oXoXoXoXO.d f f s f f 7XhXuXv b 8 0 0 j 6Xy.lXcXS.S.S.y J s s f [.[.t.d 7Xb yXl l.=X=X%X}.N N s u.C.R.A.Z.C.].j.m.Q.A.{.d.9.8.8.8.8.[ } } } E T.8.^.^.XX} T.T.d.Q.{.d.| 9.W [ =.f.A.[ b.C.Z.R.9.=.=.9.| Q wX",
" u.[ f.d.C.[ W W T { W n.R n.C.d.[ R.Q.R R [ [ 9.[ 8.} T.| 9.8.8.} R ~.[ 8.8.} T.I.XX8.} I.*XI.T.| Q T.| I.8.E [ } R 8.~.8.8.E f.Q d.| *Xf.U...w w q j G q g.A._.b b v 0 7 7X7Xm q [.f.d.9.9.f.f.M.j.q.j.oXK.O.K.oXoX[.t.kXt 8 v kX8 uXb t iXJ gXlXS.S.S.k.k v 7X7XgXuXv t uXiXk l l.r rXM u K N 1 Z.R.9.A.R.X. .'.M.9 m.Q.C.[ R.T.8.8.*.8.} } 8.8.XXXXXXI.T.T.R.} } [ d.{.9.9.f.[ R W W u.c.[ Q W [ R 9.8.} ' ",
" Y [ f.A.9.f.[ 9.W Y Y W R.R.f.L.R.C.| [ [ { 8.9.T.8.^.8.8.T.} } 8.8.R [ ~.| XXQ {.d.T.} T.d.T.9.{.{.R.R [ [ 8.[ [ [ E E E E f.D -.q.f.f.Q aXw.e y q q q y r d.j.w.uXj iXe yXqXqXr a q.m.A.C.W W A.9.W W ).V.o.X.[.[.m.m.;.uXuX8 v uXv 8 v kXy 0X7XlXS.S.S.S.k.e ;.gXw.e e w y k k.y r ~ r r r _ @.=.p.R R.[ C.A.^ '.H. .C.T A.-.| R.| | 8.*.8.8.8.T.I.I.I.I.R.9.8.[ { [ R.| | I.9.9.R } { Y Y R 8.8.[ R f.[ ' ",
" +X[ [ [ 8.| T.T.^.[ 8.8.d.R.9.8.n.9.n.C.R.} | {.XXT.8.T.T.8.R R } =.R } R 8.^.{.| T.9.*.8.8.R.C.p.W W { { } [ E [ ).E d.| E W E E D ).).E D v w w b L v L ..'.o.L j b 7X7 kXv L u s.W C.X.R.C.W R.8.| 9.C.S Z.W A.d.f.[ D w.8 qX9 v c uXv 8 j c 6 6 w h.S.S.h.k 6Xf f 7X8 w zXk e w y ~ L q =X- +X7.S Y R { [ C.A.'._.Q.m.[._. .A.9.d.R.| R.R.T.T.^.(.I.XXI.| | [ 9.9.R.XX| XXI.XX9.8.9.} *.{ [ 8.8.R R 8.W C ",
" A p.[ f.9.XX| T.} 8.} [ { 9.[ n.d.^ / ^ Q.I.d.{.| 9.9.8.9.} } [ T.E [ 8.(.(.} ^.T.d.I.Q.Q.Q.m.'.x 7.T S T E E | | E | Q Q E 8.[ E W E ~.[ D aXl y q qXy y w K.O.v v w z e e e =XN Y S T { f.Q d.Q 8.} p.[ p.C.A.R.f.f.[ E j uX7 uXv kX;.b L t iXc f f gXN.k h.k k ;.f 0X....gXw.iXw y L uXq r @.v.{ { =.[ } R [ W | R./.:.W.A.A.f.f.{.I.-.*XI.R.XXI.T.9.8.| 9.} 9.R.| d.| T.{.{.I.| } *.8.} } } { } 8.8.9.R X ",
" &.W p.n.9.XXT.8.} { { R { { p.R.X.X.u ~ ~ '. .Q.R.Z.c.=.9.| 9.d.W R.| 9.XXXXT.8.| *X .`.A.Q.o.o.A.Z.p.T W E T.E E Q Q I.E E E E f.[ 8.E R | _.q w b y w y y ].].! b t t fXy l.v p V.R.[ 9.[ | A.R.[ [ 9.R p.n.p.p.[ W Q A.;.8 L 8 uX;.j v b ;.8 e v f f f t.L lXk k q uXe 7X0Xv L w w q y w.& @.u.=.{ 8.9.[ R | | 9.=.f.).b.].p.=.=.f.XX| {.{.{.d.| {.d.{.9.XX8.8.9.^.T.8.8.9.| XXI.XX8.8.R.8.} T.} } 8.8.c. ",
" Z C.p.Z.R.9.9.8.} p.*.p.D.B.B.e.a.L./ m ..! X.| T T f.T E :.m.q.d.W.-.d.| Q.| {.d.-.F .o.o.Q.X.W [ 8.} [ 9.| I.| ).*X| E W [ E E f.[ R.A.8.:.e w y y q y ~ / / 0XL iXw iXq q F.C.W | | R.R.C.Z.W C.C.9.p.[ p.W { [ [ | f._.hX8 q v uXv v q b t.;.lXy d f f f t.8 G k e ;.7X8 ..L L G G w q p v.R Z.[ f.T.9.9.| 9.[ [ R S T [ V.=.{ Y A.Q Q.E -.R.T.Q.| | I.| XXXXT.(.XX8.8.E 8.9.| | | T.8.9.9.[ 8.8.8.9.S ",
" C C.A.9.R.p.8.9.8.L.D.B.B.[.n 5X) 3.a O.`._.q.Y =.[ T [ f.{.-.A.A.-.H. .X.X.d.A.W `.`.Q.q.m X.W { [ [ } T.T.| ^.8.8.| [ W Q {.d.R.d.W | f.f._.e q v L ..y O.C.x oXb 7X7X;.y l.d b.[ A.f.f.R.f.Q.C.C.{ [ [ [ [ 9.W } 9.T.~.Q ~ L 0 J t.w.r ;.v w J _.e y d s f h f t.;.;.~ q L 7X;.;._.! g.m.[ W A.| R.W } E [ 8.R R [ } R R R R R [ [ W =.f.T T T T 8.[ R 9.| XXI.I.T.T.9.f.9.[ 9.8.9.[ [ R R 8.9.8.8.8.E c. ",
" . p.C.n.{ p.*.8.9.d.C.C./.m.K.x E.( e.j.X.A.R.C.T T [.W Q | [ W V.q.W.d.q.m._.X.D :.`.A.o.[.H./ W {.Q.A.{.d.XX{.Q.I.`.R.d.Q {.-.q.'.Q.X.d.W j.y y iXw y y ^ [.1.oX8 j j y y M ^ Z.E E XXd.W f.E W W T W [ R 8.(.| | | T.XX| m.fX;.iXy J fXv ;.O.v 7X[.gX;.;.t m t m 9 ~ ~ ;.'.[.0X* a f.8.| 8.S S { { =.[ E E 8.} R *.{ } } 8.R R [ 9.E W [ [ W T { R p.C.b.[ W 9.Q I.{.f.=.=.W | 8.f.R 8.=.=.W 8.} T.8.8.A ",
" . V.W W { } 9.9.} 9.8.C.W R.C.C.C.Y n.Z.A.o.).A././.q.q.Q d.E 8.[ W | f.f.f.T ).A.f.f.W j.).m.A.f.A.d.C.XXd.T.d.Q.Q.Q.C.V.R.A.q.q.~ 9 `.Q.[ H.q q v y y ..X.;.n m.m uXv j w c N f.[ | | E | E f.R [ E 9.E T.| ~.| I.| T.T.| f.~ 8 h gXw t 7X;.O.oX;.oX[.f ;.y ..w.9 H.'._.'.7Xv ..c a W T.T.8.} R [ W W } W R *.} ^.} 8.T.8.8.Y { [ R.9.} [ Y { [ Z.b.W Q.[ p.[ [ V.d.R.W W E | | T.T.[ [ [ [ [ =.E | [ 9.Z ",
" 0.{ [ p.8.9.d.Q.R.R.9.{ R.W { A.n.{ { b.p.b.W j.H.X.o.Q.f.9.[ [ [ 8.Y *.T { [ | E [ T R [ E 8.9.W 8.[ [ | 9.{ [ [ 7.n.e.T W W W :.H.q.X.D _.O.q e y y r Q.Q.X.X.H.v L q y M x f.f.[ W W [ ~.8.8.8.E T.T.E I.| (.XX| | Q d.(.W.w l.y.0XiXr 7XoX'.t.[.f [.m._.H.m H.'.m.O.m m 7Xf a b.8.9.| T.8.{ { R f.E A.f.W | ^.} ^.^.T.| 9.9.Y s.R [ W { [ W C.n.{ 7.Y R 8.{ W 9.9.| Q q.| ~.f.(.~.E [ =.E [ [ 8.9.9.C ",
" +XR.d.-.Q.9.9.d.d.R.D.Z.q.C.p.{ p.Y { 7.=.C./.X._.m.C.A.W p.[ [ 8.[ [ R V.f.d.E W 8.[ 9.=.8.T.E | | | 9.| [ { R R [ W Z.C.C.C.V.V.f.V.V.A.`.D v v y e O.Q.Q.d.{.H.uXw w b %.i [ C.o.m o.f.| W =.R E E I.| XXXXE | T.XX| XXT.W.7XgXyXqX7X7XuX! 7X'.[.m.W.Q _.O.O.K._.d m ;.uXuX..6XC.].{.m.Q.| | 9.W W f.f.).Q.d.{.T.^.^.| A.f.C.R.n.{ 7.p.C.9.9.R p.{ W 8.8.W [ f.(.| | Q `.F D | T.E E f.E E | 8.} R S . ",
" Z -.M.m.'.m.C.X.C.m.Q.o.o.Q.C.L.( D.n.b.0.p.n.p /.A.L.p [ W W Q d.C.p.W W Q.f.f.f.| f.q.8.8.9.9.Q A.[ 9.[ { 8.{ *.} { R Z.R Z.p.[ C.8.f.Q {.Q ;.q w >X'.Q.| | Q j.t v v b X* o.m.K.'.[.A.q.C.W f.(.Q (.Q (.XXE Q E XX(.(.(.*XsXv y.7X0 j t 7XoXt.[.m.| | Q.O.m m oXd m t 7XoX7Xa o.[.Q.-.d.R.W [ R [ f.f.f.A.Q {.| 9.9.C.C.D.T R.A.C.Z.Q.9.q.d.9.{ Y p.{ =.9.R | | 9.f.q.`.m.W A.q.f.R R 8.E (.(.^.} *. ",
" X .'.'.'.^ ]./ C.p.).Q.C.o.p ^ ]./ p p.0.Y Y Y u.wXb.D.[ 9.W A.A.W W p.T W =.9.8.d.| Q.R.9.C.Q.{ R { p.} } p.} 9.{ s.W W 9.9.[ W 9.9.Q I.d.f.O.uXe e m.Q Q q.f.V.gXj w l.$Xx [.H.9 K.oX].m.f.E Q Q I.I.XXE Q E Q q.q.W E | Q ;.uXe iXsXyXe ..;.t.q.| T.| D oXm m 7XoX7X8 q iXd Z.C.Q.Z.A.q.Q.C.f.9.W Q d.A.A.W.d.D.e.L.p.n.L.Z.d.C.C.f.W 9.f.9.[ [ 9.W W [ 8.[ R [ R [ W | A.V.o.q.m.I.8.~.(.(.XXXX(.A ",
" W.M.~ u ^ L.C.C.V.A.C.o.o.Q.o.^ L.C.{ Y =.R 8.C.A.a C.n.R [ [ [ W W =.8.~.9.9.9.W [ [ W d.n.C.Q.m.m.{.R.} 9.R.XXQ.d.W [ 9.9.E 9.R.[ d.d.W T t.G e e '.R.=.R W E t.m 0 w XOX[.X.].m.^ '.d.d.| f.W.I.(.XXI.| E [ q.d.[ I.I.Q U.y 8 t J 0Xf f 7Xd o.| XX[ /.oX7XO.oXt L j q q /.f.[ T A.R.{ [ W W Y [ W W E E -.].L.D.n.[ p.Q.Q.8.9.} } R [ } 8.} } R } 8.8.8.W R R ~.} [ E T [ V.d.d.| T.(.| {.| {.I.Z ",
" Z.^ m.^ L.^ n.f.d.X.o.A.W Q.C.D.W R [ 8.p.[ W W V.o.L.a b.b.).A.| C.[ (.| | | 9.d.[ d.C.W 9.A.X.H.m. .X.R.W q.m.d.C.[ [ f.W [ | E f.W W W =.aXv w e O.9.[ [ E 8.s v v b 3Xu Z.d.Q.q.Q.j.m.Q D f.| XX(.XXXXXX| [ [ E {.(.XXI.;.kX..e k e G uX7X[.E T.9.9.Q.t.t oX7Xt 8 v 0 m W 9.T.8.~.[ R [ =.R [ ~.[ | f.9.d.[.L.f.C.[ R [ | 9.R 8.8.9.8.T.T.^.^.^.T.(.T.| 8.8.9.E | 8.[ { [ { ).f.| T.8.E m.q.W.`.X ",
" !./.Q.Q.Q.].C.9.9.9.W T C.oXL.Z.W =.q.j.Q.^ ].n.b.( 5.< Y e.Y C.A.d.d.C.8.T.| E f.d.d.9.[ 9.W Z.Z.A.C.R.f.Z.A.Q.A.f.f.d.q.{.E `.| 8.[ T =.E :.sXe l.9 R.T.T.E ~.o.t y w l F.Z.| 8.f.).[ f.Q | E f.XX(.^.^.(.^.8.[ ~.I.XX*X`.F G y j q t 7Xt gXD | T.| (.| 0Xm 0X0X7Xv q q [.f.| (.(.XX| T.W [ 9.8.} [ 9.[ } } W [ E | | 9.T.| | f.Q I.T.I.{.-.XXXXI.T.(.| 9.| [ d.E q.I.8.[ 9.8.T.} [ =.c.f.A.A.b.Y ",
" X f.| | d.Q.d.W 8.8.[ Y T [.o.C.q.m.M.x.;.>.;XB.B.x - L.C.9.9.[ T f.A.Q.9.9.E | `.-.Q.| 9.| W R.[ W [ f.f.W d.| q.Q.m.o.Q Q A.W.| ).W W d.W.:.L y l ~ d.9.| d.XX*X..j j l.&Xp | 8.9.8.[ [ [ W R R 9.8.8.(.T.8.XXf.E | {.{.H.O.uXq w k e ..gXoXq.Q (.T.| d.7Xd f t.t y 0 t o.I.*XI.d.| I.C.8.8.R } T.T.E 8.8.[ [ f.| ~.8.T.8.(.f.d.`.`.8.*X`.-.I.-.*XXXT.XX| R.| q.f.q.Q d.9.8.[ 8.W [ 0.Z.Y b.Z.b.wX ",
" R E 9.W 8.| 8.T.9.[ Z.A.).A.A.j.m.m /.o.N N / u / p o.A.R.C.W [ [ f.R T W [ T [ (.T.| T.8.8.| W R W W W 8.| | :.H.:.A.d.E E E E [ W f.E I.:...k e r m.Q.Q.d.Q A.t.v y y 3Xp Q (.(.T.E E T p.B.p.W 9.[ Q `.{.:.Q :.f.Q.d.X.m.q w w q j j sXgXf.E | W E Q m gX0Xt uX8 uXO.V.E | {.9.W W W R } [ E | | XXT.| T.| d.9.| | E ^.E f.=.C.o.X.-.{.{.`.*XI.{.| | I.R.A.R.W f.W =.[ [ E [ R 9.W } { [ T [ X ",
" A | E f.| {.| } } R 8.R =.[ f.V.=.A.C.L.N L.[.A.[ R [ p.W [ Q.W W d.f.9.f.E E E E 8.[ I.8.=.E E =.=.9.} 8.E E f.Q Q Q | Q ~.(.| 8.E E f.d.W.q y w M ^ [.X.o.Q.f.O.uXy l $X; E XX| E | f.f.L.].].f.W E | Q aX:.*X-.m.R.L.[.Q.H.j q j q 0 7X;.A.8.E E Q q.v J t.v 8 w j ].W [ [ | W W W W [ W [ E E E (.T.T.d.| | | d.| W R W W T j.q.o. . .F Y. .`.-.-.T.d.W C.C.C.D.p.T f.| ~.8.} 8.f.9.E [ R [ ",
" C [ [ d.T A.d.C.[ f.9.} [ [ f.9.s.Y R p.Z.n.[ [ s.{ [ f.[ W f.q.| W V.W A.f.V.W {.9.XX*Xd.[ [ [ Y =.[ [ 8.~.~.E Q 8.f.E E Q XX*X{.| A.W q.:...e e rXC.C.L.o.o.o.[.uXq e l.N Z.[ E [ Y =.f.W f.m.Q.9.f.f.f.q.-.q.Q | f.q.H.m.t.q q G e e kX0XA.f.[ E W.d.gXd t t qX8 9 [.W E A.I.E | | 9.E E 8.8.~.~.~.^.(.| I.(.9.E Q | E 8.9.9.d.f.:.m.:.H._.H.m.Q.`.{.m.Q.A.'.N ].o.W R T.~.} ^.} T.d.q.8.T.+X ",
" T D V.o.D )./.s ^ C.p.{ [ W R.7.R 8.[ [ W C.Z.Y =.f.A.f.q.f.Q E f.f.E E f.E f.q.q.A.Q f.~.[ W [ R ~.E (.I.T.~.~.| E Q D Q dX{.d.{.o.f.o.W q w w c D.Z.T f.d.Q j.9 v e =XOXY [ c.W =.V.E { R [ 9.{ W f.d.:.q.Q.f.f.E | d.Q A.! y j uXb uXL D } E E D q.oXgXt uXuXb d T Q [ Q {.d.I.| 9.[ } } 8.T.T.T.^.(.XXXXXXT.^.(.(.XX{.| (.| 9.T D f.m.M.m. .H.{.{.X.L.].'.m.X.W R T.XX(.(.| T.} T.9.R.f.' ",
" I ].b.f.T _.t.[.q >.'.Q.R.A.A.W W 8.[ R T R b.=.a W W D W.q.d.T.T.T.T.T.E W f.q.A.E q.q.W./.f.f.E [ | ~.(.T.| } ~.E (.(.D dX`.-.m.[.b.T D q w l. Xp W T.8.| *XQ w.qXe l.u < E E 8.E [ [ =.[ [ W f.E E f.Q E f.E XXQ | XXT.| m uXkXL uX8 t o.9.9.E f.o.gX0Xj 0 v j * p.d.=.E {.{.*XXX9.{ [ W 9.| d.XXXXT.(.E XX| (.XX(.XXI.I.I.| | =.C.T ).f.D f.Q.d.R.D.C.C.{ W 8.T.9.I.I.XXXXXXXXT.XX| [ b.. ",
" o / = b.).D O.:.'.L.o.'.R.X.d.W W ).f.Y Z.C.[ { S c.R 9.E d.| d.T.| | ~.[ R E Q D f.f.o.o.W.f.=.E ~.} ^.R R R =.[ E (.E (.q.Q A.f.q.V.[ D w e y c p Q | XXE *Xo.;.b y y $X< (.(.(.8.~.E [ f.8.[ W [ T f.| I.Q I.{.{.XX| T.Q :...qXw e w fX[.9.d.C.f.x.7Xv j 0 b y * V.f.} | XXI.{.d.R.A.^ A.Q.X.Q.{.I.I.| E (.~.(.~.E ~.(.XXE 9.W C.f.[ T b.Z.W W d.9.R.C.L.f.d.`.{.XXI.*XI.XX*XXX| d.| [ ,X ",
" u.C./.o.D q.C.).W D.C.A.X.Q.W W /.A.C.W W A.R.W R [ R 9.W d.{.| XXd.Q c.=.R *.R =.=.=.[ R [ [ E T.^.~.} ~.~.~.[ E E ~.~.~.E f.[ f.W [ /...e l.4Xe.f.f.q.`.A.W v b w l.$X@.[ E (.8.} [ E I.8.[ W [ [ f.Q I.I.Q *Xf.Q | | | q.;.uXq v t 0 d C.A.L./.K.d ..8 y uX=X* a -.| | XX9.R.R.9.Q.X.X.Q.d.q.XXXXXXXX*XXXXX(.8.E ~.E | E E V.W [ C.W /.C.f.Q.`.A.f.W f.:.g.Y.:._.dXY.-.*X-.| d.o.o.C.. ",
" 4 d.A.9.W E | f.W p.@.u.V.f.f.o.o.1 /./.A.f.R C.[ [ } { [ f.f.| T.E f.E [ *.S R =.E W } [ [ | ~.(.(.XXT.(.T.8.} [ } R } [ [ ~.[ =.[ =.t.j y e 3XI T E E A.Q m.L y y =XF.2Xu.| d.| [ E f.:.A.q.f.W j.A.f.f.E E | f.Q XX{.-.`.v j q iXe y t L.b.n./ oXm 8 j q j v g b.q.I.{.XXR.T.R.9.R.d.W Q.| I.{.I.T.(.(.I.{.I.q.W =.E f.[ [ | R.W 9.R.C.A.d.| Q.C.W V.f.D `.g.g.N.M.`.F Y. .o._.m.o.u. ",
" c.=.[ [ R [ 9.[ W A S [ 9.9.[ { /.m.W.m.Y T C.[ { } S S E E E | 8.[ [ R c.R [ W [ E E (.XX(.| (.XX*XI.I.I.Q./ L.C.8.~.8.8.8.R ~.} } aXw qXqX=X5X- f.W W =.j.kXy y =XF.B b.Q.9.Q.C.)._.[.^ O._.[.:.f.f.E E Q D Q Q q.{.-.`.;.uXw j v j t L.a L.x.[.v t ..qXy c * @ q.d.`.-.{.9.d.R.W f.A.| Q Q `.I.XXXX| | d.f.j.Q.d.f.E E (.| | | T.[ E 9.Q.{.d.C.n.C.W W A.:. .F U.! ! H. .m.t._.o.4 ",
" 3.T *.8.[ [ 8.d.R./ W 9.W d.d.f.f.T /.q.W D q.f.R f.R [ Q | } ~.E } R } R R =.E f.(.8.~.~.~.I.E [ I.{.m.K.N N N x.o.| E (.8.} (.} ~.U.e e e l.& a =.[ W Y ).v iXqXl.>.* U a Y m.m.q.]./ & ].]./.o.Z.f.q.Q Q Q *X*XQ Q `.M.O.y j w iXb v ].x.Z.Z.j.;.qXuXq j eXN p ).A.| | d.f.W T f.W E f.f.q.| `.-.{.{.| A.d.W W d.XX| | T.^.[ | d.[ f.R.R.Q.A.X.X./ b.[ V.V.f._.H.M.o.f.).W ).o.Z. ",
" Y [ [ 9.8.9.q.m.'.L.L.f.m.q.q.f.f.E V.[ V.W E W E E E Q q.| | E f.~.E [ R ~.).W.q.W.{.*X-.*XE I.Q q.9 3XrXM %.K.W.I.(.| 9.E -.(.R aX..yXl iX%.p S R W T /.G e e iXr ;X; x.].o.j.[.oX].u ^ x.o.A.f.f.| Q | | | D f.f.q.:.t.zXw b v j v f Z.[ R.j.v j qXj q M ` ; C.C.[ [ 9.[ W | W E f.W R f.).R.m.W q.q.d.f.d.{.-.{.{.{.{.I.| 9.9.W W f.| | Q.C.A.C.p.W [ [ =.W T ).9.[ Y S =.c.C ",
" 4 W | d.-.f.`.Q.X.oX/ f.q.Q A.[ E ~.V.f.f.d.f.E E E V.f.{.D Q A.A.W Z.T V.W ).m.;.w.{.(.XX{.XX| [ W.N.k e k rXL.A.d.E f.Q.H.{.T.=.V.N.e e l.* 1 E R 8.[ ).;.iXe e l.%.< u.A.q./.X.X.].].x.L./.V.A.f.W Q Q Q E V.E V.f.E j.q y w qXL gX7Xf.R f.D w.b y qXuXr r.= C.C.A.R.9.W R.R.9.T.E E 9.f.[ T.(.f.W d.Q Q q.q.`.q.{.`. .M.`.d.f.f.W ).f.[ A.A.n.p.W W [ p.[ { 8.9.T 9.T [ Z.c. ",
" Z.f.A.f.p.o./ A.A.A.E I.I.I.Q d.A.E f.D q.q.A.f.E E E D f./.o.o.'.[.^ L.n 9 O.j.O.:.-.XXd.q.d.9.H.G.h.q S.k K.A.).W V.A.f.E 9.Y [ W.sXiXeX_ ,.V.~.[ | T [...y y y F.P < V.A.f.f.f.f.L.W W C.0.f.E Q W.`.Q q.A.f.D q.q.t...iXqXj b g f A.R.E /.g.iXb y y b N = p.W Q.A.p.Z.9.R.9.9.9.T.8.E Q T.E T.| I.d.d.d.f./.q.Q q.Y. .`.R.A.A.A.| [ T W T A.C.).R.C.[ 9.R.[ { { W C.d.C.C ",
" X A.j.f.L.a C.C.W 9.=.Q Q {.E 9.[ [ [ f.D m.q.q.I.Q Q I.:.'.o.d ^ ;Xu OXN oX=Xy ! m ~ :.E [ q.A.O.z h.h.k q X.C.W W p [ b.T /.D o.Q.kXe yX3XP T f.E d.W V.q.;.j iXrX%.` x.d.| W V.d.C.p.T =.W W f.Q Q d.q.Q.d.A.).Q {._...l.e y b x - f [ E f.L w y y y j u i f.9.[ A.Q.T.9.| R.n.9.| f.[ R 8.f.I.I.d.f.f.A.).W ).f.W 9.f.W A.X.'.m.X.W W f.{ R W A.d.[ C.W R.C.W C.d.f.d.+X ",
" u.A.a V.o.Q.q.[ E [ f.[ } f.Z.W p.[ R E f.).D q. .`.`.q.m.q.oX^ n u & * ^ t 9 ;.w.G m.D f.V.W j.J.w c [.[.X./.].X.f.C.V.W.H.m.K.m.m z k.k.>X% o.| d.W C.f./.kXe l.6X@X1.x.W f.E f.q.d.Z.[ 8.f.I.f.f.W Y Q.R.C.R.f.D ;.w w qXy q r.1 1 T =.~.;.q y y qXr & a d.9.R.Q.9.[ W p.C.C.d.d.d.E [ E E | | {.| q.d.d.d.f.| E | [ T [ X.'.! H.[.'.Q.b.=.Z.9.W W W A.f.f.W {.d.| 9.X ",
" o ).].j.Q.q.q.| 8.9.T.[ W X./ L.A.R 8.E | E A.W.j.q.`.M.m.X.X.x.X.A.C.L.a ].[.[.j.g.:.A.f.E Q f.o.'.x 1 D o.]./.m./.A.D H.M.w...M.;.h.cXcXS.l.x.W.m.q.q.q.D g.k l eX@X% - +XQ Q Q Q Q I.f.E E E A.o.x.].K.m.Z.W c.).;.w iXk sXb $X= +.T W W aXq l.y e r n Q.Q.d.d.C.a Q.a L.C.W o.A.8.~.E f.E E f.Q f.d.j.f.| d.XXQ Q [ W =.).f.'.m.].X.X.o.Q.f.d.[ W { A.[ 9.E {.Q q.c. ",
" wX].x.Z.f.-.H.A.Q.A.L.'.oX9 K.'.`.d.(.| Q q.W A.V.).[.o.f.Z.R W f.E W [ f.T f.Q.q.f.W q.Q Q f.~.D A.n.p V.W T Q.X./.:.xXH e k w.w h.S.k.yXqX>.x.W.H.:.H.m.O.z yX3X&X,.2.!.A.f.f.[ f.E Q {.d.f.D a / x.].m.Q.n.Y D ;.k iXw y qX6X_ = T E } Q ..y e l.w 9 A.{.q.d.Q.X.L.n.b.a { p.{ [ R.8.[ } ~.~.R T ).f.9.=.W | f.Q (.| [ ~.[ ).W ).a X.).C.[.d.[ [ [ p.T [ [ R E V.. ",
" . p ].L.A.d.x.C.C.L.L.^ u ^ o.m.{.R.W 9.d.X.W f.[ T f.f.o.o.C.Z.W | Q f.Q.f.A.f.9.o.d.d.d.j.Q A.A.f.).W [ [.D j.[.F m M.U.G.e w H h.yXiXyXe l._. .! ! xXH.N.k w r M N :Xz.f.| D f.W =.V.:.A.Q.X.oXoXL.W C.9.C.n.Y gXw iXy iXy r * = o.[ E f.! y y e y ^ C.A.W.m.o.A.W C.b.n.[ b.C.f.m.| E [ } [ R =.[ } [ [ [ ~.~.Q | | E 8.8.[ [ A.o.o.f.).q.f.c.0.{ { c.R R [ =.' ",
" 4 o.X.L.f.f.f.A.m./ / / oXA.Q.Q.R.p.p.C.R.W f.f.C.).:.w.w y oXo.o.q. . .m.X.Q.f.W.`.W.Q.Q.q.m.:.W.[.[.;.J.! hXJ.N.G G.N.G U.N.G k e w.lXk w L H.U.F H._.F U...y l.%X( , /.R.).A.A.b.Z.b.V.q.m.d ^ R.9.A.L./ L.L.0Xe e e iXy M _ i A.9.| d.m ~ r y r N o.C.a L.V.f.9.W n.A.o.W ).f.f.o.f.[ [ [ T { { W [ 8.T.[ E Q | W Y =.R R R W /.C.C.T V.T c.Y [ =.9.E [ 8.A ",
" . u.C.f.f.E R.d.m.m ^ ].a V.R.R.L.D.p.n.A.C.q.x.hXO.L H z k e q ! M.N.G.G ..J.M.O.m.[.O.L ~ w.w.w.w H lXlXG U.aXN.U.;.xXxX_.g.xXN.U.N.w lXG m g.'.Q.f.W.q. .H.J.~ K./ i o.q.A.q.I.A.A.A.f.q.X.oXX.q. .~ d m.9 =Xl.e l iXw l.y F.L.| | q.{.m y y w M = L.p Y b.{ W W R { =.Y [ [ { b.V.Q.A.R.R.C.T d.Q.| T.^.^.T.8.E [ C.p.S S S R R.W W Y { p.Y T A.C.d.T.| f.C ",
" C f.f.W R C.C.p /.A.f.C.W W C.A.Q.m.m._.H.w.e H e H H H H H H e G.H H vXH H k k H w lXz h.z z k vXz e G F H.-.W.q.D -.-.D W.D A.D W.xXM.O.j.H.m Q.q.W.W E f.d.Q {.f.f.A.d.{.`.Q I.| Q f.f.d.A.Q.q.A.t.w.~ w k k e H l l e e >.R.R.[ f.9.j.m v c u p b.[ Z.W [ R [ W [ [ 8.R =.9.f.E f.f.X.X.m.D.f.f.| T.8.8.| | (.8.[ f.T.} } R *.{ p.T { R p.T { [ 8.8.[ &. ",
" wXA.[.o.[.s x./ j.[.:.q.f.q.m.:.M.U.G H z z H h.h.k H H H H G.H vXvXH z k z z z h.bXh.h.z z H z H G xXq.d.W.K.L.{.{.I.q.f.f.Q f.Q :.q.`.j.q.m.q.:.W.Q f.d.E f.Y R W [ E E f.(.(.E f.E f.f.[ A.d.A._.O.~ ! w.U.;.e e e e w u W f.D.W | o.t v w c p V.A.C.X.Q.9.[ } 9.d.f.9.f.Q.| d.{.Q.a A.Q.W [ 8.8.} } } } E (.(.| | T.8.T.T.T.[ ] Y W f.R.R.[ { 8.R c. ",
" $ G G G e G ..G G w.'.Q.{.H.! G.H vXz h.h.k.S.S.S.h.H H vXz vXvXH H k k k H H z h.h.h.H w H k H g.`.{.d.:.~ Q.q.| *X{.XXQ A.[ E E f.).f.D q.q.q.d.| Q Q E f.[ W E 8.E ~.| E T.T.9.[ | R.9.R.f.A.T V.O.m.A.[.j.! w w e M C.C.o.o.d.Q [.q b M K 1 p.C.f.[ | d.R f.W d.X.L.L.[.Q.W A.W C.p.{ } 8.9.} *.^.^.^.^.^.T.T.9.[ 8.8.T.{.d.[ S p.S { R.R.Q.R b.X ",
" X hXz bXh.z z H z H ..m O.! H h.h.S.S.cXcXS.S.S.k.H h.h.z z z h.h.h.h.h.h.H H H H H z z e 8 m '.o.m.W.m.X.m.Q.q.{.{.q.d.W f.f.V.j.A.W | Q | Q W E } R [ Y Y T f.f.8.8.8.T.| 8.8.[ [ R.C.f.W W [ { b.C.V.W [ f.:...w y m X.I.I.R.f.W A.oXb .. XL.W } W =.[ T W [ E Q.m.u * & / f.C.9.{ 9.} 9.(.T.T.8.9.} T.XX(.| 9.[ [ f.W E T.{.{.9.f.n.[ C.L.o._.C ",
" + G bXh.z z z z z z k e z h.cXcXcXcXcXcXcXS.S.h.h.cXh.h.k.k.h.S.k.S.S.h.z H H H H G.H G N.O.].m.L./.oXL.A.A./.q.m.Q D q.f.Q.Q.q.q.| XX| f.| R.[ p.W W A./.'.o.C.=.8.8.[ 8.[ [ 9.W [ f.C.W R.W C.C.V.9.[ E | d.uXq y & | | | T.| d./.;.v b c i | R.[ [ 9.| 9.R W Q.q.X.N N / a f.d.| I.T.T.(.T.R.| | 9.8.T.d.[ f.{.d.E (.T.} W Q.C.f._.X.V.[.q.+X ",
" 1XH z z H h.z h.h.bXS.cXcXcXcXcXS.cXcXcXcXS.h.bXS.h.S.h.k h.S.S.bXh.S.h.z vXH vXG.N.j.f.o.j.[.[.o.X.A.A.A.f.).A.q.D f.{.Y.X.Q.-.-.q.| f.f.-.C.].:.o.X.j.O.t.'.p p.Y *.8.{ { R 9.C.A.Q.W f.i C.Z.C.A.A.Q.{.Q.g.j b a W XXT.8.~.(.A.0Xc b q & d.m.X.A.d.m.Q.C.9.| Q.]./ N oXa f.Q E d.XXXX| | ^.| 9.} E | d.R f.| E | | f.R [ W. .j.m.[.C.A.T ",
" $ H H H H z h.h.h.h.S.S.cXcXh.h.z S.S.cXS.S.cXS.h.S.h.h.h.S.S.h.bXbXz bXz H vXH g.j.O.q.f.Z./.o.q.q.A.j.Q.f.q.D W f.I.{.{.d.m.'.'.q.W.`.M.[.L ~ g.m._.;.`.[.o.W f.[ 9.9.C.9.R.R.R.C.Z.C.A.o.X.K.Q.C.q.m. .;.b r N T f.d.W R } W v ;.0 r a C.m._.H.A.Q.X.R.R.f.A.]./ N / N X.d.f.T.I.I.XXXX(.T.8.[ 8.8.W [ f.[ ~.E E E E =.d.:.q.f.D { b.X ",
" X 6 H H H H h.bXbXcXh.h.h.z z z z z cXcXcXcXcXh.S.h.S.h.cXh.h.z h.h.h.h.z vXvXH G G M._.o.o.:.[.q._.'.H.o.:.W.o.q.-.{.I.m.Q._._.m.q.q. .xXH G U.m q.q.m.R.W =.f.W C.A.C.X.Q.m.d.f.9.9.f.f.f.f.m.d.W d.f.q.gX..y * ].O.m.d.A.d.o.f t b 3X* p C.x./ a L.A.C.W W | C.Q.X./ oXm.{.I.d.XX(.| { T.8.T.| (.I.(.| 8.[ | E E 8.[ [ E Q f.W W c.X ",
" X gXvXH H H z h.h.h.z z H z h.z h.bXcXcXh.S.h.h.h.S.bXh.z z z h.cXbXbXz z z z vXvXH G G G G w.w.J.M.m.:.q.o.m.Q :.{.| W [ W T.f.f.V.W._.N.N.O.oXo.).W 9.9.W | E [ 9.W W f.{.| T [ 9.9.9.d.| f.9.R A.9.f.:...b & x._.R.R.A.W [.t v c r N & u ^ ].].o.L.L.n.f.d.XX| R.A.X.o.A.T.{.| T.T.T.T.XX| | ~.*XI.I.I.XX| 8.9.[ E 8.[ V.[ [ E C ",
" 4 8 vXvXH z z z z h.h.bXh.bXh.h.cXh.cXcXcXS.k.z z z z H z z z bXcXh.z cXh.h.z z z z h.h.z z H H H G `.`.q.W.q.-.*Xf.| f.| | d.E T E q.D W.m.X.o./ s.T 9.| | | T.[ [ T [ D A.| f.[ d.d.q.I.{.{.Q {.d.| W.q b 1.b.d.d.R.f.[ o.v 8 y y ;Xx.'.m.X.A.^ ^ K.u i C.I.| R.W ).d.d.9.T.8.T.T.T.8.T.(.XX(.E Q XXQ Q Q R [ E [ [ E Q [ [ Z ",
" 4 hXz vXvXvXz lXh.h.h.h.z bXcXbXS.cXS.cXz z h.lXz z z H z z z bXcXbXcXcXbXz z z bXbXz vXH z z H H G w.! xXF xX`.-.q.E f.E I.| W W 9.f.W T W m.K.x 1 A.q.f.| | 9.E f.E | | Q q.D m.`.`.{.`. .d.{.d.| W.j v u p f.d.XXd.f.[.8 b 3XM OX- ).R.f.R.Q./.`.{.X.q.| | | 9.W d.d.f.T.~.T.T.T.~.} ~.~.~.E T.Q ~.E f.[ V.~.f.D Q | E ,X ",
" + G H H H z bXz vXz vXH z z z bXbXcXcXh.H z h.h.z z H H vXz bXbXbXbXbXbXbXh.z z z H vXH H z z H H H G.G.G.N.xXF :.A.Q {.Q d.d.d.Q.W A.].K.M. .^ n.Z.D Q d.| | q.Q | {.Q Q q. .o.H.m.q.d.Q.{.X.R.d.q.L r ;XT f.d.XX| q.! b eXqX3Xr.= b.E | | T f.q.| T.Q | T.^.E E Q Q | T.| | E ~.} } E ~.(.^.^.(.} 8.~.E =.[ Q W Q Q +X ",
" 5 sXvXH H H vXvXvXvXvXH H vXh.bXbXh.vXz z h.h.k z lXz z vXz z vXz bXvXz z z z z H z z H vXz z H H H H H H G.G xXH. .`.-.Q.Q. . .q.`.W.L -.{.q.q.R.W A.E f.W E | | | | E | q.o._.m.X.q.Q.X.A.A.Q.f.y b N u.Q.I.T.9.| ;.q l.y l.%.` V.d.| (.| E 8.XXT.(.(.(.(.^.Q (.I.Q Q | XXXXE [ ~.(.^.(.XX^.^.} } ~.E [ [ ~.V.E c. ",
" + fXH vXvXG.vXvXH H vXvXH vXz bXz z z bXbXz z vXbXvXz z z z vXz h.z H z z H z z z vXvXH vXH vXH G.H vXvXvXH G.N.g.Y.H.`.d.[ :.m.Q.T `. . .A.W.{.f.A.).f.W | I.T.f.d.Q.f.A.W V.A.q.Q.o.'.oXq.Q.t.uXM * 1 d.{.d.| Q :.w l.e iX=X& V.T.(.(.| f.Q XXXX(.XXI.(.XX*X(.(.Q | Q Q Q ~.E ~.T.^.^.XXI.T.T.~.~.(.~.=.~.(.,X ",
" 4 fXvXH vXvXz z z bXz H z bXz bXbXbXh.bXh.z z bXz z bXvXbXz bXh.z h.z H z H vXz H z H G.vXvXvXz vXz z z z z G.G G G J.'.q. .Y.Q.W f.[ W f.A.W [ f.T W f.Q d.| A.A.d.d.R.W W W T A.o.X.'.X.Q.m q b OX,.E q.`.`.{.Y.g.w.y r uX` 1 Q | I.(.(.XX-.*XXX*X-.XXXX*X*XI.Q *X{.| E E I.(.(.XXXX(.XXXXXX(.T.XX8.} [ ,X ",
" X fXvXz vXvXh.bXh.z z bXz z bXz bXbXcXbXbXz bXz bXbXvXbXz z bXz z z z H z vXvXH vXvXvXG.vXvXz z z z bXz z vXH vXH G N.F xXF d.q.d.d.d.[ Z.[ R { ).d.d.q.q.f.R.R.| {.A.A.A.9.{ =.C.p f.f.A.g.qXl.%X,.+XA.`.H.! U.H. .L b b r.I W | I.I.XXI.XX*X*X-.dX*XXXXX-.`.*XI.dXq.E E Q Q I.I.XX8.^.(.XXI.| E E [ ,X ",
" X y.vXvXvXbXz bXz bXvXvXbXz z bXbXbXh.h.z bXz z z bXbXvXbXz bXbXbXh.z z z vXH H H z vXH vXvXvXvXvXbXz bXz H z z z H G.G.F I.{.I.{.{.f.W W 9.p.| | | f.9.f.d.f.f.W A.! Q.o.u.Y b.Z.f.9.).w.qXl.$XB < x.X.H.w.J.! M.~ j j %._ 2 ).(.-.I.I.| `.-.dXxXF xX-.Q -.-.Q :.o.j.q.q.:. .d.T.I.XX^.XXI.| T.[ Z ",
" X jXvXvXvXz vXz vXz vXz z bXbXbXbXbXbXz bXbXbXbXbXbXbXbXbXbXbXbXbXz bXz z z h.h.h.z vXH vXG.H vXbXz bXh.z bXz bXz z G.dX*X`.*XXXXXW 9.R.f.| f.| d.| Q | Q m.{.q.Q.M.X./ ].o.V./.[ [ D q w iX3X` ; / N K.[.m :.U.;...y 0 r.g = ).dX`.*X`.W.W.`.g.U.G :.H.M.m.`.`.M.O.~ ~ w.H.A.f.8.(.(.I.-.I.~.' ",
" jXG.H bXbXz bXz bXz vXz z bXbXcXcXz bXbXbXbXbXbXbXcXbXbXz z bXbXbXbXS.cXbXcXcXS.h.bXz H H H H vXH z z bXz z z vXG.F `.-.XXXX(.| [ | Q q.f.Q I.| d.9.| f.q.W.A.o.M.Q.[.o.o.f.b.V.).J.k yX=X1.= d u u L.[.o._.g.k yX6XJ % # = j.-.-.`.Y.M.U.aX_.aXt.aXG ..M.`.M.~ '.~ L 9 [.'.q.*X| (.{.E X ",
" 5 fXbXbXbXbXz bXz z z z z bXcXcXbXz bXbXbXh.z bXbXbXz z z cXbXcXbXcXcXS.S.S.S.cXbXh.h.z vXH H H vXbXz bXbXz H J.F Y.F -.-.(.XX| | {.Q -.-.-.{.`.Q f.f.f.Z.Z.=.`.-.W =.q.A.W.).j.aXiXe b _ wX[.'.O._.o./.:.k h.l.b @Xr._ - p A.Q :.W._.xX;._.t.;.:.J.G M.H.m O.K.d 9 M M m m.d.XX~.A . ",
" C gXz bXbXbXbXz bXbXz h.cXS.cXh.h.bXbXh.z z bXbXbXz bXcXcXcXcXcXbXcXh.S.h.h.h.cXcXh.z z z z bXbXbXbXbXbXz G.xXxXJ.xXY.-.I.d.XX| Q *XW.`.*X{.`.m.V.V.{ [ [ A.m.Q.Q. .M.M.g.! M.O.w.iX#XP I j. .M._.m.W.gXe lXk e qX4Xu B Y W Q W.f.D j.[.:.q.aXW. . .-.q.L M.'.v q ! ..m M.:.d.,X ",
" X jXH bXbXbXbXbXbXbXbXh.bXh.bXbXbXh.bXz z vXvXvXz cXbXcXbXcXcXcXcXcXcXS.h.S.h.S.h.h.h.z z h.bXbXcXbXz z J.q.dXY.dX{.-.m.d.{.{.q.W. .`.A. .`.:.A.f.A./.]. .M.M.! N.G H G.G H N.q w #XU +.j.H.J.J. .! U.H k w w w r u N L.| XXQ f.A.V.E ).~.| E V.f.A.d.dX .m._.F H.M.q.A.T Z ",
" 5 G z bXbXz z z bXz z h.h.bXz z z vXz vXvXvXvXbXbXbXcXcXcXcXcXcXcXcXh.S.h.h.h.h.h.h.z bXS.bXbXbXh.H U.U.F Y.M.H.O.L m.`.F F :.M._.H. .q.Q.f.j.[.a [.M...e G.H G.z k U.G.J.! sX@X_ I ).:.dX:.dXJ.U.G.H J.w.! ~ oX/ W E } ~.E ).[ V.V.f.f.E R [ ~.Q | Q V.D W.`.:.A.u.X ",
" . jXN.z z bXz vXH H H vXh.h.z z H vXH H vXvXz bXcXcXcXcXcXcXS.h.z lXh.z z h.h.h.z z z bXh.h.bXh.N. .:.q.q.m.m.H.K.[.t.~ m ! N.G G g.m [.O.m ! w.N.G G.G.J.J.xXJ.H Y.`.-.N.r <.$ U #.D Q Q ~.I.-.dXdXY.`.{.{.X.Q.f.[ | E ~.E W Y b.D d.Q f.D :.Q f.E V.W D f.=.' ",
" 5 hXvXvXH z z vXH vXvXbXvXH H vXH vXvXz bXbXbXcXcXcXcXcXh.z z H z z z z h.h.z lXlXz z vXz H U.H.Y.H.;.m oXr ~ 9 w.H lXH vXH vXH G w.N.U.N.N.U.N.J.N. .:.q._.F `.`. .M.t.& & g 2 @ q.| XXI.Q d.-.-.I.I.{.d.{.Q.A.o.Q.q.).H.D T [ Q D A.f.Q D E [ W f.W u.X ",
" X jXG H z z z z H vXvXz H H vXvXlXvXvXvXbXbXbXcXcXcXcXbXz bXbXh.z h.h.z vXz vXvXH vXH H H .._._.g.w.r v k y w H k z z vXH G.G G.G.U.J.J.Y.W.dXdXY.`.q.f.Q W.`.-.`._.m.j.[.# ( < D Q XXd.| f.E {.{.XX{.q.Q./.a /.L _.o.q.V.=.S ).f.f.E =.R E E E V.,X ",
" + fXH H H vXz z vXvXz bXvXz vXz vXvXz bXbXcXcXcXcXh.h.bXcXbXz bXz z z z vXlXvXG.vXvXe M.[.9 ~ '.m G z k h.z z z z z H G.U.xXvXF dXdX*X{.| Q *X*Xq.Q E E | | E Q -.q.m.f.x @.A.{.I.Q f.9.f.W f.d.W { D s e./.t.b.).W.[.f.T =.[ V.[ R V.| [ +X ",
" X @ hXH H H vXvXvXz z vXvXvXz z vXvXvXbXz bXbXh.h.z z h.z H z vXH H z z vXvXvXH H H ..q ;.G oXd t lXz z z H bXvXz H J.F :.dX-.I.XX{.-.{.q.Q Q Q | {.`.-.| 9.{.I.{.d.9.9.v.[ Q I.E | W E =.Y ).W v././.[ Z.b.p V.o.q.q.).f.W f.A.E E V.Z ",
" 4 jXN.H H vXH vXvXz z bXz z z vXvXvXvXlXlXH lXlXH z z vXH vXH H vXz H z H z vXH H z H w q q w H H z z H z G.N.J.W.q.Q Q Q (.I.-.-.*X{.{.d.f.Q.| Q.-.{.I.{.| I.I.XX9.8.T.| ~.E E =.[ Y V.[ W b.{ b.Z.p a L.a o.[.[.^ K._.O.g.j.,X. ",
" 4 y.G.vXvXvXvXvXvXvXbXz vXvXvXz H z H lXe lXlXz z z z z vXH vXz vXbXz z bXbXz z h.z H H H H k h.z H H U.W.E E f.W.Q I.I.8.| *XY.`.d.A.d.Q.X.R.m.X.d.Q XX*XI.I.XXXX| | | f.f.b.Y D [ W 9.f.Z.p.=.v.o.L.L.C.o.K.K.9 ;.7X@ X ",
" 5 y.G.vXvXvXvXvXz bXz bXbXcXbXh.k k z z h.h.cXbXh.bXh.bXz vXz z z bXz bXbXbXbXz z z z H H H H H G. .Q E Q I.Q W.`. .`.`.Y.-.{.m.M.'.Q.'.X.m.X.{.W.q.I.I.-.I.I.| d.f.V.T u.A.f.Y [ E Q f.p.b.W 9.d.C.C.Q.'.m d - X ",
" . + 6 zXH z z bXbXbXh.cXcXS.h.S.h.S.h.S.h.z h.bXh.bXbXh.vXvXvXz vXbXz bXbXh.z z z z z H G.U.J.F q.{.I.| E D W.:. .Y.*XY.m.[.H.g.~ m.X.m.'.X.q.:.`.*X-.`.I.| [ ).Q A.A.T o.9.[ E [ W f.[ [ | R.d.R.9.C.).I X ",
" + jXG.z bXcXbXh.bXcXcXS.cXcXcXS.S.z h.h.z z bXbXbXz vXz z bXvXbXvXz z vXH vXvXG.N.xXF `.d.W f.Q ).A.D q.q.W. .f.q.*XW.:.-.`.Q.{.m.m.H. ._.! :.F dX*X| Q q.Q | A.[ {.| T.d.8.| | Q.d.I.I.d.Q.{ ,X. ",
" X @ fXvXz z H z h.bXcXcXcXcXS.h.h.h.z vXvXvXH bXbXbXvXvXvXvXG.G.z H vXvXU.`.`.-.*X| Q (.| | Q o.d.d.W f.8.XXd.~.Q W.q. .8.d.X.Q.X.H. .xX:.q.`.`.W.q.f.Q | E R } (.E f.q.W Q 9.8.[ f.c.Z ",
" X 5 6 sXvXvXz vXz z lXz bXz h.bXvXz z z H vXz z vXvXvXH N.N.G.H G.U.xX-.Q Q Q E 9.9.d.| 9.[ [ [ R Q XXXX| | | D W.f.[ W Q.{.Q.{.Q.`.H.q.:.m.q.q.{.Q Q ~.[ | E =.E f.E [ f.+X,XX ",
" 4 $ hXH H z lXz vXlXlXlXlXlXh.h.h.z G.H vXvXG.G.F F xXF F F `.W.Q E f.Q | W 8.| f.R [ ~.=.*.E | {.{.f.E Q D .C.R.R.X.-.d.d.d. .:.A.q.q. .q.Q I.XXE (.E 9.[ f.E u.' . ",
" + $ kXlXlXz z vXz z lXbXbXz z z G.G.G.xXF `.*X-.*X*XXXD Q W.f.D Q I.Q {.E f.d.| W ~.[ R ~.T.[ c.E W | q.f.Q.R.8.d.| | W Q.d.A.Q.A.q.*XW.{.XXQ | Q | =.,XX ",
" X 4 1XgXzXvXz vXlXvXvXz vXz H G.G Y.W.Q E (.~.E | f.Q V.~.E *X*XXX| d.8.E [ R =.R R 8.[ [ =.| T.| E A.m.A.A.W T f.d.W d.f.q.d.f.| {.{.| [ 8X,XX ",
" . 4 8XjXfXN.lXlXH vXlXH G.g.{.| E f.[ c.T Q Q Q V.D XXQ Q *XI.Q Q f.d.[ R 8.[ ^.} R { E T.| | A.q.Q q.A.W | f.q.E T.{.Q f.T T A ' X ",
" 4 5 jXgXzXH N.! `.I.| d.Q E [ D | f.I.E XX^.^.*X{.E W D `.M.q.f.d.| | 9.} T.XXI.| ~.[ A.| Q Q Q | V.E | V.=.A C . ",
" X 4 5 u.V.C.| | | T.8.(.E | Q I.-.| XXXXI.f.A.Q.f.f.q.| W.-.-.d.XX| XXI.| 9.[ E V.~.~.).8XA Z X ",
" X X ' Z A A Y =.V.=.T E Q (.(.`.q.q.j.:.f.f.| q.d.| E | 8.V.f.).,XwX,XZ X X X ",
" X X X C ' ' + wXwXwXO Z Z 4 ,X' C X X X . "
};

View File

@@ -0,0 +1,237 @@
# =========================================================================
# This makefile was generated by
# Bakefile 0.1.9 (http://bakefile.sourceforge.net)
# Do not modify, all changes will be overwritten!
# =========================================================================
.autodepend
!ifndef BCCDIR
!ifndef MAKEDIR
!error Your Borland compiler does not define MAKEDIR. Please define the BCCDIR variable, e.g. BCCDIR=d:\bc4
!endif
BCCDIR = $(MAKEDIR)\..
!endif
!include ../../build/msw/config.bcc
# -------------------------------------------------------------------------
# Do not modify the rest of this file!
# -------------------------------------------------------------------------
### Variables: ###
WX_RELEASE_NODOT = 27
OBJS = \
bcc_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
LIBDIRNAME = .\..\..\lib\bcc_$(LIBTYPE_SUFFIX)$(CFG)
SETUPHDIR = \
$(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)
RICHTEXT_CXXFLAGS = $(__RUNTIME_LIBS_7) -I$(BCCDIR)\include $(__DEBUGINFO) \
$(__OPTIMIZEFLAG_2) $(__THREADSFLAG_6) -D__WXMSW__ $(__WXUNIV_DEFINE_p) \
$(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \
$(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) $(__MSLU_DEFINE_p) \
-I.\..\..\include -I$(SETUPHDIR) -I. $(__DLLFLAG_p) -I.\..\..\samples -DNOPCH \
$(CPPFLAGS) $(CXXFLAGS)
RICHTEXT_OBJECTS = \
$(OBJS)\richtext_richtext.obj
### Conditionally set variables: ###
!if "$(USE_GUI)" == "0"
PORTNAME = base
!endif
!if "$(USE_GUI)" == "1"
PORTNAME = msw
!endif
!if "$(BUILD)" == "debug" && "$(DEBUG_FLAG)" == "default"
WXDEBUGFLAG = d
!endif
!if "$(DEBUG_FLAG)" == "1"
WXDEBUGFLAG = d
!endif
!if "$(UNICODE)" == "1"
WXUNICODEFLAG = u
!endif
!if "$(WXUNIV)" == "1"
WXUNIVNAME = univ
!endif
!if "$(SHARED)" == "1"
WXDLLFLAG = dll
!endif
!if "$(SHARED)" == "0"
LIBTYPE_SUFFIX = lib
!endif
!if "$(SHARED)" == "1"
LIBTYPE_SUFFIX = dll
!endif
!if "$(MONOLITHIC)" == "0"
EXTRALIBS_FOR_BASE =
!endif
!if "$(MONOLITHIC)" == "1"
EXTRALIBS_FOR_BASE =
!endif
!if "$(BUILD)" == "debug"
__OPTIMIZEFLAG_2 = -Od
!endif
!if "$(BUILD)" == "release"
__OPTIMIZEFLAG_2 = -O2
!endif
!if "$(USE_THREADS)" == "0"
__THREADSFLAG_5 =
!endif
!if "$(USE_THREADS)" == "1"
__THREADSFLAG_5 = mt
!endif
!if "$(USE_THREADS)" == "0"
__THREADSFLAG_6 =
!endif
!if "$(USE_THREADS)" == "1"
__THREADSFLAG_6 = -tWM
!endif
!if "$(RUNTIME_LIBS)" == "dynamic"
__RUNTIME_LIBS_7 = -tWR
!endif
!if "$(RUNTIME_LIBS)" == "static"
__RUNTIME_LIBS_7 =
!endif
!if "$(RUNTIME_LIBS)" == "dynamic"
__RUNTIME_LIBS_8 = i
!endif
!if "$(RUNTIME_LIBS)" == "static"
__RUNTIME_LIBS_8 =
!endif
!if "$(WXUNIV)" == "1"
__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__
!endif
!if "$(WXUNIV)" == "1"
__WXUNIV_DEFINE_p_1 = -d__WXUNIVERSAL__
!endif
!if "$(BUILD)" == "debug" && "$(DEBUG_FLAG)" == "default"
__DEBUG_DEFINE_p = -D__WXDEBUG__
!endif
!if "$(DEBUG_FLAG)" == "1"
__DEBUG_DEFINE_p = -D__WXDEBUG__
!endif
!if "$(BUILD)" == "debug" && "$(DEBUG_FLAG)" == "default"
__DEBUG_DEFINE_p_1 = -d__WXDEBUG__
!endif
!if "$(DEBUG_FLAG)" == "1"
__DEBUG_DEFINE_p_1 = -d__WXDEBUG__
!endif
!if "$(USE_EXCEPTIONS)" == "0"
__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS
!endif
!if "$(USE_EXCEPTIONS)" == "0"
__EXCEPTIONS_DEFINE_p_1 = -dwxNO_EXCEPTIONS
!endif
!if "$(USE_RTTI)" == "0"
__RTTI_DEFINE_p = -DwxNO_RTTI
!endif
!if "$(USE_RTTI)" == "0"
__RTTI_DEFINE_p_1 = -dwxNO_RTTI
!endif
!if "$(USE_THREADS)" == "0"
__THREAD_DEFINE_p = -DwxNO_THREADS
!endif
!if "$(USE_THREADS)" == "0"
__THREAD_DEFINE_p_1 = -dwxNO_THREADS
!endif
!if "$(UNICODE)" == "1"
__UNICODE_DEFINE_p = -D_UNICODE
!endif
!if "$(UNICODE)" == "1"
__UNICODE_DEFINE_p_1 = -d_UNICODE
!endif
!if "$(MSLU)" == "1"
__MSLU_DEFINE_p = -DwxUSE_UNICODE_MSLU=1
!endif
!if "$(MSLU)" == "1"
__MSLU_DEFINE_p_1 = -dwxUSE_UNICODE_MSLU=1
!endif
!if "$(SHARED)" == "1"
__DLLFLAG_p = -DWXUSINGDLL
!endif
!if "$(SHARED)" == "1"
__DLLFLAG_p_1 = -dWXUSINGDLL
!endif
!if "$(MONOLITHIC)" == "0"
__WXLIB_ADV_p = \
wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib
!endif
!if "$(MONOLITHIC)" == "0"
__WXLIB_XML_p = \
wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.lib
!endif
!if "$(MONOLITHIC)" == "0"
__WXLIB_HTML_p = \
wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_html.lib
!endif
!if "$(MONOLITHIC)" == "0"
__WXLIB_CORE_p = \
wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib
!endif
!if "$(MONOLITHIC)" == "0"
__WXLIB_BASE_p = \
wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib
!endif
!if "$(MONOLITHIC)" == "1"
__WXLIB_MONO_p = \
wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib
!endif
!if "$(USE_GUI)" == "1"
__LIB_TIFF_p = wxtiff$(WXDEBUGFLAG).lib
!endif
!if "$(USE_GUI)" == "1"
__LIB_JPEG_p = wxjpeg$(WXDEBUGFLAG).lib
!endif
!if "$(USE_GUI)" == "1"
__LIB_PNG_p = wxpng$(WXDEBUGFLAG).lib
!endif
!if "$(MSLU)" == "1"
__UNICOWS_LIB_p = unicows.lib
!endif
!if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default"
__DEBUGINFO = -v
!endif
!if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default"
__DEBUGINFO = -v-
!endif
!if "$(DEBUG_INFO)" == "0"
__DEBUGINFO = -v-
!endif
!if "$(DEBUG_INFO)" == "1"
__DEBUGINFO = -v
!endif
all: $(OBJS)
$(OBJS):
-if not exist $(OBJS) mkdir $(OBJS)
### Targets: ###
all: $(OBJS)\richtext.exe
clean:
-if exist $(OBJS)\*.obj del $(OBJS)\*.obj
-if exist $(OBJS)\*.res del $(OBJS)\*.res
-if exist $(OBJS)\*.csm del $(OBJS)\*.csm
-if exist $(OBJS)\richtext.exe del $(OBJS)\richtext.exe
-if exist $(OBJS)\richtext.tds del $(OBJS)\richtext.tds
-if exist $(OBJS)\richtext.ilc del $(OBJS)\richtext.ilc
-if exist $(OBJS)\richtext.ild del $(OBJS)\richtext.ild
-if exist $(OBJS)\richtext.ilf del $(OBJS)\richtext.ilf
-if exist $(OBJS)\richtext.ils del $(OBJS)\richtext.ils
$(OBJS)\richtext.exe: $(RICHTEXT_OBJECTS) $(OBJS)\richtext_richtext.res
ilink32 -Tpe -q $(LDFLAGS) -L$(BCCDIR)\lib -L$(BCCDIR)\lib\psdk $(__DEBUGINFO) -L$(LIBDIRNAME) -aa @&&|
c0w32.obj $(RICHTEXT_OBJECTS),$@,, $(__WXLIB_ADV_p) $(__WXLIB_XML_p) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__UNICOWS_LIB_p) ole2w32.lib oleacc.lib odbc32.lib import32.lib cw32$(__THREADSFLAG_5)$(__RUNTIME_LIBS_8).lib,, $(OBJS)\richtext_richtext.res
|
$(OBJS)\richtext_richtext.obj: .\richtext.cpp
$(CXX) -q -c -P -o$@ $(RICHTEXT_CXXFLAGS) $**
$(OBJS)\richtext_richtext.res: .\richtext.rc
brcc32 -32 -r -fo$@ -i$(BCCDIR)\include -d__WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) $(__MSLU_DEFINE_p_1) -i.\..\..\include -i$(SETUPHDIR) -i. $(__DLLFLAG_p_1) -i.\..\..\samples -dNOPCH $**

View File

@@ -0,0 +1,45 @@
# =========================================================================
# This makefile was generated by
# Bakefile 0.1.9 (http://bakefile.sourceforge.net)
# Do not modify, all changes will be overwritten!
# =========================================================================
include ../../build/msw/config.dmc
# -------------------------------------------------------------------------
# Do not modify the rest of this file!
# -------------------------------------------------------------------------
### Variables: ###
WX_RELEASE_NODOT = 27
OBJS = dmc_mswd$(CFG)
LIBTYPE_SUFFIX = lib
LIBDIRNAME = .\..\..\lib\dmc_$(LIBTYPE_SUFFIX)$(CFG)
SETUPHDIR = $(LIBDIRNAME)\mswd
RICHTEXT_CXXFLAGS = -g -o+none -D_WIN32_WINNT=0x0400 -D__WXMSW__ -D__WXDEBUG__ \
-I.\..\..\include -I$(SETUPHDIR) -w- -I. -WA -I.\..\..\samples -DNOPCH -Ar -Ae \
$(CPPFLAGS) $(CXXFLAGS)
RICHTEXT_OBJECTS = \
$(OBJS)\richtext_richtext.obj
### Targets: ###
all : $(OBJS)\richtext.exe
clean :
-if exist $(OBJS)\*.obj del $(OBJS)\*.obj
-if exist $(OBJS)\*.res del $(OBJS)\*.res
-if exist $(OBJS)\*.sym del $(OBJS)\*.sym
-if exist $(OBJS)\richtext.exe del $(OBJS)\richtext.exe
-if exist $(OBJS)\richtext.map del $(OBJS)\richtext.map
$(OBJS)\richtext.exe : $(RICHTEXT_OBJECTS) $(OBJS)\richtext_richtext.res
link /NOLOGO /SILENT /NOI /DELEXECUTABLE /EXETYPE:NT $(LDFLAGS) /DEBUG /CODEVIEW /su:windows:4.0 $(RICHTEXT_OBJECTS),$@,$(OBJS)\richtext.map, $(LIBDIRNAME)\ wxmsw$(WX_RELEASE_NODOT)d$(WX_LIB_FLAVOUR)_adv.lib wxbase$(WX_RELEASE_NODOT)d$(WX_LIB_FLAVOUR)_xml.lib wxmsw$(WX_RELEASE_NODOT)d$(WX_LIB_FLAVOUR)_html.lib wxmsw$(WX_RELEASE_NODOT)d$(WX_LIB_FLAVOUR)_core.lib wxbase$(WX_RELEASE_NODOT)d$(WX_LIB_FLAVOUR).lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib odbc32.lib ,, $(OBJS)\richtext_richtext.res
$(OBJS)\richtext_richtext.obj : .\richtext.cpp
$(CXX) -mn -c -cpp -o$@ $(RICHTEXT_CXXFLAGS) .\richtext.cpp
$(OBJS)\richtext_richtext.res : .\richtext.rc
rcc $** -o$@ -D_WIN32_WINNT=0x0400 -D__WXMSW__ -D__WXDEBUG__ -I.\..\..\include -I$(SETUPHDIR) -I. -I.\..\..\samples -DNOPCH -32 -v-

View File

@@ -0,0 +1,207 @@
# =========================================================================
# This makefile was generated by
# Bakefile 0.1.9 (http://bakefile.sourceforge.net)
# Do not modify, all changes will be overwritten!
# =========================================================================
.LONGCOMMANDLINE: dmc link lib smake
!include ../../build/msw/config.dms
# -------------------------------------------------------------------------
# Do not modify the rest of this file!
# -------------------------------------------------------------------------
### Conditionally set variables: ###
!if "$(USE_GUI)" == "0"
PORTNAME = base
!endif
!if "$(USE_GUI)" == "1"
PORTNAME = msw
!endif
!if "$(BUILD)" == "debug"
!if "$(DEBUG_FLAG)" == "default"
WXDEBUGFLAG = d
!endif
!endif
!if "$(DEBUG_FLAG)" == "1"
WXDEBUGFLAG = d
!endif
!if "$(UNICODE)" == "1"
WXUNICODEFLAG = u
!endif
!if "$(WXUNIV)" == "1"
WXUNIVNAME = univ
!endif
!if "$(SHARED)" == "1"
WXDLLFLAG = dll
!endif
!if "$(SHARED)" == "0"
LIBTYPE_SUFFIX = lib
!endif
!if "$(SHARED)" == "1"
LIBTYPE_SUFFIX = dll
!endif
!if "$(MONOLITHIC)" == "0"
EXTRALIBS_FOR_BASE =
!endif
!if "$(MONOLITHIC)" == "1"
EXTRALIBS_FOR_BASE =
!endif
!if "$(BUILD)" == "debug"
!if "$(DEBUG_INFO)" == "default"
__DEBUGINFO_0 = -g
!endif
!endif
!if "$(BUILD)" == "release"
!if "$(DEBUG_INFO)" == "default"
__DEBUGINFO_0 =
!endif
!endif
!if "$(DEBUG_INFO)" == "0"
__DEBUGINFO_0 =
!endif
!if "$(DEBUG_INFO)" == "1"
__DEBUGINFO_0 = -g
!endif
!if "$(BUILD)" == "debug"
!if "$(DEBUG_INFO)" == "default"
__DEBUGINFO_1 = /DEBUG /CODEVIEW
!endif
!endif
!if "$(BUILD)" == "release"
!if "$(DEBUG_INFO)" == "default"
__DEBUGINFO_1 =
!endif
!endif
!if "$(DEBUG_INFO)" == "0"
__DEBUGINFO_1 =
!endif
!if "$(DEBUG_INFO)" == "1"
__DEBUGINFO_1 = /DEBUG /CODEVIEW
!endif
!if "$(BUILD)" == "debug"
__OPTIMIZEFLAG_2 = -o+none
!endif
!if "$(BUILD)" == "release"
__OPTIMIZEFLAG_2 = -o
!endif
!if "$(RUNTIME_LIBS)" == "dynamic"
__RUNTIME_LIBS_5 = -ND
!endif
!if "$(RUNTIME_LIBS)" == "static"
__RUNTIME_LIBS_5 =
!endif
!if "$(USE_RTTI)" == "0"
__RTTIFLAG_6 =
!endif
!if "$(USE_RTTI)" == "1"
__RTTIFLAG_6 = -Ar
!endif
!if "$(USE_EXCEPTIONS)" == "0"
__EXCEPTIONSFLAG_7 =
!endif
!if "$(USE_EXCEPTIONS)" == "1"
__EXCEPTIONSFLAG_7 = -Ae
!endif
!if "$(MONOLITHIC)" == "0"
__WXLIB_ADV_p = \
wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv.lib
!endif
!if "$(MONOLITHIC)" == "0"
__WXLIB_XML_p = \
wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml.lib
!endif
!if "$(MONOLITHIC)" == "0"
__WXLIB_HTML_p = \
wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_html.lib
!endif
!if "$(MONOLITHIC)" == "0"
__WXLIB_CORE_p = \
wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib
!endif
!if "$(MONOLITHIC)" == "0"
__WXLIB_BASE_p = \
wxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib
!endif
!if "$(MONOLITHIC)" == "1"
__WXLIB_MONO_p = \
wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib
!endif
!if "$(USE_GUI)" == "1"
__LIB_TIFF_p = wxtiff$(WXDEBUGFLAG).lib
!endif
!if "$(USE_GUI)" == "1"
__LIB_JPEG_p = wxjpeg$(WXDEBUGFLAG).lib
!endif
!if "$(USE_GUI)" == "1"
__LIB_PNG_p = wxpng$(WXDEBUGFLAG).lib
!endif
!if "$(MSLU)" == "1"
__UNICOWS_LIB_p = unicows.lib
!endif
!if "$(WXUNIV)" == "1"
__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__
!endif
!if "$(BUILD)" == "debug"
!if "$(DEBUG_FLAG)" == "default"
__DEBUG_DEFINE_p = -D__WXDEBUG__
!endif
!endif
!if "$(DEBUG_FLAG)" == "1"
__DEBUG_DEFINE_p = -D__WXDEBUG__
!endif
!if "$(USE_EXCEPTIONS)" == "0"
__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS
!endif
!if "$(USE_RTTI)" == "0"
__RTTI_DEFINE_p = -DwxNO_RTTI
!endif
!if "$(USE_THREADS)" == "0"
__THREAD_DEFINE_p = -DwxNO_THREADS
!endif
!if "$(UNICODE)" == "1"
__UNICODE_DEFINE_p = -D_UNICODE
!endif
!if "$(MSLU)" == "1"
__MSLU_DEFINE_p = -DwxUSE_UNICODE_MSLU=1
!endif
!if "$(SHARED)" == "1"
__DLLFLAG_p = -DWXUSINGDLL
!endif
### Variables: ###
WX_RELEASE_NODOT = 27
OBJS = dmc_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
LIBDIRNAME = .\..\..\lib\dmc_$(LIBTYPE_SUFFIX)$(CFG)
SETUPHDIR = $(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)
RICHTEXT_CXXFLAGS = $(__DEBUGINFO_0) $(__OPTIMIZEFLAG_2) $(__RUNTIME_LIBS_5) -D_WIN32_WINNT=0x0400 -D__WXMSW__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) $(__MSLU_DEFINE_p) -I.\..\..\include -I$(SETUPHDIR) -w- -I. $(__DLLFLAG_p) -WA -I.\..\..\samples -DNOPCH $(__RTTIFLAG_6) $(__EXCEPTIONSFLAG_7) $(CPPFLAGS) $(CXXFLAGS)
RICHTEXT_OBJECTS = $(OBJS)\richtext_richtext.obj
all : $(OBJS)
$(OBJS) :
-if not exist $(OBJS) mkdir $(OBJS)
### Targets: ###
all : $(OBJS)\richtext.exe
clean :
-if exist $(OBJS)\*.obj del $(OBJS)\*.obj
-if exist $(OBJS)\*.res del $(OBJS)\*.res
-if exist $(OBJS)\*.sym del $(OBJS)\*.sym
-if exist $(OBJS)\richtext.exe del $(OBJS)\richtext.exe
-if exist $(OBJS)\richtext.map del $(OBJS)\richtext.map
$(OBJS)\richtext.exe : $(RICHTEXT_OBJECTS) $(OBJS)\richtext_richtext.res
link /NOLOGO /SILENT /NOI /DELEXECUTABLE /EXETYPE:NT $(LDFLAGS) $(__DEBUGINFO_1) /su:windows:4.0 $(RICHTEXT_OBJECTS),$@,$(OBJS)\richtext.map, $(LIBDIRNAME)\ $(__WXLIB_ADV_p) $(__WXLIB_XML_p) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__UNICOWS_LIB_p) kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib odbc32.lib ,, $(OBJS)\richtext_richtext.res
$(OBJS)\richtext_richtext.obj : .\richtext.cpp
$(CXX) -mn -c -cpp -o$@ $(RICHTEXT_CXXFLAGS) .\richtext.cpp
$(OBJS)\richtext_richtext.res : .\richtext.rc
rcc $** -o$@ -D_WIN32_WINNT=0x0400 -D__WXMSW__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) $(__MSLU_DEFINE_p) -I.\..\..\include -I$(SETUPHDIR) -I. $(__DLLFLAG_p) -I.\..\..\samples -DNOPCH -32 -v-

View File

@@ -0,0 +1,235 @@
# =========================================================================
# This makefile was generated by
# Bakefile 0.1.9 (http://bakefile.sourceforge.net)
# Do not modify, all changes will be overwritten!
# =========================================================================
include ../../build/msw/config.gcc
# -------------------------------------------------------------------------
# Do not modify the rest of this file!
# -------------------------------------------------------------------------
### Variables: ###
CPPDEPS = -MT$@ -MF$@.d -MD
WX_RELEASE_NODOT = 27
OBJS = \
gcc_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
LIBDIRNAME = .\..\..\lib\gcc_$(LIBTYPE_SUFFIX)$(CFG)
SETUPHDIR = \
$(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)
RICHTEXT_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG_2) $(__THREADSFLAG) \
$(GCCFLAGS) -DHAVE_W32API_H -D__WXMSW__ $(__WXUNIV_DEFINE_p) \
$(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \
$(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) $(__MSLU_DEFINE_p) \
-I.\..\..\include -I$(SETUPHDIR) -W -Wall -I. $(__DLLFLAG_p) -I.\..\..\samples \
-DNOPCH $(__RTTIFLAG_5) $(__EXCEPTIONSFLAG_6) -Wno-ctor-dtor-privacy \
$(CPPFLAGS) $(CXXFLAGS)
RICHTEXT_OBJECTS = \
$(OBJS)\richtext_richtext.o \
$(OBJS)\richtext_richtext_rc.o
### Conditionally set variables: ###
ifeq ($(GCC_VERSION),2.95)
GCCFLAGS = -fvtable-thunks
endif
ifeq ($(USE_GUI),0)
PORTNAME = base
endif
ifeq ($(USE_GUI),1)
PORTNAME = msw
endif
ifeq ($(BUILD),debug)
ifeq ($(DEBUG_FLAG),default)
WXDEBUGFLAG = d
endif
endif
ifeq ($(DEBUG_FLAG),1)
WXDEBUGFLAG = d
endif
ifeq ($(UNICODE),1)
WXUNICODEFLAG = u
endif
ifeq ($(WXUNIV),1)
WXUNIVNAME = univ
endif
ifeq ($(SHARED),1)
WXDLLFLAG = dll
endif
ifeq ($(SHARED),0)
LIBTYPE_SUFFIX = lib
endif
ifeq ($(SHARED),1)
LIBTYPE_SUFFIX = dll
endif
ifeq ($(MONOLITHIC),0)
EXTRALIBS_FOR_BASE =
endif
ifeq ($(MONOLITHIC),1)
EXTRALIBS_FOR_BASE =
endif
ifeq ($(BUILD),debug)
__OPTIMIZEFLAG_2 = -O0
endif
ifeq ($(BUILD),release)
__OPTIMIZEFLAG_2 = -O2
endif
ifeq ($(USE_RTTI),0)
__RTTIFLAG_5 = -fno-rtti
endif
ifeq ($(USE_RTTI),1)
__RTTIFLAG_5 =
endif
ifeq ($(USE_EXCEPTIONS),0)
__EXCEPTIONSFLAG_6 = -fno-exceptions
endif
ifeq ($(USE_EXCEPTIONS),1)
__EXCEPTIONSFLAG_6 =
endif
ifeq ($(WXUNIV),1)
__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__
endif
ifeq ($(WXUNIV),1)
__WXUNIV_DEFINE_p_1 = --define __WXUNIVERSAL__
endif
ifeq ($(BUILD),debug)
ifeq ($(DEBUG_FLAG),default)
__DEBUG_DEFINE_p = -D__WXDEBUG__
endif
endif
ifeq ($(DEBUG_FLAG),1)
__DEBUG_DEFINE_p = -D__WXDEBUG__
endif
ifeq ($(BUILD),debug)
ifeq ($(DEBUG_FLAG),default)
__DEBUG_DEFINE_p_1 = --define __WXDEBUG__
endif
endif
ifeq ($(DEBUG_FLAG),1)
__DEBUG_DEFINE_p_1 = --define __WXDEBUG__
endif
ifeq ($(USE_EXCEPTIONS),0)
__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS
endif
ifeq ($(USE_EXCEPTIONS),0)
__EXCEPTIONS_DEFINE_p_1 = --define wxNO_EXCEPTIONS
endif
ifeq ($(USE_RTTI),0)
__RTTI_DEFINE_p = -DwxNO_RTTI
endif
ifeq ($(USE_RTTI),0)
__RTTI_DEFINE_p_1 = --define wxNO_RTTI
endif
ifeq ($(USE_THREADS),0)
__THREAD_DEFINE_p = -DwxNO_THREADS
endif
ifeq ($(USE_THREADS),0)
__THREAD_DEFINE_p_1 = --define wxNO_THREADS
endif
ifeq ($(UNICODE),1)
__UNICODE_DEFINE_p = -D_UNICODE
endif
ifeq ($(UNICODE),1)
__UNICODE_DEFINE_p_1 = --define _UNICODE
endif
ifeq ($(MSLU),1)
__MSLU_DEFINE_p = -DwxUSE_UNICODE_MSLU=1
endif
ifeq ($(MSLU),1)
__MSLU_DEFINE_p_1 = --define wxUSE_UNICODE_MSLU=1
endif
ifeq ($(SHARED),1)
__DLLFLAG_p = -DWXUSINGDLL
endif
ifeq ($(SHARED),1)
__DLLFLAG_p_1 = --define WXUSINGDLL
endif
ifeq ($(MONOLITHIC),0)
__WXLIB_ADV_p = \
-lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv
endif
ifeq ($(MONOLITHIC),0)
__WXLIB_XML_p = \
-lwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_xml
endif
ifeq ($(MONOLITHIC),0)
__WXLIB_HTML_p = \
-lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_html
endif
ifeq ($(MONOLITHIC),0)
__WXLIB_CORE_p = \
-lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core
endif
ifeq ($(MONOLITHIC),0)
__WXLIB_BASE_p = \
-lwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
endif
ifeq ($(MONOLITHIC),1)
__WXLIB_MONO_p = \
-lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
endif
ifeq ($(USE_GUI),1)
__LIB_TIFF_p = -lwxtiff$(WXDEBUGFLAG)
endif
ifeq ($(USE_GUI),1)
__LIB_JPEG_p = -lwxjpeg$(WXDEBUGFLAG)
endif
ifeq ($(USE_GUI),1)
__LIB_PNG_p = -lwxpng$(WXDEBUGFLAG)
endif
ifeq ($(MSLU),1)
__UNICOWS_LIB_p = -lunicows
endif
ifeq ($(BUILD),debug)
ifeq ($(DEBUG_INFO),default)
__DEBUGINFO = -g
endif
endif
ifeq ($(BUILD),release)
ifeq ($(DEBUG_INFO),default)
__DEBUGINFO =
endif
endif
ifeq ($(DEBUG_INFO),0)
__DEBUGINFO =
endif
ifeq ($(DEBUG_INFO),1)
__DEBUGINFO = -g
endif
ifeq ($(USE_THREADS),0)
__THREADSFLAG =
endif
ifeq ($(USE_THREADS),1)
__THREADSFLAG = -mthreads
endif
all: $(OBJS)
$(OBJS):
-if not exist $(OBJS) mkdir $(OBJS)
### Targets: ###
all: $(OBJS)\richtext.exe
clean:
-if exist $(OBJS)\*.o del $(OBJS)\*.o
-if exist $(OBJS)\*.d del $(OBJS)\*.d
-if exist $(OBJS)\richtext.exe del $(OBJS)\richtext.exe
$(OBJS)\richtext.exe: $(RICHTEXT_OBJECTS) $(OBJS)\richtext_richtext_rc.o
$(CXX) -o $@ $(RICHTEXT_OBJECTS) $(LDFLAGS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(__WXLIB_ADV_p) $(__WXLIB_XML_p) $(__WXLIB_HTML_p) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__UNICOWS_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32 -lodbc32
$(OBJS)\richtext_richtext.o: ./richtext.cpp
$(CXX) -c -o $@ $(RICHTEXT_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\richtext_richtext_rc.o: ./richtext.rc
windres --use-temp-file -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) $(__MSLU_DEFINE_p_1) --include-dir ./../../include --include-dir $(SETUPHDIR) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH
.PHONY: all clean
# Dependencies tracking:
-include $(OBJS)/*.d

100
samples/richtext/readme.txt Normal file
View File

@@ -0,0 +1,100 @@
wxRichTextCtrl README
=====================
Welcome to wxRichTextCtrl. It includes the following functionality:
* Text entry, paragraph wrapping
* Scrolling, keyboard navigation
* Application of character styles:
bold, italic, underlined, font face, text colour
* Application of paragraph styles:
left/right indentation, sub-indentation (first-line indent),
paragraph spacing (before and after), line spacing,
left/centre/right alignment, numbered bullets
* Insertion of images
* Copy/paste
* Undo/Redo with optional batching and undo history suppression
* Named paragraph and character styles management and application
* File handlers allow addition of file formats
* Text saving and loading, XML saving and loading, HTML saving (unfinished)
Sorry, this is a Windows-only demo for now but the code should
compile on other platforms.
Design
======
Data is represented by a hierarchy of objects, all derived from
wxRichTextObject.
The top of the hierarchy is the buffer, a kind of wxRichTextParagraphLayoutBox.
These boxes will allow flexible placement of text boxes on a page, but
for now there will be a single box representing the document,
and this box will a wxRichTextParagraphLayoutBox which contains further
wxRichTextParagraph objects, each of which can include text and images.
Each object maintains a range (start and end position) measured
from the start of the main parent box.
A paragraph object knows its range, and a text fragment knows its range
too. So, a character or image in a page has a position relative to the
start of the document, and a character in an embedded text box has
a position relative to that text box. For now, we will not be dealing with
embedded objects but it's something to bear in mind for later.
Before display, a changed buffer must have Layout() called on it,
to do wrapping, alignment etc. Ranges representing wrapped lines are stored
with each paragraph.
Since wxRichTextBuffer is separate from wxRichTextCtrl, the storage
and rendering facilities can be used by other controls.
API
===
It's basically the wxTextCtrl with some additions. There is a new
wxTextAttrEx class deriving from wxTextAttr, to accomodate new
style attributes. This could be merged with wxTextAttr. There
is also a wxRichTextAttr which is similar to wxTextAttrEx but
doesn't store the font as a wxFont: this allows much more
efficient operations, especially when querying styles in a
UI update handler. We would not want to create several new wxFonts
when querying for italics, bold, etc. every few milliseconds.
See "Functionality specific to wxRichTextCtrl" section in richtextctrl.h.
One addition is Set/GetBasicStyle, which is needed in addition to
Set/GetDefaultStyle to get the overall style for the buffer
from which content will inherit (after apply the default style).
wxRichTextRange is a new class representing start and end positions.
It's used in the implementation so that pieces of content
know their range, and also in the API in preference to using
two positions.
What next?
==========
- Decision about where to put it: wxCode, wxWidgets
- Makefiles/bakefiles
- Refining the API
- Documentation
- Bug fixing/improvements
See todo.txt for a list of bugs, improvements and features,
and also TODO throughout the source.
==
Julian Smart, October 18th 2005

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,480 @@
# Microsoft Developer Studio Project File - Name="richtext" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Application" 0x0101
CFG=richtext - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "richtext.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "richtext.mak" CFG="richtext - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "richtext - Win32 DLL Universal Unicode Release" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 DLL Universal Unicode Debug" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 DLL Universal Release" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 DLL Universal Debug" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 DLL Unicode Release" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 DLL Unicode Debug" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 DLL Release" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 DLL Debug" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 Universal Unicode Release" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 Universal Unicode Debug" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 Universal Release" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 Universal Debug" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 Unicode Release" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 Unicode Debug" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 Release" (based on "Win32 (x86) Application")
!MESSAGE "richtext - Win32 Debug" (based on "Win32 (x86) Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
MTL=midl.exe
RSC=rc.exe
!IF "$(CFG)" == "richtext - Win32 DLL Universal Unicode Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "vc_mswunivudll"
# PROP BASE Intermediate_Dir "vc_mswunivudll\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "vc_mswunivudll"
# PROP Intermediate_Dir "vc_mswunivudll\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MD /Fdvc_mswunivudll\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswunivu" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MD /Fdvc_mswunivudll\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswunivu" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswunivu" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswunivu" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmswuniv27u_adv.lib wxbase27u_xml.lib wxmswuniv27u_html.lib wxmswuniv27u_core.lib wxbase27u.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivudll\richtext.exe" /libpath:".\..\..\lib\vc_dll" /subsystem:windows
# ADD LINK32 wxmswuniv27u_adv.lib wxbase27u_xml.lib wxmswuniv27u_html.lib wxmswuniv27u_core.lib wxbase27u.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivudll\richtext.exe" /libpath:".\..\..\lib\vc_dll" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 DLL Universal Unicode Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "vc_mswunivuddll"
# PROP BASE Intermediate_Dir "vc_mswunivuddll\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "vc_mswunivuddll"
# PROP Intermediate_Dir "vc_mswunivuddll\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswunivuddll\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswunivud" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswunivuddll\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswunivud" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "__WXDEBUG__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswunivud" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "__WXDEBUG__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswunivud" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmswuniv27ud_adv.lib wxbase27ud_xml.lib wxmswuniv27ud_html.lib wxmswuniv27ud_core.lib wxbase27ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivuddll\richtext.exe" /debug /libpath:".\..\..\lib\vc_dll" /subsystem:windows
# ADD LINK32 wxmswuniv27ud_adv.lib wxbase27ud_xml.lib wxmswuniv27ud_html.lib wxmswuniv27ud_core.lib wxbase27ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivuddll\richtext.exe" /debug /libpath:".\..\..\lib\vc_dll" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 DLL Universal Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "vc_mswunivdll"
# PROP BASE Intermediate_Dir "vc_mswunivdll\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "vc_mswunivdll"
# PROP Intermediate_Dir "vc_mswunivdll\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MD /Fdvc_mswunivdll\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswuniv" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MD /Fdvc_mswunivdll\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswuniv" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "__WXMSW__" /d "__WXUNIVERSAL__" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswuniv" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "__WXMSW__" /d "__WXUNIVERSAL__" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswuniv" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmswuniv27_adv.lib wxbase27_xml.lib wxmswuniv27_html.lib wxmswuniv27_core.lib wxbase27.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivdll\richtext.exe" /libpath:".\..\..\lib\vc_dll" /subsystem:windows
# ADD LINK32 wxmswuniv27_adv.lib wxbase27_xml.lib wxmswuniv27_html.lib wxmswuniv27_core.lib wxbase27.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivdll\richtext.exe" /libpath:".\..\..\lib\vc_dll" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 DLL Universal Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "vc_mswunivddll"
# PROP BASE Intermediate_Dir "vc_mswunivddll\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "vc_mswunivddll"
# PROP Intermediate_Dir "vc_mswunivddll\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswunivddll\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswunivd" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswunivddll\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswunivd" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "__WXDEBUG__" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswunivd" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "__WXDEBUG__" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswunivd" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmswuniv27d_adv.lib wxbase27d_xml.lib wxmswuniv27d_html.lib wxmswuniv27d_core.lib wxbase27d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivddll\richtext.exe" /debug /libpath:".\..\..\lib\vc_dll" /subsystem:windows
# ADD LINK32 wxmswuniv27d_adv.lib wxbase27d_xml.lib wxmswuniv27d_html.lib wxmswuniv27d_core.lib wxbase27d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivddll\richtext.exe" /debug /libpath:".\..\..\lib\vc_dll" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 DLL Unicode Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "vc_mswudll"
# PROP BASE Intermediate_Dir "vc_mswudll\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "vc_mswudll"
# PROP Intermediate_Dir "vc_mswudll\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MD /Fdvc_mswudll\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswu" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MD /Fdvc_mswudll\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswu" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "__WXMSW__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "__WXMSW__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "__WXMSW__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswu" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "__WXMSW__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswu" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmsw27u_adv.lib wxbase27u_xml.lib wxmsw27u_html.lib wxmsw27u_core.lib wxbase27u.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswudll\richtext.exe" /libpath:".\..\..\lib\vc_dll" /subsystem:windows
# ADD LINK32 wxmsw27u_adv.lib wxbase27u_xml.lib wxmsw27u_html.lib wxmsw27u_core.lib wxbase27u.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswudll\richtext.exe" /libpath:".\..\..\lib\vc_dll" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 DLL Unicode Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "vc_mswuddll"
# PROP BASE Intermediate_Dir "vc_mswuddll\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "vc_mswuddll"
# PROP Intermediate_Dir "vc_mswuddll\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswuddll\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswud" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswuddll\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswud" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_UNICODE" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXDEBUG__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswud" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXDEBUG__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswud" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmsw27ud_adv.lib wxbase27ud_xml.lib wxmsw27ud_html.lib wxmsw27ud_core.lib wxbase27ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswuddll\richtext.exe" /debug /libpath:".\..\..\lib\vc_dll" /subsystem:windows
# ADD LINK32 wxmsw27ud_adv.lib wxbase27ud_xml.lib wxmsw27ud_html.lib wxmsw27ud_core.lib wxbase27ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswuddll\richtext.exe" /debug /libpath:".\..\..\lib\vc_dll" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 DLL Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "vc_mswdll"
# PROP BASE Intermediate_Dir "vc_mswdll\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "vc_mswdll"
# PROP Intermediate_Dir "vc_mswdll\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MD /Fdvc_mswdll\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\msw" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MD /Fdvc_mswdll\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\msw" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "__WXMSW__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "__WXMSW__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "__WXMSW__" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\msw" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "__WXMSW__" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\msw" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmsw27_adv.lib wxbase27_xml.lib wxmsw27_html.lib wxmsw27_core.lib wxbase27.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswdll\richtext.exe" /libpath:".\..\..\lib\vc_dll" /subsystem:windows
# ADD LINK32 wxmsw27_adv.lib wxbase27_xml.lib wxmsw27_html.lib wxmsw27_core.lib wxbase27.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswdll\richtext.exe" /libpath:".\..\..\lib\vc_dll" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 DLL Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "vc_mswddll"
# PROP BASE Intermediate_Dir "vc_mswddll\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "vc_mswddll"
# PROP Intermediate_Dir "vc_mswddll\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswddll\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswd" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswddll\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_dll\mswd" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "WXUSINGDLL" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXDEBUG__" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswd" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXDEBUG__" /i ".\..\..\include" /i ".\..\..\lib\vc_dll\mswd" /i "." /d "WXUSINGDLL" /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmsw27d_adv.lib wxbase27d_xml.lib wxmsw27d_html.lib wxmsw27d_core.lib wxbase27d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswddll\richtext.exe" /debug /libpath:".\..\..\lib\vc_dll" /subsystem:windows
# ADD LINK32 wxmsw27d_adv.lib wxbase27d_xml.lib wxmsw27d_html.lib wxmsw27d_core.lib wxbase27d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswddll\richtext.exe" /debug /libpath:".\..\..\lib\vc_dll" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 Universal Unicode Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "vc_mswunivu"
# PROP BASE Intermediate_Dir "vc_mswunivu\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "vc_mswunivu"
# PROP Intermediate_Dir "vc_mswunivu\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MD /Fdvc_mswunivu\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswunivu" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MD /Fdvc_mswunivu\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswunivu" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswunivu" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswunivu" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmswuniv27u_adv.lib wxbase27u_xml.lib wxmswuniv27u_html.lib wxmswuniv27u_core.lib wxbase27u.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivu\richtext.exe" /libpath:".\..\..\lib\vc_lib" /subsystem:windows
# ADD LINK32 wxmswuniv27u_adv.lib wxbase27u_xml.lib wxmswuniv27u_html.lib wxmswuniv27u_core.lib wxbase27u.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivu\richtext.exe" /libpath:".\..\..\lib\vc_lib" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 Universal Unicode Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "vc_mswunivud"
# PROP BASE Intermediate_Dir "vc_mswunivud\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "vc_mswunivud"
# PROP Intermediate_Dir "vc_mswunivud\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswunivud\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswunivud" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswunivud\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswunivud" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "__WXDEBUG__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswunivud" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "__WXDEBUG__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswunivud" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmswuniv27ud_adv.lib wxbase27ud_xml.lib wxmswuniv27ud_html.lib wxmswuniv27ud_core.lib wxbase27ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivud\richtext.exe" /debug /libpath:".\..\..\lib\vc_lib" /subsystem:windows
# ADD LINK32 wxmswuniv27ud_adv.lib wxbase27ud_xml.lib wxmswuniv27ud_html.lib wxmswuniv27ud_core.lib wxbase27ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivud\richtext.exe" /debug /libpath:".\..\..\lib\vc_lib" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 Universal Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "vc_mswuniv"
# PROP BASE Intermediate_Dir "vc_mswuniv\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "vc_mswuniv"
# PROP Intermediate_Dir "vc_mswuniv\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MD /Fdvc_mswuniv\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswuniv" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MD /Fdvc_mswuniv\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswuniv" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "__WXMSW__" /d "__WXUNIVERSAL__" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswuniv" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "__WXMSW__" /d "__WXUNIVERSAL__" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswuniv" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmswuniv27_adv.lib wxbase27_xml.lib wxmswuniv27_html.lib wxmswuniv27_core.lib wxbase27.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswuniv\richtext.exe" /libpath:".\..\..\lib\vc_lib" /subsystem:windows
# ADD LINK32 wxmswuniv27_adv.lib wxbase27_xml.lib wxmswuniv27_html.lib wxmswuniv27_core.lib wxbase27.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswuniv\richtext.exe" /libpath:".\..\..\lib\vc_lib" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 Universal Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "vc_mswunivd"
# PROP BASE Intermediate_Dir "vc_mswunivd\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "vc_mswunivd"
# PROP Intermediate_Dir "vc_mswunivd\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswunivd\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswunivd" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswunivd\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswunivd" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXUNIVERSAL__" /D "__WXDEBUG__" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "__WXDEBUG__" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswunivd" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXUNIVERSAL__" /d "__WXDEBUG__" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswunivd" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmswuniv27d_adv.lib wxbase27d_xml.lib wxmswuniv27d_html.lib wxmswuniv27d_core.lib wxbase27d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivd\richtext.exe" /debug /libpath:".\..\..\lib\vc_lib" /subsystem:windows
# ADD LINK32 wxmswuniv27d_adv.lib wxbase27d_xml.lib wxmswuniv27d_html.lib wxmswuniv27d_core.lib wxbase27d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswunivd\richtext.exe" /debug /libpath:".\..\..\lib\vc_lib" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 Unicode Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "vc_mswu"
# PROP BASE Intermediate_Dir "vc_mswu\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "vc_mswu"
# PROP Intermediate_Dir "vc_mswu\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MD /Fdvc_mswu\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswu" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MD /Fdvc_mswu\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswu" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "__WXMSW__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "__WXMSW__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "__WXMSW__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswu" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "__WXMSW__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswu" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmsw27u_adv.lib wxbase27u_xml.lib wxmsw27u_html.lib wxmsw27u_core.lib wxbase27u.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswu\richtext.exe" /libpath:".\..\..\lib\vc_lib" /subsystem:windows
# ADD LINK32 wxmsw27u_adv.lib wxbase27u_xml.lib wxmsw27u_html.lib wxmsw27u_core.lib wxbase27u.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswu\richtext.exe" /libpath:".\..\..\lib\vc_lib" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 Unicode Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "vc_mswud"
# PROP BASE Intermediate_Dir "vc_mswud\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "vc_mswud"
# PROP Intermediate_Dir "vc_mswud\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswud\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswud" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswud\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswud" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_UNICODE" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXDEBUG__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswud" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXDEBUG__" /d "_UNICODE" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswud" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmsw27ud_adv.lib wxbase27ud_xml.lib wxmsw27ud_html.lib wxmsw27ud_core.lib wxbase27ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswud\richtext.exe" /debug /libpath:".\..\..\lib\vc_lib" /subsystem:windows
# ADD LINK32 wxmsw27ud_adv.lib wxbase27ud_xml.lib wxmsw27ud_html.lib wxmsw27ud_core.lib wxbase27ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswud\richtext.exe" /debug /libpath:".\..\..\lib\vc_lib" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "vc_msw"
# PROP BASE Intermediate_Dir "vc_msw\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "vc_msw"
# PROP Intermediate_Dir "vc_msw\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MD /Fdvc_msw\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\msw" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MD /Fdvc_msw\richtext.pdb /O2 /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\msw" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "__WXMSW__" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "__WXMSW__" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "__WXMSW__" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "__WXMSW__" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\msw" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "__WXMSW__" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\msw" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmsw27_adv.lib wxbase27_xml.lib wxmsw27_html.lib wxmsw27_core.lib wxbase27.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_msw\richtext.exe" /libpath:".\..\..\lib\vc_lib" /subsystem:windows
# ADD LINK32 wxmsw27_adv.lib wxbase27_xml.lib wxmsw27_html.lib wxmsw27_core.lib wxbase27.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_msw\richtext.exe" /libpath:".\..\..\lib\vc_lib" /subsystem:windows
!ELSEIF "$(CFG)" == "richtext - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "vc_mswd"
# PROP BASE Intermediate_Dir "vc_mswd\richtext"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "vc_mswd"
# PROP Intermediate_Dir "vc_mswd\richtext"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswd\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswd" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_WINDOWS" /D "NOPCH" /c
# ADD CPP /nologo /FD /MDd /Zi /Gm /GZ /Fdvc_mswd\richtext.pdb /Od /GR /EHsc /I ".\..\..\include" /I ".\..\..\lib\vc_lib\mswd" /W4 /I "." /I ".\..\..\samples" /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_WINDOWS" /D "NOPCH" /c
# ADD BASE MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD MTL /nologo /D "WIN32" /D "_DEBUG" /D "__WXMSW__" /D "__WXDEBUG__" /D "_WINDOWS" /D "NOPCH" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXDEBUG__" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswd" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
# ADD RSC /l 0x409 /d "_DEBUG" /d "__WXMSW__" /d "__WXDEBUG__" /i ".\..\..\include" /i ".\..\..\lib\vc_lib\mswd" /i "." /d "_WINDOWS" /i ".\..\..\samples" /d NOPCH
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 wxmsw27d_adv.lib wxbase27d_xml.lib wxmsw27d_html.lib wxmsw27d_core.lib wxbase27d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswd\richtext.exe" /debug /libpath:".\..\..\lib\vc_lib" /subsystem:windows
# ADD LINK32 wxmsw27d_adv.lib wxbase27d_xml.lib wxmsw27d_html.lib wxmsw27d_core.lib wxbase27d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib oleacc.lib odbc32.lib /nologo /machine:i386 /out:"vc_mswd\richtext.exe" /debug /libpath:".\..\..\lib\vc_lib" /subsystem:windows
!ENDIF
# Begin Target
# Name "richtext - Win32 DLL Universal Unicode Release"
# Name "richtext - Win32 DLL Universal Unicode Debug"
# Name "richtext - Win32 DLL Universal Release"
# Name "richtext - Win32 DLL Universal Debug"
# Name "richtext - Win32 DLL Unicode Release"
# Name "richtext - Win32 DLL Unicode Debug"
# Name "richtext - Win32 DLL Release"
# Name "richtext - Win32 DLL Debug"
# Name "richtext - Win32 Universal Unicode Release"
# Name "richtext - Win32 Universal Unicode Debug"
# Name "richtext - Win32 Universal Release"
# Name "richtext - Win32 Universal Debug"
# Name "richtext - Win32 Unicode Release"
# Name "richtext - Win32 Unicode Debug"
# Name "richtext - Win32 Release"
# Name "richtext - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter ""
# Begin Source File
SOURCE=.\richtext.cpp
# End Source File
# Begin Source File
SOURCE=.\richtext.rc
# End Source File
# End Group
# End Target
# End Project

View File

@@ -0,0 +1,91 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "richtext"=richtext.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name adv
End Project Dependency
Begin Project Dependency
Project_Dep_Name xml
End Project Dependency
Begin Project Dependency
Project_Dep_Name html
End Project Dependency
Begin Project Dependency
Project_Dep_Name core
End Project Dependency
Begin Project Dependency
Project_Dep_Name base
End Project Dependency
}}}
###############################################################################
Project: "adv"=..\..\build\msw\wx_adv.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "xml"=..\..\build\msw\wx_xml.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "html"=..\..\build\msw\wx_html.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "core"=..\..\build\msw\wx_core.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "base"=..\..\build\msw\wx_base.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################

View File

@@ -0,0 +1,3 @@
aaaa ICON "../sample.ico"
#include "wx/msw/wx.rc"

122
samples/richtext/todo.txt Normal file
View File

@@ -0,0 +1,122 @@
wxRichTextCtrl To-Do List
=========================
BUGS:
=====
- Setting selection with mouse sometimes causes negative selection
lengths. See wxRichTextCtrl::ExtendSelection.
- Word forward can miss first word on line.
- Doesn't correctly undo deletion of bulleted paragraphs.
IMPROVEMENTS:
=============
- Add bakefiles, choose location for further development - wxCode or wxWidgets.
- Document.
- Rework scrolling code so (a) can scroll one line at a time (uneven
scroll increments and (b) can derive from wxTextCtrl if this is desirable.
- Implement auto-scroll when selecting.
- Implement auto-wrap option (currently it's always on) with option for
horizontal scrollbars.
- Implement overwrite mode.
- Collapse multiple keystrokes into single undo command.
- Unicode adaptation (e.g. in OnChar).
- Implement "Paste Special".
- Pass wxRichTextDrawContext to Draw and Layout with data such as
selection colour.
- Have virtual functions for customisation, e.g. CreateTextObject, CreateImageObject,
CreateParagraph object. Should be a separate factory object that can be
plugged in.
- Implement more event generation.
- Implement roman numerals in bullet points.
- Make as wxTextCtrl-compatible as possible.
- Allow use as single-line edit control, so potentially the class can
replace both wxUniversal wxTextCtrl implementations.
- Adjust behaviour on each platform to conform to native standards.
This might be a run-time option.
- Custom attributes (simply add an integer field to wxRichTextAttr and
maybe wxTextAttrEx).
- Improve image support: margins, resizing, storage of image as native format
data (e.g. JPEG) so no lossiness.
- Ensure read-only mode works.
- Make more efficient, e.g. don't try to draw lines outside the client area;
don't store whole paragraph in Undo stack if just changing the paragraph's style.
- Allow specification of word separators, and whether hyphenation will be done
(language-dependent).
API ISSUES:
===========
- Consider whether to merge wxTextAttrEx with wxTextAttr.
- Implementation-independent API for traversing rich text controls, e.g. getting spans
of text, retrieving images, etc.
- FindString: search for a substring within a range, returning a range. Will make it
easy to add styles to text you just added.
- WriteString, WriteImage should really return a range. However, can query insertion point.
- Bullets: suggest we are able to specify symbols in a specific named font
(maybe keep mapping from name to actual symbol font in style manager).
We wouldn't want to store a wxFont with each paragraph, just for the symbol,
since this will be inefficient. If no font is specified, use the font
for this paragraph.
Also allow bitmaps to be specified for bullets.
- For adding floating text boxes and images, suggest e.g.
bool wxRichTextBuffer::AddFloatingImage(long paragraphPosition, const wxImage& image);
FEATURES:
=========
- XML I/O (a prototype implementation done, maybe the syntax/verbosity could be improved)
- HTML (I)/O and clipboard support
- RTF (I)/O and clipboard support
- OpenOffice.org I/O
- C++ output, i.e. generate set of buffer commands from a buffer
so that the data can be included in an app, possibly with translation.
- Line breaks. How will we implement these? Suggest special non-ASCII code.
- Hard (non-breaking) spaces. Insert special code in text string. Shift-Return.
- Borders on paragraphs, with special attention to how they join up.
- Bitmap bullets.
- Tab stops, with ruler display.
- Rules (lines).
- Hyperlinks.
- Ready-made find and replace implementation
- Ready-made toolbars, standard identifiers.
- Floating text boxes and images, with appropriate wrapping: have a separate list of
these, and when formatting each line, simply restrict the available space accordingly.
Boxes can optionally be tied to a paragraph so they move relative to it (may need to introduce
paragraph identifiers for that).
- Set of convenience controls and dialogs including wxRichTextStyleListBox,
wxRichTextParagraphFormattingDialog, wxRichTextStyleEditorDialog,
wxRichTextBulletDialog, wxRichTextInsertSymbolDialog, wxRichTextTabsDialog
(also displayed as a page on wxRichTextParagraphFormattingDialog),
- Template manager.
- ADVANCED: Implement tables. This is a kind of paragraph that knows how to lay
out a 2D grid of paragraph layout boxes. A few assumptions
about the hierarchy will need correcting but in general, paragraph
layout is self-contained and should just work within table cells.
- ADVANCED: Implement printing, including headers and footers.
- ADVANCED: Implement page view mode where pagination is shown while editing.
- ADVANCED: Field codes that can be hidden/shown: for example, cross-references,
HTML links, page number, heading number, etc.
- ADVANCED: Implement justification, by distributing space over the line (draw one
word at a time but store in the usual way).
- ADVANCED: Implement headings.
- ADVANCED: Zoom.
- ADVANCED: Versioning and markup facility (for e.g. collaboration).
- ADVANCED: Columns.
- ADVANCED: Table of contents, index.
- ADVANCED: Autocorrect.
DEMO:
=====
- Drop-down lists for style, face, font size.
- Rework formatting icons.

View File

@@ -410,6 +410,8 @@
#define wxUSE_GLCANVAS 0 #define wxUSE_GLCANVAS 0
#define wxUSE_RICHTEXT 0
#define wxUSE_CLIPBOARD 0 #define wxUSE_CLIPBOARD 0

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,312 @@
/////////////////////////////////////////////////////////////////////////////
// Name: richtextstyles.cpp
// Purpose: Style management for wxRichTextCtrl
// Author: Julian Smart
// Modified by:
// Created: 2005-09-30
// RCS-ID:
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/wx.h"
#endif
#include "wx/image.h"
#if wxUSE_RICHTEXT
#include "wx/filename.h"
#include "wx/clipbrd.h"
#include "wx/wfstream.h"
#include "wx/module.h"
#include "wx/richtext/richtextstyles.h"
#include "wx/richtext/richtextctrl.h"
IMPLEMENT_CLASS(wxRichTextStyleDefinition, wxObject)
IMPLEMENT_CLASS(wxRichTextCharacterStyleDefinition, wxRichTextStyleDefinition)
IMPLEMENT_CLASS(wxRichTextParagraphStyleDefinition, wxRichTextStyleDefinition)
/*!
* The style manager
*/
IMPLEMENT_CLASS(wxRichTextStyleSheet, wxObject)
/// Initialisation
void wxRichTextStyleSheet::Init()
{
}
/// Add a definition to one of the style lists
bool wxRichTextStyleSheet::AddStyle(wxList& list, wxRichTextStyleDefinition* def)
{
if (!list.Find(def))
list.Append(def);
return true;
}
/// Remove a style
bool wxRichTextStyleSheet::RemoveStyle(wxList& list, wxRichTextStyleDefinition* def, bool deleteStyle)
{
wxNode* node = list.Find(def);
if (node)
{
wxRichTextStyleDefinition* def = (wxRichTextStyleDefinition*) node->GetData();
delete node;
if (deleteStyle)
delete def;
return true;
}
else
return false;
}
/// Find a definition by name
wxRichTextStyleDefinition* wxRichTextStyleSheet::FindStyle(const wxList& list, const wxString& name) const
{
for (wxNode* node = list.GetFirst(); node; node = node->GetNext())
{
wxRichTextStyleDefinition* def = (wxRichTextStyleDefinition*) node->GetData();
if (def->GetName().Lower() == name.Lower())
return def;
}
return NULL;
}
/// Delete all styles
void wxRichTextStyleSheet::DeleteStyles()
{
WX_CLEAR_LIST(wxList, m_characterStyleDefinitions);
WX_CLEAR_LIST(wxList, m_paragraphStyleDefinitions);
}
#if wxUSE_HTML
/*!
* wxRichTextStyleListBox class declaration
* A listbox to display styles.
*/
IMPLEMENT_CLASS(wxRichTextStyleListBox, wxHtmlListBox)
BEGIN_EVENT_TABLE(wxRichTextStyleListBox, wxHtmlListBox)
EVT_LISTBOX(wxID_ANY, wxRichTextStyleListBox::OnSelect)
EVT_LEFT_DOWN(wxRichTextStyleListBox::OnLeftDown)
END_EVENT_TABLE()
wxRichTextStyleListBox::wxRichTextStyleListBox(wxWindow* parent, wxWindowID id, const wxPoint& pos,
const wxSize& size, long style): wxHtmlListBox(parent, id, pos, size, style)
{
m_styleSheet = NULL;
m_richTextCtrl = NULL;
}
wxRichTextStyleListBox::~wxRichTextStyleListBox()
{
}
/// Returns the HTML for this item
wxString wxRichTextStyleListBox::OnGetItem(size_t n) const
{
if (!GetStyleSheet())
return wxEmptyString;
// First paragraph styles, then character
if (n < GetStyleSheet()->GetParagraphStyleCount())
{
wxRichTextParagraphStyleDefinition* def = GetStyleSheet()->GetParagraphStyle(n);
wxString str = CreateHTML(def);
return str;
}
if ((n - GetStyleSheet()->GetParagraphStyleCount()) < GetStyleSheet()->GetCharacterStyleCount())
{
wxRichTextCharacterStyleDefinition* def = GetStyleSheet()->GetCharacterStyle(n - GetStyleSheet()->GetParagraphStyleCount());
wxString str = CreateHTML(def);
return str;
}
return wxEmptyString;
}
// Get style for index
wxRichTextStyleDefinition* wxRichTextStyleListBox::GetStyle(size_t i) const
{
if (!GetStyleSheet())
return NULL;
// First paragraph styles, then character
if (i < GetStyleSheet()->GetParagraphStyleCount())
return GetStyleSheet()->GetParagraphStyle(i);
if ((i - GetStyleSheet()->GetParagraphStyleCount()) < GetStyleSheet()->GetCharacterStyleCount())
return GetStyleSheet()->GetCharacterStyle(i - GetStyleSheet()->GetParagraphStyleCount());
return NULL;
}
/// Updates the list
void wxRichTextStyleListBox::UpdateStyles()
{
if (GetStyleSheet())
{
SetItemCount(GetStyleSheet()->GetParagraphStyleCount()+GetStyleSheet()->GetCharacterStyleCount());
Refresh();
}
}
// Convert a colour to a 6-digit hex string
static wxString ColourToHexString(const wxColour& col)
{
wxString hex;
hex += wxDecToHex(col.Red());
hex += wxDecToHex(col.Green());
hex += wxDecToHex(col.Blue());
return hex;
}
/// Creates a suitable HTML fragment for a definition
wxString wxRichTextStyleListBox::CreateHTML(wxRichTextStyleDefinition* def) const
{
wxString str(wxT("<table><tr>"));
if (def->GetStyle().GetLeftIndent() > 0)
{
wxClientDC dc((wxWindow*) this);
str << wxT("<td width=") << ConvertTenthsMMToPixels(dc, def->GetStyle().GetLeftIndent()) << wxT("></td>");
}
str << wxT("<td nowrap>");
int size = 5;
// Standard size is 12, say
size += 12 - def->GetStyle().GetFontSize();
str += wxT("<font");
str << wxT(" size=") << size;
if (!def->GetStyle().GetFontFaceName().IsEmpty())
str << wxT(" face=\"") << def->GetStyle().GetFontFaceName() << wxT("\"");
if (def->GetStyle().GetTextColour().Ok())
str << wxT(" color=\"#") << ColourToHexString(def->GetStyle().GetTextColour()) << wxT("\"");
str << wxT(">");
bool hasBold = false;
bool hasItalic = false;
bool hasUnderline = false;
if (def->GetStyle().GetFontWeight() == wxBOLD)
hasBold = true;
if (def->GetStyle().GetFontStyle() == wxITALIC)
hasItalic = true;
if (def->GetStyle().GetFontUnderlined())
hasUnderline = true;
if (hasBold)
str << wxT("<b>");
if (hasItalic)
str << wxT("<i>");
if (hasUnderline)
str << wxT("<u>");
str += def->GetName();
if (hasUnderline)
str << wxT("</u>");
if (hasItalic)
str << wxT("</i>");
if (hasBold)
str << wxT("</b>");
str << wxT("</font>");
str += wxT("</td></tr></table>");
return str;
}
// Convert units in tends of a millimetre to device units
int wxRichTextStyleListBox::ConvertTenthsMMToPixels(wxDC& dc, int units) const
{
int ppi = dc.GetPPI().x;
// There are ppi pixels in 254.1 "1/10 mm"
double pixels = ((double) units * (double)ppi) / 254.1;
return (int) pixels;
}
/// React to selection
void wxRichTextStyleListBox::OnSelect(wxCommandEvent& WXUNUSED(event))
{
#if 0
wxRichTextStyleDefinition* def = GetStyle(event.GetSelection());
if (def)
{
wxMessageBox(def->GetName());
}
#endif
}
void wxRichTextStyleListBox::OnLeftDown(wxMouseEvent& event)
{
wxVListBox::OnLeftDown(event);
int item = HitTest(event.GetPosition());
if ( item != wxNOT_FOUND )
{
wxRichTextStyleDefinition* def = GetStyle(item);
if (def && GetRichTextCtrl())
{
wxRichTextRange range(m_richTextCtrl->GetInsertionPoint(), m_richTextCtrl->GetInsertionPoint());
// Flags are defined within each definition, so only certain
// attributes are applied.
wxRichTextAttr attr(def->GetStyle());
if (m_richTextCtrl->HasSelection())
m_richTextCtrl->SetStyle(m_richTextCtrl->GetSelectionRange(), attr);
else
m_richTextCtrl->SetDefaultStyle(attr);
m_richTextCtrl->SetFocus();
}
}
}
#if 0
wxColour wxRichTextStyleListBox::GetSelectedTextColour(const wxColour& colFg) const
{
return *wxBLACK;
}
wxColour wxRichTextStyleListBox::GetSelectedTextBgColour(const wxColour& colBg) const
{
return *wxWHITE;
}
#endif
#endif
// wxUSE_HTML
#endif
// wxUSE_RICHTEXT

View File

@@ -0,0 +1,808 @@
/////////////////////////////////////////////////////////////////////////////
// Name: richtextxml.cpp
// Purpose: XML and HTML I/O for wxRichTextCtrl
// Author: Julian Smart
// Modified by:
// Created: 2005-09-30
// RCS-ID:
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/wx.h"
#endif
#include "wx/image.h"
#if wxUSE_RICHTEXT
#include "wx/filename.h"
#include "wx/clipbrd.h"
#include "wx/wfstream.h"
#include "wx/sstream.h"
#include "wx/module.h"
#include "wx/txtstrm.h"
#include "wx/xml/xml.h"
#include "wx/richtext/richtextxml.h"
IMPLEMENT_DYNAMIC_CLASS(wxRichTextXMLHandler, wxRichTextFileHandler)
#if wxUSE_STREAMS
bool wxRichTextXMLHandler::LoadFile(wxRichTextBuffer *buffer, wxInputStream& stream)
{
if (!stream.IsOk())
return false;
buffer->Clear();
wxXmlDocument* xmlDoc = new wxXmlDocument;
bool success = true;
if (!xmlDoc->Load(stream, wxT("ISO-8859-1")))
{
success = false;
}
else
{
if (xmlDoc->GetRoot() && xmlDoc->GetRoot()->GetType() == wxXML_ELEMENT_NODE && xmlDoc->GetRoot()->GetName() == wxT("richtext"))
{
wxXmlNode* child = xmlDoc->GetRoot()->GetChildren();
while (child)
{
if (child->GetType() == wxXML_ELEMENT_NODE)
{
wxString name = child->GetName();
if (name == wxT("richtext-version"))
{
}
else
ImportXML(buffer, child);
}
child = child->GetNext();
}
}
else
{
success = false;
}
}
delete xmlDoc;
buffer->UpdateRanges();
return success;
}
/// Recursively import an object
bool wxRichTextXMLHandler::ImportXML(wxRichTextBuffer* buffer, wxXmlNode* node)
{
wxString name = node->GetName();
bool doneChildren = false;
if (name == wxT("paragraphlayout"))
{
}
else if (name == wxT("paragraph"))
{
wxRichTextParagraph* para = new wxRichTextParagraph(buffer);
buffer->AppendChild(para);
GetStyle(para->GetAttributes(), node, true);
wxXmlNode* child = node->GetChildren();
while (child)
{
wxString childName = child->GetName();
if (childName == wxT("text"))
{
wxString text;
wxXmlNode* textChild = child->GetChildren();
while (textChild)
{
if (textChild->GetType() == wxXML_TEXT_NODE ||
textChild->GetType() == wxXML_CDATA_SECTION_NODE)
{
wxString text2 = textChild->GetContent();
// Strip whitespace from end
if (text2.Length() > 0 && text2[text2.Length()-1] == wxT('\n'))
text2 = text2.Mid(0, text2.Length()-1);
if (text2.Length() > 0 && text2[0] == wxT('"'))
text2 = text2.Mid(1);
if (text2.Length() > 0 && text2[text2.Length()-1] == wxT('"'))
text2 = text2.Mid(0, text2.Length() - 1);
// TODO: further entity translation
text2.Replace(wxT("&lt;"), wxT("<"));
text2.Replace(wxT("&gt;"), wxT(">"));
text2.Replace(wxT("&amp;"), wxT("&"));
text2.Replace(wxT("&quot;"), wxT("\""));
text += text2;
}
textChild = textChild->GetNext();
}
wxRichTextPlainText* textObject = new wxRichTextPlainText(text, para);
GetStyle(textObject->GetAttributes(), child, false);
para->AppendChild(textObject);
}
else if (childName == wxT("image"))
{
int imageType = wxBITMAP_TYPE_PNG;
wxString value = node->GetPropVal(wxT("imagetype"), wxEmptyString);
if (!value.IsEmpty())
imageType = wxAtoi(value);
wxString data;
wxXmlNode* imageChild = child->GetChildren();
while (imageChild)
{
wxString childName = imageChild->GetName();
if (childName == wxT("data"))
{
wxXmlNode* dataChild = imageChild->GetChildren();
while (dataChild)
{
data = dataChild->GetContent();
// wxLogDebug(data);
dataChild = dataChild->GetNext();
}
}
imageChild = imageChild->GetNext();
}
if (!data.IsEmpty())
{
wxRichTextImage* imageObj = new wxRichTextImage(para);
para->AppendChild(imageObj);
wxStringInputStream strStream(data);
imageObj->GetImageBlock().ReadHex(strStream, data.Length(), imageType);
}
}
child = child->GetNext();
}
doneChildren = true;
}
if (!doneChildren)
{
wxXmlNode* child = node->GetChildren();
while (child)
{
ImportXML(buffer, child);
child = child->GetNext();
}
}
return true;
}
//-----------------------------------------------------------------------------
// xml support routines
//-----------------------------------------------------------------------------
bool wxRichTextXMLHandler::HasParam(wxXmlNode* node, const wxString& param)
{
return (GetParamNode(node, param) != NULL);
}
wxXmlNode *wxRichTextXMLHandler::GetParamNode(wxXmlNode* node, const wxString& param)
{
wxCHECK_MSG(node, NULL, wxT("You can't access node data before it was initialized!"));
wxXmlNode *n = node->GetChildren();
while (n)
{
if (n->GetType() == wxXML_ELEMENT_NODE && n->GetName() == param)
return n;
n = n->GetNext();
}
return NULL;
}
wxString wxRichTextXMLHandler::GetNodeContent(wxXmlNode *node)
{
wxXmlNode *n = node;
if (n == NULL) return wxEmptyString;
n = n->GetChildren();
while (n)
{
if (n->GetType() == wxXML_TEXT_NODE ||
n->GetType() == wxXML_CDATA_SECTION_NODE)
return n->GetContent();
n = n->GetNext();
}
return wxEmptyString;
}
wxString wxRichTextXMLHandler::GetParamValue(wxXmlNode *node, const wxString& param)
{
if (param.IsEmpty())
return GetNodeContent(node);
else
return GetNodeContent(GetParamNode(node, param));
}
wxString wxRichTextXMLHandler::GetText(wxXmlNode *node, const wxString& param, bool WXUNUSED(translate))
{
wxXmlNode *parNode = GetParamNode(node, param);
if (!parNode)
parNode = node;
wxString str1(GetNodeContent(parNode));
return str1;
}
// write string to output:
inline static void OutputString(wxOutputStream& stream, const wxString& str,
wxMBConv *convMem = NULL, wxMBConv *convFile = NULL)
{
if (str.IsEmpty()) return;
#if wxUSE_UNICODE
const wxWX2MBbuf buf(str.mb_str(convFile ? *convFile : wxConvUTF8));
stream.Write((const char*)buf, strlen((const char*)buf));
#else
if ( convFile == NULL )
stream.Write(str.mb_str(), str.Len());
else
{
wxString str2(str.wc_str(*convMem), *convFile);
stream.Write(str2.mb_str(), str2.Len());
}
#endif
}
// Same as above, but create entities first.
// Translates '<' to "&lt;", '>' to "&gt;" and '&' to "&amp;"
static void OutputStringEnt(wxOutputStream& stream, const wxString& str,
wxMBConv *convMem = NULL, wxMBConv *convFile = NULL)
{
wxString buf;
size_t i, last, len;
wxChar c;
len = str.Len();
last = 0;
for (i = 0; i < len; i++)
{
c = str.GetChar(i);
if (c == wxT('<') || c == wxT('>') || c == wxT('"') ||
(c == wxT('&') && (str.Mid(i+1, 4) != wxT("amp;"))))
{
OutputString(stream, str.Mid(last, i - last), convMem, convFile);
switch (c)
{
case wxT('<'):
OutputString(stream, wxT("&lt;"), NULL, NULL);
break;
case wxT('>'):
OutputString(stream, wxT("&gt;"), NULL, NULL);
break;
case wxT('&'):
OutputString(stream, wxT("&amp;"), NULL, NULL);
break;
case wxT('"'):
OutputString(stream, wxT("&quot;"), NULL, NULL);
break;
default: break;
}
last = i + 1;
}
}
OutputString(stream, str.Mid(last, i - last), convMem, convFile);
}
inline static void OutputIndentation(wxOutputStream& stream, int indent)
{
wxString str = wxT("\n");
for (int i = 0; i < indent; i++)
str << wxT(' ') << wxT(' ');
OutputString(stream, str, NULL, NULL);
}
static wxOutputStream& operator <<(wxOutputStream& stream, const wxString& s)
{
stream.Write(s, s.Length());
return stream;
}
static wxOutputStream& operator <<(wxOutputStream& stream, long l)
{
wxString str;
str.Printf(wxT("%ld"), l);
return stream << str;
}
static wxOutputStream& operator <<(wxOutputStream& stream, const char c)
{
wxString str;
str.Printf(wxT("%c"), c);
return stream << str;
}
// Convert a colour to a 6-digit hex string
static wxString ColourToHexString(const wxColour& col)
{
wxString hex;
hex += wxDecToHex(col.Red());
hex += wxDecToHex(col.Green());
hex += wxDecToHex(col.Blue());
return hex;
}
// Convert 6-digit hex string to a colour
wxColour HexStringToColour(const wxString& hex)
{
unsigned int r = 0;
unsigned int g = 0;
unsigned int b = 0;
r = wxHexToDec(hex.Mid(0, 2));
g = wxHexToDec(hex.Mid(2, 2));
b = wxHexToDec(hex.Mid(4, 2));
return wxColour(r, g, b);
}
bool wxRichTextXMLHandler::SaveFile(wxRichTextBuffer *buffer, wxOutputStream& stream)
{
if (!stream.IsOk())
return false;
wxString version(wxT("1.0") ) ;
#if wxUSE_UNICODE
wxString fileencoding(wxT("UTF-8")) ;
wxString memencoding(wxT("UTF-8")) ;
#else
wxString fileencoding(wxT("ISO-8859-1")) ;
wxString memencoding(wxT("ISO-8859-1")) ;
#endif
wxString s ;
wxMBConv *convMem = NULL, *convFile = NULL;
#if wxUSE_UNICODE
convFile = new wxCSConv(fileencoding);
#else
if ( fileencoding != memencoding )
{
convFile = new wxCSConv(fileencoding);
convMem = new wxCSConv(memencoding);
}
#endif
s.Printf(wxT("<?xml version=\"%s\" encoding=\"%s\"?>\n"),
(const wxChar*) version, (const wxChar*) fileencoding );
OutputString(stream, s, NULL, NULL);
OutputString(stream, wxT("<richtext version=\"1.0.0.0\" xmlns=\"http://www.wxwidgets.org\">") , NULL, NULL);
int level = 1;
ExportXML(stream, convMem, convFile, *buffer, level);
OutputString(stream, wxT("\n</richtext>") , NULL, NULL);
OutputString(stream, wxT("\n"), NULL, NULL);
delete convFile;
delete convMem;
return true;
}
/// Recursively export an object
bool wxRichTextXMLHandler::ExportXML(wxOutputStream& stream, wxMBConv* convMem, wxMBConv* convFile, wxRichTextObject& obj, int indent)
{
wxString objectName;
if (obj.IsKindOf(CLASSINFO(wxRichTextParagraphLayoutBox)))
objectName = wxT("paragraphlayout");
else if (obj.IsKindOf(CLASSINFO(wxRichTextParagraph)))
objectName = wxT("paragraph");
else if (obj.IsKindOf(CLASSINFO(wxRichTextPlainText)))
objectName = wxT("text");
else if (obj.IsKindOf(CLASSINFO(wxRichTextImage)))
objectName = wxT("image");
else
objectName = wxT("object");
if (obj.IsKindOf(CLASSINFO(wxRichTextPlainText)))
{
wxRichTextPlainText& text = (wxRichTextPlainText&) obj;
OutputIndentation(stream, indent);
stream << wxT("<") << objectName;
wxString style = CreateStyle(obj.GetAttributes(), false);
stream << style << wxT(">");
wxString str = text.GetText();
if (str.Length() > 0 && (str[0] == wxT(' ') || str[str.Length()-1] == wxT(' ')))
{
stream << wxT("\"");
OutputStringEnt(stream, str, convMem, convFile);
stream << wxT("\"");
}
else
OutputStringEnt(stream, str, convMem, convFile);
}
else if (obj.IsKindOf(CLASSINFO(wxRichTextImage)))
{
wxRichTextImage& imageObj = (wxRichTextImage&) obj;
if (imageObj.GetImage().Ok() && !imageObj.GetImageBlock().Ok())
imageObj.MakeBlock();
OutputIndentation(stream, indent);
stream << wxT("<") << objectName;
if (!imageObj.GetImageBlock().Ok())
{
// No data
stream << wxT(">");
}
else
{
stream << wxString::Format(wxT(" imagetype=\"%d\""), (int) imageObj.GetImageBlock().GetImageType()) << wxT(">");
}
OutputIndentation(stream, indent+1);
stream << wxT("<data>");
imageObj.GetImageBlock().WriteHex(stream);
stream << wxT("</data>");
}
else if (obj.IsKindOf(CLASSINFO(wxRichTextCompositeObject)))
{
OutputIndentation(stream, indent);
stream << wxT("<") << objectName;
bool isPara = false;
if (objectName == wxT("paragraph") || objectName == wxT("paragraphlayout"))
isPara = true;
wxString style = CreateStyle(obj.GetAttributes(), isPara);
stream << style << wxT(">");
wxRichTextCompositeObject& composite = (wxRichTextCompositeObject&) obj;
size_t i;
for (i = 0; i < composite.GetChildCount(); i++)
{
wxRichTextObject* child = composite.GetChild(i);
ExportXML(stream, convMem, convFile, *child, indent+1);
}
}
if (objectName != wxT("text"))
OutputIndentation(stream, indent);
stream << wxT("</") << objectName << wxT(">");
return true;
}
/// Create style parameters
wxString wxRichTextXMLHandler::CreateStyle(const wxTextAttrEx& attr, bool isPara)
{
wxString str;
if (attr.GetTextColour().Ok())
{
str << wxT(" textcolor=\"#") << ColourToHexString(attr.GetTextColour()) << wxT("\"");
}
if (attr.GetBackgroundColour().Ok())
{
str << wxT(" bgcolor=\"#") << ColourToHexString(attr.GetBackgroundColour()) << wxT("\"");
}
if (attr.GetFont().Ok())
{
str << wxT(" fontsize=\"") << attr.GetFont().GetPointSize() << wxT("\"");
str << wxT(" fontfamily=\"") << attr.GetFont().GetFamily() << wxT("\"");
str << wxT(" fontstyle=\"") << attr.GetFont().GetStyle() << wxT("\"");
str << wxT(" fontweight=\"") << attr.GetFont().GetWeight() << wxT("\"");
str << wxT(" fontunderlined=\"") << (int) attr.GetFont().GetUnderlined() << wxT("\"");
str << wxT(" fontface=\"") << attr.GetFont().GetFaceName() << wxT("\"");
}
if (!attr.GetCharacterStyleName().IsEmpty())
str << wxT(" charactertyle=\"") << wxString(attr.GetCharacterStyleName()) << wxT("\"");
if (isPara)
{
str << wxT(" alignment=\"") << (int) attr.GetAlignment() << wxT("\"");
str << wxT(" leftindent=\"") << (int) attr.GetLeftIndent() << wxT("\"");
str << wxT(" leftsubindent=\"") << (int) attr.GetLeftSubIndent() << wxT("\"");
str << wxT(" rightindent=\"") << (int) attr.GetRightIndent() << wxT("\"");
str << wxT(" parspacingafter=\"") << (int) attr.GetParagraphSpacingAfter() << wxT("\"");
str << wxT(" parspacingbefore=\"") << (int) attr.GetParagraphSpacingBefore() << wxT("\"");
str << wxT(" linespacing=\"") << (int) attr.GetLineSpacing() << wxT("\"");
str << wxT(" bulletstyle=\"") << (int) attr.GetBulletStyle() << wxT("\"");
str << wxT(" bulletnumber=\"") << (int) attr.GetBulletNumber() << wxT("\"");
str << wxT(" bulletsymbol=\"") << wxString(attr.GetBulletSymbol()) << wxT("\"");
if (!attr.GetParagraphStyleName().IsEmpty())
str << wxT(" parstyle=\"") << wxString(attr.GetParagraphStyleName()) << wxT("\"");
}
return str;
}
/// Get style parameters
bool wxRichTextXMLHandler::GetStyle(wxTextAttrEx& attr, wxXmlNode* node, bool isPara)
{
wxString fontFacename;
int fontSize = 12;
int fontFamily = wxDEFAULT;
int fontWeight = wxNORMAL;
int fontStyle = wxNORMAL;
bool fontUnderlined = false;
fontFacename = node->GetPropVal(wxT("fontface"), wxEmptyString);
wxString value = node->GetPropVal(wxT("fontfamily"), wxEmptyString);
if (!value.IsEmpty())
fontFamily = wxAtoi(value);
value = node->GetPropVal(wxT("fontstyle"), wxEmptyString);
if (!value.IsEmpty())
fontStyle = wxAtoi(value);
value = node->GetPropVal(wxT("fontsize"), wxEmptyString);
if (!value.IsEmpty())
fontSize = wxAtoi(value);
value = node->GetPropVal(wxT("fontweight"), wxEmptyString);
if (!value.IsEmpty())
fontWeight = wxAtoi(value);
value = node->GetPropVal(wxT("fontunderlined"), wxEmptyString);
if (!value.IsEmpty())
fontUnderlined = wxAtoi(value) != 0;
attr.SetFont(* wxTheFontList->FindOrCreateFont(fontSize, fontFamily, fontStyle, fontWeight, fontUnderlined, fontFacename));
value = node->GetPropVal(wxT("textcolor"), wxEmptyString);
if (!value.IsEmpty())
{
if (value[0] == wxT('#'))
attr.SetTextColour(HexStringToColour(value.Mid(1)));
else
attr.SetTextColour(value);
}
value = node->GetPropVal(wxT("backgroundcolor"), wxEmptyString);
if (!value.IsEmpty())
{
if (value[0] == wxT('#'))
attr.SetBackgroundColour(HexStringToColour(value.Mid(1)));
else
attr.SetBackgroundColour(value);
}
value = node->GetPropVal(wxT("characterstyle"), wxEmptyString);
if (!value.IsEmpty())
attr.SetCharacterStyleName(value);
// Set paragraph attributes
if (isPara)
{
value = node->GetPropVal(wxT("alignment"), wxEmptyString);
if (!value.IsEmpty())
attr.SetAlignment((wxTextAttrAlignment) wxAtoi(value));
int leftSubIndent = 0;
int leftIndent = 0;
value = node->GetPropVal(wxT("leftindent"), wxEmptyString);
if (!value.IsEmpty())
leftIndent = wxAtoi(value);
value = node->GetPropVal(wxT("leftsubindent"), wxEmptyString);
if (!value.IsEmpty())
leftSubIndent = wxAtoi(value);
attr.SetLeftIndent(leftIndent, leftSubIndent);
value = node->GetPropVal(wxT("rightindent"), wxEmptyString);
if (!value.IsEmpty())
attr.SetRightIndent(wxAtoi(value));
value = node->GetPropVal(wxT("parspacingbefore"), wxEmptyString);
if (!value.IsEmpty())
attr.SetParagraphSpacingBefore(wxAtoi(value));
value = node->GetPropVal(wxT("parspacingafter"), wxEmptyString);
if (!value.IsEmpty())
attr.SetParagraphSpacingAfter(wxAtoi(value));
value = node->GetPropVal(wxT("linespacing"), wxEmptyString);
if (!value.IsEmpty())
attr.SetLineSpacing(wxAtoi(value));
value = node->GetPropVal(wxT("bulletstyle"), wxEmptyString);
if (!value.IsEmpty())
attr.SetBulletStyle(wxAtoi(value));
value = node->GetPropVal(wxT("bulletnumber"), wxEmptyString);
if (!value.IsEmpty())
attr.SetBulletNumber(wxAtoi(value));
value = node->GetPropVal(wxT("bulletsymbol"), wxEmptyString);
if (!value.IsEmpty())
attr.SetBulletSymbol(value[0]);
value = node->GetPropVal(wxT("parstyle"), wxEmptyString);
if (!value.IsEmpty())
attr.SetParagraphStyleName(value);
}
return true;
}
#endif
IMPLEMENT_DYNAMIC_CLASS(wxRichTextHTMLHandler, wxRichTextFileHandler)
/// Can we handle this filename (if using files)? By default, checks the extension.
bool wxRichTextHTMLHandler::CanHandle(const wxString& filename) const
{
wxString path, file, ext;
wxSplitPath(filename, & path, & file, & ext);
return (ext.Lower() == wxT("html") || ext.Lower() == wxT("htm"));
}
#if wxUSE_STREAMS
bool wxRichTextHTMLHandler::LoadFile(wxRichTextBuffer *WXUNUSED(buffer), wxInputStream& WXUNUSED(stream))
{
return false;
}
/*
* We need to output only _changes_ in character formatting.
*/
bool wxRichTextHTMLHandler::SaveFile(wxRichTextBuffer *buffer, wxOutputStream& stream)
{
buffer->Defragment();
wxTextOutputStream str(stream);
wxTextAttrEx currentParaStyle = buffer->GetAttributes();
wxTextAttrEx currentCharStyle = buffer->GetAttributes();
str << wxT("<html><head></head><body>\n");
wxRichTextObjectList::compatibility_iterator node = buffer->GetChildren().GetFirst();
while (node)
{
wxRichTextParagraph* para = wxDynamicCast(node->GetData(), wxRichTextParagraph);
wxASSERT (para != NULL);
if (para)
{
OutputParagraphFormatting(currentParaStyle, para->GetAttributes(), stream, true);
wxRichTextObjectList::compatibility_iterator node2 = para->GetChildren().GetFirst();
while (node2)
{
wxRichTextObject* obj = node2->GetData();
wxRichTextPlainText* textObj = wxDynamicCast(obj, wxRichTextPlainText);
if (textObj && !textObj->IsEmpty())
{
OutputCharacterFormatting(currentCharStyle, obj->GetAttributes(), stream, true);
str << textObj->GetText();
OutputCharacterFormatting(currentCharStyle, obj->GetAttributes(), stream, false);
}
node2 = node2->GetNext();
}
OutputParagraphFormatting(currentParaStyle, para->GetAttributes(), stream, false);
str << wxT("<P>\n");
}
node = node->GetNext();
}
str << wxT("</body></html>\n");
return true;
}
/// Output character formatting
void wxRichTextHTMLHandler::OutputCharacterFormatting(const wxTextAttrEx& WXUNUSED(currentStyle), const wxTextAttrEx& thisStyle, wxOutputStream& stream, bool start)
{
wxTextOutputStream str(stream);
bool isBold = false;
bool isItalic = false;
bool isUnderline = false;
wxString faceName;
if (thisStyle.GetFont().Ok())
{
if (thisStyle.GetFont().GetWeight() == wxBOLD)
isBold = true;
if (thisStyle.GetFont().GetStyle() == wxITALIC)
isItalic = true;
if (thisStyle.GetFont().GetUnderlined())
isUnderline = true;
faceName = thisStyle.GetFont().GetFaceName();
}
if (start)
{
if (isBold)
str << wxT("<b>");
if (isItalic)
str << wxT("<i>");
if (isUnderline)
str << wxT("<u>");
}
else
{
if (isUnderline)
str << wxT("</u>");
if (isItalic)
str << wxT("</i>");
if (isBold)
str << wxT("</b>");
}
}
/// Output paragraph formatting
void wxRichTextHTMLHandler::OutputParagraphFormatting(const wxTextAttrEx& WXUNUSED(currentStyle), const wxTextAttrEx& thisStyle, wxOutputStream& stream, bool start)
{
// TODO: lists, indentation (using tables), fonts, right-align, ...
wxTextOutputStream str(stream);
bool isCentered = false;
if (thisStyle.GetAlignment() == wxTEXT_ALIGNMENT_CENTRE)
{
isCentered = true;
}
if (start)
{
if (isCentered)
str << wxT("<center>");
}
else
{
if (isCentered)
str << wxT("</center>");
}
}
#endif
#endif
// wxUSE_RICHTEXT

View File

@@ -1643,6 +1643,22 @@ SOURCE=.\msw\window.cpp
# PROP Default_Filter "" # PROP Default_Filter ""
# Begin Source File # Begin Source File
SOURCE=.\richtext\richtextbuffer.cpp
# End Source File
# Begin Source File
SOURCE=.\richtext\richtextctrl.cpp
# End Source File
# Begin Source File
SOURCE=.\richtext\richtextstyles.cpp
# End Source File
# Begin Source File
SOURCE=.\richtext\richtextxml.cpp
# End Source File
# Begin Source File
SOURCE=.\xml\xml.cpp SOURCE=.\xml\xml.cpp
# End Source File # End Source File
# Begin Source File # Begin Source File
@@ -2719,6 +2735,22 @@ SOURCE=..\include\wx\renderer.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=..\include\wx\richtext\richtextbuffer.h
# End Source File
# Begin Source File
SOURCE=..\include\wx\richtext\richtextctrl.h
# End Source File
# Begin Source File
SOURCE=..\include\wx\richtext\richtextstyles.h
# End Source File
# Begin Source File
SOURCE=..\include\wx\richtext\richtextxml.h
# End Source File
# Begin Source File
SOURCE=..\include\wx\sashwin.h SOURCE=..\include\wx\sashwin.h
# End Source File # End Source File
# Begin Source File # Begin Source File