You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

117 lines
3.0 KiB
C

1 month ago
#pragma once
#include "item.h"
#include "SigmaDoc.h"
#include "WellPoleLib/NGraphExtend.h"
// WellPoleDoc 文档
typedef struct _createNewWellStruct
{
CString strWellName;
double ratio;
double top;
double bottom;
CString strWellTemplateFilePath;
} CREATENEWWELLSTRUCT;
class CWellPole;
class CWellPoleDoc : public CSigmaDoc // CDrawDoc
{
public:
CWellPoleDoc();
virtual ~CWellPoleDoc();
public:
virtual BOOL OpenFile(LPCTSTR lpszFileName, BOOL bMergeFile);
1 month ago
virtual BOOL SaveFile(LPCTSTR lpszPathName);
1 month ago
public:
//virtual BOOL SetDefaultCursor(void);
virtual CItem* FindItem(int nType);
//BOOL Edit(POSITION pos);
//virtual void Invalidate(void);
//virtual void Invalidate(POSITION pos) { CDrawDoc::Invalidate(pos); }
//virtual void Invalidate(LPRECT lpRect) { CDrawDoc::Invalidate(lpRect); }
//virtual void Invalidate(COne* pOne) { CDrawDoc::Invalidate(pOne); }
//void InvalidateDelete(CPositionList& list);
//void InvalidateEagleEye(void);
//CItem* GetOtherItem(void);
//int GetOtherItemType(void);
//void SetOtherItem(CItem* pItem);
//void DeleteOtherItem(void);
//void InitDocGrid(CXTPPropertyGrid& grid);
//void SetSelection(CPositionList& list);
//void SetSelection(POSITION pos);
POSITION AddElement(COne* pOne);
virtual void OnDraw(CXyDC& dc);
public:
//virtual CXy* GetDraw(void);
CWellPole* GetWellPole();
COne* GetWellPoleOne();
CItemView* GetItemView() { return m_pItemView.get(); }
protected:
// virtual void DocInit(void); //建立m_pDraw, m_pItemView、m_pItemPrint的对象生成
//virtual COleServerItem* OnGetEmbeddedItem();
public:
virtual void Serialize(CArchive& ar);
int GetNodeWidth(void);
virtual CItemSelect* GetSelectItem(void);
void RemoveAt(COne* pOne);
CSize GetDocSize(void);
//BOOL IsMoveSelect(void);
//virtual CSize GetHandleSize(void);
//CRect GetHandleRect(LPPOINT lpPoint);
//BOOL IsItemEnable(int type);
//void UpdatePropertyGridContent(CItem* pItem);
//void UpdateSelection(void);
//void ModifiedMark(CXy* pXy);
//virtual BOOL IsModifiedMarkState(void);
BOOL GetElementRect(POSITION pos, CRect8& range);
//virtual void DrawItem(CXyDC& dc, int nModeX = -1, int nModeY = -1);
//CActionItem* m_pLastAction;
//virtual void EnableDefaultTool(void);
//void EnableToolSelection(void);
//void EnableArrowTool(void);
//BOOL OnGridItemChangeValue(CXTPPropertyGridItem* pItem);
void SetActionItem(CActionItem* pAction, bool bDo = true);
void NormalEXTLogFont(GDFLOGFONTEXT& font);
CWellPole* CreateNewWell(CREATENEWWELLSTRUCT wellStruct);
virtual BOOL GetDrawRange(CRect8& rect); //给缩放按钮功能提供图的范围
virtual void ClearSelection(void);
CREATENEWWELLSTRUCT m_newWellStruct;
CWellPole* CreateNewWell( LPCTSTR wellName, double top, double bottom, double ratio, LPCTSTR wellTemplateFile);
1 month ago
virtual int Undo();
virtual int Redo();
static CXy* c_xy; //用来读取井文件,获得井内信息
static CWellPole* c_well;
1 month ago
1 month ago
CActionItem* m_pLastAction;
1 month ago
};