From fdb8ab1db9c1489792d75e728a3938bcb90d459a Mon Sep 17 00:00:00 2001 From: Julian Smart Date: Mon, 14 Aug 2000 07:05:37 +0000 Subject: [PATCH] Started to add wxBook files git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@8083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/latex/book/back.gif | Bin 0 -> 978 bytes docs/latex/book/book.tex | 107 ++++++++++ docs/latex/book/contents.gif | Bin 0 -> 996 bytes docs/latex/book/forward.gif | Bin 0 -> 959 bytes docs/latex/book/template_chapter.tex | 6 + docs/latex/book/tex2rtf.ini | 40 ++++ docs/latex/book/texhelp.sty | 301 +++++++++++++++++++++++++++ docs/latex/book/up.gif | Bin 0 -> 999 bytes 8 files changed, 454 insertions(+) create mode 100644 docs/latex/book/back.gif create mode 100644 docs/latex/book/book.tex create mode 100644 docs/latex/book/contents.gif create mode 100644 docs/latex/book/forward.gif create mode 100644 docs/latex/book/template_chapter.tex create mode 100644 docs/latex/book/tex2rtf.ini create mode 100644 docs/latex/book/texhelp.sty create mode 100644 docs/latex/book/up.gif diff --git a/docs/latex/book/back.gif b/docs/latex/book/back.gif new file mode 100644 index 0000000000000000000000000000000000000000..88a3740f9134d7a569b56a9f76e6aa552672993e GIT binary patch literal 978 zcmZ?wbhEHbbYM_m_|5fj;(a}CV`%O8V#mmmJDyQBv znOUrUdY)b7H6AG;jlf>Rey!M3TUK6P?i!m{q7|$j(iU2nb+j@t;aY#t_B`I%AGL2Z zO6>3Q?Jm>3v>|kImhI|mtHW1|tWDEBQI>amZ`s68xzaas@2+e3%;$D{>W3T0V&ot1 Q_1d}V>FF7|>?{n{02fm-00000 literal 0 HcmV?d00001 diff --git a/docs/latex/book/book.tex b/docs/latex/book/book.tex new file mode 100644 index 0000000000..55c33baf81 --- /dev/null +++ b/docs/latex/book/book.tex @@ -0,0 +1,107 @@ +\documentstyle[a4,11pt,makeidx,verbatim,texhelp,fancyheadings,palatino]{report} +% JACS: doesn't make it through Tex2RTF, sorry. I will put it into texhelp.sty +% since Tex2RTF doesn't parse it. +% BTW, style MUST be report for it to work for Tex2RTF. +%KB: +%\addtolength{\textwidth}{1in} +%\addtolength{\oddsidemargin}{-0.5in} +%\addtolength{\topmargin}{-0.5in} +%\addtolength{\textheight}{1in} +%\sloppy +%end of my changes +\newcommand{\indexit}[1]{#1\index{#1}}% +\newcommand{\pipe}[0]{$\|$\ }% +\definecolour{black}{0}{0}{0}% +\definecolour{cyan}{0}{255}{255}% +\definecolour{green}{0}{255}{0}% +\definecolour{magenta}{255}{0}{255}% +\definecolour{red}{255}{0}{0}% +\definecolour{blue}{0}{0}{200}% +\definecolour{yellow}{255}{255}{0}% +\definecolour{white}{255}{255}{255}% +% +\input psbox.tex +% Remove this for processing with dvi2ps instead of dvips +%\special{!/@scaleunit 1 def} +\parskip=10pt +\parindent=0pt +\title{Multiplatform application development with wxWindows} +\winhelponly{\author{by Julian Smart et al +%\winhelponly{\\$$\image{1cm;0cm}{wxwin.wmf}$$} +}} +\winhelpignore{\author{Julian Smart, Robert Roebling, Vadim Zeitlin, +Robin Dunn, et al} +\date{August 13th 2000} +} +\makeindex +\begin{document} +\maketitle +\pagestyle{fancyplain} +\bibliographystyle{plain} +\setheader{{\it CONTENTS}}{}{}{}{}{{\it CONTENTS}} +\setfooter{\thepage}{}{}{}{}{\thepage}% +\pagenumbering{roman} +\tableofcontents + +\input chap\_intro.tex % Chapter 01: Introduction, advocacy, etc. +\input chap\_install.tex % Chapter 02: Installing wxWindows (and what tools to use) +\input chap\_cpp.tex % Chapter 03: C++ and wxWindows. Summarises the sorts of constructs used/not used, plus wxString class, some conventions. Vadim suggests putting it in 1st chapter but I think it deserves a chapter of its own. +\input chap\_getstart.tex % Chapter 04: Getting started: Hello World. Introduces app class, frames, menus, status bar, message box +\input chap\_basic\_events.tex % Chapter 05: Basic event handling +\input chap\_frames.tex % Chapter 06: Frames and menubars. The components of a frame, menubars. +\input chap\_toolbars.tex % Chapter 07: Toolbars and status bars +\input chap\_basic\_controls.tex % Chapter 08: Basic controls +\input chap\_common\_dialogs.tex % Chapter 09: Common dialogs +\input chap\_custom\_dialogs.tex % Chapter 10: Custom dialogs and resources (XML + WXR) +\input chap\_drawing.tex % Chapter 11: Drawing on device contexts +\input chap\_input.tex % Chapter 12: Handling input (mouse, keyboard, joystick) +\input chap\_sizers.tex % Chapter 14: Sizers +\input chap\_images.tex % Chapter 15: Images and bitmaps +\input chap\_clipboard\_dnd.tex % Chapter 16: Clipboard and drag and drop +\input chap\_advanced\_controls.tex % Chapter 17: Advanced controls (list,tree,notebook,splitter,wxWizard,wxCalCtrl...) +\input chap\_docview.tex % Chapter 18: Document/view classes +\input chap\_scrolling.tex % Chapter 19: Scrolling +\input chap\_mdi.tex % Chapter 20: MDI +\input chap\_printing.tex % Chapter 21: Printing +\input chap\_help.tex % Chapter 22: Providing help in your applications +\input chap\_strings.tex % Chapter 23: Strings and internationalization +\input chap\_data\_classes.tex % Chapter 24: Collection and container classes +\input chap\_memory.tex % Chapter 25: Memory management and debugging (including wxLog) +\input chap\_runtime.tex % Chapter 26: Run-time class information +\input chap\_advanced\_events.tex % Chapter 27: Advanced event handling (user-defined events, ...) +\input chap\_comms.tex % Chapter 28: Communication classes, including wxSocket +\input chap\_database.tex % Chapter 29: Database classes +\input chap\_file\_stream.tex % Chapter 30: File and stream classes +\input chap\_config.tex % Chapter 31: Configuration classes +\input chap\_time.tex % Chapter 32: Time, timers and idle processing +\input chap\_multithreading.tex % Chapter 33: Writing multithreading applications +\input chap\_perfecting.tex % Chapter 34: Perfecting your UI (Adapting to system settings, accelerators, ...) +\input chap\_platform.tex % Chapter 35: Platform-specific programming (metafiles, OLE automation, taskbar, ...) +\input chap\_wxhtml.tex % Chapter 36: Using wxHTML +\input chap\_wxpython.tex % Chapter 37: Using wxPython +\input chap\_wxbase.tex % Chapter 38: wxBase? +\input chap\_comparison.tex % Appendix: Comparison with other toolkits: MFC, Qt etc. + +\bibliography{refs} +\addcontentsline{toc}{chapter}{Bibliography} +\setheader{{\it REFERENCES}}{}{}{}{}{{\it REFERENCES}}% +\setfooter{\thepage}{}{}{}{}{\thepage}% + +\newpage +% Note: In RTF, the \printindex must come before the +% change of header/footer, since the \printindex inserts +% the RTF \sect command which divides one chapter from +% the next. +\rtfonly{\printindex +\addcontentsline{toc}{chapter}{Index} +\setheader{{\it INDEX}}{}{}{}{}{{\it INDEX}}% +\setfooter{\thepage}{}{}{}{}{\thepage} +} +% In Latex, it must be this way around (I think) +\latexonly{\addcontentsline{toc}{chapter}{Index} +\setheader{{\it INDEX}}{}{}{}{}{{\it INDEX}}% +\setfooter{\thepage}{}{}{}{}{\thepage} +\printindex +} + +\end{document} diff --git a/docs/latex/book/contents.gif b/docs/latex/book/contents.gif new file mode 100644 index 0000000000000000000000000000000000000000..723174f81d04d16e94016186ac0322dcddb603c7 GIT binary patch literal 996 zcmZ?wbhEHbbYM_m_|5kxA zV8N1xh6Z3tW&ovR5Cxe34SwPCqkp^L+21?)C@%eigo zjb6XYK{ltit-ZayK=RQZsqlw)b_u-S7xTMFKYoAy)o)vOlz%vRFz5Xto6e7mgSU6F l8>#t(=cJr!`K{OHv%&EGv6=dhWPNvSd3kw-DjN%fH2`phKPvzL literal 0 HcmV?d00001 diff --git a/docs/latex/book/forward.gif b/docs/latex/book/forward.gif new file mode 100644 index 0000000000000000000000000000000000000000..d8862174ed264064e4092accd3b9cef539651ad1 GIT binary patch literal 959 zcmZ?wbhEHbbYM_m_|5NZ; wbH-jL-q~hvBDNIFUuAn+=ylY_lIO=twXW(!Y|OjPCFiqa!^6Y8%uEc{09+_1fB*mh literal 0 HcmV?d00001 diff --git a/docs/latex/book/template_chapter.tex b/docs/latex/book/template_chapter.tex new file mode 100644 index 0000000000..47ff8dd393 --- /dev/null +++ b/docs/latex/book/template_chapter.tex @@ -0,0 +1,6 @@ +\chapter{My Chapter}\label{mychapter} +\pagenumbering{arabic}% +\setheader{{\it CHAPTER \thechapter: My Chapter}}{}{}{}{}{{\it CHAPTER \thechapter: My Chapter}}% +\setfooter{\thepage}{}{}{}{}{\thepage}% + + diff --git a/docs/latex/book/tex2rtf.ini b/docs/latex/book/tex2rtf.ini new file mode 100644 index 0000000000..e9ad12b4ec --- /dev/null +++ b/docs/latex/book/tex2rtf.ini @@ -0,0 +1,40 @@ +;;; Tex2RTF initialisation file +runTwice = yes +titleFontSize = 12 +authorFontSize = 10 +authorFontSize = 10 +chapterFontSize = 12 +sectionFontSize = 12 +subsectionFontSize = 12 +contentsDepth = 2 +headerRule = yes +footerRule = yes +useHeadingStyles = yes +listItemIndent=40 +generateHPJ = yes +htmlBrowseButtons = bitmap +winHelpContents = yes +winHelpVersion = 3 ; 3 for Windows 3.x, 4 for Windows 95 +winHelpTitle = "Multiplatform application development with wxWindows" +truncateFilenames = no +combineSubSections = yes +;; +;; These two are for generating MS HTML Help project, contents and index files. +;; +htmlWorkshopFiles = true +htmlIndex = true + +;\overview [2] {\rtfonly{See also }\settransparency{on}\sethotspotcolour{off}\sethotspotunderline{on}\winhelponly{\image{}{books.bmp}\settransparency{off}} +;\htmlonly{\image{}{books.gif}}\helpref{#1}{#2} +;\sethotspotcolour{on}\sethotspotunderline{on}} +\overview [2] {\helpref{#1}{#2}} +\docparam [2]{\parskip{0}{\it #1}\htmlignore{\par}\parskip{10}\indented{1cm}{#2}} +\wxheading [1]{{\bf \htmlignore{\fcol{blue}{#1}}\htmlonly{\fcol{red}{#1}}}} +\const [0] {{\bf const}} +\constfunc [3] {{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}} +\windowstyle [1] {{\bf #1}\index{#1}} +\bftt [1] {\bf{\tt{#1}}} +\pythonnote [1] {{\bf \fcol{blue}{wxPython note:}} #1} +%\pythonnote [1] {} + + diff --git a/docs/latex/book/texhelp.sty b/docs/latex/book/texhelp.sty new file mode 100644 index 0000000000..fd9d1b0b9b --- /dev/null +++ b/docs/latex/book/texhelp.sty @@ -0,0 +1,301 @@ +% LaTeX style file +% Name: texhelp.sty +% Author: Julian Smart +% +% Purpose +% ------- +% Style file to enable the simultaneous preparation of printed LaTeX and on-line +% hypertext manuals. +% Use in conjunction with Tex2RTF (see Tex2RTF documentation). +% +% Note that if a non-ASCII character starts a newline and there should be a space +% between the last word on the previous line and the first word on this line, +% you need to use \rtfsp to generate a space in Windows Help. \rtfsp is ignored +% in all other formats. +% +% Julian Smart +% Artificial Intelligence Applications Institute +% +% +% ============== C++/CLIPS Documentation Facilities ============== +% +% Each class definition should be typeset with e.g. +% +% \section{\class{Name}: Parent} +% +% followed by a description of the class. +% Each member should follow: +% +% \membersection{wxName::Member} +% +% with a description of what this member does. +% Then, one (or more if overloaded) member (function) in detail: +% +% \func{return type}{name}{args} +% or +% \member{type}{name} +% +% where args is a list of \param{type}{name}, ... + +% Function, e.g. +% e.g. to typeset +% +% void DoIt(char *string); +% +% write: +% +% \func{void}{DoIt}{\param{char *}{string}} +% + +\newcommand{\func}[3]{\hangafter=1\noindent\hangindent=10mm +{{\it #1} {\bf #2}\index{#2}}(#3)} + +% For function/type definition where the name is a pointer, +% e.g. to typeset +% +% typedef void (*wxFunction)(wxObject&) +% +% write: +% +% \pfunc{typedef void}{wxFunction}{param{wxObject&}} + +\newcommand{\pfunc}[3]{\hangafter=1\noindent\hangindent=10mm +{{\it #1} ({\bf *#2})\index{#2}}(#3)} + +% Use an ordinary \section command for class name definitions. + +% This is used for a member, such as wxBitmap: GetDepth +\newcommand{\membersection}[1]{\subsection*{#1}\index{#1}} + +% CLIPS function +\newcommand{\clipsfunc}[3]{\hangafter=1\noindent\hangindent=10mm +{{\bf #1} ({\bf #2}\index{#2}}#3)} + +\newcommand{\clipssection}[1]{\chapter{#1}} + +% This is used for a CLIPS function name +\newcommand{\functionsection}[1]{\subsection*{#1}} + +% Member: a type and a name +\newcommand{\member}[2]{{\bf #1 \it #2}} + +% C++ Parameter: a type and a name (no intervening space) +\newcommand{\param}[2]{{\it #1}{\bf #2}} + +% CLIPS Parameter: a type and a name (one intervening space) +\newcommand{\cparam}[2]{{\bf #1} {\it #2}} + +% Class: puts in index +\newcommand{\class}[1]{#1\index{#1}} + +%\newcommand{\docparam}[2]{\parskip=0pt {\it #1}\par\parskip=10pt\begin{indented}{1cm}{#2}\end{indented}} + +% Void type +\newcommand{\void}{{\it void}} + +% Typeset destructor +\newcommand{\destruct}[1]{{$\sim$}#1} + +% Typeset insert/extract operators +\newcommand{\cinsert}{$<<$} +\newcommand{\cextract}{$>>$} + +% pythonnote: A note about the wxpython interface. +%\newcommand{\pythonnote}[1]{{\bf wxPython note: }#1} +\newcommand{\pythonnote}[1]{{}} + +% =================== Hypertext facilities =================== +% +% To insert hyperlinks (or references, in Latex), \label the sections +% or membersections \label{ref-label} immediately after the section, on the same line, +% and use \helpref{text-to-show}{ref-label} to make a reference. +% + +% Type text with section reference +\newcommand{\helpref}[2]{{\it #1} (p.\ \pageref{#2}) } + +% Type text with URL in verbatim mode +\newcommand{\urlref}[2]{#1 (\verb$#2$)} + +% Don't typeset section number in LaTeX +\newcommand{\helprefn}[2]{{\it #1}} + +% Like helpref, but popup text in WinHelp instead of hyperlinked +\newcommand{\popref}[2]{{\it #1}} + +% Like footnote, but popup text. +\newcommand{\footnotepopup}[2]{{\it #1}\footnote{#2}} + +% =================== On-line help specific macros =================== +% + +% Global document font size/family, help only. +\newcommand{\helpfontsize}[1]{} +\newcommand{\helpfontfamily}[1]{} + +% Ignore in all on-line help +\newcommand{\helpignore}[1]{#1} +% Only print in all on-line help +\newcommand{\helponly}[1]{} + +% Ignore in LaTeX +\newcommand{\latexignore}[1]{} +% Only print in LaTeX +\newcommand{\latexonly}[1]{#1} + +% Ignore in linear RTF +\newcommand{\rtfignore}[1]{#1} +% Only print in linear RTF +\newcommand{\rtfonly}[1]{} + +% Ignore in WinHelp RTF +\newcommand{\winhelpignore}[1]{#1} +% Only print in WinHelp RTF +\newcommand{\winhelponly}[1]{} + +% Ignore in wxHelp +\newcommand{\xlpignore}[1]{#1} +% Only print in wxHelp +\newcommand{\xlponly}[1]{} + +% Ignore in HTML +\newcommand{\htmlignore}[1]{#1} +% Only print in HTML +\newcommand{\htmlonly}[1]{} + +% Input a file only for help system (binder thickness is not a limitation +% in help systems!) +\newcommand{\helpinput}[1]{} + +\newcommand{\rtfsp}{ } % Force a space in RTF, ignore in Latex + +% =================== Miscellaneous macros =================== +% +% Headings consistent with generated ones +\newcommand{\myheading}[1]{\vspace*{25pt} +\begin{flushleft} +{\LARGE \bf #1} +\end{flushleft} +\vskip 20pt +} + +% Heading with entry in contents page. +\newcommand{\chapterheading}[1]{\myheading{#1} +\addcontentsline{toc}{chapter}{#1}} + +\newcommand{\sectionheading}[1]{\myheading{#1} +\addcontentsline{toc}{section}{#1}} + +% Glossary environment +\newenvironment{helpglossary}{\newpage\chapterheading{Glossary}\begin{description}}{\end{description}} + +% Glossary entry +\newcommand{\gloss}[1]{\item[#1]\index{#1}} + +% Image: EPS in Latex, BMP or MF (whatever's available) in RTF. Requires psbox. +\newcommand{\image}[2]{\psboxto(#1){#2}} + +% Image, left aligned (HTML) +\newcommand{\imager}[2]{\psboxto(#1){#2}} + +% Image, right aligned (HTML) +\newcommand{\imagel}[2]{\psboxto(#1){#2}} + +% Imagemap: principally for HTML only. In Latex, +% acts like \image. +\newcommand{\imagemap}[3]{\psboxto(#1){#2}} + +% Headers and footers +% \setheader{EvenPageLeft}{EvenPageCentre}{EvenPageRight} +% {OddPageLeft}{OddPageCentre}{OddPageRight} +\newcommand{\setheader}[6]{ +\lhead[\fancyplain{}{#1}]{\fancyplain{}{#4}} +\chead[\fancyplain{}{#2}]{\fancyplain{}{#5}} +\rhead[\fancyplain{}{#3}]{\fancyplain{}{#6}} +} + +% \setfooter{EvenPageLeft}{EvenPageCentre}{EvenPageRight} +% {OddPageLeft}{OddPageCentre}{OddPageRight} +\newcommand{\setfooter}[6]{ +\lfoot[\fancyplain{#1}{#1}]{\fancyplain{#4}{#4}} +\cfoot[\fancyplain{#2}{#2}]{\fancyplain{#5}{#5}} +\rfoot[\fancyplain{#3}{#3}]{\fancyplain{#6}{#6}} +} + +% Needed for telling RTF where margin paragraph should go +% in mirrored margins mode. +\newcommand{\marginpareven}[1]{\hspace*{0pt}\marginpar{#1}} +\newcommand{\marginparodd}[1]{\hspace*{0pt}\marginpar{#1}} + +% Environment for two-column table popular in WinHelp and manuals. +\newcommand{\twocolwidtha}[1]{\def\twocolwidthaval{#1}} +\newcommand{\twocolwidthb}[1]{\def\twocolwidthbval{#1}} +\newcommand{\twocolspacing}[1]{\def\twocolspacingval{#1}} + +\twocolwidtha{3cm} +\twocolwidthb{8.5cm} +\twocolspacing{2} + +\newcommand{\twocolitem}[2]{#1 & #2\\} +\newcommand{\twocolitemruled}[2]{#1 & #2\\\hline} + +\newenvironment{twocollist}{\renewcommand{\arraystretch}{\twocolspacingval}\begin{tabular}{lp{\twocolwidthbval}}}% +{\end{tabular}\renewcommand{\arraystretch}{1}} + +% Specifying table rows for RTF compatibility +\newcommand{\row}[1]{#1\\} + +% Use for the last ruled row for correct RTF generation. +\newcommand{\ruledrow}[1]{#1\\\hline} + +% Indentation environment. Arg1 is left margin size +\newenvironment{indented}[1]{\begin{list}{}{\leftmargin=#1}\item[]}% +{\end{list}} + +% Framed box of text, normal formatting. +\newcommand{\normalbox}[1]{\fbox{\vbox{#1}}} +% Double-framed box of text. +\newcommand{\normalboxd}[1]{\fbox{\fbox{\vbox{#1}}}} + +% WITHDRAWN -- can't do in RTF, easily. +% Framed box of text, horizontally centred. Ragged right within box. +% \newcommand{\centeredbox}[2]{\begin{center}\fbox{\parbox{#1}{\raggedright#2}}\end{center}} +% Double-framed box of text, horizontally centred. Ragged right within box. +% \newcommand{\centeredboxd}[2]{\begin{center}\fbox{\fbox{\parbox{#1}{\raggedright#2}}}\end{center}} + +% toocomplex environment: simply prints the argument in LaTeX, +% comes out verbatim in all generated formats. +\newenvironment{toocomplex}{}{} + +% Colour: dummy commands since LaTeX doesn't support colour. +% \definecolour{name}{red}{blue}{green} +% \fcol{name}{text} ; Foreground +% \bcol{name}{text} ; Background +\newcommand{\definecolour}[4]{} +\newcommand{\definecolor}[4]{} +\newcommand{\fcol}[2]{#2} +\newcommand{\bcol}[2]{#2} +\newcommand{\sethotspotcolour}[1]{} +\newcommand{\sethotspotunderline}[1]{} +\newcommand{\settransparency}[1]{} +\newcommand{\backslashraw}[0]{} +\newcommand{\lbraceraw}[0]{} +\newcommand{\rbraceraw}[0]{} +\newcommand{\registered}[0]{(r)} +\newcommand{\background}[1]{} +\newcommand{\textcolour}[1]{} +\newcommand{\overview}[2]{See \helpref{#1}{#2}.} +\newcommand{\docparam}[2]{{\it #1}\begin{list}{}{\leftmargin=1cm}\item[] +#2% +\end{list}} +\newcommand{\wxheading}[1]{{\bf #1}} +\newcommand{\const}[0]{{\bf const}} +\newcommand{\constfunc}[3]{{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}} +\newcommand{\windowstyle}[1]{{\bf #1}\index{#1}} + +\addtolength{\textwidth}{1in} +\addtolength{\oddsidemargin}{-0.5in} +\addtolength{\topmargin}{-0.5in} +\addtolength{\textheight}{1in} +\sloppy + diff --git a/docs/latex/book/up.gif b/docs/latex/book/up.gif new file mode 100644 index 0000000000000000000000000000000000000000..257ee49f2682f1cd40e4ddd522c02b8f2e650537 GIT binary patch literal 999 zcmZ?wbhEHbbYM_m_|5fj;(a}CV`%O8V#mmmJDyQBv znOUrUdY)b7p%TfEw=uvIpw#tmRN63IJ4dV_d3;8=8Exq%6~s|?Ucw)Y)N{o mW~Oan_~>+*`LfpNZ$-(c=9xFw#FXa0yu2cKb(w?!gEaunx;l3N literal 0 HcmV?d00001 -- 2.45.2