mirror of
https://github.com/wxWidgets/wxWidgets.git
synced 2026-08-20 22:06:25 +08:00
Removed old wxGLCanvas stuff; moved wxTreeLayout to wxWindows; corrected some doc errors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@6330 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1035,6 +1035,44 @@ samples/rotate/*.xpm
|
||||
samples/rotate/*.txt
|
||||
samples/rotate/*.bmp
|
||||
|
||||
samples/treelay/*.cpp
|
||||
samples/treelay/*.h
|
||||
samples/treelay/makefile*
|
||||
samples/treelay/*.rc
|
||||
samples/treelay/*.def
|
||||
samples/treelay/*.ico
|
||||
samples/treelay/*.xpm
|
||||
samples/treelay/*.txt
|
||||
samples/treelay/*.bmp
|
||||
|
||||
samples/opengl/cube/*.cpp
|
||||
samples/opengl/cube/*.h
|
||||
samples/opengl/cube/*.rc
|
||||
samples/opengl/cube/*.ico
|
||||
samples/opengl/cube/*.xbm
|
||||
samples/opengl/cube/make*.*
|
||||
samples/opengl/cube/Makefile
|
||||
|
||||
samples/opengl/isosurf/*.cpp
|
||||
samples/opengl/isosurf/*.h
|
||||
samples/opengl/isosurf/*.rc
|
||||
samples/opengl/isosurf/*.ico
|
||||
samples/opengl/isosurf/*.xbm
|
||||
samples/opengl/isosurf/*.dat.gz
|
||||
samples/opengl/isosurf/make*.*
|
||||
samples/opengl/isosurf/Makefile
|
||||
|
||||
samples/opengl/penguin/*.cpp
|
||||
samples/opengl/penguin/*.c
|
||||
samples/opengl/penguin/*.h
|
||||
samples/opengl/penguin/*.rc
|
||||
samples/opengl/penguin/*.ico
|
||||
samples/opengl/penguin/*.xbm
|
||||
samples/opengl/penguin/*.xpm
|
||||
samples/opengl/penguin/make*.*
|
||||
samples/opengl/penguin/Makefile
|
||||
samples/opengl/penguin/penguin.lwo
|
||||
|
||||
demos/makefile*
|
||||
demos/configure
|
||||
demos/configure.in
|
||||
|
||||
@@ -52,6 +52,12 @@ samples/socket/Makefile.in
|
||||
samples/dialup/Makefile.in
|
||||
samples/font/Makefile.in
|
||||
samples/menu/Makefile.in
|
||||
samples/treelay/Makefile.in
|
||||
samples/opengl/cube/Makefile.in
|
||||
samples/opengl/penguin/Makefile.in
|
||||
samples/opengl/isosurf/Makefile.in
|
||||
samples/ogl/ogledit/Makefile.in
|
||||
samples/ogl/studio/Makefile.in
|
||||
demos/bombs/Makefile.in
|
||||
demos/forty/Makefile.in
|
||||
demos/fractal/Makefile.in
|
||||
|
||||
@@ -98,6 +98,7 @@ tbarsmpl.cpp G
|
||||
textdlgg.cpp G
|
||||
tipdlg.cpp G
|
||||
treectrl.cpp G 16
|
||||
treelay.cpp G
|
||||
wizard.cpp G
|
||||
|
||||
appcmn.cpp C B
|
||||
|
||||
+21
-20
@@ -3,9 +3,15 @@ src/wxvc.dsw
|
||||
src/wxvc_dll.dsp
|
||||
src/wxvc_dll.dsw
|
||||
|
||||
src/ogl/OglVC.dsp
|
||||
src/ogl/OglVC.dsw
|
||||
|
||||
src/jpeg/jpeg.dsp
|
||||
src/jpeg/jpeg.dsw
|
||||
|
||||
src/tiff/tiff.dsp
|
||||
src/tiff/tiff.dsw
|
||||
|
||||
samples/calendar/CalendarVC.dsp
|
||||
samples/calendar/CalendarVC.dsw
|
||||
|
||||
@@ -187,6 +193,21 @@ samples/validate/ValidateVC.dsw
|
||||
samples/wizard/WizardVC.dsp
|
||||
samples/wizard/WizardVC.dsw
|
||||
|
||||
samples/opengl/cube/CubeVC.dsp
|
||||
samples/opengl/cube/CubeVC.dsw
|
||||
samples/opengl/isosurf/IsosurfVC.dsp
|
||||
samples/opengl/isosurf/IsosurfVC.dsw
|
||||
samples/opengl/penguin/PenguinVC.dsp
|
||||
samples/opengl/penguin/PenguinVC.dsw
|
||||
|
||||
samples/ogl/ogledit/OgleditVC.dsp
|
||||
samples/ogl/ogledit/OgleditVC.dsw
|
||||
samples/ogl/studio/StudioVC.dsp
|
||||
samples/ogl/studio/StudioVC.dsw
|
||||
|
||||
samples/treelay/TreeSampleVC.dsp
|
||||
samples/treelay/TreeSampleVC.dsw
|
||||
|
||||
demos/bombs/BombsVC.dsp
|
||||
demos/bombs/BombsVC.dsw
|
||||
|
||||
@@ -211,24 +232,4 @@ utils/dialoged/src/DialogEdVC.dsw
|
||||
utils/tex2rtf/src/Tex2RTFVC.dsp
|
||||
utils/tex2rtf/src/Tex2RTFVC.dsw
|
||||
|
||||
utils/glcanvas/win/Glcanvas*.dsp
|
||||
utils/glcanvas/win/Glcanvas*.dsw
|
||||
utils/glcanvas/samples/cube/CubeVC.dsp
|
||||
utils/glcanvas/samples/cube/CubeVC.dsw
|
||||
utils/glcanvas/samples/isosurf/IsosurfVC.dsp
|
||||
utils/glcanvas/samples/isosurf/IsosurfVC.dsw
|
||||
utils/glcanvas/samples/penguin/PenguinVC.dsp
|
||||
utils/glcanvas/samples/penguin/PenguinVC.dsw
|
||||
|
||||
utils/ogl/src/OglVC.dsp
|
||||
utils/ogl/src/OglVC.dsw
|
||||
utils/ogl/samples/ogledit/OgleditVC.dsp
|
||||
utils/ogl/samples/ogledit/OgleditVC.dsw
|
||||
utils/ogl/samples/studio/StudioVC.dsp
|
||||
utils/ogl/samples/studio/StudioVC.dsw
|
||||
|
||||
utils/wxtree/src/TreeVC.dsp
|
||||
utils/wxtree/src/TreeVC.dsw
|
||||
utils/wxtree/src/TreeSampleVC.dsp
|
||||
utils/wxtree/src/TreeSampleVC.dsw
|
||||
|
||||
|
||||
@@ -22,7 +22,6 @@ echo CTRL-C if this is not correct.
|
||||
pause
|
||||
|
||||
erase %dest\wx*.zip
|
||||
erase %dest\glcanvas.zip
|
||||
erase %dest\ogl3.zip
|
||||
erase %dest\tex2rtf2.zip
|
||||
erase %dest\jpeg.zip
|
||||
@@ -62,8 +61,8 @@ zip32 -@ %dest\wx%version%_cw.zip < %src\distrib\msw\cw.rsp
|
||||
rem OGL 3
|
||||
zip32 -@ %dest\ogl3.zip < %src\distrib\msw\ogl.rsp
|
||||
|
||||
rem GLCanvas
|
||||
zip32 -@ %dest\glcanvas.zip < %src\distrib\msw\glcanvas.rsp
|
||||
rem GLCanvas: obsolete, now in main library
|
||||
rem zip32 -@ %dest\glcanvas.zip < %src\distrib\msw\glcanvas.rsp
|
||||
|
||||
rem Tex2RTF
|
||||
zip32 -@ %dest\tex2rtf2.zip < %src\distrib\msw\tex2rtf.rsp
|
||||
@@ -107,7 +106,6 @@ unzip32 -o ..\wx%version%_bc.zip
|
||||
unzip32 -o ..\wx%version%_hlp.zip
|
||||
Rem Need Word file, for Remstar DB classes
|
||||
unzip32 -o ..\wx%version%_wrd.zip
|
||||
unzip32 -o ..\glcanvas.zip
|
||||
unzip32 -o ..\treedraw.zip
|
||||
unzip32 -o ..\ogl3.zip
|
||||
unzip32 -o ..\jpeg.zip
|
||||
|
||||
@@ -125,7 +125,7 @@ WX_DEFINE_SORTED_ARRAY(MyFile *, ArrayOfFiles);
|
||||
|
||||
\helpref{Container classes overview}{wxcontaineroverview}, \helpref{wxList}{wxlist}
|
||||
|
||||
\wxheading{Required headers:}
|
||||
\wxheading{Include files}
|
||||
|
||||
<wx/dynarray.h> for wxArray and wxSortedArray and additionally <wx/arrimpl.cpp>
|
||||
for wxObjArray.
|
||||
|
||||
@@ -284,6 +284,7 @@
|
||||
\input toolbar.tex
|
||||
\input treectrl.tex
|
||||
\input treeevt.tex
|
||||
\input treelay.tex
|
||||
\input upduievt.tex
|
||||
\input url.tex
|
||||
\input validatr.tex
|
||||
|
||||
@@ -3,10 +3,8 @@
|
||||
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndaiff.h at 26/Feb/00 14:52:29
|
||||
%
|
||||
|
||||
|
||||
\section{\class{wxSoundAiff}}\label{wxsoundaiff}
|
||||
|
||||
|
||||
AIFF codec
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
+35
-35
@@ -16,9 +16,9 @@ Base class for sound streams
|
||||
|
||||
No base class
|
||||
|
||||
\wxheading{Include file}
|
||||
\wxheading{Include files}
|
||||
|
||||
wx/mmedia/sndbase.h
|
||||
<wx/mmedia/sndbase.h>
|
||||
|
||||
\wxheading{Data structures}
|
||||
|
||||
@@ -56,6 +56,7 @@ may happen when you call wxSoundRouterStream::SetSoundFormat().}
|
||||
|
||||
When a sound event is generated, it may either call the internal sound event
|
||||
processor (which can be inherited) or call a C function. Its definition is:
|
||||
|
||||
\begin{verbatim}
|
||||
typedef void (*wxSoundCallback)(wxSoundStream *stream, int evt,
|
||||
void *cdata);
|
||||
@@ -63,13 +64,13 @@ processor (which can be inherited) or call a C function. Its definition is:
|
||||
|
||||
The {\bf stream} parameter represents the current wxSoundStream.
|
||||
|
||||
The {\bf evt} parameter represents the sound event which is the cause of the calling. (See \helpref{wxSound events}{wxsoundstreamevents})
|
||||
The {\bf evt} parameter represents the sound event which is the cause of the calling. (See \helpref{wxSound events}{wxsoundstreamevents}).
|
||||
|
||||
The {\bf cdata} parameter represents the user callback data which were specified
|
||||
when the user called \helpref{wxSoundStream::Register}{wxsoundstreamregister}.
|
||||
|
||||
{\bf\it Note:} There is two other ways to catch sound events: you can inherit the
|
||||
sound stream and redefine \helpref{wxSoundStream::OnSoundEvent}{wxsoundstreamonsoundevent}, or you can reroute the events to another sound stream using \helpref{wxSoundStream::SetEventHandler}{wxsoundstreameventhandler}
|
||||
{\it Note:} There are two other ways to catch sound events: you can inherit the
|
||||
sound stream and redefine \helpref{wxSoundStream::OnSoundEvent}{wxsoundstreamonsoundevent}, or you can reroute the events to another sound stream using \helpref{wxSoundStream::SetEventHandler}{wxsoundstreameventhandler}.
|
||||
|
||||
%%
|
||||
%% wxSoundStream streaming mode
|
||||
@@ -78,18 +79,18 @@ sound stream and redefine \helpref{wxSoundStream::OnSoundEvent}{wxsoundstreamons
|
||||
\wxheading{wxSound streaming mode}
|
||||
|
||||
The wxSoundStream object can work in three different modes. These modes are specified
|
||||
at the call to \helpref{wxSoundStream::StartProduction}{wxsoundstreamstartproduction}
|
||||
and cannot be changed until you call
|
||||
at the call to \helpref{wxSoundStream::StartProduction}{wxsoundstreamstartproduction}
|
||||
and cannot be changed until you call
|
||||
\helpref{wxSoundStream::StopProduction}{wxsoundstreamstopproduction}.
|
||||
|
||||
The {\bf wxSOUND\_INPUT} mode is the recording mode. It generates {\bf wxSOUND\_INPUT}
|
||||
The {\bf wxSOUND\_INPUT} mode is the recording mode. It generates {\bf wxSOUND\_INPUT}
|
||||
events and you cannot use wxSoundStream::Write().
|
||||
|
||||
The {\bf wxSOUND\_OUTPUT} mode is the playing mode. It generates {\bf wxSOUND\_OUTPUT}
|
||||
The {\bf wxSOUND\_OUTPUT} mode is the playing mode. It generates {\bf wxSOUND\_OUTPUT}
|
||||
events and you cannot use wxSoundStream::Read().
|
||||
|
||||
The {\bf wxSOUND\_DUPLEX} mode activates the full duplex mode. The full duplex needs
|
||||
you make synchronous call to \helpref{wxSoundStream::Read}{wxsoundstreamread} and
|
||||
The {\bf wxSOUND\_DUPLEX} mode activates the full duplex mode. The full duplex requires
|
||||
you to make synchronous call to \helpref{wxSoundStream::Read}{wxsoundstreamread} and
|
||||
\helpref{wxSoundStream::Write}{wxsoundstreamwrite}. This means that you must be
|
||||
careful with realtime problems. Each time you call Read you must call Write.
|
||||
|
||||
@@ -136,30 +137,29 @@ any temporary buffer.
|
||||
|
||||
\func{wxSoundStream\&}{Read}{\param{void* }{buffer}, \param{wxUint32 }{len}}
|
||||
|
||||
Reads \it{len} bytes from the sound stream. This call may block the user so
|
||||
Reads {\it len} bytes from the sound stream. This call may block the user so
|
||||
use it carefully when you need to intensively refresh the GUI. You may be
|
||||
interested by sound events: see
|
||||
\helpref{wxSoundStream::OnSoundEvent}{wxsoundstreamonsoundevent}.
|
||||
interested by sound events: see \helpref{wxSoundStream::OnSoundEvent}{wxsoundstreamonsoundevent}.
|
||||
|
||||
It is better to use the size returned by \helpref{wxSoundStream::GetBestSize}{wxsoundstreamgetbestsize}: this may improve performance or accuracy of the
|
||||
sound event system.
|
||||
|
||||
\wxheading{Note on \it{len}}
|
||||
\wxheading{Parameters}
|
||||
|
||||
\it{len} is expressed in bytes. If you need to do conversions between bytes
|
||||
\docparam{len}{{\it len} is expressed in bytes. If you need to do conversions between bytes
|
||||
and seconds use wxSoundFormat.
|
||||
See \helpref{wxSoundFormatBase}{wxsoundformatbase}, \helpref{wxSoundStream::GetSoundFormat}{wxsoundstreamgetsoundformat}.
|
||||
See \helpref{wxSoundFormatBase}{wxsoundformatbase}, \helpref{wxSoundStream::GetSoundFormat}{wxsoundstreamgetsoundformat}.}
|
||||
|
||||
\wxheading{Note on data}
|
||||
|
||||
Data in \it{buffer} are coded using the sound format attached to this sound
|
||||
\docparam{data}{Data in \it{buffer} are coded using the sound format attached to this sound
|
||||
stream. The format is specified with
|
||||
\helpref{SetSoundFormat}{wxsoundstreamsetsoundformat}
|
||||
\helpref{SetSoundFormat}{wxsoundstreamsetsoundformat}.}
|
||||
|
||||
%%
|
||||
%% Write
|
||||
%%
|
||||
|
||||
\membersection{wxSoundStream::Write}\label{wxsoundstreamwrite}
|
||||
|
||||
\func{wxSoundStream\&}{Write}{\param{const void* }{buffer}, \param{wxUint32 }{len}}
|
||||
|
||||
Writes \it{len} bytes to the sound stream. This call may block the user so
|
||||
@@ -169,17 +169,15 @@ use it carefully. You may be interested by sound events: see
|
||||
It is better to use the size returned by \helpref{wxSoundStream::GetBestSize}{wxsoundstreamgetbestsize}: this may improve performance or accuracy of the
|
||||
sound event system.
|
||||
|
||||
\wxheading{Note on \it{len}}
|
||||
\wxheading{Parameters}
|
||||
|
||||
\it{len} is expressed in bytes. If you need to do conversions between bytes
|
||||
\docparam{len}{This is expressed in bytes. If you need to do conversions between bytes
|
||||
and seconds use wxSoundFormat.
|
||||
See \helpref{wxSoundFormatBase}{wxsoundformatbase}, \helpref{wxSoundStream::GetSoundFormat}{wxsoundstreamgetsoundformat}.
|
||||
See \helpref{wxSoundFormatBase}{wxsoundformatbase}, \helpref{wxSoundStream::GetSoundFormat}{wxsoundstreamgetsoundformat}.}
|
||||
|
||||
\wxheading{Note on data}
|
||||
|
||||
Data in \it{buffer} are coded using the sound format attached to this sound
|
||||
\docparam{buffer}{Data in \it{buffer} are coded using the sound format attached to this sound
|
||||
stream. The format is specified with
|
||||
\helpref{SetSoundFormat}{wxsoundstreamsetsoundformat}
|
||||
\helpref{SetSoundFormat}{wxsoundstreamsetsoundformat}.}
|
||||
|
||||
%%
|
||||
%% GetBestSize
|
||||
@@ -199,6 +197,7 @@ will not block for this buffer size.
|
||||
%%
|
||||
|
||||
\membersection{wxSoundStream::SetSoundFormat}\label{wxsoundstreamsetsoundformat}
|
||||
|
||||
\func{bool}{SetSoundFormat}{\param{const wxSoundFormatBase\& }{format}}
|
||||
|
||||
SetSoundFormat is one of the key function of the wxSoundStream object. It specifies
|
||||
@@ -206,7 +205,7 @@ the sound format the user needs. SetSoundFormat tries to apply the format to the
|
||||
current sound stream (it can be a sound file or a sound driver).
|
||||
Then, either it manages to apply it and it returns {\bf TRUE}, or it could not and
|
||||
it returns {\bf FALSE}. In this case, you must check the error with
|
||||
\helpref{wxSoundStream::GetError}{wxsoundstreamgeterror}. See
|
||||
\helpref{wxSoundStream::GetError}{wxsoundstreamgeterror}. See
|
||||
\helpref{wxSoundStream errors section}{wxsoundstreamerrors} for more details.
|
||||
|
||||
\wxheading{Remark}
|
||||
@@ -227,6 +226,7 @@ the stream itself.
|
||||
%% SetCallback
|
||||
%%
|
||||
\membersection{wxSoundStream::SetCallback}\label{wxsoundstreamregister}
|
||||
|
||||
\func{void}{Register}{\param{int }{evt}, \param{wxSoundCallback }{cbk}, \param{void* }{cdata}}
|
||||
|
||||
It installs a C callback for wxSoundStream events. The C callbacks are still useful
|
||||
@@ -249,29 +249,29 @@ recording or playing or the two at the same time.
|
||||
|
||||
Stops the async notifier.
|
||||
|
||||
|
||||
\membersection{wxSoundStream::SetEventHandler}\label{wxsoundstreamseteventhandler}
|
||||
|
||||
\func{void}{SetEventHandler}{\param{wxSoundStream* }{handler}}
|
||||
|
||||
Sets the event handler: if it is non-null, all events are routed to it.
|
||||
|
||||
|
||||
\membersection{wxSoundStream::GetError}\label{wxsoundstreamgeterror}
|
||||
|
||||
\constfunc{wxSoundError}{GetError}{\void}
|
||||
|
||||
|
||||
\membersection{wxSoundStream::GetLastAccess}\label{wxsoundstreamgetlastaccess}
|
||||
|
||||
\constfunc{wxUint32}{GetLastAccess}{\void}
|
||||
|
||||
|
||||
\membersection{wxSoundStream::QueueFilled}\label{wxsoundstreamqueuefilled}
|
||||
|
||||
\constfunc{bool}{QueueFilled}{\void}
|
||||
|
||||
This is only useful for device (I think).
|
||||
|
||||
|
||||
\membersection{wxSoundStream::OnSoundEvent}\label{wxsoundstreamonsoundevent}
|
||||
|
||||
\func{void}{OnSoundEvent}{\param{int }{evt}}
|
||||
|
||||
Handles event
|
||||
Handles event.
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndcodec.h at 26/Feb/00 14:26:29
|
||||
%
|
||||
|
||||
|
||||
\section{\class{wxSoundStreamCodec}}\label{wxsoundstreamcodec}
|
||||
|
||||
\wxheading{Derived from}
|
||||
@@ -14,7 +13,6 @@
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
|
||||
\membersection{wxSoundStreamCodec::wxSoundStreamCodec}\label{wxsoundstreamcodecwxsoundstreamcodec}
|
||||
|
||||
\func{}{wxSoundStreamCodec}{\param{wxSoundStream\& }{snd\_io}}
|
||||
|
||||
@@ -3,10 +3,8 @@
|
||||
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndesd.h at 26/Feb/00 14:26:56
|
||||
%
|
||||
|
||||
|
||||
\section{\class{wxSoundStreamESD}}\label{wxsoundstreamesd}
|
||||
|
||||
|
||||
ESD output class
|
||||
|
||||
\wxheading{Derived from}
|
||||
@@ -20,7 +18,7 @@ ESD output class
|
||||
|
||||
\membersection{wxSoundStreamESD::wxSoundStreamESD}\label{wxsoundstreamesdwxsoundstreamesd}
|
||||
|
||||
\func{}{wxSoundStreamESD}{\param{const wxString\& }{hostname = \_T("localhost")}}
|
||||
\func{}{wxSoundStreamESD}{\param{const wxString\& }{hostname = "localhost"}}
|
||||
|
||||
|
||||
\membersection{wxSoundStreamESD::\destruct{wxSoundStreamESD}}\label{wxsoundstreamesddtor}
|
||||
|
||||
@@ -26,9 +26,10 @@ typedef enum {
|
||||
{\small \begin{verbatim}
|
||||
typedef struct g72x\_state g72state
|
||||
\end{verbatim}}
|
||||
This fixes a bug in Mingw95
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
This fixes a bug in Mingw95
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxSoundFormatG72X::wxSoundFormatG72X}\label{wxsoundformatg72xwxsoundformatg72x}
|
||||
|
||||
@@ -80,7 +81,7 @@ This fixes a bug in Mingw95
|
||||
\constfunc{wxUint32}{GetBytesFromTime}{\param{wxUint32 }{time}}
|
||||
|
||||
|
||||
\membersection{wxSoundFormatG72X::operator!=}\label{wxsoundformatg72xoperator!=}
|
||||
\membersection{wxSoundFormatG72X::operator!=}\label{wxsoundformatg72xoperatorneq}
|
||||
|
||||
\constfunc{bool}{operator!=}{\param{const wxSoundFormatBase\& }{frmt2}}
|
||||
|
||||
|
||||
@@ -98,7 +98,7 @@ PCM specification class
|
||||
\constfunc{wxUint32}{GetBytesFromTime}{\param{wxUint32 }{time}}
|
||||
|
||||
|
||||
\membersection{wxSoundFormatPcm::operator!}\label{wxsoundformatpcmoperator!}
|
||||
\membersection{wxSoundFormatPcm::operator!}\label{wxsoundformatpcmoperatornot}
|
||||
|
||||
\constfunc{bool}{operator!}{\param{const wxSoundFormatBase\& }{frmt2}}
|
||||
|
||||
|
||||
@@ -64,6 +64,6 @@ It clones the current format.
|
||||
\constfunc{wxUint32}{GetBytesFromTime}{\param{wxUint32 }{time}}
|
||||
|
||||
|
||||
\membersection{wxSoundFormatBase::operator!=}\label{wxsoundformatbaseoperator!=}
|
||||
\membersection{wxSoundFormatBase::operator!=}\label{wxsoundformatbaseoperatorneq}
|
||||
|
||||
\constfunc{bool}{operator!=}{\param{const wxSoundFormatBase\& }{frmt2}
|
||||
\constfunc{bool}{operator!=}{\param{const wxSoundFormatBase\& }{frmt2}}
|
||||
|
||||
@@ -68,7 +68,7 @@ ULAW format
|
||||
\constfunc{wxUint32}{GetBytesFromTime}{\param{wxUint32 }{time}}
|
||||
|
||||
|
||||
\membersection{wxSoundFormatUlaw::operator!=}\label{wxsoundformatulawoperator!=}
|
||||
\membersection{wxSoundFormatUlaw::operator!=}\label{wxsoundformatulawoperatorneq}
|
||||
|
||||
\constfunc{bool}{operator!=}{\param{const wxSoundFormatBase\& }{frmt2}}
|
||||
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
\chapter{wxTreeLayout Class Reference}
|
||||
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}
|
||||
|
||||
\section{\class{wxTreeLayout}}\label{wxtreelayout}
|
||||
|
||||
This abstract class is used for drawing a tree. You must derive a new
|
||||
class from this, and define member functions to access the data that
|
||||
wxTreeLayout needs.
|
||||
wxTreeLayout provides layout of simple trees with one root node, drawn left-to-right,
|
||||
with user-defined spacing between nodes.
|
||||
|
||||
wxTreeLayout is an abstract class that must be subclassed. The programmer
|
||||
defines various member functions which will access whatever data structures
|
||||
are appropriate for the application, and wxTreeLayout uses these when laying
|
||||
out the tree.
|
||||
|
||||
Nodes are identified by long integer identifiers. The derived class
|
||||
communicates the actual tree structure to wxTreeLayout by defining \helprefn{wxTreeLayout::GetChildren}{getchildren}\rtfsp
|
||||
and \helprefn{wxTreeLayout::GetNodeParent}{getnodeparent} functions.
|
||||
communicates the actual tree structure to wxTreeLayout by defining \helpref{wxTreeLayout::GetChildren}{wxtreelayoutgetchildren}\rtfsp
|
||||
and \helpref{wxTreeLayout::GetNodeParent}{wxtreelayoutgetnodeparent} functions.
|
||||
|
||||
The application should call \helprefn{DoLayout}{dolayout} to do the tree
|
||||
The application should call \helpref{wxTreeLayout::DoLayout}{wxtreelayoutdolayout} to do the tree
|
||||
layout. Depending on how the derived class has been defined, either
|
||||
\rtfsp\helprefn{wxTreeLayout::Draw}{draw} must be called (for example by the OnPaint member
|
||||
\rtfsp\helprefn{wxTreeLayout::Draw}{wxtreelayoutdraw} must be called (for example by the OnPaint member
|
||||
of a wxScrolledWindow) or the application-defined drawing code should be called
|
||||
as normal.
|
||||
|
||||
@@ -24,10 +24,29 @@ just need a way for wxTreeLayout to set the node image positions according to
|
||||
the layout algorithm, and the rest will be done by your own image drawing
|
||||
system.
|
||||
|
||||
The algorithm is due to Gabriel Robins \cite{robins87}, a linear-time
|
||||
algorithm originally implemented in LISP for AI applications.
|
||||
|
||||
The original algorithm has been modified so that both X and Y planes
|
||||
are calculated simultaneously, increasing efficiency slightly. The basic
|
||||
code is only a page or so long.
|
||||
|
||||
\helponly{Below is the example tree generated by the program test.cc.
|
||||
|
||||
\begin{figure}
|
||||
$$\image{11cm;0cm}{treetst.ps}$$
|
||||
\caption{Example tree}\label{exampletree}
|
||||
\end{figure}
|
||||
}
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
wxObject
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxLayoutTreeStored}{wxlayouttreestored}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxTreeLayout::wxTreeLayout}
|
||||
@@ -36,7 +55,7 @@ wxObject
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxTreeLayout::ActivateNode}\label{activatenode}
|
||||
\membersection{wxTreeLayout::ActivateNode}\label{wxtreelayoutactivatenode}
|
||||
|
||||
\func{void}{ActivateNode}{\param{long}{ id}, \param{bool }{active}}
|
||||
|
||||
@@ -49,13 +68,13 @@ Define this so wxTreeLayout can turn nodes on and off for drawing purposes
|
||||
|
||||
Private function for laying out a branch.
|
||||
|
||||
\membersection{wxTreeLayout::DoLayout}\label{dolayout}
|
||||
\membersection{wxTreeLayout::DoLayout}\label{wxtreelayoutdolayout}
|
||||
|
||||
\func{void}{DoLayout}{\param{wxDC\&}{ dc}, \param{long}{ topNode = -1}}
|
||||
|
||||
Calculates the layout for the tree, optionally specifying the top node.
|
||||
|
||||
\membersection{wxTreeLayout::Draw}\label{draw}
|
||||
\membersection{wxTreeLayout::Draw}\label{wxtreelayoutdraw}
|
||||
|
||||
\func{void}{Draw}{\param{wxDC\&}{ dc}}
|
||||
|
||||
@@ -86,14 +105,14 @@ Defined by wxTreeLayout to draw a node.
|
||||
|
||||
Defined by wxTreeLayout to draw the nodes.
|
||||
|
||||
\membersection{wxTreeLayout::GetChildren}\label{getchildren}
|
||||
\membersection{wxTreeLayout::GetChildren}\label{wxtreelayoutgetchildren}
|
||||
|
||||
\func{void}{GetChildren}{\param{long}{ id}, \param{wxList \&}{list}}
|
||||
|
||||
Must be defined to return the children of node {\it id} in the given list
|
||||
of integers.
|
||||
|
||||
\membersection{wxTreeLayout::GetNextNode}\label{getnextnode}
|
||||
\membersection{wxTreeLayout::GetNextNode}\label{wxtreelayoutgetnextnode}
|
||||
|
||||
\func{long}{GetNextNode}{\param{long}{ id}}
|
||||
|
||||
@@ -115,7 +134,7 @@ the drawing to wxTreeLayout).
|
||||
Can be defined to indicate a node's size, or left to wxTreeLayout to use the
|
||||
name as an indication of size.
|
||||
|
||||
\membersection{wxTreeLayout::GetNodeParent}\label{getnodeparent}
|
||||
\membersection{wxTreeLayout::GetNodeParent}\label{wxtreelayoutgetnodeparent}
|
||||
|
||||
\constfunc{long}{GetNodeParent}{\param{long}{ id}}
|
||||
|
||||
@@ -182,7 +201,7 @@ Gets the vertical spacing between nodes.
|
||||
Initializes wxTreeLayout. Call from application or overridden {\bf Initialize}
|
||||
or constructor.
|
||||
|
||||
\membersection{wxTreeLayout::NodeActive}\label{nodeactive}
|
||||
\membersection{wxTreeLayout::NodeActive}\label{wxtreelayoutnodeactive}
|
||||
|
||||
\func{bool}{NodeActive}{\param{long}{ id}}
|
||||
|
||||
@@ -217,7 +236,7 @@ may be necessary for your application.
|
||||
|
||||
Sets the tree orientation: TRUE means top-to-bottom, FALSE means left-to-right (the default).
|
||||
|
||||
\membersection{wxTreeLayout::SetTopNode}\label{settopnode}
|
||||
\membersection{wxTreeLayout::SetTopNode}\label{wxtreelayoutsettopnode}
|
||||
|
||||
\func{void}{SetTopNode}{\param{long}{ id}}
|
||||
|
||||
@@ -229,76 +248,80 @@ Call this to identify the top of the tree to wxTreeLayout.
|
||||
|
||||
Sets the horizontal and vertical spacing between nodes in the tree.
|
||||
|
||||
\membersection{wxTreeLayout::SetMargins}\label{setmargins}
|
||||
\membersection{wxTreeLayout::SetMargins}\label{wxtreelayoutsetmargins}
|
||||
|
||||
\func{void}{SetMargins}{\param{long}{ x}, \param{long}{ y}}
|
||||
|
||||
Sets the left and top margins of the whole tree.
|
||||
|
||||
\section{\class{wxStoredTree}}\label{wxstoredtree}
|
||||
\section{\class{wxLayoutTreeStored}}\label{wxlayouttreestored}
|
||||
|
||||
wxStoredTree provides storage for node labels, position and client data. It also provides hit-testing
|
||||
wxLayoutTreeStored provides storage for node labels, position and client data. It also provides hit-testing
|
||||
(which node a mouse event occurred on). It is usually a more convenient class to use than wxTreeLayout.
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
\helpref{wxTreeLayout}{wxtreelayout}
|
||||
\helpref{wxTreeLayout}{wxtreelayout}\\
|
||||
\helpref{wxObject}{wxobject}
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxLayoutTree}{wxlayouttree}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxStoredTree::wxStoredTree}
|
||||
\membersection{wxLayoutTreeStored::wxLayoutTreeStored}
|
||||
|
||||
\func{}{wxStoredTree}{\param{int }{noNodes = 200}}
|
||||
\func{}{wxLayoutTreeStored}{\param{int }{noNodes = 200}}
|
||||
|
||||
Constructor. Specify the maximum number of nodes to be allocated.
|
||||
|
||||
\membersection{wxStoredTree::AddChild}\label{wxstoredtreeaddchild}
|
||||
\membersection{wxLayoutTreeStored::AddChild}\label{wxlayouttreestoredaddchild}
|
||||
|
||||
\func{long}{AddChild}{\param{const wxString\&}{ name}, \param{const wxString\&}{ parent = ""}}
|
||||
|
||||
Adds a child with a given parent, returning the node id.
|
||||
|
||||
\membersection{wxStoredTree::GetClientData}\label{wxstoredtreegetclientdata}
|
||||
\membersection{wxLayoutTreeStored::GetClientData}\label{wxlayouttreestoredgetclientdata}
|
||||
|
||||
\constfunc{long}{GetClientData}{\param{long}{ id}}
|
||||
|
||||
Gets the client data for the given node.
|
||||
|
||||
\membersection{wxStoredTree::GetNode}\label{wxstoredtreegetnode}
|
||||
\membersection{wxLayoutTreeStored::GetNode}\label{wxlayouttreestoredgetnode}
|
||||
|
||||
\constfunc{wxStoredNode*}{GetNode}{\param{long}{ id}}
|
||||
|
||||
Returns the wxStoredNode object for the given node id.
|
||||
|
||||
\membersection{wxStoredTree::GetNodeCount}\label{wxstoredtreegetnodecount}
|
||||
\membersection{wxLayoutTreeStored::GetNodeCount}\label{wxlayouttreestoredgetnodecount}
|
||||
|
||||
\constfunc{int}{GetNodeCount}{\void}
|
||||
|
||||
Returns the current number of nodes.
|
||||
|
||||
\membersection{wxStoredTree::GetNumNodes}\label{wxstoredtreegetnumnodes}
|
||||
\membersection{wxLayoutTreeStored::GetNumNodes}\label{wxlayouttreestoredgetnumnodes}
|
||||
|
||||
\constfunc{int}{GetNumNodes}{\void}
|
||||
|
||||
Returns the maximum number of nodes.
|
||||
|
||||
\membersection{wxStoredTree::HitTest}\label{wxstoredtreehittest}
|
||||
\membersection{wxLayoutTreeStored::HitTest}\label{wxlayouttreestoredhittest}
|
||||
|
||||
\func{wxString}{HitTest}{\param{wxMouseEvent\&}{ event}, \param{wxDC\& }{dc}}
|
||||
|
||||
Returns a string with the node name corresponding to the position of the mouse event, or the empty string if no node
|
||||
was detected.
|
||||
|
||||
\membersection{wxStoredTree::NameToId}\label{wxstoredtreenametoid}
|
||||
\membersection{wxLayoutTreeStored::NameToId}\label{wxlayouttreestorednametoid}
|
||||
|
||||
\func{long}{NameToId}{\param{const wxString\&}{ name}}
|
||||
|
||||
Returns the id for the given node name, or -1 if there was no such node.
|
||||
|
||||
\membersection{wxStoredTree::SetClientData}\label{wxstoredtreesetclientdata}
|
||||
\membersection{wxLayoutTreeStored::SetClientData}\label{wxlayouttreestoredsetclientdata}
|
||||
|
||||
\func{void}{SetClientData}{\param{long}{ id}, \param{long}{ clientData}}
|
||||
|
||||
Sets client data for the given node.
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
@@ -3,11 +3,8 @@
|
||||
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/vidbase.h at 26/Feb/00 14:51:56
|
||||
%
|
||||
|
||||
|
||||
\section{\class{wxVideoBaseDriver}}\label{wxvideobasedriver}
|
||||
|
||||
|
||||
|
||||
Classes definition
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
[OPTIONS]
|
||||
BMROOT=d:\wx2\wxWind~1\docs/latex/wx ; Assume that bitmaps are where the source is
|
||||
BMROOT=d:\wx2\wxWindows\docs\latex\wx ; Assume that bitmaps are where the source is
|
||||
TITLE=wxWindows Manual
|
||||
CONTENTS=Contents
|
||||
COMPRESS=HIGH
|
||||
|
||||
@@ -0,0 +1,138 @@
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Name: treelay.h
|
||||
// Purpose: wxTreeLayout class
|
||||
// Author: Julian Smart
|
||||
// Modified by:
|
||||
// Created: 7/4/98
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) 1998 Julian Smart
|
||||
// Licence: wxWindows licence
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef _WX_TREELAY_H_
|
||||
#define _WX_TREELAY_H_
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma interface "wxtree.h"
|
||||
#endif
|
||||
|
||||
#include <wx/string.h>
|
||||
|
||||
class WXDLLEXPORT wxTreeLayout: public wxObject
|
||||
{
|
||||
DECLARE_ABSTRACT_CLASS(wxTreeLayout)
|
||||
|
||||
public:
|
||||
wxTreeLayout();
|
||||
|
||||
// Redefine these
|
||||
virtual void GetChildren(long id, wxList& list) = 0;
|
||||
virtual long GetNextNode(long id) = 0;
|
||||
virtual long GetNodeParent(long id) = 0;
|
||||
virtual long GetNodeX(long id) = 0;
|
||||
virtual long GetNodeY(long id) = 0;
|
||||
virtual void SetNodeX(long id, long x) = 0;
|
||||
virtual void SetNodeY(long id, long y) = 0;
|
||||
virtual void ActivateNode(long id, bool active) = 0;
|
||||
virtual bool NodeActive(long id) = 0;
|
||||
|
||||
// Optional redefinition
|
||||
void Initialize(void);
|
||||
inline virtual void SetNodeName(long id, const wxString& name) {}
|
||||
inline virtual wxString GetNodeName(long id) { return wxString(""); }
|
||||
virtual void GetNodeSize(long id, long *x, long *y, wxDC& dc);
|
||||
virtual void Draw(wxDC& dc);
|
||||
virtual void DrawNodes(wxDC& dc);
|
||||
virtual void DrawBranches(wxDC& dc);
|
||||
virtual void DrawNode(long id, wxDC& dc);
|
||||
virtual void DrawBranch(long from, long to, wxDC& dc);
|
||||
|
||||
// Don't redefine
|
||||
virtual void DoLayout(wxDC& dc, long topNode = -1);
|
||||
|
||||
// Accessors -- don't redefine
|
||||
inline void SetTopNode(long id) { m_parentNode = id; }
|
||||
inline long GetTopNode(void) const { return m_parentNode; }
|
||||
inline void SetSpacing(long x, long y) { m_xSpacing = x; m_ySpacing = y; }
|
||||
inline long GetXSpacing(void) const { return m_xSpacing; }
|
||||
inline long GetYSpacing(void) const { return m_ySpacing; }
|
||||
inline void SetMargins(long x, long y) { m_leftMargin = x; m_topMargin = y; }
|
||||
inline long GetTopMargin(void) const { return m_topMargin; }
|
||||
inline long GetLeftMargin(void) const { return m_leftMargin; }
|
||||
|
||||
inline bool GetOrientation(void) const { return m_orientation; }
|
||||
inline void SetOrientation(bool or) { m_orientation = or; }
|
||||
|
||||
private:
|
||||
void CalcLayout(long node_id, int level, wxDC& dc);
|
||||
|
||||
// Members
|
||||
|
||||
protected:
|
||||
long m_parentNode;
|
||||
long m_lastY;
|
||||
long m_lastX;
|
||||
long m_xSpacing;
|
||||
long m_ySpacing;
|
||||
long m_topMargin;
|
||||
long m_leftMargin;
|
||||
bool m_orientation; // TRUE for top-to-bottom, FALSE for left-to-right
|
||||
};
|
||||
|
||||
class WXDLLEXPORT wxStoredNode
|
||||
{
|
||||
public:
|
||||
wxString m_name;
|
||||
long m_x, m_y;
|
||||
long m_parentId;
|
||||
bool m_active;
|
||||
long m_clientData;
|
||||
};
|
||||
|
||||
/*
|
||||
* A version of wxTreeLayout with storage for nodes
|
||||
*/
|
||||
|
||||
class WXDLLEXPORT wxLayoutTreeStored: public wxTreeLayout
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxLayoutTreeStored)
|
||||
public:
|
||||
wxLayoutTreeStored(int noNodes = 200);
|
||||
~wxLayoutTreeStored(void);
|
||||
void Initialize(int n);
|
||||
|
||||
wxString HitTest(wxMouseEvent& event, wxDC& dc);
|
||||
wxStoredNode* GetNode(long id) const;
|
||||
inline int GetNumNodes() const { return m_maxNodes; };
|
||||
inline int GetNodeCount() const { return m_num; };
|
||||
|
||||
virtual void GetChildren(long id, wxList& list);
|
||||
virtual long GetNextNode(long id);
|
||||
virtual long GetNodeParent(long id);
|
||||
virtual long GetNodeX(long id);
|
||||
virtual long GetNodeY(long id);
|
||||
virtual void SetNodeX(long id, long x);
|
||||
virtual void SetNodeY(long id, long y);
|
||||
virtual void SetNodeName(long id, const wxString& name);
|
||||
virtual wxString GetNodeName(long id);
|
||||
virtual void ActivateNode(long id, bool active);
|
||||
virtual bool NodeActive(long id);
|
||||
virtual void SetClientData(long id, long clientData);
|
||||
virtual long GetClientData(long id) const;
|
||||
|
||||
virtual long AddChild(const wxString& name, const wxString& parent = "");
|
||||
virtual long NameToId(const wxString& name);
|
||||
|
||||
// Data members
|
||||
private:
|
||||
wxStoredNode* m_nodes;
|
||||
int m_num;
|
||||
int m_maxNodes;
|
||||
};
|
||||
|
||||
// For backward compatibility
|
||||
#define wxStoredTree wxLayoutTreeStored
|
||||
|
||||
#endif
|
||||
// _WX_TREELAY_H_
|
||||
|
||||
@@ -220,6 +220,9 @@
|
||||
// OpenGL canvas
|
||||
#define wxUSE_GLCANVAS 0
|
||||
|
||||
// wxTreeLayout class
|
||||
#define wxUSE_TREELAYOUT 1
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Postscript support settings
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
#ifndef _WX_TREELAY_H_BASE_
|
||||
#define _WX_TREELAY_H_BASE_
|
||||
|
||||
#include "wx/generic/treelay.h"
|
||||
|
||||
#endif
|
||||
// _WX_TREELAY_H_BASE_
|
||||
@@ -0,0 +1,21 @@
|
||||
#
|
||||
# File: makefile.unx
|
||||
# Author: Julian Smart
|
||||
# Created: 1998
|
||||
# Updated:
|
||||
# Copyright: (c) 1998 Julian Smart
|
||||
#
|
||||
# "%W% %G%"
|
||||
#
|
||||
# Makefile for test example (UNIX).
|
||||
|
||||
top_srcdir = @top_srcdir@/..
|
||||
top_builddir = ../..
|
||||
program_dir = samples/test
|
||||
|
||||
PROGRAM=test
|
||||
|
||||
OBJECTS=$(PROGRAM).o
|
||||
|
||||
include ../../src/makeprog.env
|
||||
|
||||
@@ -9,9 +9,7 @@
|
||||
|
||||
WXDIR = $(WXWIN)
|
||||
|
||||
TARGET=cube
|
||||
EXTRALIBS=$(WXDIR)\lib\glcanvas.lib
|
||||
EXTRACPPFLAGS=-I$(WXDIR)\utils\glcanvas\win
|
||||
TARGET=test
|
||||
OBJECTS = $(TARGET).obj
|
||||
|
||||
!include $(WXDIR)\src\makeprog.b32
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
WXDIR = $(WXWIN)
|
||||
|
||||
TARGET=minimal
|
||||
TARGET=test
|
||||
OBJECTS=$(TARGET).obj
|
||||
|
||||
!include $(WXDIR)\src\makeprog.bcc
|
||||
@@ -0,0 +1,17 @@
|
||||
#
|
||||
# File: makefile.dos
|
||||
# Author: Julian Smart
|
||||
# Created: 1998
|
||||
# Updated:
|
||||
#
|
||||
# Makefile : Builds 16-bit sample, VC++ 1.5
|
||||
# Use FINAL=1 argument to nmake to build final version with no debugging
|
||||
# info
|
||||
|
||||
WXDIR = $(WXWIN)
|
||||
|
||||
TARGET=test
|
||||
OBJECTS=$(TARGET).obj
|
||||
|
||||
!include $(WXDIR)\src\makeprog.msc
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
#
|
||||
# Makefile for wxWindows sample (Cygwin/Mingw32).
|
||||
|
||||
WXDIR = $(WXWIN)
|
||||
WXDIR = ../..
|
||||
|
||||
TARGET=test
|
||||
OBJECTS = $(TARGET).o wxtree.o
|
||||
OBJECTS = $(TARGET).o
|
||||
|
||||
include $(WXDIR)/src/makeprog.g95
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
#
|
||||
# File: Makefile for samples
|
||||
# Author: Robert Roebling
|
||||
# Created: 1999
|
||||
# Updated:
|
||||
# Copyright: (c) 1998 Robert Roebling
|
||||
#
|
||||
# This makefile requires a Unix version of wxWindows
|
||||
# to be installed on your system. This is most often
|
||||
# done typing "make install" when using the complete
|
||||
# sources of wxWindows or by installing the two
|
||||
# RPM packages wxGTK.XXX.rpm and wxGTK-devel.XXX.rpm
|
||||
# under Linux.
|
||||
#
|
||||
|
||||
CC = gcc
|
||||
|
||||
PROGRAM = test
|
||||
|
||||
OBJECTS = $(PROGRAM).o
|
||||
|
||||
# implementation
|
||||
|
||||
.SUFFIXES: .o .cpp
|
||||
|
||||
.cpp.o :
|
||||
$(CC) -c `wx-config --cflags` -o $@ $<
|
||||
|
||||
all: $(PROGRAM)
|
||||
|
||||
$(PROGRAM): $(OBJECTS)
|
||||
$(CC) -o $(PROGRAM) $(OBJECTS) `wx-config --libs`
|
||||
|
||||
clean:
|
||||
rm -f *.o $(PROGRAM)
|
||||
@@ -11,15 +11,8 @@
|
||||
# Set WXDIR for your system
|
||||
WXDIR = $(WXWIN)
|
||||
|
||||
!if "$(FINAL)" == "1"
|
||||
!else
|
||||
LIBEXT=_d
|
||||
!endif
|
||||
|
||||
PROGRAM=cube
|
||||
PROGRAM=test
|
||||
OBJECTS = $(PROGRAM).obj
|
||||
EXTRAINC=-I..\..\win
|
||||
EXTRALIBS=$(WXDIR)\lib\glcanvas$(LIBEXT).lib glu32.lib opengl32.lib
|
||||
|
||||
!include $(WXDIR)\src\makeprog.vc
|
||||
|
||||
@@ -7,10 +7,8 @@
|
||||
|
||||
WXDIR = $(%WXWIN)
|
||||
|
||||
PROGRAM = cube
|
||||
PROGRAM = test
|
||||
OBJECTS = $(PROGRAM).obj
|
||||
EXTRALIBS=$(WXDIR)\lib\glcanvas.lib
|
||||
EXTRACPPFLAGS=-I$(WXDIR)\utils\glcanvas\win
|
||||
|
||||
!include $(WXDIR)\src\makeprog.wat
|
||||
|
||||
|
Before Width: | Height: | Size: 766 B After Width: | Height: | Size: 766 B |
@@ -20,7 +20,8 @@
|
||||
#include <wx/wx.h>
|
||||
#endif
|
||||
|
||||
#include "wxtree.h"
|
||||
#include <wx/treelay.h>
|
||||
|
||||
#include "test.h"
|
||||
|
||||
wxStoredTree *myTree = NULL;
|
||||
@@ -0,0 +1,446 @@
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Name: treelay.h
|
||||
// Purpose: wxTreeLayout class
|
||||
// Author: Julian Smart
|
||||
// Modified by:
|
||||
// Created: 7/4/98
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) 1998 Julian Smart
|
||||
// Licence: wxWindows licence
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma implementation "wxtree.h"
|
||||
#endif
|
||||
|
||||
// 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
|
||||
|
||||
#if wxUSE_TREELAYOUT
|
||||
|
||||
#include <wx/treelay.h>
|
||||
|
||||
/*
|
||||
* Abstract tree
|
||||
*
|
||||
*/
|
||||
|
||||
IMPLEMENT_ABSTRACT_CLASS(wxTreeLayout, wxObject)
|
||||
|
||||
wxTreeLayout::wxTreeLayout()
|
||||
{
|
||||
m_xSpacing = 16;
|
||||
m_ySpacing = 20;
|
||||
m_topMargin = 5;
|
||||
m_leftMargin = 5;
|
||||
m_orientation = FALSE;
|
||||
m_parentNode = 0;
|
||||
}
|
||||
|
||||
void wxTreeLayout::DoLayout(wxDC& dc, long topId)
|
||||
{
|
||||
if (topId != -1)
|
||||
SetTopNode(topId);
|
||||
|
||||
long actualTopId = GetTopNode();
|
||||
long id = actualTopId;
|
||||
while (id != -1)
|
||||
{
|
||||
SetNodeX(id, 0);
|
||||
SetNodeY(id, 0);
|
||||
ActivateNode(id, FALSE);
|
||||
id = GetNextNode(id);
|
||||
}
|
||||
m_lastY = m_topMargin;
|
||||
m_lastX = m_leftMargin;
|
||||
CalcLayout(actualTopId, 0, dc);
|
||||
}
|
||||
|
||||
void wxTreeLayout::Draw(wxDC& dc)
|
||||
{
|
||||
dc.Clear();
|
||||
DrawBranches(dc);
|
||||
DrawNodes(dc);
|
||||
}
|
||||
|
||||
void wxTreeLayout::DrawNodes(wxDC& dc)
|
||||
{
|
||||
long id = GetTopNode();
|
||||
while (id != -1)
|
||||
{
|
||||
if (NodeActive(id))
|
||||
DrawNode(id, dc);
|
||||
id = GetNextNode(id);
|
||||
}
|
||||
}
|
||||
|
||||
void wxTreeLayout::DrawBranches(wxDC& dc)
|
||||
{
|
||||
long id = GetTopNode();
|
||||
while (id != -1)
|
||||
{
|
||||
if (GetNodeParent(id) > -1)
|
||||
{
|
||||
long parent = GetNodeParent(id);
|
||||
if (NodeActive(parent))
|
||||
DrawBranch(parent, id, dc);
|
||||
}
|
||||
id = GetNextNode(id);
|
||||
}
|
||||
}
|
||||
|
||||
void wxTreeLayout::DrawNode(long id, wxDC& dc)
|
||||
{
|
||||
char buf[80];
|
||||
wxString name(GetNodeName(id));
|
||||
if (name != "")
|
||||
sprintf(buf, "%s", (const char*) name);
|
||||
else
|
||||
sprintf(buf, "<unnamed>");
|
||||
|
||||
long x = 80;
|
||||
long y = 20;
|
||||
dc.GetTextExtent(buf, &x, &y);
|
||||
dc.DrawText(buf, GetNodeX(id), (long)(GetNodeY(id) - (y/2.0)));
|
||||
}
|
||||
|
||||
void wxTreeLayout::DrawBranch(long from, long to, wxDC& dc)
|
||||
{
|
||||
long w, h;
|
||||
GetNodeSize(from, &w, &h, dc);
|
||||
dc.DrawLine(GetNodeX(from)+w, GetNodeY(from),
|
||||
GetNodeX(to), GetNodeY(to));
|
||||
}
|
||||
|
||||
void wxTreeLayout::Initialize(void)
|
||||
{
|
||||
}
|
||||
|
||||
void wxTreeLayout::GetNodeSize(long id, long *x, long *y, wxDC& dc)
|
||||
{
|
||||
wxString name(GetNodeName(id));
|
||||
if (name != "")
|
||||
dc.GetTextExtent(name, x, y);
|
||||
else
|
||||
{
|
||||
*x = 70; *y = 20;
|
||||
}
|
||||
}
|
||||
|
||||
void wxTreeLayout::CalcLayout(long nodeId, int level, wxDC& dc)
|
||||
{
|
||||
wxList children;
|
||||
GetChildren(nodeId, children);
|
||||
int n = children.Number();
|
||||
|
||||
if (m_orientation == FALSE)
|
||||
{
|
||||
// Left to right
|
||||
// X Calculations
|
||||
if (level == 0)
|
||||
SetNodeX(nodeId, m_leftMargin);
|
||||
else
|
||||
{
|
||||
long x = 0;
|
||||
long y = 0;
|
||||
long parentId = GetNodeParent(nodeId);
|
||||
if (parentId != -1)
|
||||
GetNodeSize(parentId, &x, &y, dc);
|
||||
SetNodeX(nodeId, (long)(GetNodeX(parentId) + m_xSpacing + x));
|
||||
}
|
||||
|
||||
wxNode *node = children.First();
|
||||
while (node)
|
||||
{
|
||||
CalcLayout((long)node->Data(), level+1, dc);
|
||||
node = node->Next();
|
||||
}
|
||||
|
||||
// Y Calculations
|
||||
long averageY;
|
||||
ActivateNode(nodeId, TRUE);
|
||||
|
||||
if (n > 0)
|
||||
{
|
||||
averageY = 0;
|
||||
node = children.First();
|
||||
while (node)
|
||||
{
|
||||
averageY += GetNodeY((long)node->Data());
|
||||
node = node->Next();
|
||||
}
|
||||
averageY = averageY / n;
|
||||
SetNodeY(nodeId, averageY);
|
||||
}
|
||||
else
|
||||
{
|
||||
SetNodeY(nodeId, m_lastY);
|
||||
long x, y;
|
||||
GetNodeSize(nodeId, &x, &y, dc);
|
||||
|
||||
m_lastY = m_lastY + y + m_ySpacing;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Top to bottom
|
||||
|
||||
// Y Calculations
|
||||
if (level == 0)
|
||||
SetNodeY(nodeId, m_topMargin);
|
||||
else
|
||||
{
|
||||
long x = 0;
|
||||
long y = 0;
|
||||
long parentId = GetNodeParent(nodeId);
|
||||
if (parentId != -1)
|
||||
GetNodeSize(parentId, &x, &y, dc);
|
||||
SetNodeY(nodeId, (long)(GetNodeY(parentId) + m_ySpacing + y));
|
||||
}
|
||||
|
||||
wxNode *node = children.First();
|
||||
while (node)
|
||||
{
|
||||
CalcLayout((long)node->Data(), level+1, dc);
|
||||
node = node->Next();
|
||||
}
|
||||
|
||||
// X Calculations
|
||||
long averageX;
|
||||
ActivateNode(nodeId, TRUE);
|
||||
|
||||
if (n > 0)
|
||||
{
|
||||
averageX = 0;
|
||||
node = children.First();
|
||||
while (node)
|
||||
{
|
||||
averageX += GetNodeX((long)node->Data());
|
||||
node = node->Next();
|
||||
}
|
||||
averageX = averageX / n;
|
||||
SetNodeX(nodeId, averageX);
|
||||
}
|
||||
else
|
||||
{
|
||||
SetNodeX(nodeId, m_lastX);
|
||||
long x, y;
|
||||
GetNodeSize(nodeId, &x, &y, dc);
|
||||
|
||||
m_lastX = m_lastX + x + m_xSpacing;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Tree with storage
|
||||
*
|
||||
*/
|
||||
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxLayoutTreeStored, wxTreeLayout)
|
||||
|
||||
wxLayoutTreeStored::wxLayoutTreeStored(int n):wxTreeLayout()
|
||||
{
|
||||
m_nodes = NULL;
|
||||
m_maxNodes = 0;
|
||||
Initialize(n);
|
||||
}
|
||||
|
||||
wxLayoutTreeStored::~wxLayoutTreeStored(void)
|
||||
{
|
||||
if (m_nodes)
|
||||
delete[] m_nodes;
|
||||
}
|
||||
|
||||
void wxLayoutTreeStored::Initialize(int n)
|
||||
{
|
||||
m_maxNodes = n;
|
||||
wxTreeLayout::Initialize();
|
||||
if (m_nodes) delete[] m_nodes;
|
||||
m_nodes = new wxStoredNode[m_maxNodes];
|
||||
int i;
|
||||
for (i = 0; i < n; i++)
|
||||
{
|
||||
m_nodes[i].m_name = "";
|
||||
m_nodes[i].m_active = FALSE;
|
||||
m_nodes[i].m_parentId = -1;
|
||||
m_nodes[i].m_x = 0;
|
||||
m_nodes[i].m_y = 0;
|
||||
}
|
||||
m_num = 0;
|
||||
}
|
||||
|
||||
long wxLayoutTreeStored::AddChild(const wxString& name, const wxString& parent)
|
||||
{
|
||||
if (m_num < (m_maxNodes -1 ))
|
||||
{
|
||||
long i = -1;
|
||||
if (parent != "")
|
||||
i = NameToId(parent);
|
||||
else m_parentNode = m_num;
|
||||
|
||||
m_nodes[m_num].m_parentId = i;
|
||||
m_nodes[m_num].m_name = name;
|
||||
m_nodes[m_num].m_x = m_nodes[m_num].m_y = 0;
|
||||
m_nodes[m_num].m_clientData = 0;
|
||||
m_num ++;
|
||||
|
||||
return (m_num - 1);
|
||||
}
|
||||
else
|
||||
return -1;
|
||||
}
|
||||
|
||||
long wxLayoutTreeStored::NameToId(const wxString& name)
|
||||
{
|
||||
long i;
|
||||
for (i = 0; i < m_num; i++)
|
||||
if (name == m_nodes[i].m_name)
|
||||
return i;
|
||||
return -1;
|
||||
}
|
||||
|
||||
void wxLayoutTreeStored::GetChildren(long id, wxList& list)
|
||||
{
|
||||
long currentId = GetTopNode();
|
||||
while (currentId != -1)
|
||||
{
|
||||
if (id == GetNodeParent(currentId))
|
||||
list.Append((wxObject *)currentId);
|
||||
currentId = GetNextNode(currentId);
|
||||
}
|
||||
}
|
||||
|
||||
wxStoredNode* wxLayoutTreeStored::GetNode(long idx) const
|
||||
{
|
||||
wxASSERT(idx < m_num);
|
||||
|
||||
return &m_nodes[idx];
|
||||
};
|
||||
|
||||
long wxLayoutTreeStored::GetNodeX(long id)
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
return (long)m_nodes[id].m_x;
|
||||
}
|
||||
|
||||
long wxLayoutTreeStored::GetNodeY(long id)
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
return (long)m_nodes[id].m_y;
|
||||
}
|
||||
|
||||
void wxLayoutTreeStored::SetNodeX(long id, long x)
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
m_nodes[id].m_x = (int)x;
|
||||
}
|
||||
|
||||
void wxLayoutTreeStored::SetNodeY(long id, long y)
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
m_nodes[id].m_y = (int)y;
|
||||
}
|
||||
|
||||
void wxLayoutTreeStored::SetNodeName(long id, const wxString& name)
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
m_nodes[id].m_name = name;
|
||||
}
|
||||
|
||||
wxString wxLayoutTreeStored::GetNodeName(long id)
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
return m_nodes[id].m_name;
|
||||
}
|
||||
|
||||
long wxLayoutTreeStored::GetNodeParent(long id)
|
||||
{
|
||||
if (id != -1)
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
return m_nodes[id].m_parentId;
|
||||
}
|
||||
else
|
||||
return -1;
|
||||
}
|
||||
|
||||
long wxLayoutTreeStored::GetNextNode(long id)
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
if ((id != -1) && (id < (m_num - 1)))
|
||||
return id + 1;
|
||||
else
|
||||
return -1;
|
||||
}
|
||||
|
||||
void wxLayoutTreeStored::SetClientData(long id, long clientData)
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
m_nodes[id].m_clientData = clientData;
|
||||
}
|
||||
|
||||
long wxLayoutTreeStored::GetClientData(long id) const
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
return m_nodes[id].m_clientData;
|
||||
}
|
||||
|
||||
void wxLayoutTreeStored::ActivateNode(long id, bool active)
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
m_nodes[id].m_active = active;
|
||||
}
|
||||
|
||||
bool wxLayoutTreeStored::NodeActive(long id)
|
||||
{
|
||||
wxASSERT(id < m_num);
|
||||
|
||||
return m_nodes[id].m_active;
|
||||
}
|
||||
|
||||
wxString wxLayoutTreeStored::HitTest(wxMouseEvent& event, wxDC& dc)
|
||||
{
|
||||
wxPoint pt = event.GetPosition();
|
||||
wxCoord x = pt.x;
|
||||
wxCoord y = pt.y;
|
||||
|
||||
int i;
|
||||
for (i = 0; i < m_maxNodes; i++)
|
||||
{
|
||||
wxStoredNode* item = &m_nodes[i];
|
||||
|
||||
long width, height;
|
||||
dc.GetTextExtent(m_nodes[i].m_name, &width, &height);
|
||||
|
||||
if ( (x >= (m_nodes[i].m_x-10)) && (x < (m_nodes[i].m_x + width+10)) &&
|
||||
(y >= m_nodes[i].m_y-10) && (y < (m_nodes[i].m_y + height+10)) )
|
||||
{
|
||||
return m_nodes[i].m_name;
|
||||
}
|
||||
}
|
||||
|
||||
return wxString("");
|
||||
}
|
||||
|
||||
#endif
|
||||
// wxUSE_TREELAYOUT
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
|
||||
# This file was automatically generated by tmake at 15:17, 2000/02/27
|
||||
# This file was automatically generated by tmake at 12:24, 2000/02/28
|
||||
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE B32.T!
|
||||
|
||||
#
|
||||
@@ -98,6 +98,7 @@ GENERICOBJS= $(MSWDIR)\busyinfo.obj \
|
||||
$(MSWDIR)\tbarsmpl.obj \
|
||||
$(MSWDIR)\textdlgg.obj \
|
||||
$(MSWDIR)\tipdlg.obj \
|
||||
$(MSWDIR)\treelay.obj \
|
||||
$(MSWDIR)\wizard.obj
|
||||
|
||||
# Not needed:
|
||||
@@ -827,6 +828,8 @@ $(MSWDIR)\textdlgg.obj: $(GENDIR)\textdlgg.$(SRCSUFF)
|
||||
|
||||
$(MSWDIR)\tipdlg.obj: $(GENDIR)\tipdlg.$(SRCSUFF)
|
||||
|
||||
$(MSWDIR)\treelay.obj: $(GENDIR)\treelay.$(SRCSUFF)
|
||||
|
||||
$(MSWDIR)\wizard.obj: $(GENDIR)\wizard.$(SRCSUFF)
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
|
||||
# This file was automatically generated by tmake at 15:18, 2000/02/27
|
||||
# This file was automatically generated by tmake at 12:24, 2000/02/28
|
||||
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE BCC.T!
|
||||
|
||||
#
|
||||
@@ -99,6 +99,7 @@ GENERICOBJS= $(MSWDIR)\busyinfo.obj \
|
||||
$(MSWDIR)\textdlgg.obj \
|
||||
$(MSWDIR)\tipdlg.obj \
|
||||
$(MSWDIR)\treectrl.obj \
|
||||
$(MSWDIR)\treelay.obj \
|
||||
$(MSWDIR)\wizard.obj
|
||||
|
||||
COMMONOBJS = \
|
||||
@@ -692,6 +693,8 @@ $(MSWDIR)\tipdlg.obj: $(GENDIR)\tipdlg.$(SRCSUFF)
|
||||
|
||||
$(MSWDIR)\treectrl.obj: $(GENDIR)\treectrl.$(SRCSUFF)
|
||||
|
||||
$(MSWDIR)\treelay.obj: $(GENDIR)\treelay.$(SRCSUFF)
|
||||
|
||||
$(MSWDIR)\wizard.obj: $(GENDIR)\wizard.$(SRCSUFF)
|
||||
|
||||
|
||||
|
||||
@@ -84,6 +84,7 @@ GENERICOBJS= $(GENDIR)\busyinfo.obj \
|
||||
$(GENDIR)\textdlgg.obj \
|
||||
$(GENDIR)\tipdlg.obj \
|
||||
$(GENDIR)\treectrl.obj \
|
||||
$(GENDIR)\treelay.obj \
|
||||
$(GENDIR)\wizard.obj
|
||||
|
||||
# we can't have all objects in one list because the library becomes too big
|
||||
|
||||
@@ -89,6 +89,7 @@ GENERICOBJS = \
|
||||
$(GENDIR)/tbarsmpl.$(OBJSUFF) \
|
||||
$(GENDIR)/textdlgg.$(OBJSUFF) \
|
||||
$(GENDIR)/tipdlg.$(OBJSUFF) \
|
||||
$(GENDIR)/treelay.$(OBJSUFF) \
|
||||
$(GENDIR)/wizard.$(OBJSUFF)
|
||||
|
||||
COMMONOBJS = \
|
||||
|
||||
+2
-1
@@ -1,4 +1,4 @@
|
||||
# This file was automatically generated by tmake at 15:17, 2000/02/27
|
||||
# This file was automatically generated by tmake at 12:24, 2000/02/28
|
||||
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE VC.T!
|
||||
|
||||
# File: makefile.vc
|
||||
@@ -103,6 +103,7 @@ GENERICOBJS= ..\generic\$D\busyinfo.obj \
|
||||
..\generic\$D\tbarsmpl.obj \
|
||||
..\generic\$D\textdlgg.obj \
|
||||
..\generic\$D\tipdlg.obj \
|
||||
..\generic\$D\treelay.obj \
|
||||
..\generic\$D\wizard.obj
|
||||
|
||||
# These are generic things that don't need to be compiled on MSW,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/binb/wmake.exe
|
||||
|
||||
# This file was automatically generated by tmake at 15:18, 2000/02/27
|
||||
# This file was automatically generated by tmake at 12:25, 2000/02/28
|
||||
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE WAT.T!
|
||||
|
||||
#
|
||||
@@ -59,6 +59,7 @@ GENERICOBJS= busyinfo.obj &
|
||||
tbarsmpl.obj &
|
||||
textdlgg.obj &
|
||||
tipdlg.obj &
|
||||
treelay.obj &
|
||||
wizard.obj
|
||||
|
||||
# These are generic things that don't need to be compiled on MSW,
|
||||
@@ -998,6 +999,9 @@ textdlgg.obj: $(GENDIR)\textdlgg.cpp
|
||||
tipdlg.obj: $(GENDIR)\tipdlg.cpp
|
||||
*$(CCC) $(CPPFLAGS) $(IFLAGS) $<
|
||||
|
||||
treelay.obj: $(GENDIR)\treelay.cpp
|
||||
*$(CCC) $(CPPFLAGS) $(IFLAGS) $<
|
||||
|
||||
wizard.obj: $(GENDIR)\wizard.cpp
|
||||
*$(CCC) $(CPPFLAGS) $(IFLAGS) $<
|
||||
|
||||
|
||||
@@ -592,6 +592,10 @@ SOURCE=.\generic\tipdlg.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\generic\treelay.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\generic\wizard.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
|
||||
@@ -592,6 +592,14 @@ SOURCE=.\generic\textdlgg.cpp
|
||||
|
||||
SOURCE=.\generic\tipdlg.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\generic\treelay.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\generic\wizard.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "wxHTML Files"
|
||||
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
all:
|
||||
cd @GL_TOOLKIT_DIR@; make
|
||||
cd samples; make
|
||||
@@ -1,40 +0,0 @@
|
||||
docs/*.*
|
||||
win/*.cpp
|
||||
win/*.h
|
||||
win/make*.*
|
||||
gtk/*.cpp
|
||||
gtk/*.h
|
||||
gtk/make*.*
|
||||
motif/*.cpp
|
||||
motif/*.h
|
||||
motif/*.txt
|
||||
motif/make*.*
|
||||
samples/cube/*.cpp
|
||||
samples/cube/*.h
|
||||
samples/cube/*.rc
|
||||
samples/cube/*.ico
|
||||
samples/cube/*.xbm
|
||||
samples/cube/make*.*
|
||||
samples/cube/Makefile
|
||||
samples/isosurf/*.cpp
|
||||
samples/isosurf/*.h
|
||||
samples/isosurf/*.rc
|
||||
samples/isosurf/*.ico
|
||||
samples/isosurf/*.xbm
|
||||
samples/isosurf/*.dat
|
||||
samples/isosurf/*.dat.gz
|
||||
samples/isosurf/make*.*
|
||||
samples/isosurf/Makefile
|
||||
samples/penguin/*.cpp
|
||||
samples/penguin/*.c
|
||||
samples/penguin/*.h
|
||||
samples/penguin/*.rc
|
||||
samples/penguin/*.ico
|
||||
samples/penguin/*.xbm
|
||||
samples/penguin/*.xpm
|
||||
samples/penguin/make*.*
|
||||
samples/penguin/penguin.lwo
|
||||
samples/penguin/Makefile
|
||||
|
||||
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
@echo off
|
||||
rem Zip up an external source distribution of GLCanvas
|
||||
set src=%1
|
||||
set dest=%2
|
||||
if "%src" == "" set src=%WXWIN\utils\glcanvas
|
||||
if "%dest" == "" set dest=%WXWIN\utils\glcanvas\deliver
|
||||
echo About to archive an external GLCanvas distribution:
|
||||
echo From %src
|
||||
echo To %dest\glcanvas.zip
|
||||
echo CTRL-C if this is not correct.
|
||||
inkey /W10 `Press any key to continue...` %%input
|
||||
|
||||
erase %dest\glcanvas.zip
|
||||
cd %src
|
||||
|
||||
zip32 -@ %dest\glcanvas.zip < %src\distrib\glcanvas.rsp
|
||||
|
||||
echo GLCanvas archived.
|
||||
goto end
|
||||
|
||||
:usage
|
||||
echo GLCanvas distribution.
|
||||
echo Usage: zipsrc source destination
|
||||
|
||||
:end
|
||||
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
wxGLCanvas
|
||||
----------
|
||||
|
||||
No known issues, though probably palettes aren't correctly
|
||||
handled under Windows. They are ignored under GTK.
|
||||
@@ -1,3 +0,0 @@
|
||||
Linux
|
||||
linux-gnu
|
||||
linux
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user