# wxView Class Reference
[Document/View Framework]

`#include <wx/docview.h>`

Inheritance diagram for wxView:
[legend]

## Detailed Description

The view class can be used to model the viewing and editing component of an application's file-based data.

It is part of the document/view framework supported by wxWidgets, and cooperates with the wxDocument, wxDocTemplate and wxDocManager classes.

##

Library: wxCore

Category: Document/View Framework

See also:
  wxView overview, wxDocument, wxDocTemplate, wxDocManager

## Public Member Functions
| wxView ()
| Constructor.
virtual | ~wxView ()
| Destructor.
virtual void | Activate (bool activate)
| Call this from your view frame's wxDocChildFrame::OnActivate() member to tell the framework which view is currently active.
virtual bool | Close (bool deleteWindow=true)
| Closes the view by calling OnClose().
wxDocument * | GetDocument () const
| Gets a pointer to the document associated with the view.
wxDocManager * | GetDocumentManager () const
| Returns a pointer to the document manager instance associated with this view.
wxWindow * | GetFrame () const
| Gets the frame associated with the view (if any).
wxString | GetViewName () const
| Gets the name associated with the view (passed to the wxDocTemplate constructor).
virtual void | OnActivateView (bool activate, wxView *activeView, wxView *deactiveView)
| Called when a view is activated by means of Activate().
virtual void | OnChangeFilename ()
| Called when the filename has changed.
virtual bool | OnClose (bool deleteWindow)
| Implements closing behaviour.
virtual void | OnClosingDocument ()
| Override this to clean up the view when the document is being closed.
virtual bool | OnCreate (wxDocument *doc, long flags)
| wxDocManager or wxDocument creates a wxView via a wxDocTemplate.
virtual wxPrintout * | OnCreatePrintout ()
| If the printing framework is enabled in the library, this function returns a wxPrintout object for the purposes of printing.
virtual void | OnDraw (wxDC *dc)=0
| Override this function to render the view on the given device context.
virtual void | OnUpdate (wxView *sender, wxObject *hint=0)
| Called when the view should be updated.
virtual void | SetDocument (wxDocument *doc)
| Associates the given document with the view.
void | SetFrame (wxWindow *frame)
| Sets the frame associated with this view.
void | SetViewName (const wxString &name)
| Sets the view type name.
## Public Attributes
wxDocument * | m_viewDocument
| The document associated with this view.
wxFrame * | m_viewFrame
| Frame associated with the view, if any.
wxString | m_viewTypeName
| The view type name given to the wxDocTemplate constructor, copied to this variable when the view is created.

List of all members.

## Constructor & Destructor Documentation

wxView::wxView | ( |  | ) |

Constructor.

Define your own default constructor to initialize application-specific data.

virtual wxView::~wxView | ( |  | ) | `[virtual]`

Destructor.

Removes itself from the document's list of views.

## Member Function Documentation

virtual void wxView::Activate | ( | bool | activate | ) | `[virtual]`

Call this from your view frame's wxDocChildFrame::OnActivate() member to tell the framework which view is currently active.

If your windowing system doesn't call wxDocChildFrame::OnActivate(), you may need to call this function from any place where you know the view must be active, and the framework will need to get the current view.

The prepackaged view frame wxDocChildFrame calls Activate() from its wxDocChildFrame::OnActivate() member.

This function calls OnActivateView().

virtual bool wxView::Close | ( | bool | deleteWindow = `true` | ) | `[virtual]`

Closes the view by calling OnClose().

If deleteWindow is true, this function should delete the window associated with the view.

wxDocument* wxView::GetDocument | ( |  | ) | const

Gets a pointer to the document associated with the view.

wxDocManager* wxView::GetDocumentManager | ( |  | ) | const

Returns a pointer to the document manager instance associated with this view.

wxWindow* wxView::GetFrame | ( |  | ) | const

Gets the frame associated with the view (if any).

Note that this "frame" is not a wxFrame at all in the generic MDI implementation which uses notebook pages instead of frames and this is why this method returns a wxWindow and not a wxFrame.

wxString wxView::GetViewName | ( |  | ) | const

Gets the name associated with the view (passed to the wxDocTemplate constructor).

Not currently used by the framework.

virtual void wxView::OnActivateView | ( | bool | activate,
|  | wxView * | activeView,
|  | wxView * | deactiveView |
| ) |  |  | `[virtual]`

Called when a view is activated by means of Activate().

The default implementation does nothing.

virtual void wxView::OnChangeFilename | ( |  | ) | `[virtual]`

Called when the filename has changed.

The default implementation constructs a suitable title and sets the title of the view frame (if any).

virtual bool wxView::OnClose | ( | bool | deleteWindow | ) | `[virtual]`

Implements closing behaviour.

The default implementation calls wxDocument::Close() to close the associated document. Does not delete the view. The application may wish to do some cleaning up operations in this function, if a call to wxDocument::Close() succeeded. For example, if your views all share the same window, you need to disassociate the window from the view and perhaps clear the window. If deleteWindow is true, delete the frame associated with the view.

virtual void wxView::OnClosingDocument | ( |  | ) | `[virtual]`

Override this to clean up the view when the document is being closed.

virtual bool wxView::OnCreate | ( | wxDocument * | doc,
|  | long | flags |
| ) |  |  | `[virtual]`

wxDocManager or wxDocument creates a wxView via a wxDocTemplate.

Just after the wxDocTemplate creates the wxView, it calls OnCreate(). The wxView can create a wxDocChildFrame (or derived class) in its wxView::OnCreate() member function. This wxDocChildFrame provides user interface elements to view and/or edit the contents of the wxDocument.

By default, simply returns true. If the function returns false, the view will be deleted.

virtual wxPrintout* wxView::OnCreatePrintout | ( |  | ) | `[virtual]`

If the printing framework is enabled in the library, this function returns a wxPrintout object for the purposes of printing.

It should create a new object every time it is called; the framework will delete objects it creates.

By default, this function returns an instance of wxDocPrintout, which prints and previews one page by calling OnDraw().

Override to return an instance of a class other than wxDocPrintout.

virtual void wxView::OnDraw | ( | wxDC * | dc | ) | `[pure virtual]`

Override this function to render the view on the given device context.

virtual void wxView::OnUpdate | ( | wxView * | sender,
|  | wxObject * | hint = `0` |
| ) |  |  | `[virtual]`

Called when the view should be updated.

Parameters:

  | sender | A pointer to the wxView that sent the update request, or NULL if no single view requested the update (for instance, when the document is opened).
  | hint | This is unused currently, but may in future contain application-specific information for making updating more efficient.

virtual void wxView::SetDocument | ( | wxDocument * | doc | ) | `[virtual]`

Associates the given document with the view.

Normally called by the framework.

void wxView::SetFrame | ( | wxWindow * | frame | ) |

Sets the frame associated with this view.

The application should call this if possible, to tell the view about the frame.

See GetFrame() for the explanation about the mismatch between the "Frame" in the method name and the type of its parameter.

void wxView::SetViewName | ( | const wxString & | name | ) |

Sets the view type name.

Should only be called by the framework.

## Member Data Documentation

wxDocument* wxView::m_viewDocument

The document associated with this view.

There may be more than one view per document, but there can never be more than one document for one view.

wxFrame* wxView::m_viewFrame

Frame associated with the view, if any.

wxString wxView::m_viewTypeName

The view type name given to the wxDocTemplate constructor, copied to this variable when the view is created.

Not currently used by the framework.

|  | [ top ]