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.

85 lines
1.8 KiB
C++

1 month ago
#include "stdafx.h"
#include "SigmaView.h"
#include "DrawBend.h"
#include "SectionDoc.h"
#include "Item.h"
#include "ItemSelect.h"
#include ".\itemdelete.h"
#include "ActionDeleteLayerItem.h"
/*
20200422
fengbowen
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
extern "C" __declspec(dllexport)
void Copy(CSigmaView * pVIew) {
if (pVIew == NULL)
return ;
CItem* pItem = pVIew->GetItem();
if (pItem == NULL)
return ;
CItemSelect* itemSelect = dynamic_cast<CItemSelect*>(pItem);
if (itemSelect == NULL)
return ;
itemSelect->Copy();
}
extern "C" __declspec(dllexport)
bool Paste(CSigmaView * pVIew,int nPasteMode) {
if (pVIew == NULL)
return false;
pVIew->SetItem(ITEM_SELECT); //<2F>޷<EFBFBD><DEB7><EFBFBD><EFBFBD>ĵ<EFBFBD>ճ<EFBFBD><D5B3><EFBFBD><EFBFBD>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD>:<3A><>ճ<EFBFBD><D5B3><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>,Item<65><6D><EFBFBD>Ǵ<EFBFBD><C7B4><EFBFBD>ѡ<EFBFBD><D1A1>״̬.<2E><><EFBFBD><EFBFBD><EFBFBD>޷<EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD>CItemSelect<63><74>paste<74><65><EFBFBD><EFBFBD>ճ<EFBFBD><D5B3>.
CItem* pItem = pVIew->GetItem();
if (pItem == NULL)
return false;
CItemSelect* itemSelect = dynamic_cast<CItemSelect*>(pItem);
if (itemSelect == NULL)
return false;
bool ret = itemSelect->Past(nPasteMode);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD>е<EFBFBD>Ԫ<EFBFBD><D4AA>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD> SigmaDoc <20>У<EFBFBD><D0A3>Ҽ<EFBFBD><D2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>༭ʱ<E0BCAD><CAB1><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA> SigmaDoc <20>л<EFBFBD>ȡͼԪ
pVIew->m_pDoc->ReplaceSelectionSet(itemSelect->m_selection);
return ret;
//itemSelect->Past(1);
}
extern "C" __declspec(dllexport)
void Cutx(CSigmaView * pVIew) {
if (pVIew == NULL)
return;
CItem* pItem = pVIew->GetItem();
if (pItem == NULL)
return;
CItemSelect* itemSelect = dynamic_cast<CItemSelect*>(pItem);
if (itemSelect == NULL)
return;
itemSelect->Copy();
//itemSelect->DeleteSelection();
itemSelect->DeleteSelection();
itemSelect->GetTracker().Clear();
}
extern "C" __declspec(dllexport)
void Sigma_Delete(CSigmaView * pVIew)
{
if (pVIew == NULL)
return;
CItem* pItem = pVIew->GetItem();
if (pItem == NULL)
return;
CItemSelect* itemSelect = dynamic_cast<CItemSelect*>(pItem);
if (itemSelect == NULL)
return;
itemSelect->DeleteSelection();
}