|
|
|
|
|
#pragma once
|
|
|
|
|
|
#include "SigmaDoc.h"
|
|
|
|
|
|
|
|
|
|
|
|
#pragma pack(1)
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>λ ʵ<>ʳ<EFBFBD><CAB3><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>λ<EFBFBD><CEBB> xyz
|
|
|
|
|
|
struct ElementInfo
|
|
|
|
|
|
{
|
|
|
|
|
|
wchar_t * name; // [50];
|
|
|
|
|
|
int lenOfName;
|
|
|
|
|
|
int elementType;
|
|
|
|
|
|
wchar_t * layerName; //[50];
|
|
|
|
|
|
int lenOfLayerName;
|
|
|
|
|
|
wchar_t * markName;// [50];
|
|
|
|
|
|
int lenOfMarkName;
|
|
|
|
|
|
double length;
|
|
|
|
|
|
double area;
|
|
|
|
|
|
double azimuth; //<2F><>λ<EFBFBD><CEBB>
|
|
|
|
|
|
double x;
|
|
|
|
|
|
double y;
|
|
|
|
|
|
double z;
|
|
|
|
|
|
};
|
|
|
|
|
|
#pragma pack()
|
|
|
|
|
|
|
|
|
|
|
|
class SelectionDrawer;
|
|
|
|
|
|
//û<>б<EFBFBD>Ҫ<EFBFBD>̳<EFBFBD>CItem
|
|
|
|
|
|
class CFindReplacement
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CFindReplacement(CSigmaDoc * ppDoc);
|
|
|
|
|
|
virtual ~CFindReplacement(void);
|
|
|
|
|
|
|
|
|
|
|
|
void Start();
|
|
|
|
|
|
void FindAll(CString strFindWhat, BOOL bMatch, BOOL bCapitalLower);
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>滻ͼԪ<CDBC><D4AA><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
int ReplaceAll(CString strOld, CString strNew, BOOL bMatch, BOOL bCapitalLower);
|
|
|
|
|
|
//0--<2D>ҵ<EFBFBD><D2B5><EFBFBD> 1--<2D><>һ<EFBFBD>β<EFBFBD><CEB2><EFBFBD> <20><>û<EFBFBD>ҵ<EFBFBD> 2--<2D>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
int FindNext(CString strFindWhat, BOOL bMath, BOOL bCapitalLower
|
|
|
|
|
|
, int elementType=0, BOOL onlyEditable=true);
|
|
|
|
|
|
BOOL Replace(CString strOld, CString strNew, BOOL bMatch, BOOL bCapitalLower);
|
|
|
|
|
|
//<2F><><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>ͼԪ<CDBC>ĸ<EFBFBD><C4B8><EFBFBD>
|
|
|
|
|
|
int GetCountOfElement();
|
|
|
|
|
|
void Draw(CDC * pCDC);
|
|
|
|
|
|
BOOL GetElement(int id, ElementInfo * eleInfoOut);
|
|
|
|
|
|
POSITION GetCurrentPostion()
|
|
|
|
|
|
{
|
|
|
|
|
|
return m_posCurrent;
|
|
|
|
|
|
}
|
|
|
|
|
|
//true-<2D>滻<EFBFBD>ɹ<EFBFBD> false-<2D>滻ʧ<E6BBBB><CAA7>
|
|
|
|
|
|
protected:
|
|
|
|
|
|
void ExtendOne(POSITION pos);
|
|
|
|
|
|
BOOL FindNextOnly(CString strFindWhat, int elementType = 0, BOOL onlyEditable = true);
|
|
|
|
|
|
BOOL Replace(POSITION pos, CString strOld, CString strNew, void* pActionList);
|
|
|
|
|
|
protected:
|
|
|
|
|
|
CSigmaDoc * m_pDoc;
|
|
|
|
|
|
SelectionDrawer * m_selectionDrawer;
|
|
|
|
|
|
POSITION m_posCurrent;
|
|
|
|
|
|
//POSITION m_posFind;
|
|
|
|
|
|
BOOL m_bAddInResultList;
|
|
|
|
|
|
BOOL m_bMatch; //<2F>Ƿ<EFBFBD>ȫ<EFBFBD><C8AB>ƥ<EFBFBD><C6A5>
|
|
|
|
|
|
BOOL m_bCapitalLower; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ִ<EFBFBD>Сд
|
|
|
|
|
|
BOOL m_numberFound;
|
|
|
|
|
|
CPositionList m_findResult; //<2F><><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>ȫ<EFBFBD><C8AB>
|
|
|
|
|
|
};
|