Imports System.Collections.Generic
Imports System.ComponentModel
Imports System.Data
Imports System.Drawing
Imports System.Linq
Imports System.Text
Imports System.Threading.Tasks
Imports System.Windows.Forms
Imports System.IO
Imports ColorCode
Imports SelectPdf

Namespace SelectPdf.Samples
    Partial Public Class PdfMerge
        Inherits Form

        Private file1 As String = AppDomain.CurrentDomain.BaseDirectory + "/../../files/doc1.pdf"
        Private file2 As String = AppDomain.CurrentDomain.BaseDirectory + "/../../files/doc2.pdf"

        Private Sub BtnCreatePdf_Click(sender As Object, e As EventArgs) _
            Handles BtnCreatePdf.Click
            Cursor = Cursors.WaitCursor
            Dim file As String = "Document.pdf"

            Try
                ' load the 2 pdf documents
                Dim doc1 As New PdfDocument(file1)
                Dim doc2 As New PdfDocument(file2)

                ' create a new pdf document
                Dim doc As New PdfDocument()

                ' add the pages of those 2 documents to the new document
                doc.Append(doc1)
                doc.Append(doc2)

                ' save pdf document
                doc.Save(file)

                ' close pdf document
                doc.Close()
            Catch ex As Exception
                MessageBox.Show([String].Format("Error: {0}", ex.Message), "Error", _
                                MessageBoxButtons.OK, MessageBoxIcon.[Error])
                Return
            Finally
                Cursor = Cursors.Arrow
            End Try

            ' open generated pdf
            Try
                System.Diagnostics.Process.Start(file)
            Catch
                MessageBox.Show("Could not open generated pdf document", "Error", _
                                MessageBoxButtons.OK, MessageBoxIcon.[Error])
            End Try
        End Sub

        Public Sub New()
            InitializeComponent()
            Try
                ' display highlighted sample code
                Dim code As String = Helper.ReadSourceCode("PdfMerge.vb")
                WBSampleCode.DocumentText = New CodeColorizer().Colorize(code, Languages.VbDotNet)
            Catch
                WBSampleCode.DocumentText = "Sample code not available"
            End Try
        End Sub

        Private Sub LblFile1_Click(sender As Object, e As EventArgs) Handles LblFile1.Click
            System.Diagnostics.Process.Start(Path.GetFullPath(file1))
        End Sub

        Private Sub LblFile2_Click(sender As Object, e As EventArgs) Handles LblFile2.Click
            System.Diagnostics.Process.Start(Path.GetFullPath(file2))
        End Sub
    End Class
End Namespace
