The DeleteSelectedPages event, occurs when the delete button is pressed after selecting pages from the thumbnail.
continue
Setting this parameter to False (-1 or 0) prevents the page of being deleted.
Public Class Form1
Friend WithEvents AxPDFCreactiveX1 As AxACPDFCREACTIVEX.AxPDFCreactiveX = New AxACPDFCREACTIVEX.AxPDFCreactiveX()
Friend WithEvents AxacThumbnailCtrl1 As AxACPDFCREXTLib.AxacThumbnailCtrl = New AxACPDFCREXTLib.AxacThumbnailCtrl()
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' Form1
Me.Size = New System.Drawing.Size(850, 550)
' AxPDFCreactiveX1
AxPDFCreactiveX1.Parent = Me
AxPDFCreactiveX1.Enabled = True
AxPDFCreactiveX1.Location = New System.Drawing.Point(30, 60)
AxPDFCreactiveX1.Name = "AxPDFCreactiveX1"
AxPDFCreactiveX1.Size = New System.Drawing.Size(470, 440)
AxPDFCreactiveX1.TabIndex = 0
' AxacBookmarkCtrl1
AxacThumbnailCtrl1.Parent = Me
AxacThumbnailCtrl1.Enabled = True
AxacThumbnailCtrl1.Location = New System.Drawing.Point(530, 60)
AxacThumbnailCtrl1.Name = "AxacBookmarkCtrl1"
AxacThumbnailCtrl1.Size = New System.Drawing.Size(270, 440)
AxacThumbnailCtrl1.TabIndex = 1
' Configuration
AxacThumbnailCtrl1.BackColor = Color.AliceBlue
' Initialize Bookmark
AxacThumbnailCtrl1.Initialize(AxPDFCreactiveX1.GetOcx())
' Constants for Activation codes
Const strLicenseTo As String = "Amyuni PDF Creator Evaluation"
Const strActivationCode As String = "07EFCDAB010001004282943F2AF19A88F332D9E781E40460727DF8A42847A1BDE06DB61C71E94E2D90424BF8762385335F9D6884E9FC"
' Set license key
AxPDFCreactiveX1.SetLicenseKey(strLicenseTo, strActivationCode)
' Create a 5 page with a text object And Page BookMark
Dim pageCount As Integer = 5
For i = 1 To pageCount
' set current page
AxPDFCreactiveX1.CurrentPage = i
' Create a Text in the current Page
AxPDFCreactiveX1.CreateObject(ACPDFCREACTIVEX.ObjectTypeConstants.acObjectTypeText, "Text" + i.ToString)
Dim oText As ACPDFCREACTIVEX.IacObject = AxPDFCreactiveX1.GetObjectByName("Text" + i.ToString)
oText("Left") = 1000
oText("Right") = 5000
oText("Top") = 0
oText("Bottom") = 4000
oText("BorderColor") = &HFF00FF
oText("BorderWidth") = ACPDFCREACTIVEX.acBorderWidth.acBorderWidthDouble
oText("Text") = "Amyuni Technologies " + i.ToString
' Add page
AxPDFCreactiveX1.AddPage(i)
Next
End Sub
Private Sub AxacThumbnailCtrl1_ThumbActivated(sender As Object, e As AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbActivatedEvent) Handles AxacThumbnailCtrl1.ThumbActivated
MessageBox.Show("The thumbnail was activated")
End Sub
Private Sub AxacThumbnailCtrl1_DeleteSelectedPages(sender As Object, e As AxACPDFCREXTLib._IacThumbnailCtrlEvents_DeleteSelectedPagesEvent) Handles AxacThumbnailCtrl1.DeleteSelectedPages
If MessageBox.Show("Are you sure?", "", MessageBoxButtons.YesNoCancel) = DialogResult.Yes Then
e.continue = 1
Else
e.continue = 0
End If
End Sub
Private Sub AxacThumbnailCtrl1_ThumbSelected(sender As Object, e As AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbSelectedEvent) Handles AxacThumbnailCtrl1.ThumbSelected
Dim pages As Integer() = AxacThumbnailCtrl1.SelectedPages
Dim display As String = String.Empty
For i = 0 To pages.Length - 1
If i = 0 Then
display = display + pages(i).ToString()
Else
display = display + "," + pages(i).ToString()
End If
Next
MessageBox.Show(display)
End Sub
Private Sub AxacThumbnailCtrl1_ContextSensitiveMenu(sender As Object, e As AxACPDFCREXTLib._IacThumbnailCtrlEvents_ContextSensitiveMenuEvent) Handles AxacThumbnailCtrl1.ContextSensitiveMenu
MessageBox.Show("The contextual menu was selected")
End Sub
Private Sub AxacThumbnailCtrl1_ShowMessage(sender As Object, e As AxACPDFCREXTLib._IacThumbnailCtrlEvents_ShowMessageEvent) Handles AxacThumbnailCtrl1.ShowMessage
Select Case e.message
Case ACPDFCREXTLib.acThumbnailCtrlShowMsgConsts.acThumbnailCtrlShowMsgConsts_NonCntForbidden
MessageBox.Show("QUESTION FROM HOST APP: Sorry, you may only move around a contiguous range of pages.")
e.showDefault = 0
Case ACPDFCREXTLib.acThumbnailCtrlShowMsgConsts.acThumbnailCtrlShowMsgConsts_DelAllForbidden
MessageBox.Show("QUESTION FROM HOST APP: Deleting all pages of the document is not allowed - at least one page must remain")
e.showDefault = 0
Case Else
e.showDefault = 1
End Select
End Sub
End Class
public partial class Form1 : Form
{
public AxACPDFCREACTIVEX.AxPDFCreactiveX axPDFCreactiveX1 = new AxACPDFCREACTIVEX.AxPDFCreactiveX();
public AxACPDFCREXTLib.AxacThumbnailCtrl AxacThumbnailCtrl1 = new AxACPDFCREXTLib.AxacThumbnailCtrl();
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// Form1
this.Size = new System.Drawing.Size(850, 550);
// axPDFCreactiveX1
axPDFCreactiveX1.Parent = this;
axPDFCreactiveX1.Enabled = true;
axPDFCreactiveX1.Location = new System.Drawing.Point(30, 60);
axPDFCreactiveX1.Name = "axPDFCreactiveX1";
axPDFCreactiveX1.Size = new System.Drawing.Size(470, 440);
axPDFCreactiveX1.TabIndex = 0;
// axacBookmarkCtrl1
AxacThumbnailCtrl1.Parent = this;
AxacThumbnailCtrl1.Enabled = true;
AxacThumbnailCtrl1.Location = new System.Drawing.Point(530, 60);
AxacThumbnailCtrl1.Name = "axacBookmarkCtrl1";
AxacThumbnailCtrl1.Size = new System.Drawing.Size(270, 440);
AxacThumbnailCtrl1.TabIndex = 1;
// events definition
AxacThumbnailCtrl1.ThumbActivated += new AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbActivatedEventHandler(AxacThumbnailCtrl1_ThumbActivated);
AxacThumbnailCtrl1.DeleteSelectedPages += new AxACPDFCREXTLib._IacThumbnailCtrlEvents_DeleteSelectedPagesEventHandler(AxacThumbnailCtrl1_DeleteSelectedPages);
AxacThumbnailCtrl1.ThumbSelected += new AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbSelectedEventHandler(AxacThumbnailCtrl1_ThumbSelected);
AxacThumbnailCtrl1.ContextSensitiveMenu += new AxACPDFCREXTLib._IacThumbnailCtrlEvents_ContextSensitiveMenuEventHandler(this.AxacThumbnailCtrl1_ContextSensitiveMenu);
AxacThumbnailCtrl1.ShowMessage += new AxACPDFCREXTLib._IacThumbnailCtrlEvents_ShowMessageEventHandler(AxacThumbnailCtrl1_ShowMessage);
// Initialize Bookmark
AxacThumbnailCtrl1.Initialize(axPDFCreactiveX1.GetOcx());
// Configuration
AxacThumbnailCtrl1.BackColor = Color.AliceBlue;
// Constants for Activation codes
const string strLicenseTo = "Amyuni PDF Creator Evaluation";
const string strActivationCode = "07EFCDAB010001004282943F2AF19A88F332D9E781E40460727DF8A42847A1BDE06DB61C71E94E2D90424BF8762385335F9D6884E9FC";
// Initializing PDFCreativeX Object
ACPDFCREACTIVEX.PDFCreactiveX pdf = new ACPDFCREACTIVEX.PDFCreactiveX();
// Set license key
axPDFCreactiveX1.SetLicenseKey(strLicenseTo, strActivationCode);
// Create a 5 page with a text object and Page BookMark
int pageCount = 5;
for (int i = 1; i <= pageCount; i++)
{
// Set the current page
axPDFCreactiveX1.CurrentPage = i;
// Create a Text in the current Page
axPDFCreactiveX1.CreateObject(ACPDFCREACTIVEX.ObjectTypeConstants.acObjectTypeText, "Text" + i.ToString());
ACPDFCREACTIVEX.IacObject oText = axPDFCreactiveX1.GetObjectByName("Text" + i.ToString());
oText["Left"] = 1000;
oText["Right"] = 5000;
oText["Top"] = 0;
oText["Bottom"] = 4000;
oText["BorderColor"] = 0xFF00FF;
oText["BorderWidth"] = ACPDFCREACTIVEX.acBorderWidth.acBorderWidthDouble;
oText["Text"] = "Amyuni Technologies " + i.ToString();
// Add page
axPDFCreactiveX1.AddPage(i);
}
}
private void AxacThumbnailCtrl1_ThumbActivated(object sender, AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbActivatedEvent e)
{
MessageBox.Show("The thumbnail was activated");
}
private void AxacThumbnailCtrl1_DeleteSelectedPages(object sender, AxACPDFCREXTLib._IacThumbnailCtrlEvents_DeleteSelectedPagesEvent e)
{
if (MessageBox.Show("Are you sure?", "", MessageBoxButtons.YesNoCancel) == DialogResult.Yes)
{
e.@continue = 1;
}
else
{
e.@continue = 0;
}
}
private void AxacThumbnailCtrl1_ThumbSelected(object sender, AxACPDFCREXTLib._IacThumbnailCtrlEvents_ThumbSelectedEvent e)
{
int[] pages = (int[])AxacThumbnailCtrl1.SelectedPages;
string display = String.Empty;
for (int i = 0; i < pages.Length; i++)
{
if (i == 0)
{
display = display + pages[i].ToString();
}
else
{
display = display + "," + pages[i].ToString();
}
}
MessageBox.Show(display);
}
private void AxacThumbnailCtrl1_ContextSensitiveMenu(object sender, AxACPDFCREXTLib._IacThumbnailCtrlEvents_ContextSensitiveMenuEvent e)
{
MessageBox.Show("The contextual menu was selected");
}
private void AxacThumbnailCtrl1_ShowMessage(object sender, AxACPDFCREXTLib._IacThumbnailCtrlEvents_ShowMessageEvent e)
{
switch (e.message)
{
case ACPDFCREXTLib.acThumbnailCtrlShowMsgConsts.acThumbnailCtrlShowMsgConsts_NonCntForbidden:
MessageBox.Show("QUESTION FROM HOST APP: Sorry, you may only move around a contiguous range of pages.");
e.showDefault = 0;
break;
case ACPDFCREXTLib.acThumbnailCtrlShowMsgConsts.acThumbnailCtrlShowMsgConsts_DelAllForbidden:
MessageBox.Show("QUESTION FROM HOST APP: Deleting all pages of the document is not allowed - at least one page must remain");
e.showDefault = 0;
break;
default:
e.showDefault = 1;
break;
}
}
}
void CThumbnails_CppDlg::OnBnClickedOk()
{
IPDFCreactiveXPtr m_PDF;
IacThumbnailCtrlPtr m_THUMB;
m_PDF = GetDlgItem(IDC_PDFCREACTIVEX1)->GetControlUnknown();
m_THUMB = GetDlgItem(IDC_ACTHUMBNAILCTRL1)->GetControlUnknown();
// Initialize Bookmark
m_THUMB->Initialize(m_PDF);
// Configuration
m_THUMB->BackColor = 0xF0F8FF;
// Constants for Activation codes
const bstr_t strLicenseTo = "Amyuni PDF Creator Evaluation";
const bstr_t strActivationCode = "07EFCDAB010001004282943F2AF19A88F332D9E781E40460727DF8A42847A1BDE06DB61C71E94E2D90424BF8762385335F9D6884E9FC";
// Set license key
m_pdf->SetLicenseKey(strLicenseTo, strActivationCode);
// Create a 5 page with a text object and Page BookMark
int pageCount = 5;
for (int i = 1; i <= pageCount; i++)
{
// Set the current page
m_pdf->CurrentPage = i;
// Set-up variables for attributes
_variant_t varAttribute;
varAttribute.vt = VT_I4; // integers
// Create a Text in the current Page
m_pdf->CreateObject(acObjectTypeText, "Text" + bstr_t(i));
IacObjectPtr oText = m_pdf->GetObjectByName("Text" + bstr_t(i));
oText->Attribute["Left"] = 1000;
oText->Attribute["Right"] = 5000;
oText->Attribute["Top"] = 0;
oText->Attribute["Bottom"] = 4000;
varAttribute.lVal = 0xFF00FF;
oText->Attribute["BorderColor"] = varAttribute;
varAttribute.lVal = acBorderWidthDouble;
oText->Attribute["BorderWidth"] = varAttribute;
oText->Attribute["Text"] = "Amyuni Technologies" + bstr_t(i);
// Add page
m_pdf->AddPage(i);
}
}
BEGIN_EVENTSINK_MAP(CThumbnails_CppDlg, CDialogEx)
ON_EVENT(CThumbnails_CppDlg, IDC_ACTHUMBNAILCTRL1, 1, CThumbnails_CppDlg::ThumbActivatedActhumbnailctrl1, VTS_I4 VTS_PI4)
ON_EVENT(CThumbnails_CppDlg, IDC_ACTHUMBNAILCTRL1, 2, CThumbnails_CppDlg::DeleteSelectedPagesActhumbnailctrl1, VTS_PI4)
ON_EVENT(CThumbnails_CppDlg, IDC_ACTHUMBNAILCTRL1, 3, CThumbnails_CppDlg::ThumbSelectedActhumbnailctrl1, VTS_I4)
ON_EVENT(CThumbnails_CppDlg, IDC_ACTHUMBNAILCTRL1, 6, CThumbnails_CppDlg::ContextSensitiveMenuActhumbnailctrl1, VTS_I4 VTS_I4 VTS_PI4)
ON_EVENT(CThumbnails_CppDlg, IDC_ACTHUMBNAILCTRL1, 4, CThumbnails_CppDlg::ShowMessageActhumbnailctrl1, VTS_I4 VTS_PI4)
END_EVENTSINK_MAP()
void CThumbnails_CppDlg::ThumbActivatedActhumbnailctrl1(long page, long* Continue)
{
MessageBox(_T("The thumbnail was activated"), _T(""), MB_OK);
}
void CThumbnails_CppDlg::DeleteSelectedPagesActhumbnailctrl1(long* Continue)
{
if (MessageBox(_T("Are you sure?"), _T(""), MB_YESNO) == IDYES)
{
*Continue = 1l;
}
else
{
*Continue = 0l;
}
}
void CThumbnails_CppDlg::ThumbSelectedActhumbnailctrl1(long page)
{
MessageBox(bstr_t(page), _T(""), MB_OK);
}
void CThumbnails_CppDlg::ContextSensitiveMenuActhumbnailctrl1(long xPos, long yPos, long* Continue)
{
MessageBox(_T("The contextual menu was selected"), _T(""), MB_OK);
}
void CThumbnails_CppDlg::ShowMessageActhumbnailctrl1(long message, long* ShowDefault)
{
switch (message)
{
case acThumbnailCtrlShowMsgConsts_NonCntForbidden:
MessageBox(_T("QUESTION FROM HOST APP: Sorry, you may only move around a contiguous range of pages."), _T(""), MB_OK);
*ShowDefault = 0l;
break;
case acThumbnailCtrlShowMsgConsts_DelAllForbidden:
MessageBox(_T("QUESTION FROM HOST APP: Deleting all pages of the document is not allowed - at least one page must remain"), _T(""), MB_OK);
*ShowDefault = 0l;
break;
default:
*ShowDefault = 1l;
break;
}
}