Files correlati : Commento : Spostamento in libraries delle librerie esterne di Campo per una maggiore pulizia e organizzazione git-svn-id: svn://10.65.10.50/branches/R_10_00@24150 c028cbd2-c16b-5b4b-a496-9718f37d4682
108 lines
2.6 KiB
C++
108 lines
2.6 KiB
C++
/////////////////////////////////////////////////////////////////////////////
|
|
// Name: doc.h
|
|
// Purpose: Document classes
|
|
// Author: Julian Smart
|
|
// Modified by:
|
|
// Created: 04/01/98
|
|
// RCS-ID: $Id: doc.h 56679 2008-11-04 17:47:07Z VZ $
|
|
// Copyright: (c) Julian Smart
|
|
// Licence: wxWindows license
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef __DOCSAMPLEH__
|
|
#define __DOCSAMPLEH__
|
|
|
|
#include "wx/docview.h"
|
|
#include "wx/cmdproc.h"
|
|
|
|
// Plots a line from one point to the other
|
|
class DoodleLine: public wxObject
|
|
{
|
|
public:
|
|
wxInt32 x1;
|
|
wxInt32 y1;
|
|
wxInt32 x2;
|
|
wxInt32 y2;
|
|
};
|
|
|
|
// Contains a list of lines: represents a mouse-down doodle
|
|
class DoodleSegment: public wxObject
|
|
{
|
|
public:
|
|
wxList lines;
|
|
|
|
DoodleSegment(void){};
|
|
DoodleSegment(const DoodleSegment& seg);
|
|
~DoodleSegment(void);
|
|
|
|
void Draw(wxDC *dc);
|
|
|
|
#if wxUSE_STD_IOSTREAM
|
|
wxSTD ostream& SaveObject(wxSTD ostream& text_stream);
|
|
wxSTD istream& LoadObject(wxSTD istream& text_stream);
|
|
#else
|
|
wxOutputStream& SaveObject(wxOutputStream& stream);
|
|
wxInputStream& LoadObject(wxInputStream& stream);
|
|
#endif
|
|
};
|
|
|
|
class DrawingDocument: public wxDocument
|
|
{
|
|
DECLARE_DYNAMIC_CLASS(DrawingDocument)
|
|
private:
|
|
public:
|
|
wxList doodleSegments;
|
|
|
|
DrawingDocument(void){};
|
|
~DrawingDocument(void);
|
|
|
|
#if wxUSE_STD_IOSTREAM
|
|
wxSTD ostream& SaveObject(wxSTD ostream& text_stream);
|
|
wxSTD istream& LoadObject(wxSTD istream& text_stream);
|
|
#else
|
|
wxOutputStream& SaveObject(wxOutputStream& stream);
|
|
wxInputStream& LoadObject(wxInputStream& stream);
|
|
#endif
|
|
|
|
inline wxList& GetDoodleSegments(void) const { return (wxList&) doodleSegments; };
|
|
};
|
|
|
|
#define DOODLE_CUT 1
|
|
#define DOODLE_ADD 2
|
|
|
|
class DrawingCommand: public wxCommand
|
|
{
|
|
protected:
|
|
DoodleSegment *segment;
|
|
DrawingDocument *doc;
|
|
int cmd;
|
|
public:
|
|
DrawingCommand(const wxString& name, int cmd, DrawingDocument *ddoc, DoodleSegment *seg);
|
|
~DrawingCommand(void);
|
|
|
|
bool Do(void);
|
|
bool Undo(void);
|
|
};
|
|
|
|
class TextEditDocument: public wxDocument
|
|
{
|
|
DECLARE_DYNAMIC_CLASS(TextEditDocument)
|
|
private:
|
|
public:
|
|
/*
|
|
wxSTD ostream& SaveObject(wxSTD ostream& stream);
|
|
wxSTD istream& LoadObject(wxSTD istream& stream);
|
|
*/
|
|
virtual bool IsModified(void) const;
|
|
virtual void Modify(bool mod);
|
|
|
|
TextEditDocument(void) {}
|
|
virtual ~TextEditDocument(void) {}
|
|
protected:
|
|
virtual bool DoOpenDocument(const wxString& filename);
|
|
virtual bool DoSaveDocument(const wxString& filename);
|
|
};
|
|
|
|
|
|
#endif
|