Source code for MSQuant: frmExportTarget.vb, MSQuant/msquant/src/GUI/forms/frmExportTarget.vb.

Table of contents page.

Home page for MSQuant.

'****************************************************************************
'* 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.