added wxUSE_PLOT

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@6028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2000-02-15 10:06:32 +00:00
parent 695237bccd
commit 9b33fe0222
5 changed files with 547 additions and 476 deletions

940
configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -714,6 +714,7 @@ if test $DEBUG_CONFIGURE = 1; then
DEFAULT_wxUSE_LISTBOX=no DEFAULT_wxUSE_LISTBOX=no
DEFAULT_wxUSE_LISTCTRL=no DEFAULT_wxUSE_LISTCTRL=no
DEFAULT_wxUSE_NOTEBOOK=no DEFAULT_wxUSE_NOTEBOOK=no
DEFAULT_wxUSE_PLOT=no
DEFAULT_wxUSE_RADIOBOX=no DEFAULT_wxUSE_RADIOBOX=no
DEFAULT_wxUSE_RADIOBTN=no DEFAULT_wxUSE_RADIOBTN=no
DEFAULT_wxUSE_SASH=no DEFAULT_wxUSE_SASH=no
@@ -830,6 +831,7 @@ else
DEFAULT_wxUSE_LISTBOX=yes DEFAULT_wxUSE_LISTBOX=yes
DEFAULT_wxUSE_LISTCTRL=yes DEFAULT_wxUSE_LISTCTRL=yes
DEFAULT_wxUSE_NOTEBOOK=yes DEFAULT_wxUSE_NOTEBOOK=yes
DEFAULT_wxUSE_PLOT=yes
DEFAULT_wxUSE_RADIOBOX=yes DEFAULT_wxUSE_RADIOBOX=yes
DEFAULT_wxUSE_RADIOBTN=yes DEFAULT_wxUSE_RADIOBTN=yes
DEFAULT_wxUSE_SASH=yes DEFAULT_wxUSE_SASH=yes
@@ -1147,6 +1149,7 @@ WX_ARG_ENABLE(tooltips, [ --enable-tooltips use wxToolTip class], wxUS
WX_ARG_ENABLE(splines, [ --enable-splines use spline drawing code], wxUSE_SPLINES) WX_ARG_ENABLE(splines, [ --enable-splines use spline drawing code], wxUSE_SPLINES)
WX_ARG_ENABLE(validators, [ --enable-validators use wxValidator and derived classes], wxUSE_VALIDATORS) WX_ARG_ENABLE(validators, [ --enable-validators use wxValidator and derived classes], wxUSE_VALIDATORS)
WX_ARG_ENABLE(busyinfo, [ --enable-busyinfo use wxBusyInfo], wxUSE_BUSYINFO) WX_ARG_ENABLE(busyinfo, [ --enable-busyinfo use wxBusyInfo], wxUSE_BUSYINFO)
WX_ARG_ENABLE(plot, [ --enable-plot use wxPlot], wxUSE_PLOT)
dnl --------------------------------------------------------------------------- dnl ---------------------------------------------------------------------------
dnl support for image formats that do not rely on external library dnl support for image formats that do not rely on external library
@@ -2628,6 +2631,10 @@ if test "$wxUSE_LONGLONG" = "yes"; then
AC_DEFINE(wxUSE_LONGLONG) AC_DEFINE(wxUSE_LONGLONG)
fi fi
if test "$wxUSE_PLOT" = "yes"; then
AC_DEFINE(wxUSE_PLOT)
fi
if test "$wxUSE_DIALUP_MANAGER" = "yes" ; then if test "$wxUSE_DIALUP_MANAGER" = "yes" ; then
AC_DEFINE(wxUSE_DIALUP_MANAGER) AC_DEFINE(wxUSE_DIALUP_MANAGER)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dialup" SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dialup"

View File

@@ -16,6 +16,10 @@
#pragma interface "plot.h" #pragma interface "plot.h"
#endif #endif
#include "wx/defs.h"
#if wxUSE_PLOT
#include "wx/scrolwin.h" #include "wx/scrolwin.h"
#include "wx/event.h" #include "wx/event.h"
@@ -51,22 +55,22 @@ class WXDLLEXPORT wxPlotEvent: public wxNotifyEvent
{ {
public: public:
wxPlotEvent( wxEventType commandType = wxEVT_NULL, int id = 0 ); wxPlotEvent( wxEventType commandType = wxEVT_NULL, int id = 0 );
wxPlotCurve *GetCurve() wxPlotCurve *GetCurve()
{ return m_curve; } { return m_curve; }
void SetCurve( wxPlotCurve *curve ) void SetCurve( wxPlotCurve *curve )
{ m_curve = curve; } { m_curve = curve; }
double GetZoom() double GetZoom()
{ return m_zoom; } { return m_zoom; }
void SetZoom( double zoom ) void SetZoom( double zoom )
{ m_zoom = zoom; } { m_zoom = zoom; }
wxInt32 GetPosition() wxInt32 GetPosition()
{ return m_position; } { return m_position; }
void SetPosition( wxInt32 pos ) void SetPosition( wxInt32 pos )
{ m_position = pos; } { m_position = pos; }
private: private:
wxPlotCurve *m_curve; wxPlotCurve *m_curve;
double m_zoom; double m_zoom;
@@ -81,7 +85,7 @@ class WXDLLEXPORT wxPlotCurve: public wxObject
{ {
public: public:
wxPlotCurve( int offsetY, double startY, double endY ); wxPlotCurve( int offsetY, double startY, double endY );
virtual wxInt32 GetStartX() = 0; virtual wxInt32 GetStartX() = 0;
virtual wxInt32 GetEndX() = 0; virtual wxInt32 GetEndX() = 0;
@@ -99,7 +103,7 @@ public:
{ m_offsetY = offsetY; } { m_offsetY = offsetY; }
int GetOffsetY() int GetOffsetY()
{ return m_offsetY; } { return m_offsetY; }
private: private:
int m_offsetY; int m_offsetY;
double m_startY; double m_startY;
@@ -117,15 +121,15 @@ class WXDLLEXPORT wxPlotArea: public wxWindow
public: public:
wxPlotArea() {} wxPlotArea() {}
wxPlotArea( wxPlotWindow *parent ); wxPlotArea( wxPlotWindow *parent );
void OnPaint( wxPaintEvent &event ); void OnPaint( wxPaintEvent &event );
void OnMouse( wxMouseEvent &event ); void OnMouse( wxMouseEvent &event );
void DrawCurve( wxDC *dc, wxPlotCurve *curve, int from = -1, int to = -1 ); void DrawCurve( wxDC *dc, wxPlotCurve *curve, int from = -1, int to = -1 );
void DeleteCurve( wxPlotCurve *curve, int from = -1, int to = -1 ); void DeleteCurve( wxPlotCurve *curve, int from = -1, int to = -1 );
virtual void ScrollWindow( int dx, int dy, const wxRect *rect ); virtual void ScrollWindow( int dx, int dy, const wxRect *rect );
private: private:
wxPlotWindow *m_owner; wxPlotWindow *m_owner;
bool m_zooming; bool m_zooming;
@@ -143,10 +147,10 @@ class WXDLLEXPORT wxPlotXAxisArea: public wxWindow
public: public:
wxPlotXAxisArea() {} wxPlotXAxisArea() {}
wxPlotXAxisArea( wxPlotWindow *parent ); wxPlotXAxisArea( wxPlotWindow *parent );
void OnPaint( wxPaintEvent &event ); void OnPaint( wxPaintEvent &event );
void OnMouse( wxMouseEvent &event ); void OnMouse( wxMouseEvent &event );
private: private:
wxPlotWindow *m_owner; wxPlotWindow *m_owner;
@@ -163,10 +167,10 @@ class WXDLLEXPORT wxPlotYAxisArea: public wxWindow
public: public:
wxPlotYAxisArea() {} wxPlotYAxisArea() {}
wxPlotYAxisArea( wxPlotWindow *parent ); wxPlotYAxisArea( wxPlotWindow *parent );
void OnPaint( wxPaintEvent &event ); void OnPaint( wxPaintEvent &event );
void OnMouse( wxMouseEvent &event ); void OnMouse( wxMouseEvent &event );
private: private:
wxPlotWindow *m_owner; wxPlotWindow *m_owner;
@@ -184,36 +188,36 @@ public:
wxPlotWindow() {} wxPlotWindow() {}
wxPlotWindow( wxWindow *parent, wxWindowID id, const wxPoint &pos, const wxSize &size, int flags = wxPLOT_DEFAULT ); wxPlotWindow( wxWindow *parent, wxWindowID id, const wxPoint &pos, const wxSize &size, int flags = wxPLOT_DEFAULT );
~wxPlotWindow(); ~wxPlotWindow();
// curve accessors // curve accessors
// --------------- // ---------------
void Add( wxPlotCurve *curve ); void Add( wxPlotCurve *curve );
size_t GetCount(); size_t GetCount();
wxPlotCurve *GetAt( size_t n ); wxPlotCurve *GetAt( size_t n );
void SetCurrent( wxPlotCurve* current ); void SetCurrent( wxPlotCurve* current );
wxPlotCurve *GetCurrent(); wxPlotCurve *GetCurrent();
void Delete( wxPlotCurve* curve ); void Delete( wxPlotCurve* curve );
// vertical representation // vertical representation
// ----------------------- // -----------------------
void Move( wxPlotCurve* curve, int pixels_up ); void Move( wxPlotCurve* curve, int pixels_up );
void Enlarge( wxPlotCurve *curve, double factor ); void Enlarge( wxPlotCurve *curve, double factor );
// horizontal representation // horizontal representation
// ------------------------- // -------------------------
void SetUnitsPerValue( double upv ); void SetUnitsPerValue( double upv );
double GetUnitsPerValue() double GetUnitsPerValue()
{ return m_xUnitsPerValue; } { return m_xUnitsPerValue; }
void SetZoom( double zoom ); void SetZoom( double zoom );
double GetZoom() double GetZoom()
{ return m_xZoom; } { return m_xZoom; }
// options // options
// ------- // -------
@@ -221,7 +225,7 @@ public:
{ m_scrollOnThumbRelease = scrollOnThumbRelease; } { m_scrollOnThumbRelease = scrollOnThumbRelease; }
bool GetScrollOnThumbRelease() bool GetScrollOnThumbRelease()
{ return m_scrollOnThumbRelease; } { return m_scrollOnThumbRelease; }
void SetEnlargeAroundWindowCentre( bool enlargeAroundWindowCentre = TRUE ) void SetEnlargeAroundWindowCentre( bool enlargeAroundWindowCentre = TRUE )
{ m_enlargeAroundWindowCentre = enlargeAroundWindowCentre; } { m_enlargeAroundWindowCentre = enlargeAroundWindowCentre; }
bool GetEnlargeAroundWindowCentre() bool GetEnlargeAroundWindowCentre()
@@ -232,37 +236,37 @@ public:
void OnMoveUp( wxCommandEvent& event ); void OnMoveUp( wxCommandEvent& event );
void OnMoveDown( wxCommandEvent& event ); void OnMoveDown( wxCommandEvent& event );
void OnEnlarge( wxCommandEvent& event ); void OnEnlarge( wxCommandEvent& event );
void OnShrink( wxCommandEvent& event ); void OnShrink( wxCommandEvent& event );
void OnZoomIn( wxCommandEvent& event ); void OnZoomIn( wxCommandEvent& event );
void OnZoomOut( wxCommandEvent& event ); void OnZoomOut( wxCommandEvent& event );
void OnScroll2( wxScrollWinEvent& event ); void OnScroll2( wxScrollWinEvent& event );
// utilities // utilities
// --------- // ---------
void RedrawEverything(); void RedrawEverything();
void RedrawXAxis(); void RedrawXAxis();
void RedrawYAxis(); void RedrawYAxis();
void ResetScrollbar(); void ResetScrollbar();
private: private:
friend wxPlotArea; friend wxPlotArea;
friend wxPlotXAxisArea; friend wxPlotXAxisArea;
friend wxPlotYAxisArea; friend wxPlotYAxisArea;
double m_xUnitsPerValue; double m_xUnitsPerValue;
double m_xZoom; double m_xZoom;
wxList m_curves; wxList m_curves;
wxPlotArea *m_area; wxPlotArea *m_area;
wxPlotXAxisArea *m_xaxis; wxPlotXAxisArea *m_xaxis;
wxPlotYAxisArea *m_yaxis; wxPlotYAxisArea *m_yaxis;
wxPlotCurve *m_current; wxPlotCurve *m_current;
bool m_scrollOnThumbRelease; bool m_scrollOnThumbRelease;
bool m_enlargeAroundWindowCentre; bool m_enlargeAroundWindowCentre;
@@ -296,5 +300,7 @@ private:
#define EVT_PLOT_BEGIN_TITLE_EDIT(id, fn) { wxEVT_PLOT_BEGIN_TITLE_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL }, #define EVT_PLOT_BEGIN_TITLE_EDIT(id, fn) { wxEVT_PLOT_BEGIN_TITLE_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL },
#define EVT_PLOT_END_TITLE_EDIT(id, fn) { wxEVT_PLOT_END_TITLE_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL }, #define EVT_PLOT_END_TITLE_EDIT(id, fn) { wxEVT_PLOT_END_TITLE_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL },
#endif // wxUSE_PLOT
#endif #endif
// _WX_PLOT_H_ // _WX_PLOT_H_

View File

@@ -257,6 +257,10 @@
* Use this control * Use this control
*/ */
#define wxUSE_NOTEBOOK 0 #define wxUSE_NOTEBOOK 0
/*
* Use wxPlot class
*/
#define wxUSE_PLOT 0
/* /*
* Use this control * Use this control
*/ */

View File

@@ -20,6 +20,8 @@
#pragma hdrstop #pragma hdrstop
#endif #endif
#if wxUSE_PLOT
#ifndef WX_PRECOMP #ifndef WX_PRECOMP
#include "wx/object.h" #include "wx/object.h"
#include "wx/font.h" #include "wx/font.h"
@@ -953,3 +955,5 @@ static wxBitmap *GetDownBitmap()
return s_bitmap; return s_bitmap;
} }
#endif // wxUSE_PLOT