'****************************************************************************
'* Copyright (C) 2004 Peter Mortensen and Matthias Mann *
'* This file is part of MSQuant. *
'* *
'* MSQuant is distributed under the terms of *
'* the GNU General Public License. See src/COPYING.TXT or *
'* <http://www.gnu.org/licenses/gpl.txt> for details. *
'* *
'* MSQuant is free software; you can redistribute it *
'* and/or modify it under the terms of the GNU *
'* General Public License as published by the Free *
'* Software Foundation; either version 2 of the *
'* License, or (at your option) any later version. *
'* *
'* MSQuant is distributed in the hope that it will be *
'* useful, but WITHOUT ANY WARRANTY; without even the *
'* implied warranty of MERCHANTABILITY or FITNESS FOR *
'* A PARTICULAR PURPOSE. See the GNU General Public *
'* License for more details. *
'* *
'* You should have received a copy of the GNU General *
'* Public License along with MSQuant; if not, write to *
'* the Free Software Foundation, Inc., 59 Temple *
'* Place, Suite 330, Boston, MA 02111-1307 USA *
'* *
'* Purpose: user dialog for specifying where output should *
'* go (Open Office, Excel, some other application *
'* or a file). Usually for exporting protein/peptide *
'* information. *
'* *
'****************************************************************************
'****************************************************************************
'* CEBI *
'* Software Development Group *
'* Peter Mortensen *
'* E-mail: NUKESPAMMERSdrmortensen@get2netZZZZZZ.dk *
'* WWW: http://www.cebi.sdu.dk/ *
'* *
'* Program for post-processing of result from search in mass *
'* spectrometric data. *
'* *
'* FILENAME: frmPeptideFilters.vb *
'* TYPE: VISUAL_BASIC *
'* *
'* CREATED: PM 2008-05-28 Vrs 1.0. *
'* UPDATED: PM 2008-xx-xx *
'* *
'****************************************************************************
Imports SDUPutility 'For exportTargetSettingsStruct
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Public Class frmExportTarget
'Changed PM_PEPTIDEFILTER_GENERALISED 2007-08-27
Public Event exportTargetSettingsDismissed( _
ByVal aSender As Object, _
ByVal anEvent As exportTargetSettingsEventArgs)
'Used if this dialog is used in a synchronious fashion (ignoring the event)
Dim mNewExportTargetSettings As exportTargetSettingsStruct
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Public Sub New(ByVal anInSettings As exportTargetSettingsStruct)
' This call is required by the Windows Form Designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
Me.Init(anInSettings)
End Sub 'Constructor.
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub Init(ByVal anInSettings As exportTargetSettingsStruct)
mNewExportTargetSettings.target = -1 'Marker that it is not
' set. Only happens if user presses OK.
txtUserAppPath.Text = anInSettings.userAppPath
txtExportFile.Text = anInSettings.filePath
chkOpenExportedFile.Checked = anInSettings.openFileAfterGeneration
Select Case anInSettings.target
Case targetEnum.enumExportToOpenOffice
rbnToOpenOffice.Checked = True
'Changed PM_ASKFOR_EXPORTTARGET_FIRSTTIME 2008-12-18
Case targetEnum.enumExportUndefined 'Program default...
rbnToOpenOffice.Checked = True
Case targetEnum.enumExportToExcel
rbnToExcel.Checked = True
Case targetEnum.enumExportToUserSelectedApp
rbnUserSelectedApplication.Checked = True
Case targetEnum.enumExportToFile
rbnToFile.Checked = True
Case Else
Trace.Assert(False, _
"PIL ASSERT. Select Case never fall-through")
End Select
End Sub 'Init()
'Not used, but is it better to have the stuff Init() here??
' '****************************************************************************
' '* <placeholder for header> *
' '****************************************************************************
' Private Sub frmExportTarget_Load( _
' ByVal aSender As System.Object, ByVal anEvent As System.EventArgs) _
' Handles MyBase.Load
'
' End Sub 'frmExportTarget_Load()
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub btnOK_Click( _
ByVal aSender As System.Object, ByVal anEvent As System.EventArgs) _
Handles btnOK.Click
'No input validation for now...
'Dim newExportTargetSettings As exportTargetSettingsStruct
mNewExportTargetSettings.userAppPath = txtUserAppPath.Text
mNewExportTargetSettings.filePath = txtExportFile.Text
mNewExportTargetSettings.openFileAfterGeneration = _
chkOpenExportedFile.Checked
Dim target As targetEnum
If rbnToOpenOffice.Checked Then
target = targetEnum.enumExportToOpenOffice
End If
If rbnToExcel.Checked Then
target = targetEnum.enumExportToExcel
End If
If rbnUserSelectedApplication.Checked Then
target = targetEnum.enumExportToUserSelectedApp
End If
If rbnToFile.Checked Then
target = targetEnum.enumExportToFile
End If
mNewExportTargetSettings.target = target
RaiseEvent exportTargetSettingsDismissed( _
aSender, New exportTargetSettingsEventArgs(mNewExportTargetSettings))
Me.Close()
End Sub 'btnOK_Click()
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Public Function getResult(ByRef anOut As exportTargetSettingsStruct) _
As Boolean
Dim toReturn As Boolean = False
If mNewExportTargetSettings.target >= 0 Then
toReturn = True 'User pressed OK.
anOut = mNewExportTargetSettings
Else
Dim peter2 As Integer = 2
End If
Return toReturn
End Function 'getResult()
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub btnCancel_Click( _
ByVal aSender As System.Object, ByVal anEvent As System.EventArgs) _
Handles btnCancel.Click
Me.Close()
End Sub 'btnCancel_Click()
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub updateStateWithNewTargetType( _
ByVal anInNewTargetType As targetEnum)
Dim userAppPath_enabled As Boolean = False 'Default
Dim filePath_enabled As Boolean = False 'Default
Select Case anInNewTargetType
Case targetEnum.enumExportToOpenOffice
Case targetEnum.enumExportToExcel
Case targetEnum.enumExportToUserSelectedApp
userAppPath_enabled = True
Case targetEnum.enumExportToFile
rbnToFile.Checked = True
filePath_enabled = True
Case Else
Trace.Assert(False, _
"PIL ASSERT. Select Case never fall-through")
End Select
txtUserAppPath.Enabled = userAppPath_enabled
btnBrowseForApp.Enabled = userAppPath_enabled
txtExportFile.Enabled = filePath_enabled
btnBrowseForExportFile.Enabled = filePath_enabled
chkOpenExportedFile.Enabled = filePath_enabled
End Sub 'updateStateWithNewTargetType()
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub userSelectInputFile( _
ByVal anInDialogTitle As String, ByRef aInOutFolderName As String, _
ByRef anExtension As String)
OpenFileDialog1.RestoreDirectory() = False 'do not restore directory
OpenFileDialog1.Title = "Select " & anInDialogTitle & "..."
OpenFileDialog1.DereferenceLinks = True
OpenFileDialog1.Filter = _
"Executable files (*." & anExtension & ")|*." & anExtension & ""
OpenFileDialog1.FileName = ""
If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
aInOutFolderName = OpenFileDialog1.FileName
End If
End Sub 'userSelectInputFile
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub userSelectOutputFile( _
ByVal anInDialogTitle As String, ByRef aInOutFolderName As String, _
ByRef anExtension As String)
SaveFileDialog1.DefaultExt = anExtension 'Note: only works if ValidateNames is True!!!!
' ".txt" should probably be "txt"
SaveFileDialog1.ValidateNames = True
SaveFileDialog1.ShowHelp = True
SaveFileDialog1.DereferenceLinks = True
SaveFileDialog1.OverwritePrompt = True
SaveFileDialog1.Title = anInDialogTitle
If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
aInOutFolderName = SaveFileDialog1.FileName
End If
End Sub 'userSelectOutputFile
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub btnBrowseForApp_Click( _
ByVal aSender As System.Object, ByVal anEvent As System.EventArgs) _
Handles btnBrowseForApp.Click
Me.userSelectInputFile( _
"application to open export data", _
txtUserAppPath.Text, "exe")
End Sub 'btnBrowseForApp_Click
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub btnBrowseForExportFile_Click( _
ByVal aSender As System.Object, ByVal anEvent As System.EventArgs) _
Handles btnBrowseForExportFile.Click
Me.userSelectOutputFile( _
"Save export to", _
txtExportFile.Text, "txt")
End Sub 'btnBrowseForExportFile_Click
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub rbnToOpenOffice_CheckedChanged( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles rbnToOpenOffice.CheckedChanged
If rbnToOpenOffice.Checked = True Then
updateStateWithNewTargetType(targetEnum.enumExportToOpenOffice)
End If
End Sub 'rbnToOpenOffice_CheckedChanged
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub rbnToExcel_CheckedChanged( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles rbnToExcel.CheckedChanged
If rbnToExcel.Checked = True Then
updateStateWithNewTargetType(targetEnum.enumExportToExcel)
End If
End Sub 'rbnToExcel_CheckedChanged
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub rbnUserSelectedApplication_CheckedChanged( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles rbnUserSelectedApplication.CheckedChanged
If rbnUserSelectedApplication.Checked = True Then
updateStateWithNewTargetType(targetEnum.enumExportToUserSelectedApp)
End If
End Sub 'rbnUserSelectedApplication_CheckedChanged
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Private Sub rbnToFile_CheckedChanged( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles rbnToFile.CheckedChanged
If rbnToFile.Checked = True Then
updateStateWithNewTargetType(targetEnum.enumExportToFile)
End If
End Sub
End Class 'Class frmExportTarget
'Helper class for exportTargetSettingsDismissed event.
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Public Class exportTargetSettingsEventArgs
Inherits System.EventArgs
Private mExportTargetSettings As exportTargetSettingsStruct
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Public Sub New(ByVal aSomeValue As exportTargetSettingsStruct)
mExportTargetSettings = aSomeValue
End Sub
'****************************************************************************
'* <placeholder for header> *
'****************************************************************************
Public Function getFilter() _
As exportTargetSettingsStruct
Return mExportTargetSettings 'What about deep copy???
End Function 'getFilter
End Class 'Class exportTargetSettingsEventArgs
Generated by script codePublish.pl at 2009-01-05T15:20:59.