2019-07-31 15:37:48 +02:00

131 lines
5.4 KiB
VB.net

Option Strict On
Option Explicit On
Imports System.IO
Imports GdPicture14
Public Class frmDocViewOpen
Private ReadOnly m_owner As GdViewer
Public Sub New(ByVal owner As GdViewer)
InitializeComponent()
m_owner = owner
End Sub
Private Sub UpdateUi()
If rbOpenFromFile.Checked Then
pOpenFromFile.Enabled = True
pOpenFromHTTP.Enabled = False
pOpenFromFTP.Enabled = False
ElseIf rbOpenFromHTTP.Checked Then
pOpenFromFile.Enabled = False
pOpenFromHTTP.Enabled = True
pOpenFromFTP.Enabled = False
ElseIf rbOpenFromFTP.Checked Then
pOpenFromFile.Enabled = False
pOpenFromHTTP.Enabled = False
pOpenFromFTP.Enabled = True
ElseIf rbOpenFromClipboard.Checked Then
pOpenFromFile.Enabled = False
pOpenFromHTTP.Enabled = False
pOpenFromFTP.Enabled = False
End If
End Sub
Private Sub frmOpen_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Clipboard.ContainsImage() Then
rbOpenFromClipboard.Checked = True
Else
rbOpenFromFile.Checked = True
End If
End Sub
Private Sub rbOpenFromFile_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbOpenFromFile.CheckedChanged
If rbOpenFromFile.Checked Then
updateUI()
End If
End Sub
Private Sub rbOpenFromFTP_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbOpenFromFTP.CheckedChanged
If rbOpenFromFTP.Checked Then
updateUI()
End If
End Sub
Private Sub rbOpenFromHTTP_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbOpenFromHTTP.CheckedChanged
If rbOpenFromHTTP.Checked Then
updateUI()
End If
End Sub
Private Sub rbOpenFromClipboard_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbOpenFromClipboard.CheckedChanged
If rbOpenFromClipboard.Checked Then
updateUI()
End If
End Sub
Private Sub btnOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOpen.Click
Dim ok As Boolean = False
If rbOpenFromFile.Checked Then
If Not String.IsNullOrWhiteSpace(tbFile.Text) And File.Exists(tbFile.Text) Then
Dim status As GdPictureStatus = m_owner.DisplayFromFile(tbFile.Text)
If status = GdPictureStatus.OK Then
ok = True
Else
MessageBox.Show("Error during file loading: " + status.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
Else
MessageBox.Show("You must select a file", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Return
End If
ElseIf rbOpenFromFTP.Checked Then
Dim port As Integer
If Not String.IsNullOrWhiteSpace(tbHost.Text) And Not String.IsNullOrWhiteSpace(tbPort.Text) _
And Integer.TryParse(tbPort.Text, port) And Not String.IsNullOrWhiteSpace(tbPath.Text) Then
Dim status As GdPictureStatus = m_owner.DisplayFromFTP(tbHost.Text, tbPath.Text, tbLogin.Text, tbPassword.Text, port)
If status = GdPictureStatus.OK Then
ok = True
Else
MessageBox.Show("FTP Error: " + m_owner.GetLastTransferError(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
Else
MessageBox.Show("You must enter all data for FTP connection", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
ElseIf rbOpenFromHTTP.Checked Then
Dim uri As Uri = Nothing
If Not String.IsNullOrWhiteSpace(tbOpenFromHTTP.Text) And System.Uri.TryCreate(tbOpenFromHTTP.Text, UriKind.Absolute, uri) Then
Dim status As GdPictureStatus = m_owner.DisplayFromHTTP(uri.ToString(), "", "")
If status = GdPictureStatus.OK Then
ok = True
Else
MessageBox.Show("HTTP Error: " + m_owner.GetLastTransferError(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
Else
MessageBox.Show("You must specify an URI", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
ElseIf rbOpenFromClipboard.Checked Then
If Clipboard.ContainsImage() Then
Dim status As GdPictureStatus = m_owner.DisplayFromClipboard()
If status = GdPictureStatus.OK Then
ok = True
Else
MessageBox.Show("Error: " + status.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
Else
MessageBox.Show("There is no image in clipboard", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
End If
If ok Then
Me.Close()
End If
End Sub
Private Sub btOpenFromFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btOpenFromFile.Click
Dim result As DialogResult = OpenFileDialog1.ShowDialog()
If (result = DialogResult.OK) Then
tbFile.Text = OpenFileDialog1.FileName
End If
End Sub
End Class