summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLisa Stillwell <lisa@renci.org>2013-03-05 19:18:16 (GMT)
committer Lisa Stillwell <lisa@renci.org>2013-03-05 19:18:16 (GMT)
commit7c32aa3e14bb102aa2c881b4ec5cfed8473a1934 (patch)
tree6ce8698eacf7da09e1e523999d91a97e7ef715b1
parent8aea63ca1407677167d668cb116ecb68e65b598d (diff)
parentfc1d0a956bfdbc4523fe0359c60c6eb605f57f59 (diff)
downloadQCG-Data-7c32aa3e14bb102aa2c881b4ec5cfed8473a1934.zip
QCG-Data-7c32aa3e14bb102aa2c881b4ec5cfed8473a1934.tar.gz
QCG-Data-7c32aa3e14bb102aa2c881b4ec5cfed8473a1934.tar.bz2
Merge branch 'master' of ssh://code.renci.org/gitroot/irodsidrop
-rw-r--r--idrop-lite/pom.xml2
-rw-r--r--idrop-lite/release_notes.txt8
-rw-r--r--idrop-lite/src/main/java/org/irods/jargon/idrop/lite/Version.java4
-rw-r--r--idrop-swing/pom.xml5
-rw-r--r--idrop-swing/release_notes.txt10
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/AddPermissionsDialog.form194
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/AddPermissionsDialog.java227
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/CopyMoveDialog.form287
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/CopyMoveDialog.java514
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DeleteIRODSDialog.form6
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DeleteIRODSDialog.java17
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DownloadDialog.form383
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DownloadDialog.java536
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.java5
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPDesktop.java (renamed from idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/StartupSequencer.java)22
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IRODSInfoDialog.form1457
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IRODSInfoDialog.java1821
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/SearchResultsDialog.form142
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/SearchResultsDialog.java222
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/UploadDialog.form363
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/UploadDialog.java577
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/iDrop.form2305
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/iDrop.java4235
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/services/IdropConfigurationService.java2
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/utils/Version.java4
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/viscomponents/BreadCrumbNavigationPopup.java159
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/viscomponents/IRODSNode.java19
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/viscomponents/IRODSTree.java24
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/viscomponents/IrodsSelectionListenerForBuildingInfoPanel.java1
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/viscomponents/LocalFileTree.java8
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/viscomponents/MetadataTableModel.java83
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/viscomponents/PermissionsTableModel.java177
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/finder/IRODSFinderDialog.form2
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/finder/IRODSFinderDialog.java48
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/finder/IRODSFinderTree.java15
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/finder/IRODSFinderTreeSelectionListener.java51
-rw-r--r--idrop-swing/src/main/resources/icon_delete.pngbin0 -> 3495 bytes
-rw-r--r--idrop-swing/src/main/resources/icon_download.pngbin0 -> 3387 bytes
-rw-r--r--idrop-swing/src/main/resources/icon_editmetadata.pngbin0 -> 3352 bytes
-rw-r--r--idrop-swing/src/main/resources/icon_refresh.pngbin0 -> 3535 bytes
-rw-r--r--idrop-swing/src/main/resources/icon_replicate.pngbin0 -> 3326 bytes
-rw-r--r--idrop-swing/src/main/resources/icon_settings.pngbin0 -> 3628 bytes
-rw-r--r--idrop-swing/src/main/resources/icon_synch.pngbin0 -> 3701 bytes
-rw-r--r--idrop-swing/src/main/resources/icon_upload.pngbin0 -> 3396 bytes
-rw-r--r--idrop-swing/src/main/resources/idrop.properties3
-rw-r--r--idrop-swing/src/main/resources/org/irods/jargon/idrop/desktop/systraygui/Bundle.properties181
-rw-r--r--idrop-swing/src/main/resources/org/irods/jargon/idrop/desktop/systraygui/viscomponents/Bundle.properties6
-rw-r--r--idrop-swing/src/main/resources/search_files.pngbin0 -> 341 bytes
-rw-r--r--idrop-swing/src/test/java/org/irods/jargon/idrop/desktop/unittest/AllTests.java5
-rw-r--r--idrop-web-selenium/login_and_basic_name127
-rw-r--r--idrop-web/COPYING1
-rwxr-xr-x[-rw-r--r--]idrop-web/LICENSE.txt0
-rw-r--r--idrop-web/README19
-rwxr-xr-x[-rw-r--r--]idrop-web/README.txt0
-rw-r--r--idrop-web/application.properties6
-rw-r--r--idrop-web/build.sh217
-rwxr-xr-x[-rw-r--r--]idrop-web/designnotes.txt5
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/conf/BootStrap.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/conf/BuildConfig.groovy20
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/conf/Config.groovy19
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/conf/DataSource.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/conf/SecurityFilters.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/conf/UrlMappings.groovy2
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/conf/spring/resources.groovy15
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/conf/spring/resources.xml2
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/conf/testing.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/AuditController.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/BrowseController.groovy447
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/FileController.groovy119
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/HomeController.groovy141
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/IdropLiteController.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/ImageController.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/LoginController.groovy97
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/MetadataController.groovy78
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/ProfileController.groovy165
-rw-r--r--idrop-web/grails-app/controllers/org/irods/mydrop/controller/QuickUploadController.groovy97
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/SearchController.groovy5
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/SharingController.groovy256
-rwxr-xr-xidrop-web/grails-app/controllers/org/irods/mydrop/controller/ShoppingCartController.groovy150
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/TagsController.groovy8
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/TicketAccessController.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/TicketController.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/controllers/org/irods/mydrop/controller/UserController.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages.properties88
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_da.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_de.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_es.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_fr.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_it.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_ja.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_nl.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_pt_BR.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_pt_PT.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_ru.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_th.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/i18n/messages_zh_CN.properties0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/services/org/irods/mydrop/service/I18NMessagingService.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/services/org/irods/mydrop/service/ProfileService.groovy0
-rw-r--r--idrop-web/grails-app/services/org/irods/mydrop/service/SharingService.groovy180
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/services/org/irods/mydrop/service/ShoppingCartSessionService.groovy11
-rw-r--r--idrop-web/grails-app/services/org/irods/mydrop/service/StarringService.groovy66
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/services/org/irods/mydrop/service/ThumbnailGeneratorService.groovy0
-rw-r--r--idrop-web/grails-app/services/org/irods/mydrop/service/ViewStateService.groovy123
-rw-r--r--idrop-web/grails-app/taglib/idrop/web2/AuthUserTagTagLib.groovy13
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/taglib/org/irods/mydrop/taglib/AuthTagLib.groovy26
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/taglib/org/irods/mydrop/taglib/ImageTagLib.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/audit/auditDetails.gsp14
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/audit/auditInfo.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/audit/auditNoAccess.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/audit/auditTable.gsp0
-rwxr-xr-xidrop-web/grails-app/views/browse/_browseDetailsToolbar.gsp10
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/browse/_browseTabContent.gsp27
-rwxr-xr-xidrop-web/grails-app/views/browse/_collectionInfoToolbar.gsp193
-rwxr-xr-xidrop-web/grails-app/views/browse/_dataObjectInfoToolbar.gsp135
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/browse/browseDetails.gsp76
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/browse/collectionInfo.gsp145
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/browse/collectionInfoMini.gsp4
-rw-r--r--idrop-web/grails-app/views/browse/dataObjectInfo.gsp150
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/browse/dataObjectInfoMini.gsp49
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/browse/galleryView.gsp1
-rwxr-xr-xidrop-web/grails-app/views/browse/index.gsp63
-rw-r--r--idrop-web/grails-app/views/browse/listCart.gsp34
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/browse/loginInfo.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/browse/newFolderDialog.gsp51
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/browse/noInfo.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/browse/publicLinkDialog.gsp43
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/browse/renameDialog.gsp42
-rwxr-xr-xidrop-web/grails-app/views/browse/starDialog.gsp40
-rwxr-xr-xidrop-web/grails-app/views/common/_browseLegend.gsp11
-rwxr-xr-xidrop-web/grails-app/views/common/_cssAndJs.gsp41
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/common/_footer.gsp7
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/common/_messages.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/common/_secondarymain.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/common/_topToolbar.gsp244
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/common/_topbar.gsp133
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/error.gsp0
-rwxr-xr-xidrop-web/grails-app/views/file/deleteResult.gsp1
-rwxr-xr-xidrop-web/grails-app/views/file/quickUploadDialog.gsp45
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/file/uploadDialog.gsp56
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/home/index.gsp187
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/home/link.gsp0
-rwxr-xr-xidrop-web/grails-app/views/home/noInfo.gsp3
-rw-r--r--idrop-web/grails-app/views/home/quickViewList.gsp46
-rw-r--r--idrop-web/grails-app/views/home/shareQuickViewList.gsp45
-rw-r--r--idrop-web/grails-app/views/home/shareWithMeQuickViewList.gsp48
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/idropLite/appletLoader.gsp4
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/layouts/basic.gsp132
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/layouts/main.gsp95
-rwxr-xr-xidrop-web/grails-app/views/layouts/mainNoSidebar.gsp54
-rw-r--r--idrop-web/grails-app/views/login/defaultStorageResource.gsp50
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/login/login.gsp227
-rwxr-xr-xidrop-web/grails-app/views/login/passwordChange.gsp45
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/metadata/metadataDetails.gsp52
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/metadata/metadataDialog.gsp13
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/metadata/metadataTable.gsp2
-rw-r--r--idrop-web/grails-app/views/profile/_profileTabContent.gsp19
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/profile/_profileToolbar.gsp0
-rw-r--r--idrop-web/grails-app/views/profile/changePasswordDialog.gsp37
-rwxr-xr-xidrop-web/grails-app/views/profile/index.gsp185
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/profile/noProfileData.gsp0
-rw-r--r--idrop-web/grails-app/views/profile/profileData.gsp28
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/search/searchResult.gsp112
-rw-r--r--idrop-web/grails-app/views/sharing/_sharingPanel.gsp41
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/sharing/aclDetails.gsp40
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/sharing/aclDialog.gsp20
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/sharing/aclTable.gsp2
-rwxr-xr-xidrop-web/grails-app/views/sharing/addShareDialog.gsp40
-rw-r--r--idrop-web/grails-app/views/sharing/sharingPanelWrapper.gsp3
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/sharing/userPanel.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/shoppingCart/cartDetails.gsp (renamed from idrop-web/grails-app/views/browse/cartDetails.gsp)0
-rwxr-xr-xidrop-web/grails-app/views/shoppingCart/index.gsp45
-rwxr-xr-xidrop-web/grails-app/views/tags/index.gsp68
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/tags/tagCloud.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/ticket/ticketDetails.gsp23
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/ticket/ticketPulldown.gsp31
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/ticket/ticketTable.gsp4
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/ticketAccess/ticketAccessCollection.gsp1
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/ticketAccess/ticketAccessDataObject.gsp3
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/ticketAccess/uploadToTicketCollection.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/user/index.gsp4
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/user/userInfoDialog.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/grails-app/views/user/userList.gsp6
-rwxr-xr-x[-rw-r--r--]idrop-web/idrop-web-config2.groovy (renamed from idrop-web/idrop-web-config.groovy)11
-rw-r--r--idrop-web/idrop-web.list.template328
-rw-r--r--idrop-web/pom.xml416
-rw-r--r--idrop-web/release_notes.txt127
-rw-r--r--idrop-web/site/resources/css/site.css10
-rw-r--r--idrop-web/site/resources/eclipse.xml251
-rw-r--r--idrop-web/site/site.xml20
-rw-r--r--idrop-web/site/xdoc/build.xml9
-rw-r--r--idrop-web/site/xdoc/codeFormat.xml10
-rw-r--r--idrop-web/site/xdoc/index.xml9
-rwxr-xr-x[-rw-r--r--]idrop-web/src/groovy/org/irods/mydrop/config/ServerProperties.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/groovy/org/irods/mydrop/config/ServerPropertiesCache.groovy0
-rw-r--r--idrop-web/src/groovy/org/irods/mydrop/config/ViewState.groovy18
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/artifacts/Controller.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/artifacts/DomainClass.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/artifacts/Filters.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/artifacts/ScaffoldingController.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/artifacts/Script.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/artifacts/Service.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/artifacts/TagLib.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/artifacts/Tests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/artifacts/WebTest.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/artifacts/hibernate.cfg.xml0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/scaffolding/Controller.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/scaffolding/Test.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/scaffolding/_form.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/scaffolding/create.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/scaffolding/edit.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/scaffolding/list.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/scaffolding/renderEditor.template0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/scaffolding/show.gsp0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/testing/Controller.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/testing/DomainClass.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/testing/Filters.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/testing/Generic.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/testing/Service.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/testing/TagLib.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/testing/UnitTest.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/src/templates/war/web.xml0
-rw-r--r--idrop-web/test/unit/idrop/web2/AuthUserTagTagLibTests.groovy17
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/AuditControllerTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/BrowseControllerTests.groovy8
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/FileControllerTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/HomeControllerTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/IdropLiteControllerTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/ImageControllerTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/MetadataControllerTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/ProfileControllerTests.groovy0
-rw-r--r--idrop-web/test/unit/org/irods/mydrop/controller/QuickUploadControllerTests.groovy17
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/SearchControllerTests.groovy6
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/SharingControllerTests.groovy0
-rwxr-xr-xidrop-web/test/unit/org/irods/mydrop/controller/ShoppingCartControllerTests.groovy19
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/TagsControllerTests.groovy10
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/TicketAccessControllerTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/TicketControllerTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/UserControllerTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/controller/UserTagServiceTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/service/I18NMessagingServiceTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/service/ProfileServiceTests.groovy0
-rw-r--r--idrop-web/test/unit/org/irods/mydrop/service/SharingServiceTests.groovy17
-rw-r--r--idrop-web/test/unit/org/irods/mydrop/service/StarringServiceTests.groovy17
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/service/ThumbnailServiceTests.groovy0
-rw-r--r--idrop-web/test/unit/org/irods/mydrop/service/ViewStateServiceTests.groovy17
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/taglib/AuthTagLibTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/test/unit/org/irods/mydrop/taglib/ImageTagLibTests.groovy0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/WEB-INF/applicationContext.xml0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/WEB-INF/sitemesh.xml0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/WEB-INF/tld/c.tld0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/WEB-INF/tld/fmt.tld0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/WEB-INF/tld/grails.tld0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/WEB-INF/tld/spring.tld0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/WEB-INF/web.xml0
-rw-r--r--idrop-web/web-app/css/base.css79
-rw-r--r--idrop-web/web-app/css/bootstrap-responsive.min.css9
-rwxr-xr-xidrop-web/web-app/css/bootstrap.css5837
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/errors.css0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/jqcloud.css22
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/jquery.gritter.css1
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/layout-default-latest.css0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/loader.gifbin4782 -> 4782 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/loaderWhite.gifbin10294 -> 10294 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/main.css1032
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/mobile.css0
-rw-r--r--idrop-web/web-app/css/nextPageArrow.gifbin79 -> 0 bytes
-rw-r--r--idrop-web/web-app/css/nextPageArrowWhite.gifbin79 -> 0 bytes
-rwxr-xr-xidrop-web/web-app/css/overcast/images/ui-bg_flat_55_c0402a_40x100.pngbin213 -> 182 bytes
-rwxr-xr-xidrop-web/web-app/css/overcast/images/ui-icons_3383bb_256x240.pngbin5355 -> 4369 bytes
-rwxr-xr-xidrop-web/web-app/css/overcast/images/ui-icons_454545_256x240.pngbin5355 -> 4369 bytes
-rwxr-xr-xidrop-web/web-app/css/overcast/images/ui-icons_fbc856_256x240.pngbin4369 -> 5355 bytes
-rwxr-xr-xidrop-web/web-app/css/overcast/jquery-ui-1.9.0.custom.css (renamed from idrop-web/web-app/css/overcast/jquery-ui-1.8.7.custom.css)524
-rwxr-xr-xidrop-web/web-app/css/overcast/jquery-ui-1.9.0.custom.min.css5
-rw-r--r--idrop-web/web-app/css/prevPageArrow.gifbin78 -> 0 bytes
-rw-r--r--idrop-web/web-app/css/prevPageArrowWhite.gifbin78 -> 0 bytes
-rw-r--r--idrop-web/web-app/css/reset-fonts-grids.css407
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-bg_flat_55_999999_40x100.pngbin180 -> 180 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-bg_flat_75_aaaaaa_40x100.pngbin180 -> 180 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-bg_glass_45_0078ae_1x400.pngbin136 -> 136 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-bg_glass_55_f8da4e_1x400.pngbin131 -> 131 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-bg_glass_75_79c9ec_1x400.pngbin132 -> 132 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-bg_gloss-wave_45_e14f1c_500x100.pngbin3649 -> 3649 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-bg_gloss-wave_50_6eac2c_500x100.pngbin4882 -> 4882 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-bg_gloss-wave_75_2191c0_500x100.pngbin3457 -> 3457 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-bg_inset-hard_100_fcfdfd_1x100.pngbin88 -> 88 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-icons_0078ae_256x240.pngbin4369 -> 4369 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-icons_056b93_256x240.pngbin5355 -> 5355 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-icons_d8e7f3_256x240.pngbin4369 -> 4369 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-icons_e0fdff_256x240.pngbin5355 -> 5355 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-icons_f5e175_256x240.pngbin4369 -> 4369 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-icons_f7a50d_256x240.pngbin4369 -> 4369 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/images/ui-icons_fcd113_256x240.pngbin5355 -> 5355 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/start/jquery-ui-1.8.18.custom.css0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/style.css76
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/css/superfish.css0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/Lifetime-Library.pngbin11858 -> 11858 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/Sorting icons.psdbin27490 -> 27490 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/ad_next.pngbin355 -> 355 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/ajax-loader-bar.gifbin10819 -> 10819 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/ajax-loader.gifbin2947 -> 2947 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/apple-touch-icon-retina.pngbin14986 -> 14986 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/apple-touch-icon.pngbin5434 -> 5434 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/arrow-refresh.pngbin1192 -> 1192 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/arrows-ffffff.pngbin244 -> 244 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/back_disabled.jpgbin612 -> 612 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/back_enabled.jpgbin807 -> 807 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/configure-4.pngbin1109 -> 1109 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/configure-5.pngbin1308 -> 1308 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/dialog-accept.pngbin1197 -> 1197 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/edit-4.pngbin1159 -> 1159 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/edit-copy-3.pngbin631 -> 631 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/favicon.icobin894 -> 894 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/file.pngbin1990 -> 1990 bytes
-rwxr-xr-xidrop-web/web-app/images/file_icon.pngbin0 -> 13041 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/folder.pngbin2143 -> 2143 bytes
-rwxr-xr-xidrop-web/web-app/images/folder_icon.pngbin0 -> 4130 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/forward_disabled.jpgbin635 -> 635 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/forward_enabled.jpgbin852 -> 852 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/go-home-4.pngbin932 -> 932 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/go-jump.pngbin1379 -> 1379 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/go-parent-folder.pngbin1137 -> 1137 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/grails_logo.jpgbin8065 -> 8065 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/grails_logo.pngbin10172 -> 10172 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/gritter-light.pngbin4899 -> 4899 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/gritter-long.pngbin6299 -> 6299 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/gritter.pngbin4880 -> 4880 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/help-contents.pngbin1270 -> 1270 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/iDropbin68184 -> 68184 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/iDropLogo.pngbin21715 -> 21715 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/ie-spacer.gifbin43 -> 43 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/im-user.pngbin1205 -> 1205 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/leftnav_btm.pngbin3859 -> 3859 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/leftnav_midstretch.pngbin2883 -> 2883 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/leftnav_top.pngbin3317 -> 3317 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/loader.gifbin4782 -> 4782 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/shadow.pngbin1698 -> 1698 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/skin/database_add.pngbin658 -> 658 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/skin/database_delete.pngbin659 -> 659 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/skin/database_edit.pngbin767 -> 767 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/skin/database_save.pngbin755 -> 755 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/skin/database_table.pngbin726 -> 726 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/skin/exclamation.pngbin701 -> 701 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/skin/house.pngbin806 -> 806 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/skin/information.pngbin778 -> 778 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/skin/shadow.jpgbin300 -> 300 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/skin/sorted_asc.gifbin835 -> 835 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/skin/sorted_desc.gifbin834 -> 834 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/sort_asc.pngbin263 -> 263 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/sort_asc_disabled.pngbin252 -> 252 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/sort_both.pngbin282 -> 282 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/sort_desc.pngbin260 -> 260 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/sort_desc_disabled.pngbin251 -> 251 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/spinner.gifbin2037 -> 2037 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/images/springsource.pngbin9109 -> 9109 bytes
-rwxr-xr-xidrop-web/web-app/images/upload.pngbin0 -> 11502 bytes
-rwxr-xr-xidrop-web/web-app/img/glyphicons-halflings-white.pngbin0 -> 8777 bytes
-rwxr-xr-xidrop-web/web-app/img/glyphicons-halflings.pngbin0 -> 12799 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/application.js0
-rwxr-xr-xidrop-web/web-app/js/bootstrap.min.js7
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/bundles/messages.properties22
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/galleria-1.2.6.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jqcloud-0.1.5.min.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jqcloud-0.1.6.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery-1.7.1.min.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery-1.7.2.min.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery-1.8.0.min.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery-ui-13.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.ba-bbq.min.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.blockUI.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.dataTables.min.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.gchart.min.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.gritter.min.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.hotkeys.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.i18n.properties-min-1.0.9.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.jeditable.mini.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.jstree.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.layout-latest.min.js0
-rw-r--r--idrop-web/web-app/js/jquery.layout.min-1.3.0.js142
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.media.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.opacityrollover.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jquery.tools.min.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.checkbox.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.contextmenu.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.core.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.dnd.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.hotkeys.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.html.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.json.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.sort.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.state.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.themes.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.ui.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.unique.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/jstree.xml.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/mydrop/audit.js0
-rw-r--r--idrop-web/web-app/js/mydrop/home.js5274
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/mydrop/lingo_common.js138
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/mydrop/main.js202
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/mydrop/metadata.js14
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/mydrop/profile.js86
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/mydrop/search.js4
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/mydrop/shopping_cart.js22
-rw-r--r--idrop-web/web-app/js/mydrop/tag.js70
-rw-r--r--idrop-web/web-app/js/mydrop/ticket.js674
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/mydrop/user.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/splitter.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/superfish.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/themes/classic/classic-demo.html0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/themes/classic/classic-loader.gifbin1849 -> 1849 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/themes/classic/classic-map.pngbin1840 -> 1840 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/themes/classic/galleria.classic.css0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/themes/classic/galleria.classic.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/themes/classic/galleria.classic.min.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/js/vakata.js0
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/loader.gifbin4782 -> 4782 bytes
-rwxr-xr-x[-rw-r--r--]idrop-web/web-app/mediaplayer.swfbin34574 -> 34574 bytes
-rw-r--r--pom.xml4
-rw-r--r--release_notes.txt17
418 files changed, 25011 insertions, 10957 deletions
diff --git a/idrop-lite/pom.xml b/idrop-lite/pom.xml
index fafae2f..6f7bbc8 100644
--- a/idrop-lite/pom.xml
+++ b/idrop-lite/pom.xml
@@ -4,7 +4,7 @@
<parent>
<artifactId>idrop</artifactId>
<groupId>org.irods</groupId>
- <version>1.0.3-SNAPSHOT</version>
+ <version>2.0.0</version>
</parent>
<groupId>org.irods.idrop</groupId>
<artifactId>idrop-lite</artifactId>
diff --git a/idrop-lite/release_notes.txt b/idrop-lite/release_notes.txt
index b2bf9d4..270dc82 100644
--- a/idrop-lite/release_notes.txt
+++ b/idrop-lite/release_notes.txt
@@ -1,7 +1,7 @@
*'''Project''': iDrop-lite transfer applet
-*'''Date''': 11/28/2012
-*'''Release Version''': 1.0.2
-*'''git tag''': 1.0.2
+*'''Date''': 03/04/2013
+*'''Release Version''': 2.0.0
+*'''git tag''': 2.0.0
iDrop lite is an embedded transfer applet
@@ -28,7 +28,7 @@ Note that the following bug and feature requests are logged in GForge with relat
*[#1023] Update Version class to include build time and POM version
-*[#1062] 1.0.2 release activities
+*[#1062] default storage resource visibility
**Added default storage resource to iDrop lite panel
==Outstanding Issues==
diff --git a/idrop-lite/src/main/java/org/irods/jargon/idrop/lite/Version.java b/idrop-lite/src/main/java/org/irods/jargon/idrop/lite/Version.java
index 627a156..a593371 100644
--- a/idrop-lite/src/main/java/org/irods/jargon/idrop/lite/Version.java
+++ b/idrop-lite/src/main/java/org/irods/jargon/idrop/lite/Version.java
@@ -1,5 +1,5 @@
package org.irods.jargon.idrop.lite;
public final class Version {
- public static String VERSION="1.0.3-SNAPSHOT";
- public static String BUILD_TIME="20121207-1122";
+ public static String VERSION="2.0.0";
+ public static String BUILD_TIME="20130305-0946";
}
diff --git a/idrop-swing/pom.xml b/idrop-swing/pom.xml
index d3d1944..f5ad421 100644
--- a/idrop-swing/pom.xml
+++ b/idrop-swing/pom.xml
@@ -1,9 +1,8 @@
-
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<groupId>org.irods</groupId>
<artifactId>idrop</artifactId>
- <version>1.0.3-SNAPSHOT</version>
+ <version>2.0.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.irods.idrop</groupId>
@@ -106,7 +105,7 @@
<!-- used to automatically identify the jar containing the main class. -->
<!-- this is perhaps going to change -->
- <mainClass>org.irods.jargon.idrop.desktop.systraygui.StartupSequencer</mainClass>
+ <mainClass>org.irods.jargon.idrop.desktop.systraygui.IDROPDesktop</mainClass>
</jnlp>
<!-- SIGNING -->
diff --git a/idrop-swing/release_notes.txt b/idrop-swing/release_notes.txt
index 1b53861..c501d1b 100644
--- a/idrop-swing/release_notes.txt
+++ b/idrop-swing/release_notes.txt
@@ -1,12 +1,12 @@
*'''Project''': iDrop-swing- Desktop iRODS transfer manager
-*'''Date''': xx/xx/xx
-*'''Release Version''': 1.0.X
-*'''git tag''': 1.0.X
+*'''Date''': 03/04/2013
+*'''Release Version''': 2.0.0
+*'''git tag''': 2.0.0
==News==
-post 1.0.2 release snapshot (work in progress)
+Release of new iDrop 2 web and desktop (phase I) development
This is the iDrop desktop transfer manager client. iDrop runs in the system tray of your favorite operating system, and can manage transfers between your computer and iRODS, and manage data once in iRODS.
@@ -27,6 +27,8 @@ Note that the following bug and feature requests are logged in GForge with relat
*[#1092] add reconnect option to iDrop
**Added preferences panel option and idrop.properties to set reconnect to 'true'. Emulates -T option for put/get
+[#983] iDrop swing '2.0' development
+**Phase I of iDrop swing GUI redesign effort. This collaboration with iPlant is a GUI refactoring and redesign phase.
==Bug Fixes==
* [#1093] Broken pipe error did not propogate in parallel transfer
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/AddPermissionsDialog.form b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/AddPermissionsDialog.form
new file mode 100644
index 0000000..097ab59
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/AddPermissionsDialog.form
@@ -0,0 +1,194 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.5" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JDialogFormInfo">
+ <Properties>
+ <Property name="defaultCloseOperation" type="int" value="2"/>
+ <Property name="title" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="AddPermissionsDialog.title" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
+ <Color blue="ff" green="ff" id="white" palette="1" red="ff" type="palette"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[460, 180]"/>
+ </Property>
+ </Properties>
+ <SyntheticProperties>
+ <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+ </SyntheticProperties>
+ <AuxValues>
+ <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="1"/>
+ <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="2"/>
+ <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+ <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+ <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,0,-100,0,0,1,-44"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlMain">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlPermissionEdit">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="20" left="8" right="8" top="16"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[527, 200]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel3">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="North"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="jLabel31">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="AddPermissionsDialog.jLabel31.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[120, 16]"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JComboBox" name="cbPermissionsUserName">
+ <Properties>
+ <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor">
+ <StringArray count="0"/>
+ </Property>
+ <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[60, 27]"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[260, 27]"/>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel4">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="jLabel32">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="AddPermissionsDialog.jLabel32.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[120, 16]"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JComboBox" name="cbPermissionsPermission">
+ <Properties>
+ <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor">
+ <StringArray count="0"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[260, 27]"/>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel1">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="6" left="1" right="1" top="1"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[525, 40]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel2">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[200, 34]"/>
+ </Property>
+ <Property name="requestFocusEnabled" type="boolean" value="false"/>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="East"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnPermissionsCancel">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="AddPermissionsDialog.btnPermissionsCancel.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnPermissionsCancelActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnPermissionsAdd">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="AddPermissionsDialog.btnPermissionsAdd.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="actionCommand" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="AddPermissionsDialog.btnPermissionsAdd.actionCommand" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="enabled" type="boolean" value="false"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnPermissionsAddActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+</Form>
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/AddPermissionsDialog.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/AddPermissionsDialog.java
new file mode 100644
index 0000000..306da4a
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/AddPermissionsDialog.java
@@ -0,0 +1,227 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.irods.jargon.idrop.desktop.systraygui;
+
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.List;
+import org.irods.jargon.core.connection.IRODSAccount;
+import org.irods.jargon.core.exception.JargonException;
+import org.irods.jargon.core.protovalues.FilePermissionEnum;
+import org.irods.jargon.core.pub.IRODSFileSystem;
+import org.irods.jargon.core.pub.UserAO;
+import org.irods.jargon.core.pub.domain.User;
+import org.irods.jargon.core.pub.domain.UserFilePermission;
+import org.openide.util.Exceptions;
+
+/**
+ *
+ * @author lisa
+ */
+public class AddPermissionsDialog extends javax.swing.JDialog implements ActionListener {
+
+ IRODSFileSystem irodsFileSystem;
+ IRODSAccount irodsAccount;
+ boolean isCollection;
+ UserFilePermission permissionToAdd = null;
+
+ /**
+ * Creates new form AddPermissionsDialog
+ */
+ public AddPermissionsDialog(javax.swing.JDialog parent,
+ boolean modal,
+ IRODSFileSystem irodsFileSystem,
+ IRODSAccount irodsAccount) {
+ super(parent, modal);
+ initComponents();
+
+ this.irodsFileSystem = irodsFileSystem;
+ this.irodsAccount = irodsAccount;
+
+
+ cbPermissionsPermission.addItem("READ");
+ cbPermissionsPermission.addItem("WRITE");
+ cbPermissionsPermission.addItem("OWN");
+
+ List<User> users = null;
+ try {
+ UserAO userAO = irodsFileSystem.getIRODSAccessObjectFactory().getUserAO(irodsAccount);
+ users = userAO.findAll();
+ Collections.sort(users, new Comparator<User>() {
+ @Override
+ public int compare(final User object1, final User object2) {
+ return object1.getName().compareTo(object2.getName());
+ }
+ } );
+
+ for (User user: users) {
+ cbPermissionsUserName.addItem(user.getNameWithZone());
+ }
+ } catch (JargonException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+ cbPermissionsPermission.addActionListener(this);
+ cbPermissionsUserName.addActionListener(this);
+
+ updateAddButtonStatus();
+ }
+
+ private void updateAddButtonStatus() {
+ btnPermissionsAdd.setEnabled((cbPermissionsUserName.getSelectedIndex() >= 0) &&
+ (cbPermissionsPermission.getSelectedIndex() >= 0));
+ }
+
+ public UserFilePermission getPermissionToAdd() {
+ return this.permissionToAdd;
+ }
+
+ @Override
+ public void actionPerformed(ActionEvent ae) {
+ updateAddButtonStatus();
+ }
+
+ /**
+ * This method is called from within the constructor to initialize the form.
+ * WARNING: Do NOT modify this code. The content of this method is always
+ * regenerated by the Form Editor.
+ */
+ @SuppressWarnings("unchecked")
+ // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+ private void initComponents() {
+
+ pnlMain = new javax.swing.JPanel();
+ pnlPermissionEdit = new javax.swing.JPanel();
+ jPanel3 = new javax.swing.JPanel();
+ jLabel31 = new javax.swing.JLabel();
+ cbPermissionsUserName = new javax.swing.JComboBox();
+ jPanel4 = new javax.swing.JPanel();
+ jLabel32 = new javax.swing.JLabel();
+ cbPermissionsPermission = new javax.swing.JComboBox();
+ jPanel1 = new javax.swing.JPanel();
+ jPanel2 = new javax.swing.JPanel();
+ btnPermissionsCancel = new javax.swing.JButton();
+ btnPermissionsAdd = new javax.swing.JButton();
+
+ setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
+ setTitle(org.openide.util.NbBundle.getMessage(AddPermissionsDialog.class, "AddPermissionsDialog.title")); // NOI18N
+ setBackground(java.awt.Color.white);
+ setPreferredSize(new java.awt.Dimension(460, 180));
+
+ pnlMain.setLayout(new java.awt.BorderLayout());
+
+ pnlPermissionEdit.setBorder(javax.swing.BorderFactory.createEmptyBorder(16, 8, 20, 8));
+ pnlPermissionEdit.setPreferredSize(new java.awt.Dimension(527, 200));
+ pnlPermissionEdit.setLayout(new java.awt.BorderLayout());
+
+ jLabel31.setText(org.openide.util.NbBundle.getMessage(AddPermissionsDialog.class, "AddPermissionsDialog.jLabel31.text")); // NOI18N
+ jLabel31.setPreferredSize(new java.awt.Dimension(120, 16));
+ jPanel3.add(jLabel31);
+
+ cbPermissionsUserName.setMinimumSize(new java.awt.Dimension(60, 27));
+ cbPermissionsUserName.setPreferredSize(new java.awt.Dimension(260, 27));
+ jPanel3.add(cbPermissionsUserName);
+
+ pnlPermissionEdit.add(jPanel3, java.awt.BorderLayout.NORTH);
+
+ jLabel32.setText(org.openide.util.NbBundle.getMessage(AddPermissionsDialog.class, "AddPermissionsDialog.jLabel32.text")); // NOI18N
+ jLabel32.setPreferredSize(new java.awt.Dimension(120, 16));
+ jPanel4.add(jLabel32);
+
+ cbPermissionsPermission.setPreferredSize(new java.awt.Dimension(260, 27));
+ jPanel4.add(cbPermissionsPermission);
+
+ pnlPermissionEdit.add(jPanel4, java.awt.BorderLayout.SOUTH);
+
+ pnlMain.add(pnlPermissionEdit, java.awt.BorderLayout.CENTER);
+
+ jPanel1.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 6, 1));
+ jPanel1.setPreferredSize(new java.awt.Dimension(525, 40));
+ jPanel1.setLayout(new java.awt.BorderLayout());
+
+ jPanel2.setPreferredSize(new java.awt.Dimension(200, 34));
+ jPanel2.setRequestFocusEnabled(false);
+
+ btnPermissionsCancel.setText(org.openide.util.NbBundle.getMessage(AddPermissionsDialog.class, "AddPermissionsDialog.btnPermissionsCancel.text")); // NOI18N
+ btnPermissionsCancel.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnPermissionsCancelActionPerformed(evt);
+ }
+ });
+ jPanel2.add(btnPermissionsCancel);
+
+ btnPermissionsAdd.setText(org.openide.util.NbBundle.getMessage(AddPermissionsDialog.class, "AddPermissionsDialog.btnPermissionsAdd.text")); // NOI18N
+ btnPermissionsAdd.setActionCommand(org.openide.util.NbBundle.getMessage(AddPermissionsDialog.class, "AddPermissionsDialog.btnPermissionsAdd.actionCommand")); // NOI18N
+ btnPermissionsAdd.setEnabled(false);
+ btnPermissionsAdd.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnPermissionsAddActionPerformed(evt);
+ }
+ });
+ jPanel2.add(btnPermissionsAdd);
+
+ jPanel1.add(jPanel2, java.awt.BorderLayout.EAST);
+
+ pnlMain.add(jPanel1, java.awt.BorderLayout.SOUTH);
+
+ getContentPane().add(pnlMain, java.awt.BorderLayout.CENTER);
+
+ pack();
+ }// </editor-fold>//GEN-END:initComponents
+
+ private void btnPermissionsAddActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnPermissionsAddActionPerformed
+
+ String selectedPermission = (String)cbPermissionsPermission.getSelectedItem();
+ String tmpSelectedUser = (String)cbPermissionsUserName.getSelectedItem();
+ String selectedUser = null;
+
+ // probably have to remve #zone from user name
+ int idx = tmpSelectedUser.indexOf("#");
+ if (idx >= 0) {
+ selectedUser = tmpSelectedUser.substring(0, idx);
+ }
+ else {
+ selectedUser = tmpSelectedUser;
+ }
+
+ try {
+ UserAO userAO = irodsFileSystem.getIRODSAccessObjectFactory().getUserAO(irodsAccount);
+ User user = userAO.findByName(tmpSelectedUser);
+
+ permissionToAdd = new UserFilePermission(
+ selectedUser,
+ user.getId(),
+ FilePermissionEnum.valueOf(selectedPermission),
+ user.getUserType(),
+ user.getZone());
+ } catch (JargonException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+
+ this.setVisible(false);
+ }//GEN-LAST:event_btnPermissionsAddActionPerformed
+
+ private void btnPermissionsCancelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnPermissionsCancelActionPerformed
+ this.dispose();
+ }//GEN-LAST:event_btnPermissionsCancelActionPerformed
+
+
+ // Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JButton btnPermissionsAdd;
+ private javax.swing.JButton btnPermissionsCancel;
+ private javax.swing.JComboBox cbPermissionsPermission;
+ private javax.swing.JComboBox cbPermissionsUserName;
+ private javax.swing.JLabel jLabel31;
+ private javax.swing.JLabel jLabel32;
+ private javax.swing.JPanel jPanel1;
+ private javax.swing.JPanel jPanel2;
+ private javax.swing.JPanel jPanel3;
+ private javax.swing.JPanel jPanel4;
+ private javax.swing.JPanel pnlMain;
+ private javax.swing.JPanel pnlPermissionEdit;
+ // End of variables declaration//GEN-END:variables
+
+}
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/CopyMoveDialog.form b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/CopyMoveDialog.form
new file mode 100644
index 0000000..a50794d
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/CopyMoveDialog.form
@@ -0,0 +1,287 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.5" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JDialogFormInfo">
+ <Properties>
+ <Property name="defaultCloseOperation" type="int" value="2"/>
+ <Property name="title" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="CopyMoveDialog.title" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[590, 260]"/>
+ </Property>
+ </Properties>
+ <SyntheticProperties>
+ <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+ </SyntheticProperties>
+ <AuxValues>
+ <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="1"/>
+ <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="2"/>
+ <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+ <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+ <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,0,-16,0,0,2,83"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlFolderData">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[540, 240]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlCurrentParent">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="10" left="4" right="4" top="10"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[500, 190]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel1">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[500, 125]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="North"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <EmptySpace max="-2" attributes="0"/>
+ <Component id="lblCurrentParent" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ <Component id="scrollCurrentParent" min="-2" pref="426" max="-2" attributes="0"/>
+ <EmptySpace pref="31" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" attributes="0">
+ <EmptySpace min="45" pref="45" max="-2" attributes="0"/>
+ <Component id="lblCurrentParent" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <Group type="102" attributes="0">
+ <EmptySpace min="5" pref="5" max="-2" attributes="0"/>
+ <Component id="scrollCurrentParent" min="-2" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="java.awt.Label" name="lblCurrentParent">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="CopyMoveDialog.lblCurrentParent.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Container class="javax.swing.JScrollPane" name="scrollCurrentParent">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[360, 100]"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JTextArea" name="txtCurrentParent">
+ <Properties>
+ <Property name="editable" type="boolean" value="false"/>
+ <Property name="columns" type="int" value="20"/>
+ <Property name="rows" type="int" value="5"/>
+ <Property name="wrapStyleWord" type="boolean" value="true"/>
+ <Property name="focusable" type="boolean" value="false"/>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[290, 90]"/>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel2">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[500, 60]"/>
+ </Property>
+ <Property name="requestFocusEnabled" type="boolean" value="false"/>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <EmptySpace max="-2" attributes="0"/>
+ <Component id="lblNewDiretoryName" min="-2" pref="111" max="-2" attributes="0"/>
+ <EmptySpace max="32767" attributes="0"/>
+ <Component id="txtNewLocation" min="-2" pref="320" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ <Component id="btnBrowse" min="-2" pref="100" max="-2" attributes="0"/>
+ <EmptySpace min="-2" pref="30" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" attributes="0">
+ <EmptySpace min="9" pref="9" max="-2" attributes="0"/>
+ <Component id="lblNewDiretoryName" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <Group type="102" attributes="0">
+ <EmptySpace min="5" pref="5" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="txtNewLocation" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="btnBrowse" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="java.awt.Label" name="lblNewDiretoryName">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="CopyMoveDialog.lblNewDiretoryName.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JTextField" name="txtNewLocation">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="CopyMoveDialog.txtNewLocation.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[360, 28]"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnBrowse">
+ <Properties>
+ <Property name="label" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="CopyMoveDialog.btnBrowse.label" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnBrowseActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlBottom">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[708, 40]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <EmptySpace min="451" pref="338" max="451" attributes="0"/>
+ <Component id="btnCancel" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ <Component id="btnMove" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ <Component id="btnCopy" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <EmptySpace min="5" pref="5" max="5" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="btnCancel" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="btnMove" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="btnCopy" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnCancel">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="CopyMoveDialog.btnCancel.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnCancelActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnMove">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="CopyMoveDialog.btnMove.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMoveActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnCopy">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="CopyMoveDialog.btnCopy.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnCopyActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+</Form>
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/CopyMoveDialog.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/CopyMoveDialog.java
new file mode 100644
index 0000000..aa26e6e
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/CopyMoveDialog.java
@@ -0,0 +1,514 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.irods.jargon.idrop.desktop.systraygui;
+
+import java.awt.Cursor;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import javax.swing.ListSelectionModel;
+import javax.swing.tree.TreePath;
+import org.irods.jargon.core.exception.JargonException;
+import org.irods.jargon.core.exception.JargonFileOrCollAlreadyExistsException;
+import org.irods.jargon.core.pub.DataTransferOperations;
+import org.irods.jargon.core.pub.io.IRODSFile;
+import org.irods.jargon.idrop.desktop.systraygui.services.IRODSFileService;
+import org.irods.jargon.idrop.desktop.systraygui.utils.TreeUtils;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSNode;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSOutlineModel;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSTree;
+import org.irods.jargon.idrop.exceptions.IdropException;
+import org.irods.jargon.idrop.exceptions.IdropRuntimeException;
+import org.irods.jargon.idrop.finder.IRODSFinderDialog;
+import org.openide.util.Exceptions;
+import org.slf4j.LoggerFactory;
+
+/**
+ *
+ * @author lisa
+ */
+public class CopyMoveDialog extends javax.swing.JDialog {
+
+
+ private iDrop idropGUI;
+ private IRODSTree irodsTree;
+ private IRODSOutlineModel irodsFileSystemModel;
+ public static org.slf4j.Logger log = LoggerFactory.getLogger(IRODSTree.class);
+
+ /**
+ * Creates new form CopyMoveDialog
+ */
+ public CopyMoveDialog(java.awt.Frame parent, boolean modal) {
+ super(parent, modal);
+ initComponents();
+ }
+
+ public CopyMoveDialog(final iDrop parent, final boolean modal,
+ final IRODSTree irodsTree) {
+ super(parent, modal);
+ initComponents();
+
+ this.idropGUI = parent;
+ this.irodsTree = irodsTree;
+ this.irodsFileSystemModel = (IRODSOutlineModel) irodsTree.getModel();
+
+ initSourcesFiles();
+ setCopyMoveButtonsState();
+ }
+
+
+ private void initSourcesFiles() {
+ //check for selected objects and/or collections to download
+ // get iRODS File Service
+ IRODSFileService irodsFS = null;
+ try {
+ irodsFS = new IRODSFileService(idropGUI.getiDropCore().getIrodsAccount(),
+ idropGUI.getiDropCore().getIrodsFileSystem());
+ } catch (Exception ex) {
+ //JOptionPane.showMessageDialog(this, "Cannot access iRODS file system for get.");
+ log.error("cannot create irods file service");
+ return;
+ }
+
+ IRODSOutlineModel irodsFileSystemModel = (IRODSOutlineModel) irodsTree.getModel();
+ ListSelectionModel selectionModel = irodsTree.getSelectionModel();
+ int idxStart = selectionModel.getMinSelectionIndex();
+ int idxEnd = selectionModel.getMaxSelectionIndex();
+
+ // now collect all selected nodes
+ IRODSFile ifile = null;
+ //final List<File> sourceFiles = new ArrayList<File>();
+ for (int idx = idxStart; idx <= idxEnd; idx++) {
+ if (selectionModel.isSelectedIndex(idx)) {
+ try {
+ IRODSNode selectedNode = (IRODSNode) irodsFileSystemModel.getValueAt(idx, 0);
+ ifile = irodsFS.getIRODSFileForPath(selectedNode.getFullPath());
+ // rule out "/"
+ String path = ifile.getAbsolutePath();
+ if ((path != null) && (!path.equals("/"))) {
+ txtCurrentParent.append(path + "\n");
+ }
+ } catch (IdropException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+ }
+ }
+ }
+
+ private void setCopyMoveButtonsState() {
+ boolean state = ((txtNewLocation.getText().length() > 0) &&
+ (txtCurrentParent.getText().length() > 0));
+ btnCopy.setEnabled(state);
+ btnMove.setEnabled(state);
+ }
+
+ private void processMoveOrCopy(final boolean isCopy) {
+ // add the new folder to irods, add to the tree, and scroll the tree
+ // into view
+ final CopyMoveDialog thisDialog = this;
+ final String targetAbsolutePath = txtNewLocation.getText();
+ final String sourceFiles[] = txtCurrentParent.getText().split("\n");
+
+ log.info("processing move or copy");
+ java.awt.EventQueue.invokeLater(new Runnable() {
+
+ @Override
+ public void run() {
+ IRODSFile irodsFile = null;
+ try {
+ log.info("processing move of a file in iRODS tree");
+ thisDialog.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
+
+ DataTransferOperations dataTransferOperations;
+ try {
+ dataTransferOperations = idropGUI.getiDropCore().getIRODSAccessObjectFactory().getDataTransferOperations(
+ idropGUI.getIrodsAccount());
+ } catch (Exception e) {
+ idropGUI.getiDropCore().closeIRODSConnection(
+ idropGUI.getIrodsAccount());
+ thisDialog.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+ throw new IdropRuntimeException(e);
+ }
+
+ List<IRODSFile> filesThatHadOverwriteError = new ArrayList<IRODSFile>();
+
+ if (sourceFiles.length == 1) {
+ //IRODSFile irodsFile = null;
+ log.info("processing the move/copy for one file:{}",
+ sourceFiles[0]);
+ try {
+ irodsFile =
+ idropGUI.getiDropCore().getIRODSFileFactoryForLoggedInAccount().instanceIRODSFile(sourceFiles[0]);
+ if (isCopy) {
+ processACopyOfAnIndividualFile(
+ dataTransferOperations, irodsFile,
+ targetAbsolutePath);
+ } else {
+ processAMoveOfAnIndividualFile(
+ dataTransferOperations, irodsFile,
+ targetAbsolutePath);
+ }
+ } catch (JargonFileOrCollAlreadyExistsException ex) {
+ Logger.getLogger(
+ MoveOrCopyiRODSDialog.class.getName()).log(
+ Level.SEVERE, null, ex);
+ filesThatHadOverwriteError.add(irodsFile);
+ } catch (JargonException je) {
+ if (je.getMessage().indexOf("-834000") > -1
+ || je.getMessage().indexOf("-833000") > -1) {
+ filesThatHadOverwriteError.add(irodsFile);
+ } else {
+ throw new IdropException(je);
+ }
+ }
+ } else if (sourceFiles.length > 1) {
+ log.info("processing move/copy of multiple files");
+ for (String sourceFileEntry : sourceFiles) {
+
+ try {
+ irodsFile =
+ idropGUI.getiDropCore().getIRODSFileFactoryForLoggedInAccount().instanceIRODSFile(sourceFileEntry);
+ if (isCopy) {
+ processACopyOfAnIndividualFile(
+ dataTransferOperations,
+ irodsFile, targetAbsolutePath);
+ } else {
+ processAMoveOfAnIndividualFile(
+ dataTransferOperations,
+ irodsFile, targetAbsolutePath);
+ }
+ } catch (JargonFileOrCollAlreadyExistsException ex) {
+ // FIXME: fix in jargon core to differentiate!
+ Logger.getLogger(
+ MoveOrCopyiRODSDialog.class.getName()).log(Level.SEVERE, null, ex);
+ filesThatHadOverwriteError.add(irodsFile);
+ } catch (JargonException je) {
+ if (je.getMessage().indexOf("-834000") > -1
+ || je.getMessage().indexOf("-833000") > -1) {
+ filesThatHadOverwriteError.add(irodsFile);
+ } else {
+ throw new IdropException(je);
+ }
+ }
+ }
+ }
+
+ log.debug("move done");
+ if (!isCopy) {
+ if (filesThatHadOverwriteError.isEmpty()) {
+ idropGUI.showMessageFromOperation("irods move processed");
+ } else {
+ idropGUI.showMessageFromOperation("irods move processed, some files were not moved as files of the same name already existed");
+ }
+ } else {
+ idropGUI.showMessageFromOperation("The file copy operation has been placed on the work queue");
+ }
+ thisDialog.dispose();
+
+ } catch (IdropException ex) {
+ Logger.getLogger(IRODSTree.class.getName()).log(
+ Level.SEVERE, null, ex);
+ idropGUI.showIdropException(ex);
+ return;
+ } finally {
+ thisDialog.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+ idropGUI.getiDropCore().closeIRODSConnection(
+ idropGUI.getIrodsAccount());
+ }
+ }
+ });
+ }
+
+ private void processAMoveOfAnIndividualFile(
+ final DataTransferOperations dataTransferOperations,
+ final IRODSFile sourceFile, final String targetAbsolutePath)
+ throws JargonFileOrCollAlreadyExistsException, IdropException {
+
+ try {
+
+ boolean isFile = sourceFile.isFile();
+ IRODSFile targetFile = idropGUI.getiDropCore().getIRODSFileFactoryForLoggedInAccount().instanceIRODSFile(targetAbsolutePath);
+
+ dataTransferOperations.move(sourceFile.getAbsolutePath(),
+ targetAbsolutePath);
+
+ String targetPathForNotify = null;
+ if (isFile) {
+ log.debug("source file is a file, do a move");
+
+ if (targetFile.isDirectory()) {
+ targetPathForNotify = targetFile.getAbsolutePath() + "/"
+ + sourceFile.getName();
+ } else {
+ targetPathForNotify = targetFile.getAbsolutePath();
+ }
+
+ irodsFileSystemModel.notifyFileShouldBeAdded(irodsTree,
+ targetPathForNotify);
+
+ } else {
+ log.debug("source file is a collection, reparent it");
+ targetPathForNotify = targetFile.getAbsolutePath() + "/"
+ + sourceFile.getName();
+
+ irodsFileSystemModel.notifyFileShouldBeAdded(irodsTree,
+ targetPathForNotify);
+ }
+ } catch (JargonFileOrCollAlreadyExistsException fcae) {
+ throw fcae;
+ } catch (JargonException je) {
+ throw new IdropException(je);
+ }
+
+ TreePath sourceNodePath = TreeUtils.buildTreePathForIrodsAbsolutePath(
+ irodsTree, sourceFile.getAbsolutePath());
+ if (sourceNodePath == null) {
+ log.info("could not find tree path for source node, ignore");
+ return;
+ }
+ IRODSNode sourceNode = (IRODSNode) sourceNodePath.getLastPathComponent();
+ irodsFileSystemModel.notifyFileShouldBeRemoved(sourceNode);
+ }
+
+ private void processACopyOfAnIndividualFile(
+ final DataTransferOperations dataTransferOperations,
+ final IRODSFile sourceFile, final String targetAbsolutePath)
+ throws IdropException {
+ try {
+ dataTransferOperations.copy(sourceFile.getAbsolutePath(),
+ idropGUI.getiDropCore().getIrodsAccount().getDefaultStorageResource(),
+ targetAbsolutePath,
+ null,
+ null);
+ //idropGUI.getiDropCore().getTransferManager().enqueueACopy(sourceFile.getAbsolutePath(),
+ //sourceFile.getResource(), targetAbsolutePath,
+ //idropGUI.getiDropCore().getIrodsAccount());
+
+ } catch (JargonException ex) {
+ Logger.getLogger(MoveOrCopyiRODSDialog.class.getName()).log(
+ Level.SEVERE, null, ex);
+ throw new IdropException(
+ "unable to copy file due to JargonException", ex);
+ }
+
+ // notifications are done at completion of transfer using status
+ // callbacks
+ }
+
+ /**
+ * This method is called from within the constructor to initialize the form.
+ * WARNING: Do NOT modify this code. The content of this method is always
+ * regenerated by the Form Editor.
+ */
+ @SuppressWarnings("unchecked")
+ // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+ private void initComponents() {
+
+ pnlFolderData = new javax.swing.JPanel();
+ pnlCurrentParent = new javax.swing.JPanel();
+ jPanel1 = new javax.swing.JPanel();
+ lblCurrentParent = new java.awt.Label();
+ scrollCurrentParent = new javax.swing.JScrollPane();
+ txtCurrentParent = new javax.swing.JTextArea();
+ jPanel2 = new javax.swing.JPanel();
+ lblNewDiretoryName = new java.awt.Label();
+ txtNewLocation = new javax.swing.JTextField();
+ btnBrowse = new javax.swing.JButton();
+ pnlBottom = new javax.swing.JPanel();
+ btnCancel = new javax.swing.JButton();
+ btnMove = new javax.swing.JButton();
+ btnCopy = new javax.swing.JButton();
+
+ setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
+ setTitle(org.openide.util.NbBundle.getMessage(CopyMoveDialog.class, "CopyMoveDialog.title")); // NOI18N
+ setPreferredSize(new java.awt.Dimension(590, 260));
+
+ pnlFolderData.setPreferredSize(new java.awt.Dimension(540, 240));
+ pnlFolderData.setLayout(new java.awt.BorderLayout());
+
+ pnlCurrentParent.setBorder(javax.swing.BorderFactory.createEmptyBorder(10, 4, 10, 4));
+ pnlCurrentParent.setPreferredSize(new java.awt.Dimension(500, 190));
+ pnlCurrentParent.setLayout(new java.awt.BorderLayout());
+
+ jPanel1.setPreferredSize(new java.awt.Dimension(500, 125));
+
+ lblCurrentParent.setText(org.openide.util.NbBundle.getMessage(CopyMoveDialog.class, "CopyMoveDialog.lblCurrentParent.text")); // NOI18N
+
+ scrollCurrentParent.setPreferredSize(new java.awt.Dimension(360, 100));
+
+ txtCurrentParent.setEditable(false);
+ txtCurrentParent.setColumns(20);
+ txtCurrentParent.setRows(5);
+ txtCurrentParent.setWrapStyleWord(true);
+ txtCurrentParent.setFocusable(false);
+ txtCurrentParent.setPreferredSize(new java.awt.Dimension(290, 90));
+ scrollCurrentParent.setViewportView(txtCurrentParent);
+
+ org.jdesktop.layout.GroupLayout jPanel1Layout = new org.jdesktop.layout.GroupLayout(jPanel1);
+ jPanel1.setLayout(jPanel1Layout);
+ jPanel1Layout.setHorizontalGroup(
+ jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanel1Layout.createSequentialGroup()
+ .addContainerGap()
+ .add(lblCurrentParent, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(scrollCurrentParent, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 426, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .addContainerGap(31, Short.MAX_VALUE))
+ );
+ jPanel1Layout.setVerticalGroup(
+ jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanel1Layout.createSequentialGroup()
+ .add(45, 45, 45)
+ .add(lblCurrentParent, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .add(jPanel1Layout.createSequentialGroup()
+ .add(5, 5, 5)
+ .add(scrollCurrentParent, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ );
+
+ pnlCurrentParent.add(jPanel1, java.awt.BorderLayout.NORTH);
+
+ jPanel2.setPreferredSize(new java.awt.Dimension(500, 60));
+ jPanel2.setRequestFocusEnabled(false);
+
+ lblNewDiretoryName.setText(org.openide.util.NbBundle.getMessage(CopyMoveDialog.class, "CopyMoveDialog.lblNewDiretoryName.text")); // NOI18N
+
+ txtNewLocation.setText(org.openide.util.NbBundle.getMessage(CopyMoveDialog.class, "CopyMoveDialog.txtNewLocation.text")); // NOI18N
+ txtNewLocation.setPreferredSize(new java.awt.Dimension(360, 28));
+
+ btnBrowse.setLabel(org.openide.util.NbBundle.getMessage(CopyMoveDialog.class, "CopyMoveDialog.btnBrowse.label")); // NOI18N
+ btnBrowse.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnBrowseActionPerformed(evt);
+ }
+ });
+
+ org.jdesktop.layout.GroupLayout jPanel2Layout = new org.jdesktop.layout.GroupLayout(jPanel2);
+ jPanel2.setLayout(jPanel2Layout);
+ jPanel2Layout.setHorizontalGroup(
+ jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanel2Layout.createSequentialGroup()
+ .addContainerGap()
+ .add(lblNewDiretoryName, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 111, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(txtNewLocation, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 320, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(btnBrowse, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 100, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(30, 30, 30))
+ );
+ jPanel2Layout.setVerticalGroup(
+ jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanel2Layout.createSequentialGroup()
+ .add(9, 9, 9)
+ .add(lblNewDiretoryName, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .add(jPanel2Layout.createSequentialGroup()
+ .add(5, 5, 5)
+ .add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(txtNewLocation, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(btnBrowse)))
+ );
+
+ pnlCurrentParent.add(jPanel2, java.awt.BorderLayout.SOUTH);
+
+ pnlFolderData.add(pnlCurrentParent, java.awt.BorderLayout.CENTER);
+
+ pnlBottom.setPreferredSize(new java.awt.Dimension(708, 40));
+
+ btnCancel.setText(org.openide.util.NbBundle.getMessage(CopyMoveDialog.class, "CopyMoveDialog.btnCancel.text")); // NOI18N
+ btnCancel.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnCancelActionPerformed(evt);
+ }
+ });
+
+ btnMove.setText(org.openide.util.NbBundle.getMessage(CopyMoveDialog.class, "CopyMoveDialog.btnMove.text")); // NOI18N
+ btnMove.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnMoveActionPerformed(evt);
+ }
+ });
+
+ btnCopy.setText(org.openide.util.NbBundle.getMessage(CopyMoveDialog.class, "CopyMoveDialog.btnCopy.text")); // NOI18N
+ btnCopy.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnCopyActionPerformed(evt);
+ }
+ });
+
+ org.jdesktop.layout.GroupLayout pnlBottomLayout = new org.jdesktop.layout.GroupLayout(pnlBottom);
+ pnlBottom.setLayout(pnlBottomLayout);
+ pnlBottomLayout.setHorizontalGroup(
+ pnlBottomLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlBottomLayout.createSequentialGroup()
+ .add(338, 338, 451)
+ .add(btnCancel)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(btnMove)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(btnCopy)
+ .addContainerGap())
+ );
+ pnlBottomLayout.setVerticalGroup(
+ pnlBottomLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlBottomLayout.createSequentialGroup()
+ .add(5, 5, 5)
+ .add(pnlBottomLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(btnCancel)
+ .add(btnMove)
+ .add(btnCopy)))
+ );
+
+ pnlFolderData.add(pnlBottom, java.awt.BorderLayout.SOUTH);
+
+ getContentPane().add(pnlFolderData, java.awt.BorderLayout.CENTER);
+
+ pack();
+ }// </editor-fold>//GEN-END:initComponents
+
+ private void btnCancelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnCancelActionPerformed
+ this.dispose();
+ }//GEN-LAST:event_btnCancelActionPerformed
+
+ private void btnMoveActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnMoveActionPerformed
+ processMoveOrCopy(false);
+ }//GEN-LAST:event_btnMoveActionPerformed
+
+ private void btnBrowseActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnBrowseActionPerformed
+ IRODSFinderDialog irodsFinder = new IRODSFinderDialog(
+ idropGUI, false, idropGUI.getiDropCore());
+ irodsFinder.setTitle("Select iRODS Collection Upload Target");
+ irodsFinder.setSelectionType(IRODSFinderDialog.SelectionType.COLLS_ONLY_SELECTION_MODE);
+ irodsFinder.setLocation(
+ (int)this.getLocation().getX(), (int)this.getLocation().getY());
+ irodsFinder.setVisible(true);
+
+ String selectedPath = irodsFinder.getSelectedAbsolutePath();
+ if (selectedPath != null) {
+ txtNewLocation.setText(selectedPath);
+ }
+ setCopyMoveButtonsState();
+ }//GEN-LAST:event_btnBrowseActionPerformed
+
+ private void btnCopyActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnCopyActionPerformed
+ processMoveOrCopy(true);
+ }//GEN-LAST:event_btnCopyActionPerformed
+
+ // Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JButton btnBrowse;
+ private javax.swing.JButton btnCancel;
+ private javax.swing.JButton btnCopy;
+ private javax.swing.JButton btnMove;
+ private javax.swing.JPanel jPanel1;
+ private javax.swing.JPanel jPanel2;
+ private java.awt.Label lblCurrentParent;
+ private java.awt.Label lblNewDiretoryName;
+ private javax.swing.JPanel pnlBottom;
+ private javax.swing.JPanel pnlCurrentParent;
+ private javax.swing.JPanel pnlFolderData;
+ private javax.swing.JScrollPane scrollCurrentParent;
+ private javax.swing.JTextArea txtCurrentParent;
+ private javax.swing.JTextField txtNewLocation;
+ // End of variables declaration//GEN-END:variables
+}
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DeleteIRODSDialog.form b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DeleteIRODSDialog.form
index c843416..0ceaf86 100644
--- a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DeleteIRODSDialog.form
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DeleteIRODSDialog.form
@@ -1,4 +1,4 @@
-<?xml version="1.1" encoding="UTF-8" ?>
+<?xml version="1.0" encoding="UTF-8" ?>
<Form version="1.3" maxVersion="1.7" type="org.netbeans.modules.form.forminfo.JDialogFormInfo">
<Properties>
@@ -50,7 +50,7 @@
<DimensionLayout dim="0">
<Group type="103" groupAlignment="0" attributes="0">
<Group type="102" alignment="1" attributes="0">
- <EmptySpace pref="40" max="32767" attributes="0"/>
+ <EmptySpace pref="54" max="32767" attributes="0"/>
<Component id="lblCurrentFolder" min="-2" max="-2" attributes="0"/>
<EmptySpace max="-2" attributes="0"/>
<Component id="scrollFileToDelete" min="-2" pref="413" max="-2" attributes="1"/>
@@ -71,7 +71,7 @@
<Component id="scrollFileToDelete" min="-2" max="-2" attributes="0"/>
</Group>
</Group>
- <EmptySpace max="32767" attributes="0"/>
+ <EmptySpace pref="20" max="32767" attributes="0"/>
</Group>
</Group>
</DimensionLayout>
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DeleteIRODSDialog.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DeleteIRODSDialog.java
index 633fb04..51ab48f 100644
--- a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DeleteIRODSDialog.java
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DeleteIRODSDialog.java
@@ -71,7 +71,22 @@ public class DeleteIRODSDialog extends javax.swing.JDialog {
this.deletedNodes = deletedNodes;
this.deletedNode = null;
initialize();
- txtAreaFileToDelete.setText("multiple selections");
+ int deletedNodesCount = deletedNodes.size();
+ for(int idx=0; idx<deletedNodesCount; idx++) {
+ CollectionAndDataObjectListingEntry entry =
+ (CollectionAndDataObjectListingEntry) deletedNodes.get(idx).getUserObject();
+ if (entry.getObjectType() == CollectionAndDataObjectListingEntry.ObjectType.COLLECTION) {
+ txtAreaFileToDelete.append(entry.getPathOrName());
+ } else {
+ txtAreaFileToDelete.append(entry.getParentPath());
+ txtAreaFileToDelete.append("/");
+ txtAreaFileToDelete.append(entry.getPathOrName());
+ }
+ if (idx < deletedNodesCount-1 ) {
+ txtAreaFileToDelete.append("\n");
+ }
+ }
+ //txtAreaFileToDelete.setText("multiple selections");
}
private void initialize() {
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DownloadDialog.form b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DownloadDialog.form
new file mode 100644
index 0000000..66ab6a1
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DownloadDialog.form
@@ -0,0 +1,383 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.5" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JDialogFormInfo">
+ <Properties>
+ <Property name="defaultCloseOperation" type="int" value="2"/>
+ <Property name="title" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.title" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[600, 420]"/>
+ </Property>
+ </Properties>
+ <AccessibilityProperties>
+ <Property name="AccessibleContext.accessibleName" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.AccessibleContext.accessibleName" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </AccessibilityProperties>
+ <SyntheticProperties>
+ <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+ </SyntheticProperties>
+ <AuxValues>
+ <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="1"/>
+ <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="2"/>
+ <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+ <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+ <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,-112,0,0,2,-121"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel1">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="6" left="6" right="6" top="6"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[600, 350]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="North"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel3">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="1" left="4" right="4" top="14"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[303, 250]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="North"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="jLabel2">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.jLabel2.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="North"/>
+ </Constraint>
+ </Constraints>
+ </Component>
+ <Container class="javax.swing.JScrollPane" name="jScrollPane1">
+ <AuxValues>
+ <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JTable" name="tblFilesToDownload">
+ <Properties>
+ <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor">
+ <Table columnCount="1" rowCount="0">
+ <Column editable="false" title="File" type="java.lang.String"/>
+ </Table>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel6">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[100, 25]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel16">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="West"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout">
+ <Property name="horizontalGap" type="int" value="1"/>
+ <Property name="verticalGap" type="int" value="1"/>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnAddDownloadFile">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.btnAddDownloadFile.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[22, 24]"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnAddDownloadFileActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnDeleteDownloadFile">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.btnDeleteDownloadFile.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[22, 24]"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnDeleteDownloadFileActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel4">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo">
+ <EtchetBorder/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[240, 76]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel9">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[600, 32]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="North"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel11">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[400, 40]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="West"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="jLabel1">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.jLabel1.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JTextField" name="txtDownloadTarget">
+ <Properties>
+ <Property name="editable" type="boolean" value="false"/>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.txtDownloadTarget.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[220, 28]"/>
+ </Property>
+ <Property name="requestFocusEnabled" type="boolean" value="false"/>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel12">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[200, 40]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="East"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnBrowseDownloadTarget">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.btnBrowseDownloadTarget.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnBrowseDownloadTargetActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel10">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="10" left="1" right="1" top="1"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[600, 40]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel13">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[100, 40]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="West"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel14">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[430, 40]"/>
+ </Property>
+ <Property name="requestFocusEnabled" type="boolean" value="false"/>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="East"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnUseLocaLHome">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.btnUseLocaLHome.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnUseLocaLHomeActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnUseLastDownload">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.btnUseLastDownload.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnUseLastDownloadActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel2">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel15">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="East"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnDownloadNow">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.btnDownloadNow.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="enabled" type="boolean" value="false"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnDownloadNowActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnCancel">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="DownloadDialog.btnCancel.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnCancelActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+</Form>
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DownloadDialog.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DownloadDialog.java
new file mode 100644
index 0000000..045e3d6
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/DownloadDialog.java
@@ -0,0 +1,536 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.irods.jargon.idrop.desktop.systraygui;
+
+import java.awt.Cursor;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+import javax.swing.JFileChooser;
+import javax.swing.ListSelectionModel;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+import javax.swing.table.DefaultTableModel;
+import javax.swing.tree.TreePath;
+import org.irods.jargon.core.exception.JargonException;
+import org.irods.jargon.core.pub.io.IRODSFile;
+import org.irods.jargon.core.utils.MiscIRODSUtils;
+import org.irods.jargon.idrop.desktop.systraygui.services.IRODSFileService;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSNode;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSOutlineModel;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSTree;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.LocalFileNode;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.LocalFileTree;
+import org.irods.jargon.idrop.exceptions.IdropException;
+import org.irods.jargon.idrop.exceptions.IdropRuntimeException;
+import org.irods.jargon.idrop.finder.IRODSFinderDialog;
+import org.irods.jargon.transfer.dao.domain.LocalIRODSTransfer;
+import org.irods.jargon.transfer.dao.domain.TransferType;
+import org.openide.util.Exceptions;
+import org.slf4j.LoggerFactory;
+
+/**
+ *
+ * @author lisa
+ */
+public class DownloadDialog extends javax.swing.JDialog implements ListSelectionListener {
+
+ iDrop idropGUI;
+ IRODSTree irodsTree;
+ LocalFileTree localFileTree;
+ public static org.slf4j.Logger log = LoggerFactory.getLogger(IRODSTree.class);
+
+ /**
+ * Creates new form DownloadDialog
+ */
+ public DownloadDialog(java.awt.Frame parent, boolean modal) {
+ super(parent, modal);
+ initComponents();
+ }
+
+ public DownloadDialog(final iDrop parent, final boolean modal,
+ final IRODSTree irodsTree,
+ final LocalFileTree localFileTree) {
+ super(parent, modal);
+ initComponents();
+
+ this.idropGUI = parent;
+ this.irodsTree = irodsTree;
+ this.localFileTree = localFileTree;
+ this.btnDeleteDownloadFile.setEnabled(false);
+ tblFilesToDownload.getSelectionModel().addListSelectionListener(this);
+
+ initDownloadTarget();
+ initSourcesFiles();
+ setDownloadButtonState();
+ }
+
+ private void initDownloadTarget() {
+
+ String target = "";
+
+ //first check to see if a download target is selected in the local file tree
+ TreePath treePath = localFileTree.getSelectionPath();
+ if(treePath != null) {
+ LocalFileNode selectedFileNode = (LocalFileNode) localFileTree.getSelectionPath().getLastPathComponent();
+ File targetPath = (File) selectedFileNode.getUserObject();
+ if (targetPath.isDirectory()) {
+ target = targetPath.getAbsolutePath();
+ }
+ }
+// else {
+// // next see if can find some get history in the transfer queue
+// try {
+// List<LocalIRODSTransfer> transfers = idropGUI.getiDropCore().getTransferManager().getRecentQueue();
+//
+// // assuming most recent first
+// for (LocalIRODSTransfer transfer: transfers) {
+// if (transfer.getTransferType() == TransferType.GET) {
+// target = transfer.getLocalAbsolutePath();
+// break;
+// }
+// }
+// } catch (JargonException ex) {
+// Exceptions.printStackTrace(ex);
+// }
+// }
+
+ txtDownloadTarget.setText(target);
+ }
+
+ private void initSourcesFiles() {
+ //check for selected objects and/or collections to download
+ // get iRODS File Service
+ IRODSFileService irodsFS = null;
+ try {
+ irodsFS = new IRODSFileService(idropGUI.getiDropCore().getIrodsAccount(),
+ idropGUI.getiDropCore().getIrodsFileSystem());
+ } catch (Exception ex) {
+ //JOptionPane.showMessageDialog(this, "Cannot access iRODS file system for get.");
+ log.error("cannot create irods file service");
+ return;
+ }
+
+ IRODSOutlineModel irodsFileSystemModel = (IRODSOutlineModel) irodsTree.getModel();
+ ListSelectionModel selectionModel = irodsTree.getSelectionModel();
+ int idxStart = selectionModel.getMinSelectionIndex();
+ int idxEnd = selectionModel.getMaxSelectionIndex();
+
+ // now collect all selected nodes
+ List<IRODSFile> ifiles = new ArrayList<IRODSFile>();
+
+ for (int idx = idxStart; idx <= idxEnd; idx++) {
+ if (selectionModel.isSelectedIndex(idx)) {
+ try {
+ IRODSNode selectedNode = (IRODSNode) irodsFileSystemModel.getValueAt(idx, 0);
+ ifiles.add(irodsFS.getIRODSFileForPath(selectedNode.getFullPath()));
+ } catch (IdropException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+ }
+ }
+
+ setFilesToDownload(ifiles);
+ }
+
+ private void executeDownload() {
+
+ idropGUI.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
+
+ final String targetPath = txtDownloadTarget.getText();
+ final String sourceFiles[] = getFilesToDownload();
+
+
+ // process as a get
+ java.awt.EventQueue.invokeLater(new Runnable() {
+ @Override
+ public void run() {
+ for (String transferFile : sourceFiles) {
+ log.info("initiating a transfer of iRODS file:{}",
+ transferFile);
+ log.info("transfer to local file:{}",
+ targetPath);
+ try {
+ idropGUI.getiDropCore().getTransferManager().enqueueAGet(
+ transferFile,
+ targetPath,
+ "", idropGUI.getIrodsAccount());
+ } catch (JargonException ex) {
+ java.util.logging.Logger.getLogger(
+ LocalFileTree.class.getName()).log(
+ java.util.logging.Level.SEVERE, null, ex);
+ idropGUI.showIdropException(ex);
+ }
+ }
+ }
+ });
+ idropGUI.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+ }
+
+ private void setDownloadButtonState() {
+ btnDownloadNow.setEnabled(((txtDownloadTarget.getText().length() > 0) &&
+ (tblFilesToDownload.getModel().getRowCount() > 0)));
+ }
+
+ private void setFilesToDownload(List<IRODSFile> ifiles) {
+
+ DefaultTableModel model = (DefaultTableModel) tblFilesToDownload.getModel();
+
+ for(int i=0; i<ifiles.size(); i++) {
+ String filePath = ifiles.get(i).getAbsolutePath();
+ model.addRow(new Object[] {filePath});
+ }
+ }
+
+ private String[] getFilesToDownload() {
+
+ int numFiles = 0;
+ DefaultTableModel model = (DefaultTableModel) tblFilesToDownload.getModel();
+ numFiles = model.getRowCount();
+ String[] filesToDownload = new String[numFiles];
+
+ for (int i=0; i<numFiles; i++) {
+ filesToDownload[i] = (String) model.getValueAt(i, 0);
+ }
+
+ return filesToDownload;
+ }
+
+
+ @Override
+ public void valueChanged(ListSelectionEvent lse) {
+ if (lse.getValueIsAdjusting() == false) {
+ btnDeleteDownloadFile.setEnabled(tblFilesToDownload.getSelectedRow() >= 0);
+ }
+ }
+
+ /**
+ * This method is called from within the constructor to initialize the form.
+ * WARNING: Do NOT modify this code. The content of this method is always
+ * regenerated by the Form Editor.
+ */
+ @SuppressWarnings("unchecked")
+ // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+ private void initComponents() {
+
+ jPanel1 = new javax.swing.JPanel();
+ jPanel3 = new javax.swing.JPanel();
+ jLabel2 = new javax.swing.JLabel();
+ jScrollPane1 = new javax.swing.JScrollPane();
+ tblFilesToDownload = new javax.swing.JTable();
+ jPanel6 = new javax.swing.JPanel();
+ jPanel16 = new javax.swing.JPanel();
+ btnAddDownloadFile = new javax.swing.JButton();
+ btnDeleteDownloadFile = new javax.swing.JButton();
+ jPanel4 = new javax.swing.JPanel();
+ jPanel9 = new javax.swing.JPanel();
+ jPanel11 = new javax.swing.JPanel();
+ jLabel1 = new javax.swing.JLabel();
+ txtDownloadTarget = new javax.swing.JTextField();
+ jPanel12 = new javax.swing.JPanel();
+ btnBrowseDownloadTarget = new javax.swing.JButton();
+ jPanel10 = new javax.swing.JPanel();
+ jPanel13 = new javax.swing.JPanel();
+ jPanel14 = new javax.swing.JPanel();
+ btnUseLocaLHome = new javax.swing.JButton();
+ btnUseLastDownload = new javax.swing.JButton();
+ jPanel2 = new javax.swing.JPanel();
+ jPanel15 = new javax.swing.JPanel();
+ btnDownloadNow = new javax.swing.JButton();
+ btnCancel = new javax.swing.JButton();
+
+ setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
+ setTitle(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.title")); // NOI18N
+ setPreferredSize(new java.awt.Dimension(600, 420));
+
+ jPanel1.setBorder(javax.swing.BorderFactory.createEmptyBorder(6, 6, 6, 6));
+ jPanel1.setPreferredSize(new java.awt.Dimension(600, 350));
+ jPanel1.setLayout(new java.awt.BorderLayout());
+
+ jPanel3.setBorder(javax.swing.BorderFactory.createEmptyBorder(14, 4, 1, 4));
+ jPanel3.setPreferredSize(new java.awt.Dimension(303, 250));
+ jPanel3.setLayout(new java.awt.BorderLayout());
+
+ jLabel2.setText(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.jLabel2.text")); // NOI18N
+ jPanel3.add(jLabel2, java.awt.BorderLayout.NORTH);
+
+ tblFilesToDownload.setModel(new javax.swing.table.DefaultTableModel(
+ new Object [][] {
+
+ },
+ new String [] {
+ "File"
+ }
+ ) {
+ Class[] types = new Class [] {
+ java.lang.String.class
+ };
+ boolean[] canEdit = new boolean [] {
+ false
+ };
+
+ public Class getColumnClass(int columnIndex) {
+ return types [columnIndex];
+ }
+
+ public boolean isCellEditable(int rowIndex, int columnIndex) {
+ return canEdit [columnIndex];
+ }
+ });
+ jScrollPane1.setViewportView(tblFilesToDownload);
+
+ jPanel3.add(jScrollPane1, java.awt.BorderLayout.CENTER);
+
+ jPanel6.setPreferredSize(new java.awt.Dimension(100, 25));
+ jPanel6.setLayout(new java.awt.BorderLayout());
+
+ jPanel16.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.CENTER, 1, 1));
+
+ btnAddDownloadFile.setText(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.btnAddDownloadFile.text")); // NOI18N
+ btnAddDownloadFile.setPreferredSize(new java.awt.Dimension(22, 24));
+ btnAddDownloadFile.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnAddDownloadFileActionPerformed(evt);
+ }
+ });
+ jPanel16.add(btnAddDownloadFile);
+
+ btnDeleteDownloadFile.setText(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.btnDeleteDownloadFile.text")); // NOI18N
+ btnDeleteDownloadFile.setPreferredSize(new java.awt.Dimension(22, 24));
+ btnDeleteDownloadFile.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnDeleteDownloadFileActionPerformed(evt);
+ }
+ });
+ jPanel16.add(btnDeleteDownloadFile);
+
+ jPanel6.add(jPanel16, java.awt.BorderLayout.WEST);
+
+ jPanel3.add(jPanel6, java.awt.BorderLayout.SOUTH);
+
+ jPanel1.add(jPanel3, java.awt.BorderLayout.NORTH);
+
+ jPanel4.setBorder(javax.swing.BorderFactory.createEtchedBorder());
+ jPanel4.setPreferredSize(new java.awt.Dimension(240, 76));
+ jPanel4.setLayout(new java.awt.BorderLayout());
+
+ jPanel9.setPreferredSize(new java.awt.Dimension(600, 32));
+ jPanel9.setLayout(new java.awt.BorderLayout());
+
+ jPanel11.setPreferredSize(new java.awt.Dimension(400, 40));
+
+ jLabel1.setText(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.jLabel1.text")); // NOI18N
+ jPanel11.add(jLabel1);
+
+ txtDownloadTarget.setEditable(false);
+ txtDownloadTarget.setText(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.txtDownloadTarget.text")); // NOI18N
+ txtDownloadTarget.setPreferredSize(new java.awt.Dimension(220, 28));
+ txtDownloadTarget.setRequestFocusEnabled(false);
+ jPanel11.add(txtDownloadTarget);
+
+ jPanel9.add(jPanel11, java.awt.BorderLayout.WEST);
+
+ jPanel12.setPreferredSize(new java.awt.Dimension(200, 40));
+
+ btnBrowseDownloadTarget.setText(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.btnBrowseDownloadTarget.text")); // NOI18N
+ btnBrowseDownloadTarget.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnBrowseDownloadTargetActionPerformed(evt);
+ }
+ });
+ jPanel12.add(btnBrowseDownloadTarget);
+
+ jPanel9.add(jPanel12, java.awt.BorderLayout.EAST);
+
+ jPanel4.add(jPanel9, java.awt.BorderLayout.NORTH);
+
+ jPanel10.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 10, 1));
+ jPanel10.setPreferredSize(new java.awt.Dimension(600, 40));
+ jPanel10.setLayout(new java.awt.BorderLayout());
+
+ jPanel13.setPreferredSize(new java.awt.Dimension(100, 40));
+ jPanel10.add(jPanel13, java.awt.BorderLayout.WEST);
+
+ jPanel14.setPreferredSize(new java.awt.Dimension(430, 40));
+ jPanel14.setRequestFocusEnabled(false);
+
+ btnUseLocaLHome.setText(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.btnUseLocaLHome.text")); // NOI18N
+ btnUseLocaLHome.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnUseLocaLHomeActionPerformed(evt);
+ }
+ });
+ jPanel14.add(btnUseLocaLHome);
+
+ btnUseLastDownload.setText(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.btnUseLastDownload.text")); // NOI18N
+ btnUseLastDownload.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnUseLastDownloadActionPerformed(evt);
+ }
+ });
+ jPanel14.add(btnUseLastDownload);
+
+ jPanel10.add(jPanel14, java.awt.BorderLayout.EAST);
+
+ jPanel4.add(jPanel10, java.awt.BorderLayout.SOUTH);
+
+ jPanel1.add(jPanel4, java.awt.BorderLayout.SOUTH);
+
+ getContentPane().add(jPanel1, java.awt.BorderLayout.NORTH);
+
+ jPanel2.setLayout(new java.awt.BorderLayout());
+
+ btnDownloadNow.setText(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.btnDownloadNow.text")); // NOI18N
+ btnDownloadNow.setEnabled(false);
+ btnDownloadNow.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnDownloadNowActionPerformed(evt);
+ }
+ });
+ jPanel15.add(btnDownloadNow);
+
+ btnCancel.setText(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.btnCancel.text")); // NOI18N
+ btnCancel.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnCancelActionPerformed(evt);
+ }
+ });
+ jPanel15.add(btnCancel);
+
+ jPanel2.add(jPanel15, java.awt.BorderLayout.EAST);
+
+ getContentPane().add(jPanel2, java.awt.BorderLayout.SOUTH);
+
+ getAccessibleContext().setAccessibleName(org.openide.util.NbBundle.getMessage(DownloadDialog.class, "DownloadDialog.AccessibleContext.accessibleName")); // NOI18N
+
+ pack();
+ }// </editor-fold>//GEN-END:initComponents
+
+ private void btnBrowseDownloadTargetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnBrowseDownloadTargetActionPerformed
+
+ JFileChooser localFileChooser = new JFileChooser();
+ localFileChooser.setMultiSelectionEnabled(false);
+ localFileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
+ localFileChooser.setDialogTitle("Select Download Target");
+ localFileChooser.setLocation(
+ (int)this.getLocation().getX(), (int)this.getLocation().getY());
+ int returnVal = localFileChooser.showOpenDialog(this);
+
+ if (returnVal == JFileChooser.APPROVE_OPTION) {
+ String downloadPath = localFileChooser.getSelectedFile().getAbsolutePath();
+ txtDownloadTarget.setText(downloadPath);
+ setDownloadButtonState();
+ }
+ }//GEN-LAST:event_btnBrowseDownloadTargetActionPerformed
+
+ private void btnUseLocaLHomeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnUseLocaLHomeActionPerformed
+ String target = System.getProperty("user.home");
+
+ if (target != null) {
+ txtDownloadTarget.setText(target);
+ }
+ setDownloadButtonState();
+ }//GEN-LAST:event_btnUseLocaLHomeActionPerformed
+
+ private void btnUseLastDownloadActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnUseLastDownloadActionPerformed
+ String target = "";
+ // see if can find some get history in the transfer queue
+ try {
+ List<LocalIRODSTransfer> transfers = idropGUI.getiDropCore().getTransferManager().getRecentQueue();
+
+ // assuming most recent first
+ for (LocalIRODSTransfer transfer: transfers) {
+ // must check to match type, user, host, zone, & resource
+ if ((transfer.getTransferType() == TransferType.GET) &&
+ (transfer.getTransferUserName().equals(idropGUI.getiDropCore().getIrodsAccount().getUserName())) &&
+ (transfer.getTransferZone().equals(idropGUI.getiDropCore().getIrodsAccount().getZone())) &&
+ (transfer.getTransferPort() == idropGUI.getiDropCore().getIrodsAccount().getPort()) &&
+ (transfer.getTransferHost().equals(idropGUI.getiDropCore().getIrodsAccount().getHost()))) {
+ target = transfer.getLocalAbsolutePath();
+ break;
+ }
+ }
+ } catch (JargonException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+ if (target != null) {
+ txtDownloadTarget.setText(target);
+ }
+ setDownloadButtonState();
+ }//GEN-LAST:event_btnUseLastDownloadActionPerformed
+
+ private void btnAddDownloadFileActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAddDownloadFileActionPerformed
+ IRODSFinderDialog irodsFinder = new IRODSFinderDialog(
+ idropGUI, false, idropGUI.getiDropCore());
+ irodsFinder.setTitle("Select iRODS Files and Collections for download");
+ irodsFinder.setSelectionType(IRODSFinderDialog.SelectionType.OBJS_AND_COLLS_SELECTION_MODE);
+ irodsFinder.setLocation(
+ (int)this.getLocation().getX(), (int)this.getLocation().getY());
+ irodsFinder.setVisible(true);
+
+ List<String> selectedPaths = irodsFinder.getSelectedAbsolutePaths();
+ for (String selectedPath: selectedPaths) {
+ if (selectedPath != null) {
+ DefaultTableModel model = (DefaultTableModel) tblFilesToDownload.getModel();
+ model.addRow(new Object[] {selectedPath});
+ }
+ }
+ setDownloadButtonState();
+ }//GEN-LAST:event_btnAddDownloadFileActionPerformed
+
+ private void btnDeleteDownloadFileActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnDeleteDownloadFileActionPerformed
+
+ int[] selectedRows = tblFilesToDownload.getSelectedRows();
+ int numRowsSelected = selectedRows.length;
+
+ // have to remove rows in reverse
+ for(int i=numRowsSelected-1; i>=0; i--) {
+ //for (int selectedRow: selectedRows) {
+ int selectedRow = selectedRows[i];
+ if (selectedRow >= 0) {
+ DefaultTableModel model = (DefaultTableModel) tblFilesToDownload.getModel();
+ model.removeRow(selectedRow);
+ }
+ }
+ }//GEN-LAST:event_btnDeleteDownloadFileActionPerformed
+
+ private void btnDownloadNowActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnDownloadNowActionPerformed
+ executeDownload();
+ this.dispose();
+ }//GEN-LAST:event_btnDownloadNowActionPerformed
+
+ private void btnCancelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnCancelActionPerformed
+ this.dispose();
+ }//GEN-LAST:event_btnCancelActionPerformed
+
+ // Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JButton btnAddDownloadFile;
+ private javax.swing.JButton btnBrowseDownloadTarget;
+ private javax.swing.JButton btnCancel;
+ private javax.swing.JButton btnDeleteDownloadFile;
+ private javax.swing.JButton btnDownloadNow;
+ private javax.swing.JButton btnUseLastDownload;
+ private javax.swing.JButton btnUseLocaLHome;
+ private javax.swing.JLabel jLabel1;
+ private javax.swing.JLabel jLabel2;
+ private javax.swing.JPanel jPanel1;
+ private javax.swing.JPanel jPanel10;
+ private javax.swing.JPanel jPanel11;
+ private javax.swing.JPanel jPanel12;
+ private javax.swing.JPanel jPanel13;
+ private javax.swing.JPanel jPanel14;
+ private javax.swing.JPanel jPanel15;
+ private javax.swing.JPanel jPanel16;
+ private javax.swing.JPanel jPanel2;
+ private javax.swing.JPanel jPanel3;
+ private javax.swing.JPanel jPanel4;
+ private javax.swing.JPanel jPanel6;
+ private javax.swing.JPanel jPanel9;
+ private javax.swing.JScrollPane jScrollPane1;
+ private javax.swing.JTable tblFilesToDownload;
+ private javax.swing.JTextField txtDownloadTarget;
+ // End of variables declaration//GEN-END:variables
+
+}
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.java
index 2f263b5..e395fb6 100644
--- a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.java
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.java
@@ -1883,6 +1883,11 @@ public class IDROPConfigurationPanel extends javax.swing.JDialog {
throw new IdropRuntimeException("error getting resource list", ex);
}
}
+ // check to see if default resource editing is allowed
+ String allowEdit = idropCore.getIdropConfig().getPropertyForKey(IdropConfigurationService.IDROP_ENABLE_RESC_EDIT);
+ if (allowEdit != null && allowEdit.equals("false")) {
+ comboPrefsDefaultResource.setEnabled(false);
+ }
}
protected void updateDetailsForSelectedSynch(int i) {
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/StartupSequencer.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPDesktop.java
index bfd9dfd..72feca9 100644
--- a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/StartupSequencer.java
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPDesktop.java
@@ -28,14 +28,14 @@ import org.slf4j.LoggerFactory;
*
* @author Mike Conway - DICE (www.irods.org)
*/
-public class StartupSequencer {
+public class IDROPDesktop {
/**
* NOTE this class is in transition!!!!!!
*/
private iDrop idrop;
private IDROPCore idropCore;
- private static final org.slf4j.Logger log = LoggerFactory.getLogger(StartupSequencer.class);
+ private static final org.slf4j.Logger log = LoggerFactory.getLogger(IDROPDesktop.class);
public static final int STARTUP_SEQUENCE_PAUSE_INTERVAL = 1000;
public void doStartupSequence() {
@@ -55,7 +55,7 @@ public class StartupSequencer {
try {
idropCore.setIrodsFileSystem(IRODSFileSystem.instance());
} catch (JargonException ex) {
- Logger.getLogger(StartupSequencer.class.getName()).log(
+ Logger.getLogger(IDROPDesktop.class.getName()).log(
Level.SEVERE, null, ex);
}
@@ -133,7 +133,7 @@ public class StartupSequencer {
JOptionPane.OK_OPTION);
System.exit(1);
} catch (IdropException ex) {
- Logger.getLogger(StartupSequencer.class.getName()).log(
+ Logger.getLogger(IDROPDesktop.class.getName()).log(
Level.SEVERE, null, ex);
throw new IdropRuntimeException(ex);
}
@@ -142,7 +142,7 @@ public class StartupSequencer {
try {
idropCore.getIdropConfigurationService().pushIDROPConfigToJargonAndTransfer();
} catch (Exception ex) {
- Logger.getLogger(StartupSequencer.class.getName()).log(
+ Logger.getLogger(IDROPDesktop.class.getName()).log(
Level.SEVERE, null, ex);
throw new IdropRuntimeException(ex);
}
@@ -179,7 +179,7 @@ public class StartupSequencer {
idropCore.setTransferManager(new TransferManagerImpl(idropCore.getIrodsFileSystem(), idrop));
idropCore.getIdropConfigurationService().updateTransferOptions();
} catch (JargonException ex) {
- Logger.getLogger(StartupSequencer.class.getName()).log(
+ Logger.getLogger(IDROPDesktop.class.getName()).log(
Level.SEVERE, null, ex);
throw new IdropRuntimeException("error creating transferManager",
ex);
@@ -200,7 +200,7 @@ public class StartupSequencer {
idropSplashWindow.toFront();
}
} catch (JargonException ex) {
- Logger.getLogger(StartupSequencer.class.getName()).log(
+ Logger.getLogger(IDROPDesktop.class.getName()).log(
Level.SEVERE, null, ex);
throw new IdropRuntimeException("error evaluating current queue",
ex);
@@ -257,7 +257,7 @@ public class StartupSequencer {
idropCore.setQueueTimer(timer);
} catch (IdropException ex) {
- Logger.getLogger(StartupSequencer.class.getName()).log(
+ Logger.getLogger(IDROPDesktop.class.getName()).log(
Level.SEVERE, null, ex);
}
@@ -271,7 +271,7 @@ public class StartupSequencer {
idropSplashWindow.setVisible(false);
idropSplashWindow = null;
} catch (Exception e) {
- Logger.getLogger(StartupSequencer.class.getName()).log(
+ Logger.getLogger(IDROPDesktop.class.getName()).log(
Level.SEVERE, null, e);
throw new IdropRuntimeException("error starting idrop gui", e);
@@ -313,7 +313,7 @@ public class StartupSequencer {
idropPreBootstrapperService.storePriorVersion(derivedConfigHomeDirectory, currentVersion);
} catch (IdropException ex) {
- Logger.getLogger(StartupSequencer.class.getName()).log(
+ Logger.getLogger(IDROPDesktop.class.getName()).log(
Level.SEVERE, null, ex);
throw new IdropRuntimeException(ex);
}
@@ -337,7 +337,7 @@ public class StartupSequencer {
* @param args the command line arguments
*/
public static void main(final String args[]) throws InterruptedException {
- StartupSequencer startupSequencer = new StartupSequencer();
+ IDROPDesktop startupSequencer = new IDROPDesktop();
try {
startupSequencer.doStartupSequence();
} catch (Exception e) {
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IRODSInfoDialog.form b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IRODSInfoDialog.form
new file mode 100644
index 0000000..6a4a44b
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IRODSInfoDialog.form
@@ -0,0 +1,1457 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.6" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JDialogFormInfo">
+ <NonVisualComponents>
+ <Container class="javax.swing.JPanel" name="jPanel2">
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <EmptySpace min="0" pref="100" max="32767" attributes="0"/>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <EmptySpace min="0" pref="100" max="32767" attributes="0"/>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ </Container>
+ </NonVisualComponents>
+ <Properties>
+ <Property name="defaultCloseOperation" type="int" value="2"/>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[560, 720]"/>
+ </Property>
+ </Properties>
+ <SyntheticProperties>
+ <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+ </SyntheticProperties>
+ <AuxValues>
+ <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="1"/>
+ <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="2"/>
+ <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+ <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+ <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,3,-63,0,0,2,97"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel1">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="10" left="10" right="10" top="14"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[600, 750]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlSelectedObject">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="1" left="4" right="4" top="1"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[528, 70]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="First"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" attributes="0">
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" max="-2" attributes="0">
+ <Component id="lblObjectCollection" pref="140" max="32767" attributes="0"/>
+ <Component id="jLabel2" max="32767" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" max="-2" attributes="0">
+ <Component id="lblInfoObjectName" pref="362" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectParent" max="32767" attributes="0"/>
+ </Group>
+ <EmptySpace pref="67" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="lblObjectCollection" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectName" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel2" alignment="3" min="-2" pref="20" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectParent" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace pref="19" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="lblObjectCollection">
+ <Properties>
+ <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
+ <Font name="Lucida Grande" size="14" style="0"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblObjectCollection.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel2">
+ <Properties>
+ <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
+ <Font name="Lucida Grande" size="14" style="0"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel2.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectName">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectName.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectParent">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectParent.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JTabbedPane" name="tabbedpanelMain">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[600, 867]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlInfoTab">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+ <JTabbedPaneConstraints tabName="Info">
+ <Property name="tabTitle" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.pnlInfoTab.TabConstraints.tabTitle" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </JTabbedPaneConstraints>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlInfoCards">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo">
+ <EtchetBorder/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[555, 640]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignCardLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlCollectionInfo">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[515, 500]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignCardLayout" value="org.netbeans.modules.form.compat2.layouts.DesignCardLayout$CardConstraintsDescription">
+ <CardConstraints cardName="cardCollectionInfo"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" attributes="0">
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="1" max="-2" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jLabel22" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel23" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel24" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel25" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel26" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel27" alignment="0" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace min="24" pref="24" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="lblInfoCollectionOwnerZone" alignment="0" pref="400" max="32767" attributes="0"/>
+ <Component id="lblInfoCollectionType" alignment="0" max="32767" attributes="0"/>
+ <Component id="lblInfoCollectionObjectPath" alignment="0" max="32767" attributes="0"/>
+ <Component id="lblInfoCollectionDescription" alignment="0" max="32767" attributes="0"/>
+ <Component id="lblInfoCollectionInfo1" alignment="0" max="32767" attributes="0"/>
+ <Component id="lblInfoCollectionInfo2" alignment="0" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ <Group type="102" alignment="0" attributes="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jLabel19" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel20" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel21" alignment="0" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace min="47" pref="47" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" max="-2" attributes="0">
+ <Component id="lblInfoCollectionCreatedDate" alignment="0" pref="400" max="32767" attributes="0"/>
+ <Component id="lblInfoCollectionModifiedDate" alignment="0" max="32767" attributes="0"/>
+ <Component id="lblInfoCollectionOwner" alignment="0" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </Group>
+ <EmptySpace min="-2" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <EmptySpace min="-2" pref="24" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel19" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoCollectionCreatedDate" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="separate" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel20" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoCollectionModifiedDate" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="separate" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel21" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoCollectionOwner" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="separate" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel22" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoCollectionOwnerZone" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="separate" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel23" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoCollectionType" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="separate" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel24" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoCollectionObjectPath" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="separate" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel25" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoCollectionDescription" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="separate" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel26" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoCollectionInfo1" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="separate" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel27" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoCollectionInfo2" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace pref="289" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="jLabel19">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel19.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel20">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel20.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel21">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel21.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel22">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel22.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel23">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel23.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel24">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel24.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel25">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel25.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel26">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel26.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel27">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel27.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoCollectionCreatedDate">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoCollectionCreatedDate.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoCollectionModifiedDate">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoCollectionModifiedDate.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoCollectionOwner">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoCollectionOwner.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoCollectionOwnerZone">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoCollectionOwnerZone.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoCollectionType">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoCollectionType.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoCollectionObjectPath">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoCollectionObjectPath.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoCollectionDescription">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoCollectionDescription.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoCollectionInfo1">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoCollectionInfo1.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoCollectionInfo2">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoCollectionInfo2.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlObjectInfo">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[550, 530]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignCardLayout" value="org.netbeans.modules.form.compat2.layouts.DesignCardLayout$CardConstraintsDescription">
+ <CardConstraints cardName="cardObjectInfo"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" attributes="0">
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" max="-2" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jLabel3" alignment="0" min="-2" pref="70" max="-2" attributes="0"/>
+ <Component id="jLabel4" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel5" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel6" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel7" alignment="0" min="-2" pref="90" max="-2" attributes="0"/>
+ <Component id="jLabel8" alignment="0" min="-2" pref="90" max="-2" attributes="0"/>
+ <Component id="jLabel9" alignment="0" min="-2" pref="115" max="-2" attributes="0"/>
+ <Component id="jLabel10" alignment="0" min="-2" pref="80" max="-2" attributes="0"/>
+ <Component id="jLabel11" alignment="0" min="-2" pref="70" max="-2" attributes="0"/>
+ <Component id="jLabel12" alignment="0" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace min="-2" pref="22" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" max="-2" attributes="0">
+ <Component id="lblInfoObjectResource" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectReplicaNumber" alignment="0" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectSize" alignment="0" pref="370" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectCreatedDate" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectModifiedDate" alignment="0" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectOwner" alignment="0" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectOwnerZone" alignment="0" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectDataPath" alignment="0" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectResourceGroup" alignment="0" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectChecksum" alignment="0" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ <Group type="102" alignment="0" attributes="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jLabel13" alignment="0" min="-2" pref="125" max="-2" attributes="0"/>
+ <Component id="jLabel14" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel15" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel16" alignment="0" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="unrelated" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="lblInfoObjectReplicationStatus" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectStatus" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectType" max="32767" attributes="0"/>
+ <Component id="lblInfoObjectVersion" alignment="0" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </Group>
+ <EmptySpace pref="51" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" attributes="0">
+ <EmptySpace min="-2" pref="18" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectSize" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <Group type="102" alignment="1" attributes="0">
+ <EmptySpace max="-2" attributes="0"/>
+ <Component id="jLabel3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="lblInfoObjectCreatedDate" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel4" alignment="0" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel5" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectModifiedDate" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="lblInfoObjectOwner" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel6" alignment="1" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel7" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectOwnerZone" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="lblInfoObjectDataPath" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel8" alignment="1" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jLabel9" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectResourceGroup" alignment="1" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="lblInfoObjectChecksum" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel10" alignment="1" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jLabel11" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectResource" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel12" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectReplicaNumber" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel13" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectReplicationStatus" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel14" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectStatus" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel15" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectType" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel16" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="lblInfoObjectVersion" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace pref="281" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="jLabel3">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel3.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel4">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel4.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel5">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel5.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel6">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel6.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel7">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel7.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel8">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel8.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel9">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel9.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel10">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel10.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel11">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel11.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel12">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel12.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel13">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel13.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel14">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel14.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel15">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel15.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel16">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel16.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectSize">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectSize.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectCreatedDate">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectCreatedDate.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectModifiedDate">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectModifiedDate.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectOwner">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectOwner.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectOwnerZone">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectOwnerZone.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectDataPath">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectDataPath.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectResourceGroup">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectResourceGroup.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectChecksum">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectChecksum.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectResource">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectResource.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectReplicaNumber">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectReplicaNumber.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectReplicationStatus">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectReplicationStatus.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectStatus">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectStatus.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectType">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectType.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblInfoObjectVersion">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.lblInfoObjectVersion.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlTagsComments">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo">
+ <EtchetBorder/>
+ </Border>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" attributes="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="1" attributes="0">
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jLabel17" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel18" alignment="0" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace pref="66" max="32767" attributes="0"/>
+ <Group type="103" groupAlignment="0" max="-2" attributes="0">
+ <Component id="txtInfoTags" max="32767" attributes="0"/>
+ <Component id="jScrollPane1" pref="408" max="32767" attributes="0"/>
+ </Group>
+ <EmptySpace min="-2" pref="6" max="-2" attributes="0"/>
+ </Group>
+ <Group type="102" alignment="1" attributes="0">
+ <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+ <Component id="btnUpdateTagsComments" min="-2" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" attributes="0">
+ <EmptySpace min="-2" pref="6" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel17" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="txtInfoTags" alignment="3" min="-2" pref="28" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="unrelated" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jLabel18" min="-2" max="-2" attributes="0"/>
+ <Component id="jScrollPane1" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="unrelated" max="-2" attributes="0"/>
+ <Component id="btnUpdateTagsComments" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="jLabel17">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel17.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JTextField" name="txtInfoTags">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.txtInfoTags.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel18">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel18.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Container class="javax.swing.JScrollPane" name="jScrollPane1">
+ <AuxValues>
+ <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JTextArea" name="textareaInfoComments">
+ <Properties>
+ <Property name="columns" type="int" value="20"/>
+ <Property name="rows" type="int" value="5"/>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Component class="javax.swing.JButton" name="btnUpdateTagsComments">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.btnUpdateTagsComments.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnUpdateTagsCommentsActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlMetadataTab">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+ <JTabbedPaneConstraints tabName="Metadata">
+ <Property name="tabTitle" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.pnlMetadataTab.TabConstraints.tabTitle" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </JTabbedPaneConstraints>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlMetadataTable">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JScrollPane" name="jScrollPane2">
+ <AuxValues>
+ <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JTable" name="tableMetadata">
+ <Properties>
+ <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor">
+ <Table columnCount="3" rowCount="4">
+ <Column editable="false" title="Attribute" type="java.lang.String"/>
+ <Column editable="false" title="Value" type="java.lang.String"/>
+ <Column editable="false" title="Unit" type="java.lang.String"/>
+ </Table>
+ </Property>
+ <Property name="selectionModel" type="javax.swing.ListSelectionModel" editor="org.netbeans.modules.form.editors2.JTableSelectionModelEditor">
+ <JTableSelectionModel selectionMode="2"/>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel5">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="2" left="2" right="2" top="2"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[568, 44]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel6">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[100, 40]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="East"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <EmptySpace min="0" pref="100" max="32767" attributes="0"/>
+ <Group type="103" rootIndex="1" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <EmptySpace min="-2" pref="8" max="-2" attributes="0"/>
+ <Component id="btnMetadataDelete" min="-2" max="-2" attributes="0"/>
+ <EmptySpace pref="8" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <EmptySpace min="0" pref="40" max="32767" attributes="0"/>
+ <Group type="103" rootIndex="1" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <EmptySpace min="-2" pref="5" max="-2" attributes="0"/>
+ <Component id="btnMetadataDelete" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnMetadataDelete">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.btnMetadataDelete.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="actionCommand" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.btnMetadataDelete.actionCommand" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="enabled" type="boolean" value="false"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMetadataDeleteActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlMetaDataEdit">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo">
+ <EtchetBorder/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[527, 200]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" attributes="0">
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" attributes="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jLabel28" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel29" alignment="0" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabel30" alignment="0" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace type="unrelated" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="txtMetadataValue" alignment="0" pref="480" max="32767" attributes="0"/>
+ <Component id="txtMetadataAttribute" alignment="1" max="32767" attributes="0"/>
+ <Component id="txtMetadataUnit" max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ <Group type="102" alignment="1" attributes="0">
+ <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+ <Component id="btnMetadataClear" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ <Component id="btnMetadataCreate" min="-2" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <EmptySpace pref="18" max="32767" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel28" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="txtMetadataAttribute" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace min="-2" pref="18" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel29" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="txtMetadataValue" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace min="-2" pref="18" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel30" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="txtMetadataUnit" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace min="-2" pref="23" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="btnMetadataClear" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="btnMetadataCreate" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="jLabel28">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel28.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel29">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel29.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel30">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.jLabel30.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnMetadataClear">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.btnMetadataClear.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMetadataClearActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnMetadataCreate">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.btnMetadataCreate.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="enabled" type="boolean" value="false"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMetadataCreateActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JTextField" name="txtMetadataAttribute">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.txtMetadataAttribute.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JTextField" name="txtMetadataValue">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.txtMetadataValue.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JTextField" name="txtMetadataUnit">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.txtMetadataUnit.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlPermissionsTab">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+ <JTabbedPaneConstraints tabName="Permissions">
+ <Property name="tabTitle" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.pnlPermissionsTab.TabConstraints.tabTitle" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </JTabbedPaneConstraints>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlPermissionsTable">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JScrollPane" name="jScrollPane3">
+ <AuxValues>
+ <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JTable" name="tablePermissions">
+ <Properties>
+ <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor">
+ <Table columnCount="2" rowCount="4">
+ <Column editable="false" title="User Name" type="java.lang.String">
+ <Data value=""/>
+ <Data value="null"/>
+ <Data value="null"/>
+ <Data value="null"/>
+ </Column>
+ <Column editable="true" title="Share Permission" type="java.lang.Object"/>
+ </Table>
+ </Property>
+ <Property name="selectionModel" type="javax.swing.ListSelectionModel" editor="org.netbeans.modules.form.editors2.JTableSelectionModelEditor">
+ <JTableSelectionModel selectionMode="2"/>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel7">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="2" left="2" right="2" top="2"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[568, 44]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel8">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[100, 44]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="East"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="1" attributes="0">
+ <EmptySpace pref="19" max="32767" attributes="0"/>
+ <Component id="btnPermissionsSave" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="1" attributes="0">
+ <EmptySpace max="32767" attributes="0"/>
+ <Component id="btnPermissionsSave" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnPermissionsSave">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.btnPermissionsSave.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="actionCommand" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.btnPermissionsSave.actionCommand" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="enabled" type="boolean" value="false"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnPermissionsSaveActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel9">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[100, 25]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="West"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel16">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="West"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout">
+ <Property name="horizontalGap" type="int" value="1"/>
+ <Property name="verticalGap" type="int" value="1"/>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnAddSharePermissions">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.btnAddSharePermissions.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[22, 24]"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnAddSharePermissionsActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnDeleteSharePermissions">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.btnDeleteSharePermissions.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="enabled" type="boolean" value="false"/>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[22, 24]"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnDeleteSharePermissionsActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlCloseBtn">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[589, 35]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Last"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel3">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[100, 40]"/>
+ </Property>
+ <Property name="size" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[200, 100]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="West"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <EmptySpace min="0" pref="100" max="32767" attributes="0"/>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <EmptySpace min="0" pref="35" max="32767" attributes="0"/>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel4">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="East"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="1" attributes="0">
+ <EmptySpace pref="417" max="32767" attributes="0"/>
+ <Component id="btnRefresh" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ <Component id="btnClose" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="1" attributes="0">
+ <EmptySpace min="0" pref="6" max="32767" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="btnClose" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="btnRefresh" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnClose">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.btnClose.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnCloseActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnRefresh">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IRODSInfoDialog.btnRefresh.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnRefreshActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+</Form>
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IRODSInfoDialog.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IRODSInfoDialog.java
new file mode 100644
index 0000000..3891b1f
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IRODSInfoDialog.java
@@ -0,0 +1,1821 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.irods.jargon.idrop.desktop.systraygui;
+
+import java.awt.CardLayout;
+import java.awt.Cursor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.io.FileNotFoundException;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import javax.swing.DefaultCellEditor;
+import javax.swing.JOptionPane;
+import javax.swing.ListSelectionModel;
+import javax.swing.event.DocumentEvent;
+import javax.swing.event.DocumentListener;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+import javax.swing.table.TableColumn;
+import org.irods.jargon.core.connection.IRODSAccount;
+import org.irods.jargon.core.exception.JargonException;
+import org.irods.jargon.core.protovalues.FilePermissionEnum;
+import org.irods.jargon.core.pub.CollectionAO;
+import org.irods.jargon.core.pub.CollectionAndDataObjectListAndSearchAOImpl;
+import org.irods.jargon.core.pub.DataObjectAO;
+import org.irods.jargon.core.pub.IRODSFileSystem;
+import org.irods.jargon.core.pub.UserAO;
+import org.irods.jargon.core.pub.domain.AvuData;
+import org.irods.jargon.core.pub.domain.Collection;
+import org.irods.jargon.core.pub.domain.DataObject;
+import org.irods.jargon.core.pub.domain.User;
+import org.irods.jargon.core.pub.domain.UserFilePermission;
+import org.irods.jargon.core.query.CollectionAndDataObjectListingEntry;
+import org.irods.jargon.idrop.desktop.systraygui.services.IRODSFileService;
+import org.irods.jargon.idrop.desktop.systraygui.utils.FieldFormatHelper;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSNode;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSOutlineModel;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSTree;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.MetadataTableModel;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.PermissionsTableModel;
+import org.irods.jargon.idrop.exceptions.IdropException;
+import org.irods.jargon.usertagging.domain.IRODSTagValue;
+import org.irods.jargon.usertagging.tags.FreeTaggingService;
+import org.irods.jargon.usertagging.tags.IRODSTaggingService;
+import org.irods.jargon.usertagging.tags.TaggingServiceFactory;
+import org.irods.jargon.usertagging.tags.TaggingServiceFactoryImpl;
+import org.openide.util.Exceptions;
+import org.slf4j.LoggerFactory;
+
+/**
+ *
+ * @author lisa
+ */
+public class IRODSInfoDialog extends javax.swing.JDialog implements
+ ListSelectionListener, DocumentListener, ActionListener {
+
+ private final iDrop idropGUI;
+ private final IRODSAccount irodsAccount;
+ private String selectedObjectFullPath;
+ private String selectedObjectName;
+ private String selectedObjectParent;
+ private final IRODSFileSystem irodsFileSystem;
+ private final IRODSTree irodsTree;
+ private IRODSInfoDialog dialog;
+ public static org.slf4j.Logger log = LoggerFactory.getLogger(IRODSTree.class);
+ //private final String fileName;
+
+ /**
+ * Creates new form IRODSInfoDialog
+ */
+// public IRODSInfoDialog(java.awt.Frame parent, boolean modal) {
+// super(parent, modal);
+// initComponents();
+// }
+ public IRODSInfoDialog(final iDrop parent, final boolean modal,
+ final IRODSTree irodsTree) {
+
+ super(parent, modal);
+ this.idropGUI = parent;
+ this.irodsAccount = idropGUI.getiDropCore().getIrodsAccount();
+ this.irodsFileSystem = idropGUI.getiDropCore().getIrodsFileSystem();
+ this.irodsTree = irodsTree;
+ initSelectedObjectName();
+ initComponents();
+
+ selectInfoCard();
+
+ initializeFileInfo();
+ initMetadataInfo();
+ initPermissionInfo();
+
+ // for now hide clear button
+ btnMetadataClear.setVisible(false);
+ }
+
+ private void initSelectedObjectName() {
+
+ IRODSFileService irodsFS = null;
+
+ try {
+ irodsFS = new IRODSFileService(idropGUI.getiDropCore().getIrodsAccount(),
+ idropGUI.getiDropCore().getIrodsFileSystem());
+ } catch (Exception ex) {
+ log.error("cannot create irods file service");
+ return;
+ }
+
+ IRODSOutlineModel irodsFileSystemModel = (IRODSOutlineModel) irodsTree.getModel();
+ ListSelectionModel selectionModel = irodsTree.getSelectionModel();
+ int idxStart = selectionModel.getMinSelectionIndex();
+
+ IRODSNode selectedNode = (IRODSNode) irodsFileSystemModel.getValueAt(idxStart, 0);
+ selectedObjectFullPath = selectedNode.getFullPath();
+ String objectPath[] = selectedObjectFullPath.split("/");
+ selectedObjectName = objectPath[objectPath.length - 1];
+ IRODSNode pNode = (IRODSNode) selectedNode.getParent();
+ selectedObjectParent = pNode.getFullPath();
+ }
+
+ private void selectInfoCard() {
+
+ CardLayout cl = (CardLayout) (pnlInfoCards.getLayout());
+ if (isCollection()) {
+ lblObjectCollection.setText("Collection:");
+ cl.show(pnlInfoCards, "cardCollectionInfo");
+ } else {
+ lblObjectCollection.setText("Object:");
+ cl.show(pnlInfoCards, "cardObjectInfo");
+ }
+
+ // also populate header
+ if (selectedObjectName != null) {
+ lblInfoObjectName.setText(selectedObjectName);
+ }
+ if (selectedObjectParent != null) {
+ lblInfoObjectParent.setText(selectedObjectParent);
+ }
+ }
+
+ private void initializeFileInfo() {
+ this.dialog = this;
+ java.awt.EventQueue.invokeLater(new Runnable() {
+ @Override
+ public void run() {
+ dialog.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
+ try {
+
+ TaggingServiceFactory taggingServiceFactory = new TaggingServiceFactoryImpl(irodsFileSystem.getIRODSAccessObjectFactory());
+ FreeTaggingService freeTaggingService = taggingServiceFactory.instanceFreeTaggingService(irodsAccount);
+ IRODSTaggingService irodsTaggingService = taggingServiceFactory.instanceIrodsTaggingService(irodsAccount);
+
+ if (isCollection()) {
+
+ CollectionAO collectionAO = irodsFileSystem.getIRODSAccessObjectFactory().getCollectionAO(irodsAccount);
+ Collection collection = collectionAO.findByAbsolutePath(selectedObjectFullPath);
+
+ if (collection.getCreatedAt().toString() != null) {
+ lblInfoCollectionCreatedDate.setText(collection.getCreatedAt().toString());
+ } else {
+ lblInfoCollectionCreatedDate.setText("");
+ }
+
+ if (collection.getModifiedAt().toString() != null) {
+ lblInfoCollectionModifiedDate.setText(collection.getModifiedAt().toString());
+ } else {
+ lblInfoCollectionModifiedDate.setText("");
+ }
+
+ if (collection.getCollectionOwnerName() != null) {
+ lblInfoCollectionOwner.setText(collection.getCollectionOwnerName());
+ } else {
+ lblInfoCollectionOwner.setText("");
+ }
+
+ if (collection.getComments() != null) {
+ lblInfoCollectionDescription.setText(collection.getComments());
+ } else {
+ lblInfoCollectionDescription.setText("");
+ }
+
+ if (collection.getSpecColType() != null) {
+ lblInfoCollectionType.setText(collection.getSpecColType().name());
+ } else {
+ lblInfoCollectionType.setText("");
+ }
+
+ if (collection.getCollectionOwnerZone() != null) {
+ lblInfoCollectionOwnerZone.setText(collection.getCollectionOwnerZone());
+ } else {
+ lblInfoCollectionOwnerZone.setText("");
+ }
+
+ if (collection.getObjectPath() != null) {
+ lblInfoCollectionObjectPath.setText(collection.getObjectPath());
+ } else {
+ lblInfoCollectionObjectPath.setText("");
+ }
+
+ if (collection.getInfo1() != null) {
+ lblInfoCollectionInfo1.setText(collection.getInfo1());
+ } else {
+ lblInfoCollectionInfo1.setText("");
+ }
+
+ if (collection.getInfo2() != null) {
+ lblInfoCollectionInfo2.setText(collection.getInfo2());
+ } else {
+ lblInfoCollectionInfo2.setText("");
+ }
+
+ // now populate tags and comments for collection
+ txtInfoTags.setText(freeTaggingService.getTagsForCollectionInFreeTagForm(
+ selectedObjectFullPath).getSpaceDelimitedTagsForDomain());
+ IRODSTagValue irodsTagValue = irodsTaggingService.getDescriptionOnCollectionForLoggedInUser(
+ selectedObjectFullPath);
+ if (irodsTagValue != null) {
+ textareaInfoComments.setText(irodsTagValue.getTagData());
+ }
+
+ }
+ else {
+
+ DataObjectAO dataObjectAO = irodsFileSystem.getIRODSAccessObjectFactory().getDataObjectAO(irodsAccount);
+ DataObject dataObject = dataObjectAO.findByAbsolutePath(selectedObjectFullPath);
+
+ if (dataObject.getDataSize() >= 0) {
+ lblInfoObjectSize.setText(FieldFormatHelper.formatFileLength(dataObject.getDataSize()));
+ } else {
+ lblInfoObjectSize.setText("");
+ }
+
+ if (dataObject.getCreatedAt().toString() != null) {
+ lblInfoObjectCreatedDate.setText(dataObject.getCreatedAt().toString());
+ } else {
+ lblInfoObjectCreatedDate.setText("");
+ }
+
+ if (dataObject.getUpdatedAt().toString() != null) {
+ lblInfoObjectModifiedDate.setText(dataObject.getUpdatedAt().toString());
+ } else {
+ lblInfoObjectCreatedDate.setText("");
+ }
+
+ if (dataObject.getDataOwnerName() != null) {
+ lblInfoObjectOwner.setText(dataObject.getDataOwnerName());
+ } else {
+ lblInfoObjectOwner.setText("");
+ }
+
+ if (dataObject.getDataOwnerZone() != null) {
+ lblInfoObjectOwnerZone.setText(dataObject.getDataOwnerZone());
+ } else {
+ lblInfoObjectOwnerZone.setText("");
+ }
+
+ if (dataObject.getDataPath() != null) {
+ lblInfoObjectDataPath.setText(dataObject.getDataPath());
+ } else {
+ lblInfoObjectDataPath.setText("");
+ }
+
+ if (dataObject.getResourceGroupName() != null) {
+ lblInfoObjectResourceGroup.setText(dataObject.getResourceGroupName());
+ } else {
+ lblInfoObjectResourceGroup.setText("");
+ }
+
+ if (dataObject.getChecksum() != null) {
+ lblInfoObjectChecksum.setText(dataObject.getChecksum());
+ } else {
+ lblInfoObjectChecksum.setText("");
+ }
+
+ if (dataObject.getResourceName() != null) {
+ lblInfoObjectResource.setText(dataObject.getResourceName());
+ } else {
+ lblInfoObjectResource.setText("");
+ }
+
+ if (dataObject.getDataReplicationNumber() >= 0) {
+ lblInfoObjectReplicaNumber.setText(Integer.toString(dataObject.getDataReplicationNumber()));
+ } else {
+ lblInfoObjectReplicaNumber.setText("");
+ }
+
+ if (dataObject.getReplicationStatus() != null) {
+ lblInfoObjectReplicationStatus.setText(dataObject.getReplicationStatus());
+ } else {
+ lblInfoObjectReplicationStatus.setText("");
+ }
+
+ if (dataObject.getDataStatus() != null) {
+ lblInfoObjectStatus.setText(dataObject.getDataStatus());
+ } else {
+ lblInfoObjectStatus.setText("");
+ }
+
+ if (dataObject.getDataTypeName() != null) {
+ lblInfoObjectType.setText(dataObject.getDataTypeName());
+ } else {
+ lblInfoObjectType.setText("");
+ }
+
+ if (dataObject.getDataVersion() >= 0) {
+ lblInfoObjectVersion.setText(Integer.toString(dataObject.getDataVersion()));
+ } else {
+ lblInfoObjectVersion.setText("");
+ }
+
+ // now populate tags and comments for data object
+ txtInfoTags.setText(freeTaggingService.getTagsForDataObjectInFreeTagForm(
+ selectedObjectFullPath).getSpaceDelimitedTagsForDomain());
+ IRODSTagValue irodsTagValue = irodsTaggingService.getDescriptionOnDataObjectForLoggedInUser(
+ selectedObjectFullPath);
+ if (irodsTagValue != null) {
+ textareaInfoComments.setText(irodsTagValue.getTagData());
+ }
+
+ }
+
+ } catch (FileNotFoundException ex) {
+ Exceptions.printStackTrace(ex);
+ } catch (JargonException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+
+ dialog.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+ }
+ });
+ }
+
+ private void initMetadataInfo() {
+ this.dialog = this;
+ java.awt.EventQueue.invokeLater(new Runnable() {
+ @Override
+ public void run() {
+ dialog.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
+ try {
+ // set up metadata table and table model
+ IRODSFileService irodsFileService = new IRODSFileService(
+ irodsAccount, irodsFileSystem);
+ MetadataTableModel metadataTableModel;
+
+ if (isCollection()) {
+ metadataTableModel = new MetadataTableModel(
+ irodsFileService.getMetadataForCollection(selectedObjectFullPath));
+ } else {
+ metadataTableModel = new MetadataTableModel(
+ irodsFileService.getMetadataForDataObject(
+ selectedObjectParent, selectedObjectName));
+ }
+ tableMetadata.setModel(metadataTableModel);
+ tableMetadata.getSelectionModel().addListSelectionListener(dialog);
+ tableMetadata.validate();
+
+ // add document listener to metadata text fields
+ txtMetadataAttribute.getDocument().addDocumentListener(dialog);
+ txtMetadataValue.getDocument().addDocumentListener(dialog);
+ txtMetadataUnit.getDocument().addDocumentListener(dialog);
+ } catch (IdropException ex) {
+ Logger.getLogger(MetadataViewDialog.class.getName()).log(
+ Level.SEVERE, null, ex);
+ idropGUI.showIdropException(ex);
+ }
+
+ dialog.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+ }
+ });
+ }
+
+ private void initPermissionInfo() {
+ this.dialog = this;
+ java.awt.EventQueue.invokeLater(new Runnable() {
+ @Override
+ public void run() {
+
+ // set up combobox lists
+ List<User> users = null;
+ dialog.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
+
+ // this list of ACLs contains permission that are not suppoted?
+ //List<FilePermissionEnum> permissions = FilePermissionEnum.listAllValues();
+ //for (FilePermissionEnum permission: permissions) {
+ //cbPermissionsPermission.addItem(permission.name());
+ //}
+ // will just do my own for now
+ //cbPermissionsPermission.addItem("NONE");
+ javax.swing.JComboBox tableCombo = new javax.swing.JComboBox();
+ tableCombo.addItem("READ");
+ tableCombo.addItem("WRITE");
+ tableCombo.addItem("OWN");
+
+ // set up permission table and table model
+ PermissionsTableModel permissionsTableModel = null;
+ try {
+ if (isCollection()) {
+ CollectionAO collectionAO = irodsFileSystem.getIRODSAccessObjectFactory().getCollectionAO(irodsAccount);
+ permissionsTableModel = new PermissionsTableModel(
+ collectionAO.listPermissionsForCollection(selectedObjectFullPath));
+ } else {
+ DataObjectAO dataObjectAO = irodsFileSystem.getIRODSAccessObjectFactory().getDataObjectAO(irodsAccount);
+ permissionsTableModel = new PermissionsTableModel(
+ dataObjectAO.listPermissionsForDataObject(selectedObjectFullPath));
+ }
+ } catch (JargonException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+
+ tablePermissions.setModel(permissionsTableModel);
+ tablePermissions.getSelectionModel().addListSelectionListener(dialog);
+ TableColumn permissionColumn = tablePermissions.getColumnModel().getColumn(1);
+ permissionColumn.setCellEditor(new DefaultCellEditor(tableCombo));
+ permissionsTableModel.resetOriginalPermissionList();
+ tablePermissions.validate();
+
+ dialog.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+ }
+ });
+ }
+
+ private boolean isCollection() {
+
+ boolean state = false;
+ CollectionAndDataObjectListingEntry entry = null;
+
+ //perhaps should throw exception if these vital member variables are null
+ if ((selectedObjectFullPath != null)
+ && (irodsFileSystem != null)
+ && (irodsAccount != null)) {
+ CollectionAndDataObjectListAndSearchAOImpl collectionAndDataObjectListAndSearchAOImpl;
+ try {
+ collectionAndDataObjectListAndSearchAOImpl = (CollectionAndDataObjectListAndSearchAOImpl) irodsFileSystem.getIRODSAccessObjectFactory().getCollectionAndDataObjectListAndSearchAO(irodsAccount);
+ entry =
+ collectionAndDataObjectListAndSearchAOImpl.getCollectionAndDataObjectListingEntryAtGivenAbsolutePath(selectedObjectFullPath);
+ } catch (JargonException ex) {
+ // TODO: respond correctly here
+ Exceptions.printStackTrace(ex);
+ }
+
+ state = entry.isCollection();
+ }
+
+ return state;
+ }
+
+ private void updateMetadataCreateBtnStatus() {
+ // create button should only be enabled when there is no tableMetadata
+ // selection and all text fields are populated
+ btnMetadataCreate.setEnabled(
+ txtMetadataAttribute.getText().length() > 0 &&
+ txtMetadataValue.getText().length() > 0 &&
+ txtMetadataUnit.getText().length() > 0);
+ }
+
+ private void updateMetadataDeleteBtnStatus(int selectedRowCount) {
+ // delete button should only be enabled when there is a tableMetadata selection
+ // add all text fields are populated
+ btnMetadataDelete.setEnabled(selectedRowCount > 0);
+ }
+
+ private void updatePermissionsDeleteBtnStatus(int selectedRowCount) {
+ // delete button should only be enabled when there is a tableMetadata or
+ // tablePermissions selection
+ btnDeleteSharePermissions.setEnabled(selectedRowCount > 0);
+ }
+
+ // ListSelectionListener methods
+ @Override
+ public void valueChanged(ListSelectionEvent lse) {
+ int selectedRowCount = 0;
+
+ if (!lse.getValueIsAdjusting()) {
+ // determine which table is selected
+ // Metadata Table?
+ if (lse.getSource() == tableMetadata.getSelectionModel()) {
+ selectedRowCount = tableMetadata.getSelectedRowCount();
+ updateMetadataDeleteBtnStatus(selectedRowCount);
+ }
+ else { // Permissions Table
+ selectedRowCount = tablePermissions.getSelectedRowCount();
+ updatePermissionsDeleteBtnStatus(selectedRowCount);
+ }
+ }
+ }
+ // end ListSelectionListener methods
+
+ // DocumentListener Methods
+ @Override
+ public void insertUpdate(DocumentEvent de) {
+ updateMetadataCreateBtnStatus();
+ }
+
+ @Override
+ public void removeUpdate(DocumentEvent de) {
+ updateMetadataCreateBtnStatus();
+ }
+
+ @Override
+ public void changedUpdate(DocumentEvent de) {
+ updateMetadataCreateBtnStatus();
+ }
+ // end DocumentListener Methods
+
+ // ActionListener Methods
+ @Override
+ public void actionPerformed(ActionEvent ae) {
+// if (ae.getSource() == cbPermissionsPermission ||
+// ae.getSource() == cbPermissionsUserName) {
+// updatePermissonsCreateBtnStatus();
+// }
+ }
+ // end ActionListener Methods
+
+ /**
+ * This method is called from within the constructor to initialize the form.
+ * WARNING: Do NOT modify this code. The content of this method is always
+ * regenerated by the Form Editor.
+ */
+ @SuppressWarnings("unchecked")
+ // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+ private void initComponents() {
+
+ jPanel2 = new javax.swing.JPanel();
+ jPanel1 = new javax.swing.JPanel();
+ pnlSelectedObject = new javax.swing.JPanel();
+ lblObjectCollection = new javax.swing.JLabel();
+ jLabel2 = new javax.swing.JLabel();
+ lblInfoObjectName = new javax.swing.JLabel();
+ lblInfoObjectParent = new javax.swing.JLabel();
+ tabbedpanelMain = new javax.swing.JTabbedPane();
+ pnlInfoTab = new javax.swing.JPanel();
+ pnlInfoCards = new javax.swing.JPanel();
+ pnlCollectionInfo = new javax.swing.JPanel();
+ jLabel19 = new javax.swing.JLabel();
+ jLabel20 = new javax.swing.JLabel();
+ jLabel21 = new javax.swing.JLabel();
+ jLabel22 = new javax.swing.JLabel();
+ jLabel23 = new javax.swing.JLabel();
+ jLabel24 = new javax.swing.JLabel();
+ jLabel25 = new javax.swing.JLabel();
+ jLabel26 = new javax.swing.JLabel();
+ jLabel27 = new javax.swing.JLabel();
+ lblInfoCollectionCreatedDate = new javax.swing.JLabel();
+ lblInfoCollectionModifiedDate = new javax.swing.JLabel();
+ lblInfoCollectionOwner = new javax.swing.JLabel();
+ lblInfoCollectionOwnerZone = new javax.swing.JLabel();
+ lblInfoCollectionType = new javax.swing.JLabel();
+ lblInfoCollectionObjectPath = new javax.swing.JLabel();
+ lblInfoCollectionDescription = new javax.swing.JLabel();
+ lblInfoCollectionInfo1 = new javax.swing.JLabel();
+ lblInfoCollectionInfo2 = new javax.swing.JLabel();
+ pnlObjectInfo = new javax.swing.JPanel();
+ jLabel3 = new javax.swing.JLabel();
+ jLabel4 = new javax.swing.JLabel();
+ jLabel5 = new javax.swing.JLabel();
+ jLabel6 = new javax.swing.JLabel();
+ jLabel7 = new javax.swing.JLabel();
+ jLabel8 = new javax.swing.JLabel();
+ jLabel9 = new javax.swing.JLabel();
+ jLabel10 = new javax.swing.JLabel();
+ jLabel11 = new javax.swing.JLabel();
+ jLabel12 = new javax.swing.JLabel();
+ jLabel13 = new javax.swing.JLabel();
+ jLabel14 = new javax.swing.JLabel();
+ jLabel15 = new javax.swing.JLabel();
+ jLabel16 = new javax.swing.JLabel();
+ lblInfoObjectSize = new javax.swing.JLabel();
+ lblInfoObjectCreatedDate = new javax.swing.JLabel();
+ lblInfoObjectModifiedDate = new javax.swing.JLabel();
+ lblInfoObjectOwner = new javax.swing.JLabel();
+ lblInfoObjectOwnerZone = new javax.swing.JLabel();
+ lblInfoObjectDataPath = new javax.swing.JLabel();
+ lblInfoObjectResourceGroup = new javax.swing.JLabel();
+ lblInfoObjectChecksum = new javax.swing.JLabel();
+ lblInfoObjectResource = new javax.swing.JLabel();
+ lblInfoObjectReplicaNumber = new javax.swing.JLabel();
+ lblInfoObjectReplicationStatus = new javax.swing.JLabel();
+ lblInfoObjectStatus = new javax.swing.JLabel();
+ lblInfoObjectType = new javax.swing.JLabel();
+ lblInfoObjectVersion = new javax.swing.JLabel();
+ pnlTagsComments = new javax.swing.JPanel();
+ jLabel17 = new javax.swing.JLabel();
+ txtInfoTags = new javax.swing.JTextField();
+ jLabel18 = new javax.swing.JLabel();
+ jScrollPane1 = new javax.swing.JScrollPane();
+ textareaInfoComments = new javax.swing.JTextArea();
+ btnUpdateTagsComments = new javax.swing.JButton();
+ pnlMetadataTab = new javax.swing.JPanel();
+ pnlMetadataTable = new javax.swing.JPanel();
+ jScrollPane2 = new javax.swing.JScrollPane();
+ tableMetadata = new javax.swing.JTable();
+ jPanel5 = new javax.swing.JPanel();
+ jPanel6 = new javax.swing.JPanel();
+ btnMetadataDelete = new javax.swing.JButton();
+ pnlMetaDataEdit = new javax.swing.JPanel();
+ jLabel28 = new javax.swing.JLabel();
+ jLabel29 = new javax.swing.JLabel();
+ jLabel30 = new javax.swing.JLabel();
+ btnMetadataClear = new javax.swing.JButton();
+ btnMetadataCreate = new javax.swing.JButton();
+ txtMetadataAttribute = new javax.swing.JTextField();
+ txtMetadataValue = new javax.swing.JTextField();
+ txtMetadataUnit = new javax.swing.JTextField();
+ pnlPermissionsTab = new javax.swing.JPanel();
+ pnlPermissionsTable = new javax.swing.JPanel();
+ jScrollPane3 = new javax.swing.JScrollPane();
+ tablePermissions = new javax.swing.JTable();
+ jPanel7 = new javax.swing.JPanel();
+ jPanel8 = new javax.swing.JPanel();
+ btnPermissionsSave = new javax.swing.JButton();
+ jPanel9 = new javax.swing.JPanel();
+ jPanel16 = new javax.swing.JPanel();
+ btnAddSharePermissions = new javax.swing.JButton();
+ btnDeleteSharePermissions = new javax.swing.JButton();
+ pnlCloseBtn = new javax.swing.JPanel();
+ jPanel3 = new javax.swing.JPanel();
+ jPanel4 = new javax.swing.JPanel();
+ btnClose = new javax.swing.JButton();
+ btnRefresh = new javax.swing.JButton();
+
+ org.jdesktop.layout.GroupLayout jPanel2Layout = new org.jdesktop.layout.GroupLayout(jPanel2);
+ jPanel2.setLayout(jPanel2Layout);
+ jPanel2Layout.setHorizontalGroup(
+ jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(0, 100, Short.MAX_VALUE)
+ );
+ jPanel2Layout.setVerticalGroup(
+ jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(0, 100, Short.MAX_VALUE)
+ );
+
+ setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
+ setPreferredSize(new java.awt.Dimension(560, 720));
+
+ jPanel1.setBorder(javax.swing.BorderFactory.createEmptyBorder(14, 10, 10, 10));
+ jPanel1.setPreferredSize(new java.awt.Dimension(600, 750));
+ jPanel1.setLayout(new java.awt.BorderLayout());
+
+ pnlSelectedObject.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 4, 1, 4));
+ pnlSelectedObject.setPreferredSize(new java.awt.Dimension(528, 70));
+
+ lblObjectCollection.setFont(new java.awt.Font("Lucida Grande", 0, 14)); // NOI18N
+ lblObjectCollection.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblObjectCollection.text")); // NOI18N
+
+ jLabel2.setFont(new java.awt.Font("Lucida Grande", 0, 14)); // NOI18N
+ jLabel2.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel2.text")); // NOI18N
+
+ lblInfoObjectName.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectName.text")); // NOI18N
+
+ lblInfoObjectParent.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectParent.text")); // NOI18N
+
+ org.jdesktop.layout.GroupLayout pnlSelectedObjectLayout = new org.jdesktop.layout.GroupLayout(pnlSelectedObject);
+ pnlSelectedObject.setLayout(pnlSelectedObjectLayout);
+ pnlSelectedObjectLayout.setHorizontalGroup(
+ pnlSelectedObjectLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlSelectedObjectLayout.createSequentialGroup()
+ .addContainerGap()
+ .add(pnlSelectedObjectLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false)
+ .add(lblObjectCollection, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 140, Short.MAX_VALUE)
+ .add(jLabel2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlSelectedObjectLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false)
+ .add(lblInfoObjectName, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 362, Short.MAX_VALUE)
+ .add(lblInfoObjectParent, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ .addContainerGap(67, Short.MAX_VALUE))
+ );
+ pnlSelectedObjectLayout.setVerticalGroup(
+ pnlSelectedObjectLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlSelectedObjectLayout.createSequentialGroup()
+ .addContainerGap()
+ .add(pnlSelectedObjectLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(lblObjectCollection)
+ .add(lblInfoObjectName))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlSelectedObjectLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 20, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(lblInfoObjectParent))
+ .addContainerGap(19, Short.MAX_VALUE))
+ );
+
+ jPanel1.add(pnlSelectedObject, java.awt.BorderLayout.PAGE_START);
+
+ tabbedpanelMain.setPreferredSize(new java.awt.Dimension(600, 867));
+
+ pnlInfoTab.setLayout(new java.awt.BorderLayout());
+
+ pnlInfoCards.setBorder(javax.swing.BorderFactory.createEtchedBorder());
+ pnlInfoCards.setPreferredSize(new java.awt.Dimension(555, 640));
+ pnlInfoCards.setLayout(new java.awt.CardLayout());
+
+ pnlCollectionInfo.setPreferredSize(new java.awt.Dimension(515, 500));
+
+ jLabel19.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel19.text")); // NOI18N
+
+ jLabel20.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel20.text")); // NOI18N
+
+ jLabel21.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel21.text")); // NOI18N
+
+ jLabel22.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel22.text")); // NOI18N
+
+ jLabel23.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel23.text")); // NOI18N
+
+ jLabel24.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel24.text")); // NOI18N
+
+ jLabel25.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel25.text")); // NOI18N
+
+ jLabel26.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel26.text")); // NOI18N
+
+ jLabel27.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel27.text")); // NOI18N
+
+ lblInfoCollectionCreatedDate.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoCollectionCreatedDate.text")); // NOI18N
+
+ lblInfoCollectionModifiedDate.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoCollectionModifiedDate.text")); // NOI18N
+
+ lblInfoCollectionOwner.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoCollectionOwner.text")); // NOI18N
+
+ lblInfoCollectionOwnerZone.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoCollectionOwnerZone.text")); // NOI18N
+
+ lblInfoCollectionType.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoCollectionType.text")); // NOI18N
+
+ lblInfoCollectionObjectPath.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoCollectionObjectPath.text")); // NOI18N
+
+ lblInfoCollectionDescription.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoCollectionDescription.text")); // NOI18N
+
+ lblInfoCollectionInfo1.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoCollectionInfo1.text")); // NOI18N
+
+ lblInfoCollectionInfo2.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoCollectionInfo2.text")); // NOI18N
+
+ org.jdesktop.layout.GroupLayout pnlCollectionInfoLayout = new org.jdesktop.layout.GroupLayout(pnlCollectionInfo);
+ pnlCollectionInfo.setLayout(pnlCollectionInfoLayout);
+ pnlCollectionInfoLayout.setHorizontalGroup(
+ pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlCollectionInfoLayout.createSequentialGroup()
+ .addContainerGap()
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING, false)
+ .add(org.jdesktop.layout.GroupLayout.LEADING, pnlCollectionInfoLayout.createSequentialGroup()
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jLabel22)
+ .add(jLabel23)
+ .add(jLabel24)
+ .add(jLabel25)
+ .add(jLabel26)
+ .add(jLabel27))
+ .add(24, 24, 24)
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(lblInfoCollectionOwnerZone, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 400, Short.MAX_VALUE)
+ .add(lblInfoCollectionType, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoCollectionObjectPath, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoCollectionDescription, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoCollectionInfo1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoCollectionInfo2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
+ .add(org.jdesktop.layout.GroupLayout.LEADING, pnlCollectionInfoLayout.createSequentialGroup()
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jLabel19)
+ .add(jLabel20)
+ .add(jLabel21))
+ .add(47, 47, 47)
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false)
+ .add(lblInfoCollectionCreatedDate, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 400, Short.MAX_VALUE)
+ .add(lblInfoCollectionModifiedDate, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoCollectionOwner, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
+ .addContainerGap())
+ );
+ pnlCollectionInfoLayout.setVerticalGroup(
+ pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlCollectionInfoLayout.createSequentialGroup()
+ .add(24, 24, 24)
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel19)
+ .add(lblInfoCollectionCreatedDate))
+ .add(18, 18, 18)
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel20)
+ .add(lblInfoCollectionModifiedDate))
+ .add(18, 18, 18)
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel21)
+ .add(lblInfoCollectionOwner))
+ .add(18, 18, 18)
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel22)
+ .add(lblInfoCollectionOwnerZone))
+ .add(18, 18, 18)
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel23)
+ .add(lblInfoCollectionType))
+ .add(18, 18, 18)
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel24)
+ .add(lblInfoCollectionObjectPath))
+ .add(18, 18, 18)
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel25)
+ .add(lblInfoCollectionDescription))
+ .add(18, 18, 18)
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel26)
+ .add(lblInfoCollectionInfo1))
+ .add(18, 18, 18)
+ .add(pnlCollectionInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel27)
+ .add(lblInfoCollectionInfo2))
+ .addContainerGap(289, Short.MAX_VALUE))
+ );
+
+ pnlInfoCards.add(pnlCollectionInfo, "cardCollectionInfo");
+
+ pnlObjectInfo.setPreferredSize(new java.awt.Dimension(550, 530));
+
+ jLabel3.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel3.text")); // NOI18N
+
+ jLabel4.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel4.text")); // NOI18N
+
+ jLabel5.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel5.text")); // NOI18N
+
+ jLabel6.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel6.text")); // NOI18N
+
+ jLabel7.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel7.text")); // NOI18N
+
+ jLabel8.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel8.text")); // NOI18N
+
+ jLabel9.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel9.text")); // NOI18N
+
+ jLabel10.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel10.text")); // NOI18N
+
+ jLabel11.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel11.text")); // NOI18N
+
+ jLabel12.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel12.text")); // NOI18N
+
+ jLabel13.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel13.text")); // NOI18N
+
+ jLabel14.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel14.text")); // NOI18N
+
+ jLabel15.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel15.text")); // NOI18N
+
+ jLabel16.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel16.text")); // NOI18N
+
+ lblInfoObjectSize.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectSize.text")); // NOI18N
+
+ lblInfoObjectCreatedDate.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectCreatedDate.text")); // NOI18N
+
+ lblInfoObjectModifiedDate.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectModifiedDate.text")); // NOI18N
+
+ lblInfoObjectOwner.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectOwner.text")); // NOI18N
+
+ lblInfoObjectOwnerZone.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectOwnerZone.text")); // NOI18N
+
+ lblInfoObjectDataPath.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectDataPath.text")); // NOI18N
+
+ lblInfoObjectResourceGroup.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectResourceGroup.text")); // NOI18N
+
+ lblInfoObjectChecksum.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectChecksum.text")); // NOI18N
+
+ lblInfoObjectResource.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectResource.text")); // NOI18N
+
+ lblInfoObjectReplicaNumber.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectReplicaNumber.text")); // NOI18N
+
+ lblInfoObjectReplicationStatus.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectReplicationStatus.text")); // NOI18N
+
+ lblInfoObjectStatus.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectStatus.text")); // NOI18N
+
+ lblInfoObjectType.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectType.text")); // NOI18N
+
+ lblInfoObjectVersion.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.lblInfoObjectVersion.text")); // NOI18N
+
+ org.jdesktop.layout.GroupLayout pnlObjectInfoLayout = new org.jdesktop.layout.GroupLayout(pnlObjectInfo);
+ pnlObjectInfo.setLayout(pnlObjectInfoLayout);
+ pnlObjectInfoLayout.setHorizontalGroup(
+ pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlObjectInfoLayout.createSequentialGroup()
+ .addContainerGap()
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false)
+ .add(pnlObjectInfoLayout.createSequentialGroup()
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jLabel3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 70, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jLabel4)
+ .add(jLabel5)
+ .add(jLabel6)
+ .add(jLabel7, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 90, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jLabel8, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 90, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jLabel9, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 115, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jLabel10, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 80, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jLabel11, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 70, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jLabel12))
+ .add(22, 22, 22)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false)
+ .add(lblInfoObjectResource, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoObjectReplicaNumber, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoObjectSize, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 370, Short.MAX_VALUE)
+ .add(lblInfoObjectCreatedDate, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoObjectModifiedDate, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoObjectOwner, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoObjectOwnerZone, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoObjectDataPath, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoObjectResourceGroup, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoObjectChecksum, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
+ .add(pnlObjectInfoLayout.createSequentialGroup()
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jLabel13, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 125, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jLabel14)
+ .add(jLabel15)
+ .add(jLabel16))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(lblInfoObjectReplicationStatus, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoObjectStatus, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoObjectType, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(lblInfoObjectVersion, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
+ .addContainerGap(51, Short.MAX_VALUE))
+ );
+ pnlObjectInfoLayout.setVerticalGroup(
+ pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlObjectInfoLayout.createSequentialGroup()
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlObjectInfoLayout.createSequentialGroup()
+ .add(18, 18, 18)
+ .add(lblInfoObjectSize))
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, pnlObjectInfoLayout.createSequentialGroup()
+ .addContainerGap()
+ .add(jLabel3)))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(lblInfoObjectCreatedDate)
+ .add(jLabel4))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel5)
+ .add(lblInfoObjectModifiedDate))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(lblInfoObjectOwner)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jLabel6))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel7)
+ .add(lblInfoObjectOwnerZone))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(lblInfoObjectDataPath)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jLabel8))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jLabel9)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, lblInfoObjectResourceGroup))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(lblInfoObjectChecksum)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jLabel10))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jLabel11)
+ .add(lblInfoObjectResource))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel12)
+ .add(lblInfoObjectReplicaNumber))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel13)
+ .add(lblInfoObjectReplicationStatus))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel14)
+ .add(lblInfoObjectStatus))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel15)
+ .add(lblInfoObjectType))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(pnlObjectInfoLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel16)
+ .add(lblInfoObjectVersion))
+ .addContainerGap(281, Short.MAX_VALUE))
+ );
+
+ pnlInfoCards.add(pnlObjectInfo, "cardObjectInfo");
+
+ pnlInfoTab.add(pnlInfoCards, java.awt.BorderLayout.CENTER);
+
+ pnlTagsComments.setBorder(javax.swing.BorderFactory.createEtchedBorder());
+
+ jLabel17.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel17.text")); // NOI18N
+
+ txtInfoTags.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.txtInfoTags.text")); // NOI18N
+
+ jLabel18.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel18.text")); // NOI18N
+
+ textareaInfoComments.setColumns(20);
+ textareaInfoComments.setRows(5);
+ jScrollPane1.setViewportView(textareaInfoComments);
+
+ btnUpdateTagsComments.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.btnUpdateTagsComments.text")); // NOI18N
+ btnUpdateTagsComments.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnUpdateTagsCommentsActionPerformed(evt);
+ }
+ });
+
+ org.jdesktop.layout.GroupLayout pnlTagsCommentsLayout = new org.jdesktop.layout.GroupLayout(pnlTagsComments);
+ pnlTagsComments.setLayout(pnlTagsCommentsLayout);
+ pnlTagsCommentsLayout.setHorizontalGroup(
+ pnlTagsCommentsLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlTagsCommentsLayout.createSequentialGroup()
+ .add(pnlTagsCommentsLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, pnlTagsCommentsLayout.createSequentialGroup()
+ .addContainerGap()
+ .add(pnlTagsCommentsLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jLabel17)
+ .add(jLabel18))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 66, Short.MAX_VALUE)
+ .add(pnlTagsCommentsLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false)
+ .add(txtInfoTags)
+ .add(jScrollPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 408, Short.MAX_VALUE))
+ .add(6, 6, 6))
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, pnlTagsCommentsLayout.createSequentialGroup()
+ .add(0, 0, Short.MAX_VALUE)
+ .add(btnUpdateTagsComments)))
+ .addContainerGap())
+ );
+ pnlTagsCommentsLayout.setVerticalGroup(
+ pnlTagsCommentsLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlTagsCommentsLayout.createSequentialGroup()
+ .add(6, 6, 6)
+ .add(pnlTagsCommentsLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel17)
+ .add(txtInfoTags, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 28, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
+ .add(pnlTagsCommentsLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jLabel18)
+ .add(jScrollPane1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
+ .add(btnUpdateTagsComments)
+ .addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ );
+
+ pnlInfoTab.add(pnlTagsComments, java.awt.BorderLayout.SOUTH);
+
+ tabbedpanelMain.addTab(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.pnlInfoTab.TabConstraints.tabTitle"), pnlInfoTab); // NOI18N
+
+ pnlMetadataTab.setLayout(new java.awt.BorderLayout());
+
+ pnlMetadataTable.setLayout(new java.awt.BorderLayout());
+
+ tableMetadata.setModel(new javax.swing.table.DefaultTableModel(
+ new Object [][] {
+ {null, null, null},
+ {null, null, null},
+ {null, null, null},
+ {null, null, null}
+ },
+ new String [] {
+ "Attribute", "Value", "Unit"
+ }
+ ) {
+ Class[] types = new Class [] {
+ java.lang.String.class, java.lang.String.class, java.lang.String.class
+ };
+ boolean[] canEdit = new boolean [] {
+ false, false, false
+ };
+
+ public Class getColumnClass(int columnIndex) {
+ return types [columnIndex];
+ }
+
+ public boolean isCellEditable(int rowIndex, int columnIndex) {
+ return canEdit [columnIndex];
+ }
+ });
+ tableMetadata.setSelectionMode(javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
+ jScrollPane2.setViewportView(tableMetadata);
+
+ pnlMetadataTable.add(jScrollPane2, java.awt.BorderLayout.CENTER);
+
+ jPanel5.setBorder(javax.swing.BorderFactory.createEmptyBorder(2, 2, 2, 2));
+ jPanel5.setPreferredSize(new java.awt.Dimension(568, 44));
+ jPanel5.setLayout(new java.awt.BorderLayout());
+
+ jPanel6.setPreferredSize(new java.awt.Dimension(100, 40));
+
+ btnMetadataDelete.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.btnMetadataDelete.text")); // NOI18N
+ btnMetadataDelete.setActionCommand(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.btnMetadataDelete.actionCommand")); // NOI18N
+ btnMetadataDelete.setEnabled(false);
+ btnMetadataDelete.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnMetadataDeleteActionPerformed(evt);
+ }
+ });
+
+ org.jdesktop.layout.GroupLayout jPanel6Layout = new org.jdesktop.layout.GroupLayout(jPanel6);
+ jPanel6.setLayout(jPanel6Layout);
+ jPanel6Layout.setHorizontalGroup(
+ jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(0, 100, Short.MAX_VALUE)
+ .add(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanel6Layout.createSequentialGroup()
+ .add(8, 8, 8)
+ .add(btnMetadataDelete)
+ .addContainerGap(8, Short.MAX_VALUE)))
+ );
+ jPanel6Layout.setVerticalGroup(
+ jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(0, 40, Short.MAX_VALUE)
+ .add(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanel6Layout.createSequentialGroup()
+ .add(5, 5, 5)
+ .add(btnMetadataDelete)
+ .addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
+ );
+
+ jPanel5.add(jPanel6, java.awt.BorderLayout.EAST);
+
+ pnlMetadataTable.add(jPanel5, java.awt.BorderLayout.SOUTH);
+
+ pnlMetadataTab.add(pnlMetadataTable, java.awt.BorderLayout.CENTER);
+
+ pnlMetaDataEdit.setBorder(javax.swing.BorderFactory.createEtchedBorder());
+ pnlMetaDataEdit.setPreferredSize(new java.awt.Dimension(527, 200));
+
+ jLabel28.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel28.text")); // NOI18N
+
+ jLabel29.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel29.text")); // NOI18N
+
+ jLabel30.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.jLabel30.text")); // NOI18N
+
+ btnMetadataClear.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.btnMetadataClear.text")); // NOI18N
+ btnMetadataClear.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnMetadataClearActionPerformed(evt);
+ }
+ });
+
+ btnMetadataCreate.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.btnMetadataCreate.text")); // NOI18N
+ btnMetadataCreate.setEnabled(false);
+ btnMetadataCreate.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnMetadataCreateActionPerformed(evt);
+ }
+ });
+
+ txtMetadataAttribute.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.txtMetadataAttribute.text")); // NOI18N
+
+ txtMetadataValue.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.txtMetadataValue.text")); // NOI18N
+
+ txtMetadataUnit.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.txtMetadataUnit.text")); // NOI18N
+
+ org.jdesktop.layout.GroupLayout pnlMetaDataEditLayout = new org.jdesktop.layout.GroupLayout(pnlMetaDataEdit);
+ pnlMetaDataEdit.setLayout(pnlMetaDataEditLayout);
+ pnlMetaDataEditLayout.setHorizontalGroup(
+ pnlMetaDataEditLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlMetaDataEditLayout.createSequentialGroup()
+ .addContainerGap()
+ .add(pnlMetaDataEditLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlMetaDataEditLayout.createSequentialGroup()
+ .add(pnlMetaDataEditLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jLabel28)
+ .add(jLabel29)
+ .add(jLabel30))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
+ .add(pnlMetaDataEditLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(txtMetadataValue, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 480, Short.MAX_VALUE)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, txtMetadataAttribute)
+ .add(txtMetadataUnit)))
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, pnlMetaDataEditLayout.createSequentialGroup()
+ .add(0, 0, Short.MAX_VALUE)
+ .add(btnMetadataClear)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(btnMetadataCreate)))
+ .addContainerGap())
+ );
+ pnlMetaDataEditLayout.setVerticalGroup(
+ pnlMetaDataEditLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(pnlMetaDataEditLayout.createSequentialGroup()
+ .addContainerGap(18, Short.MAX_VALUE)
+ .add(pnlMetaDataEditLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel28)
+ .add(txtMetadataAttribute, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .add(18, 18, 18)
+ .add(pnlMetaDataEditLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel29)
+ .add(txtMetadataValue, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .add(18, 18, 18)
+ .add(pnlMetaDataEditLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel30)
+ .add(txtMetadataUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .add(23, 23, 23)
+ .add(pnlMetaDataEditLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(btnMetadataClear)
+ .add(btnMetadataCreate))
+ .addContainerGap())
+ );
+
+ pnlMetadataTab.add(pnlMetaDataEdit, java.awt.BorderLayout.SOUTH);
+
+ tabbedpanelMain.addTab(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.pnlMetadataTab.TabConstraints.tabTitle"), pnlMetadataTab); // NOI18N
+
+ pnlPermissionsTab.setLayout(new java.awt.BorderLayout());
+
+ pnlPermissionsTable.setLayout(new java.awt.BorderLayout());
+
+ tablePermissions.setModel(new javax.swing.table.DefaultTableModel(
+ new Object [][] {
+ {"", null},
+ {null, null},
+ {null, null},
+ {null, null}
+ },
+ new String [] {
+ "User Name", "Share Permission"
+ }
+ ) {
+ Class[] types = new Class [] {
+ java.lang.String.class, java.lang.Object.class
+ };
+ boolean[] canEdit = new boolean [] {
+ false, true
+ };
+
+ public Class getColumnClass(int columnIndex) {
+ return types [columnIndex];
+ }
+
+ public boolean isCellEditable(int rowIndex, int columnIndex) {
+ return canEdit [columnIndex];
+ }
+ });
+ tablePermissions.setSelectionMode(javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
+ jScrollPane3.setViewportView(tablePermissions);
+
+ pnlPermissionsTable.add(jScrollPane3, java.awt.BorderLayout.CENTER);
+
+ jPanel7.setBorder(javax.swing.BorderFactory.createEmptyBorder(2, 2, 2, 2));
+ jPanel7.setPreferredSize(new java.awt.Dimension(568, 44));
+ jPanel7.setLayout(new java.awt.BorderLayout());
+
+ jPanel8.setPreferredSize(new java.awt.Dimension(100, 44));
+
+ btnPermissionsSave.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.btnPermissionsSave.text")); // NOI18N
+ btnPermissionsSave.setActionCommand(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.btnPermissionsSave.actionCommand")); // NOI18N
+ btnPermissionsSave.setEnabled(false);
+ btnPermissionsSave.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnPermissionsSaveActionPerformed(evt);
+ }
+ });
+
+ org.jdesktop.layout.GroupLayout jPanel8Layout = new org.jdesktop.layout.GroupLayout(jPanel8);
+ jPanel8.setLayout(jPanel8Layout);
+ jPanel8Layout.setHorizontalGroup(
+ jPanel8Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel8Layout.createSequentialGroup()
+ .addContainerGap(19, Short.MAX_VALUE)
+ .add(btnPermissionsSave)
+ .addContainerGap())
+ );
+ jPanel8Layout.setVerticalGroup(
+ jPanel8Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel8Layout.createSequentialGroup()
+ .addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(btnPermissionsSave)
+ .addContainerGap())
+ );
+
+ jPanel7.add(jPanel8, java.awt.BorderLayout.EAST);
+
+ jPanel9.setPreferredSize(new java.awt.Dimension(100, 25));
+ jPanel9.setLayout(new java.awt.BorderLayout());
+
+ jPanel16.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.CENTER, 1, 1));
+
+ btnAddSharePermissions.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.btnAddSharePermissions.text")); // NOI18N
+ btnAddSharePermissions.setPreferredSize(new java.awt.Dimension(22, 24));
+ btnAddSharePermissions.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnAddSharePermissionsActionPerformed(evt);
+ }
+ });
+ jPanel16.add(btnAddSharePermissions);
+
+ btnDeleteSharePermissions.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.btnDeleteSharePermissions.text")); // NOI18N
+ btnDeleteSharePermissions.setEnabled(false);
+ btnDeleteSharePermissions.setPreferredSize(new java.awt.Dimension(22, 24));
+ btnDeleteSharePermissions.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnDeleteSharePermissionsActionPerformed(evt);
+ }
+ });
+ jPanel16.add(btnDeleteSharePermissions);
+
+ jPanel9.add(jPanel16, java.awt.BorderLayout.WEST);
+
+ jPanel7.add(jPanel9, java.awt.BorderLayout.WEST);
+
+ pnlPermissionsTable.add(jPanel7, java.awt.BorderLayout.SOUTH);
+
+ pnlPermissionsTab.add(pnlPermissionsTable, java.awt.BorderLayout.CENTER);
+
+ tabbedpanelMain.addTab(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.pnlPermissionsTab.TabConstraints.tabTitle"), pnlPermissionsTab); // NOI18N
+
+ jPanel1.add(tabbedpanelMain, java.awt.BorderLayout.CENTER);
+
+ pnlCloseBtn.setPreferredSize(new java.awt.Dimension(589, 35));
+ pnlCloseBtn.setLayout(new java.awt.BorderLayout());
+
+ jPanel3.setPreferredSize(new java.awt.Dimension(100, 40));
+ jPanel3.setSize(new java.awt.Dimension(200, 100));
+
+ org.jdesktop.layout.GroupLayout jPanel3Layout = new org.jdesktop.layout.GroupLayout(jPanel3);
+ jPanel3.setLayout(jPanel3Layout);
+ jPanel3Layout.setHorizontalGroup(
+ jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(0, 100, Short.MAX_VALUE)
+ );
+ jPanel3Layout.setVerticalGroup(
+ jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(0, 35, Short.MAX_VALUE)
+ );
+
+ pnlCloseBtn.add(jPanel3, java.awt.BorderLayout.WEST);
+
+ btnClose.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.btnClose.text")); // NOI18N
+ btnClose.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnCloseActionPerformed(evt);
+ }
+ });
+
+ btnRefresh.setText(org.openide.util.NbBundle.getMessage(IRODSInfoDialog.class, "IRODSInfoDialog.btnRefresh.text")); // NOI18N
+ btnRefresh.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnRefreshActionPerformed(evt);
+ }
+ });
+
+ org.jdesktop.layout.GroupLayout jPanel4Layout = new org.jdesktop.layout.GroupLayout(jPanel4);
+ jPanel4.setLayout(jPanel4Layout);
+ jPanel4Layout.setHorizontalGroup(
+ jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel4Layout.createSequentialGroup()
+ .addContainerGap(417, Short.MAX_VALUE)
+ .add(btnRefresh)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(btnClose)
+ .addContainerGap())
+ );
+ jPanel4Layout.setVerticalGroup(
+ jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel4Layout.createSequentialGroup()
+ .add(0, 6, Short.MAX_VALUE)
+ .add(jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(btnClose)
+ .add(btnRefresh)))
+ );
+
+ pnlCloseBtn.add(jPanel4, java.awt.BorderLayout.EAST);
+
+ jPanel1.add(pnlCloseBtn, java.awt.BorderLayout.PAGE_END);
+
+ getContentPane().add(jPanel1, java.awt.BorderLayout.CENTER);
+
+ pack();
+ }// </editor-fold>//GEN-END:initComponents
+
+ private void btnMetadataCreateActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnMetadataCreateActionPerformed
+ AvuData avuData;
+ CollectionAO collectionAO;
+ DataObjectAO dataObjectAO;
+ try {
+ // create AVU data object from text fields
+ String attr = txtMetadataAttribute.getText();
+ String value = txtMetadataValue.getText();
+ String unit = txtMetadataUnit.getText();
+ avuData = new AvuData(attr, value, unit);
+ if (isCollection()) {
+ collectionAO = irodsFileSystem.getIRODSAccessObjectFactory().getCollectionAO(irodsAccount);
+ collectionAO.addAVUMetadata(selectedObjectFullPath, avuData);
+ }
+ else {
+ dataObjectAO = irodsFileSystem.getIRODSAccessObjectFactory().getDataObjectAO(irodsAccount);
+ dataObjectAO.addAVUMetadata(selectedObjectFullPath, avuData);
+ }
+
+ // add to table
+ MetadataTableModel tm = (MetadataTableModel)tableMetadata.getModel();
+ tm.addRow(selectedObjectFullPath, attr, value, unit);
+
+ // clear text fields
+ txtMetadataAttribute.setText("");
+ txtMetadataValue.setText("");
+ txtMetadataUnit.setText("");
+
+ JOptionPane.showMessageDialog(
+ this, "Metadata Sucessfully Created", "Create Metadata", JOptionPane.PLAIN_MESSAGE);
+
+ } catch (JargonException ex) {
+ Exceptions.printStackTrace(ex);
+ JOptionPane.showMessageDialog(
+ this, "Metadata Creation Failed", "Create Metadata", JOptionPane.PLAIN_MESSAGE);
+ }
+ }//GEN-LAST:event_btnMetadataCreateActionPerformed
+
+ private void btnUpdateTagsCommentsActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnUpdateTagsCommentsActionPerformed
+
+ TaggingServiceFactory taggingServiceFactory = null;;
+ IRODSTagValue irodsTagValue = null;
+
+ try {
+ taggingServiceFactory = new TaggingServiceFactoryImpl(irodsFileSystem.getIRODSAccessObjectFactory());
+ FreeTaggingService freeTaggingService = taggingServiceFactory.instanceFreeTaggingService(irodsAccount);
+ IRODSTaggingService irodsTaggingService = taggingServiceFactory.instanceIrodsTaggingService(irodsAccount);
+
+ // first update the tags
+ String newTagStr = txtInfoTags.getText();
+ if (newTagStr != null ) { //&& !newTagStr.isEmpty()) {
+
+ // now need to diff against existing tags to see what to add and what to delete
+ String existingTags = null;
+ if (isCollection()) {
+ existingTags = freeTaggingService.getTagsForCollectionInFreeTagForm(
+ selectedObjectFullPath).getSpaceDelimitedTagsForDomain();
+ }
+ else {
+ existingTags = freeTaggingService.getTagsForDataObjectInFreeTagForm(
+ selectedObjectFullPath).getSpaceDelimitedTagsForDomain();
+ }
+
+ List<String> existingTagList = Arrays.asList(existingTags.split(" "));
+ List<String> newTagsList = Arrays.asList(newTagStr.split(" +"));
+
+ // find tags to delete and remove them
+ Set<String> tagsToDeleteSet = new HashSet<String>(existingTagList);
+ tagsToDeleteSet.removeAll(newTagsList);
+ String[] tagsToDelete = tagsToDeleteSet.toArray(new String[0]);
+ for (String tag: tagsToDelete) {
+ if (tag.length() > 0) {
+ irodsTagValue = new IRODSTagValue(tag, irodsAccount.getUserName());
+ if (isCollection()) {
+ irodsTaggingService.deleteTagFromCollection(selectedObjectFullPath, irodsTagValue);
+ }
+ else {
+ irodsTaggingService.deleteTagFromDataObject(selectedObjectFullPath, irodsTagValue);
+ }
+ }
+ }
+
+ // find tags to add
+ Set<String> tagsToAddSet = new HashSet<String>(newTagsList);
+ tagsToAddSet.removeAll(existingTagList);
+ String[] tagsToAdd = tagsToAddSet.toArray(new String[0]);
+ for (String tag: tagsToAdd) {
+ if (tag.length() > 0) {
+ irodsTagValue = new IRODSTagValue(tag, irodsAccount.getUserName());
+ if (isCollection()) {
+ irodsTaggingService.addTagToCollection(selectedObjectFullPath, irodsTagValue);
+ }
+ else {
+ irodsTaggingService.addTagToDataObject(selectedObjectFullPath, irodsTagValue);
+ }
+ }
+ }
+ }
+
+
+ // now update comments
+ String commentStr = textareaInfoComments.getText();
+ if (commentStr != null && !commentStr.isEmpty()) {
+
+ // update comments
+ irodsTagValue = new IRODSTagValue(commentStr, irodsAccount.getUserName());
+ if (isCollection()) {
+ irodsTaggingService.checkAndUpdateDescriptionOnCollection(selectedObjectFullPath, irodsTagValue);
+ }
+ else {
+ irodsTaggingService.checkAndUpdateDescriptionOnDataObject(selectedObjectFullPath, irodsTagValue);
+ }
+ }
+ else {
+ // remove all comments
+ if (isCollection()) {
+ irodsTagValue = irodsTaggingService.getDescriptionOnCollectionForLoggedInUser(selectedObjectFullPath);
+ if (irodsTagValue != null) {
+ irodsTaggingService.deleteDescriptionFromCollection(selectedObjectFullPath, irodsTagValue);
+ }
+ }
+ else {
+ irodsTagValue = irodsTaggingService.getDescriptionOnDataObjectForLoggedInUser(selectedObjectFullPath);
+ if (irodsTagValue != null) {
+ irodsTaggingService.deleteDescriptionFromDataObject(selectedObjectFullPath, irodsTagValue);
+ }
+ }
+ }
+
+ JOptionPane.showMessageDialog(
+ this, "Tags and Comments Sucessfully Updated", "Update Tags and Comments", JOptionPane.PLAIN_MESSAGE);
+
+ } catch (JargonException ex) {
+ Exceptions.printStackTrace(ex);
+ JOptionPane.showMessageDialog(
+ this, "Update of Tags and Comments Failed");
+ }
+ }//GEN-LAST:event_btnUpdateTagsCommentsActionPerformed
+
+ private void btnCloseActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnCloseActionPerformed
+ this.dispose();
+ }//GEN-LAST:event_btnCloseActionPerformed
+
+ private void btnMetadataClearActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnMetadataClearActionPerformed
+ // clear table selection
+// tableMetadata.clearSelection();
+
+ // clear all text fields
+// txtMetadataAttribute.setText("");
+// txtMetadataValue.setText("");
+// txtMetadataUnit.setText("");
+ }//GEN-LAST:event_btnMetadataClearActionPerformed
+
+ private void btnMetadataDeleteActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnMetadataDeleteActionPerformed
+ AvuData avuData;
+ CollectionAO collectionAO;
+ DataObjectAO dataObjectAO;
+
+ try {
+ String attr = null;
+ String value = null;
+ String unit = null;
+
+ // get selected rows to delete in metadata table
+ int[] selectedRows = tableMetadata.getSelectedRows();
+ for (int i=0; i<selectedRows.length; i++) {
+ // create AVU data object to delete
+ attr = (String)tableMetadata.getValueAt(selectedRows[i], 0);
+ value = (String)tableMetadata.getValueAt(selectedRows[i], 1);
+ unit = (String)tableMetadata.getValueAt(selectedRows[i], 2);
+ avuData = new AvuData(attr, value, unit);
+ if (isCollection()) {
+ collectionAO = irodsFileSystem.getIRODSAccessObjectFactory().getCollectionAO(irodsAccount);
+ collectionAO.deleteAVUMetadata(selectedObjectFullPath, avuData);
+ }
+ else {
+ dataObjectAO = irodsFileSystem.getIRODSAccessObjectFactory().getDataObjectAO(irodsAccount);
+ dataObjectAO.deleteAVUMetadata(selectedObjectFullPath, avuData);
+ }
+ // remove from table
+ MetadataTableModel tm = (MetadataTableModel)tableMetadata.getModel();
+ tm.deleteRow(selectedObjectFullPath, attr, value, unit, selectedRows[i]);
+ }
+
+ JOptionPane.showMessageDialog(
+ this, "Metadata Sucessfully Deleted", "Delete Metadata", JOptionPane.PLAIN_MESSAGE);
+
+ } catch (JargonException ex) {
+ Exceptions.printStackTrace(ex);
+ JOptionPane.showMessageDialog(
+ this, "Metadata Delete Failed", "Delete Metadata", JOptionPane.PLAIN_MESSAGE);
+ }
+ }//GEN-LAST:event_btnMetadataDeleteActionPerformed
+
+ private void btnRefreshActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnRefreshActionPerformed
+
+ if (tabbedpanelMain.getSelectedComponent() == pnlInfoTab) {
+ initializeFileInfo();
+ }
+ else
+ if (tabbedpanelMain.getSelectedComponent() == pnlMetadataTab) {
+ initMetadataInfo();
+ }
+ else { // permissions tab
+ initPermissionInfo();
+ }
+ }//GEN-LAST:event_btnRefreshActionPerformed
+
+ private void btnPermissionsSaveActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnPermissionsSaveActionPerformed
+
+ PermissionsTableModel tm = (PermissionsTableModel)tablePermissions.getModel();
+
+ try {
+ // first get any permissions that were removed
+ UserFilePermission[] permissionsToDelete = tm.getPermissionsToDelete();
+
+ for (UserFilePermission permission: permissionsToDelete) {
+
+ if (isCollection()) {
+ CollectionAO collectionAO = irodsFileSystem.getIRODSAccessObjectFactory().getCollectionAO(irodsAccount);
+ collectionAO.removeAccessPermissionForUser(
+ permission.getUserZone(),
+ selectedObjectFullPath,
+ permission.getUserName(),
+ true);
+ }
+ else {
+ DataObjectAO dataObjectAO = irodsFileSystem.getIRODSAccessObjectFactory().getDataObjectAO(irodsAccount);
+ dataObjectAO.removeAccessPermissionsForUser(
+ permission.getUserZone(),
+ selectedObjectFullPath,
+ permission.getUserName());
+ }
+ }
+
+ // now add any permissions that were added
+ UserFilePermission[] permissionsToAdd = tm.getPermissionsToAdd();
+
+ for (UserFilePermission permission: permissionsToAdd) {
+ CollectionAO collectionAO = irodsFileSystem.getIRODSAccessObjectFactory().getCollectionAO(irodsAccount);
+ DataObjectAO dataObjectAO = irodsFileSystem.getIRODSAccessObjectFactory().getDataObjectAO(irodsAccount);
+
+ if (permission.getFilePermissionEnum() == FilePermissionEnum.READ) {
+ if (isCollection()) {
+ collectionAO.setAccessPermissionRead(
+ permission.getUserZone(),
+ selectedObjectFullPath,
+ permission.getUserName(),
+ true);
+ }
+ else {
+ dataObjectAO.setAccessPermissionRead(
+ permission.getUserZone(),
+ selectedObjectFullPath,
+ permission.getUserName());
+ }
+ }
+ else
+ if (permission.getFilePermissionEnum() == FilePermissionEnum.WRITE) {
+ if (isCollection()) {
+ collectionAO.setAccessPermissionWrite(
+ permission.getUserZone(),
+ selectedObjectFullPath,
+ permission.getUserName(),
+ true);
+ }
+ else {
+ dataObjectAO.setAccessPermissionWrite(
+ permission.getUserZone(),
+ selectedObjectFullPath,
+ permission.getUserName());
+ }
+ }
+ else
+ if (permission.getFilePermissionEnum() == FilePermissionEnum.OWN) {
+ if (isCollection()) {
+ collectionAO.setAccessPermissionOwn(
+ permission.getUserZone(),
+ selectedObjectFullPath,
+ permission.getUserName(),
+ true);
+ }
+ else {
+ dataObjectAO.setAccessPermissionOwn(
+ permission.getUserZone(),
+ selectedObjectFullPath,
+ permission.getUserName());
+ }
+ }
+ }
+
+ if((permissionsToAdd.length > 0) || (permissionsToDelete.length > 0)) {
+ JOptionPane.showMessageDialog(
+ this, "Permissions Updated Sucessfully", "Update Permissions", JOptionPane.PLAIN_MESSAGE);
+ }
+
+ tm.resetOriginalPermissionList();
+
+ } catch (JargonException ex) {
+ Exceptions.printStackTrace(ex);
+ JOptionPane.showMessageDialog(
+ this, "Permission Update Failed", "Update Permissions", JOptionPane.PLAIN_MESSAGE);
+ }
+
+ btnPermissionsSave.setEnabled(false);
+ }//GEN-LAST:event_btnPermissionsSaveActionPerformed
+
+ private void btnAddSharePermissionsActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAddSharePermissionsActionPerformed
+ AddPermissionsDialog addPermissionsDialog = new AddPermissionsDialog(
+ this, true, irodsFileSystem, irodsAccount);
+
+ addPermissionsDialog.setLocation(
+ (int)this.getLocation().getX(), (int)this.getLocation().getY());
+ addPermissionsDialog.setVisible(true);
+
+ UserFilePermission userFilePermission = addPermissionsDialog.getPermissionToAdd();
+
+ // first remove this user's entry from table if there is one
+ if (userFilePermission != null) {
+ try {
+ UserAO userAO = irodsFileSystem.getIRODSAccessObjectFactory().getUserAO(irodsAccount);
+ String tableUserName = userFilePermission.getUserName() + "#" + userFilePermission.getUserZone();
+
+ PermissionsTableModel tm = (PermissionsTableModel)tablePermissions.getModel();
+ tm.deleteRow(userAO.findByName(tableUserName));
+
+ // now add to table
+ tm.addRow(userAO.findByName(tableUserName), userFilePermission.getFilePermissionEnum());
+ } catch (JargonException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+ btnPermissionsSave.setEnabled(true);
+ }
+ }//GEN-LAST:event_btnAddSharePermissionsActionPerformed
+
+ private void btnDeleteSharePermissionsActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnDeleteSharePermissionsActionPerformed
+
+ int[] selectedRows = tablePermissions.getSelectedRows();
+ int numRowsSelected = selectedRows.length;
+
+ // have to remove rows in reverse
+ for(int i=numRowsSelected-1; i>=0; i--) {
+ int selectedRow = selectedRows[i];
+ if (selectedRow >= 0) {
+ PermissionsTableModel model = (PermissionsTableModel) tablePermissions.getModel();
+ model.deleteRow(selectedRow);
+ btnPermissionsSave.setEnabled(true);
+ }
+ }
+ }//GEN-LAST:event_btnDeleteSharePermissionsActionPerformed
+
+ // Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JButton btnAddSharePermissions;
+ private javax.swing.JButton btnClose;
+ private javax.swing.JButton btnDeleteSharePermissions;
+ private javax.swing.JButton btnMetadataClear;
+ private javax.swing.JButton btnMetadataCreate;
+ private javax.swing.JButton btnMetadataDelete;
+ private javax.swing.JButton btnPermissionsSave;
+ private javax.swing.JButton btnRefresh;
+ private javax.swing.JButton btnUpdateTagsComments;
+ private javax.swing.JLabel jLabel10;
+ private javax.swing.JLabel jLabel11;
+ private javax.swing.JLabel jLabel12;
+ private javax.swing.JLabel jLabel13;
+ private javax.swing.JLabel jLabel14;
+ private javax.swing.JLabel jLabel15;
+ private javax.swing.JLabel jLabel16;
+ private javax.swing.JLabel jLabel17;
+ private javax.swing.JLabel jLabel18;
+ private javax.swing.JLabel jLabel19;
+ private javax.swing.JLabel jLabel2;
+ private javax.swing.JLabel jLabel20;
+ private javax.swing.JLabel jLabel21;
+ private javax.swing.JLabel jLabel22;
+ private javax.swing.JLabel jLabel23;
+ private javax.swing.JLabel jLabel24;
+ private javax.swing.JLabel jLabel25;
+ private javax.swing.JLabel jLabel26;
+ private javax.swing.JLabel jLabel27;
+ private javax.swing.JLabel jLabel28;
+ private javax.swing.JLabel jLabel29;
+ private javax.swing.JLabel jLabel3;
+ private javax.swing.JLabel jLabel30;
+ private javax.swing.JLabel jLabel4;
+ private javax.swing.JLabel jLabel5;
+ private javax.swing.JLabel jLabel6;
+ private javax.swing.JLabel jLabel7;
+ private javax.swing.JLabel jLabel8;
+ private javax.swing.JLabel jLabel9;
+ private javax.swing.JPanel jPanel1;
+ private javax.swing.JPanel jPanel16;
+ private javax.swing.JPanel jPanel2;
+ private javax.swing.JPanel jPanel3;
+ private javax.swing.JPanel jPanel4;
+ private javax.swing.JPanel jPanel5;
+ private javax.swing.JPanel jPanel6;
+ private javax.swing.JPanel jPanel7;
+ private javax.swing.JPanel jPanel8;
+ private javax.swing.JPanel jPanel9;
+ private javax.swing.JScrollPane jScrollPane1;
+ private javax.swing.JScrollPane jScrollPane2;
+ private javax.swing.JScrollPane jScrollPane3;
+ private javax.swing.JLabel lblInfoCollectionCreatedDate;
+ private javax.swing.JLabel lblInfoCollectionDescription;
+ private javax.swing.JLabel lblInfoCollectionInfo1;
+ private javax.swing.JLabel lblInfoCollectionInfo2;
+ private javax.swing.JLabel lblInfoCollectionModifiedDate;
+ private javax.swing.JLabel lblInfoCollectionObjectPath;
+ private javax.swing.JLabel lblInfoCollectionOwner;
+ private javax.swing.JLabel lblInfoCollectionOwnerZone;
+ private javax.swing.JLabel lblInfoCollectionType;
+ private javax.swing.JLabel lblInfoObjectChecksum;
+ private javax.swing.JLabel lblInfoObjectCreatedDate;
+ private javax.swing.JLabel lblInfoObjectDataPath;
+ private javax.swing.JLabel lblInfoObjectModifiedDate;
+ private javax.swing.JLabel lblInfoObjectName;
+ private javax.swing.JLabel lblInfoObjectOwner;
+ private javax.swing.JLabel lblInfoObjectOwnerZone;
+ private javax.swing.JLabel lblInfoObjectParent;
+ private javax.swing.JLabel lblInfoObjectReplicaNumber;
+ private javax.swing.JLabel lblInfoObjectReplicationStatus;
+ private javax.swing.JLabel lblInfoObjectResource;
+ private javax.swing.JLabel lblInfoObjectResourceGroup;
+ private javax.swing.JLabel lblInfoObjectSize;
+ private javax.swing.JLabel lblInfoObjectStatus;
+ private javax.swing.JLabel lblInfoObjectType;
+ private javax.swing.JLabel lblInfoObjectVersion;
+ private javax.swing.JLabel lblObjectCollection;
+ private javax.swing.JPanel pnlCloseBtn;
+ private javax.swing.JPanel pnlCollectionInfo;
+ private javax.swing.JPanel pnlInfoCards;
+ private javax.swing.JPanel pnlInfoTab;
+ private javax.swing.JPanel pnlMetaDataEdit;
+ private javax.swing.JPanel pnlMetadataTab;
+ private javax.swing.JPanel pnlMetadataTable;
+ private javax.swing.JPanel pnlObjectInfo;
+ private javax.swing.JPanel pnlPermissionsTab;
+ private javax.swing.JPanel pnlPermissionsTable;
+ private javax.swing.JPanel pnlSelectedObject;
+ private javax.swing.JPanel pnlTagsComments;
+ private javax.swing.JTabbedPane tabbedpanelMain;
+ private javax.swing.JTable tableMetadata;
+ private javax.swing.JTable tablePermissions;
+ private javax.swing.JTextArea textareaInfoComments;
+ private javax.swing.JTextField txtInfoTags;
+ private javax.swing.JTextField txtMetadataAttribute;
+ private javax.swing.JTextField txtMetadataUnit;
+ private javax.swing.JTextField txtMetadataValue;
+ // End of variables declaration//GEN-END:variables
+
+}
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/SearchResultsDialog.form b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/SearchResultsDialog.form
new file mode 100644
index 0000000..13b06da
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/SearchResultsDialog.form
@@ -0,0 +1,142 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.5" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JDialogFormInfo">
+ <Properties>
+ <Property name="defaultCloseOperation" type="int" value="2"/>
+ <Property name="title" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="SearchResultsDialog.title" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <SyntheticProperties>
+ <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+ </SyntheticProperties>
+ <AuxValues>
+ <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="1"/>
+ <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="2"/>
+ <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+ <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+ <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,-9,0,0,2,-107"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel1">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlTabSearch">
+ <Properties>
+ <Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="SearchResultsDialog.pnlTabSearch.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlTabSearchTop">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="North"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlTabSearchResults">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridLayout">
+ <Property name="columns" type="int" value="0"/>
+ <Property name="rows" type="int" value="1"/>
+ </Layout>
+ <SubComponents>
+ <Container class="javax.swing.JScrollPane" name="scrollPaneSearchResults">
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JTable" name="tableSearchResults">
+ <Properties>
+ <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor">
+ <Table columnCount="4" rowCount="4">
+ <Column editable="true" title="Title 1" type="java.lang.Object"/>
+ <Column editable="true" title="Title 2" type="java.lang.Object"/>
+ <Column editable="true" title="Title 3" type="java.lang.Object"/>
+ <Column editable="true" title="Title 4" type="java.lang.Object"/>
+ </Table>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel2">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[661, 50]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="1" attributes="0">
+ <EmptySpace pref="528" max="32767" attributes="0"/>
+ <Component id="btnDismiss" min="-2" max="-2" attributes="0"/>
+ <EmptySpace min="-2" pref="38" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <EmptySpace min="-2" pref="15" max="-2" attributes="0"/>
+ <Component id="btnDismiss" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="32767" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnDismiss">
+ <Properties>
+ <Property name="label" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="SearchResultsDialog.btnDismiss.label" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnDismissActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+</Form>
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/SearchResultsDialog.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/SearchResultsDialog.java
new file mode 100644
index 0000000..7238589
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/SearchResultsDialog.java
@@ -0,0 +1,222 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.irods.jargon.idrop.desktop.systraygui;
+
+import java.awt.Cursor;
+import javax.swing.ListSelectionModel;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+import javax.swing.tree.TreePath;
+import org.irods.jargon.core.pub.CollectionAndDataObjectListAndSearchAO;
+import org.irods.jargon.core.query.CollectionAndDataObjectListingEntry;
+import org.irods.jargon.idrop.desktop.systraygui.utils.TreeUtils;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSNode;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSOutlineModel;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSSearchTableModel;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSTree;
+import org.irods.jargon.idrop.exceptions.IdropException;
+import org.openide.util.Exceptions;
+import org.slf4j.LoggerFactory;
+
+/**
+ *
+ * @author lisa
+ */
+public class SearchResultsDialog extends javax.swing.JDialog implements ListSelectionListener {
+
+ private iDrop idropGui;
+ private IRODSTree irodsTree;
+ private IRODSOutlineModel irodsFileSystemModel;
+ private String searchText;
+ public static org.slf4j.Logger log = LoggerFactory.getLogger(IRODSTree.class);
+
+ /**
+ * Creates new form SearchResultsDialog
+ */
+ public SearchResultsDialog(java.awt.Frame parent, boolean modal) {
+ super(parent, modal);
+ initComponents();
+ }
+
+ public SearchResultsDialog(final iDrop parent, final boolean modal,
+ final IRODSTree irodsTree, final String searchText) {
+ super(parent, modal);
+ initComponents();
+
+ this.idropGui = parent;
+ this.irodsTree = irodsTree;
+ this.searchText = searchText;
+ this.irodsFileSystemModel = (IRODSOutlineModel) irodsTree.getModel();
+
+ initSearchResults();
+ }
+
+ private void initSearchResults() {
+ final String searchTerms = searchText.trim();
+
+ tableSearchResults.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
+ ListSelectionModel listSelectionModel = tableSearchResults.getSelectionModel();
+ listSelectionModel.addListSelectionListener(this);
+
+ java.awt.EventQueue.invokeLater(new Runnable() {
+
+ @Override
+ public void run() {
+
+ try {
+ idropGui.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
+ CollectionAndDataObjectListAndSearchAO collectionAndDataObjectListAndSearchAO =
+ idropGui.getiDropCore().getIRODSAccessObjectFactory().getCollectionAndDataObjectListAndSearchAO(
+ idropGui.getiDropCore().getIrodsAccount());
+ IRODSSearchTableModel irodsSearchTableModel = new IRODSSearchTableModel(
+ collectionAndDataObjectListAndSearchAO.searchCollectionsAndDataObjectsBasedOnName(searchTerms));
+ tableSearchResults.setModel(irodsSearchTableModel);
+ //tabIrodsViews.setSelectedComponent(pnlTabSearch);
+ } catch (Exception e) {
+ idropGui.showIdropException(e);
+ return;
+ } finally {
+ idropGui.getiDropCore().closeAllIRODSConnections();
+ idropGui.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+ }
+ }
+ });
+ }
+
+
+ @Override
+ public void valueChanged(ListSelectionEvent lse) {
+ if (lse.getValueIsAdjusting())
+ return;
+
+ int row = tableSearchResults.getSelectedRow();
+
+ CollectionAndDataObjectListingEntry.ObjectType objType =
+ (CollectionAndDataObjectListingEntry.ObjectType) tableSearchResults.getValueAt(row, 0);
+ String selectedParent = (String) tableSearchResults.getValueAt(row, 1);
+ String selectedName = (String) tableSearchResults.getValueAt(row, 2);
+ if (selectedParent != null && selectedName != null) {
+
+ log.info("selected returned search result: {}", selectedParent + "/" + selectedName);
+
+ CollectionAndDataObjectListingEntry entry = new CollectionAndDataObjectListingEntry();
+ entry.setObjectType(objType);
+ entry.setParentPath(selectedParent);
+ entry.setPathOrName(selectedName);
+
+ TreePath path = null;
+ try {
+ path = TreeUtils.buildTreePathForIrodsAbsolutePath(irodsTree, selectedParent + "/" + selectedName);
+ } catch (IdropException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+
+ if (path != null) {
+ irodsTree.expandPath(path);
+ java.awt.Rectangle rect = irodsTree.getPathBounds(path);
+ if (rect != null) {
+ irodsTree.scrollRectToVisible(rect);
+ }
+ }
+ }
+ }
+
+ /**
+ * This method is called from within the constructor to initialize the form.
+ * WARNING: Do NOT modify this code. The content of this method is always
+ * regenerated by the Form Editor.
+ */
+ @SuppressWarnings("unchecked")
+ // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+ private void initComponents() {
+
+ jPanel1 = new javax.swing.JPanel();
+ pnlTabSearch = new javax.swing.JPanel();
+ pnlTabSearchTop = new javax.swing.JPanel();
+ pnlTabSearchResults = new javax.swing.JPanel();
+ scrollPaneSearchResults = new javax.swing.JScrollPane();
+ tableSearchResults = new javax.swing.JTable();
+ jPanel2 = new javax.swing.JPanel();
+ btnDismiss = new javax.swing.JButton();
+
+ setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
+ setTitle(org.openide.util.NbBundle.getMessage(SearchResultsDialog.class, "SearchResultsDialog.title")); // NOI18N
+
+ jPanel1.setLayout(new java.awt.BorderLayout());
+
+ pnlTabSearch.setToolTipText(org.openide.util.NbBundle.getMessage(SearchResultsDialog.class, "SearchResultsDialog.pnlTabSearch.toolTipText")); // NOI18N
+ pnlTabSearch.setLayout(new java.awt.BorderLayout());
+ pnlTabSearch.add(pnlTabSearchTop, java.awt.BorderLayout.NORTH);
+
+ pnlTabSearchResults.setLayout(new java.awt.GridLayout());
+
+ tableSearchResults.setModel(new javax.swing.table.DefaultTableModel(
+ new Object [][] {
+ {null, null, null, null},
+ {null, null, null, null},
+ {null, null, null, null},
+ {null, null, null, null}
+ },
+ new String [] {
+ "Title 1", "Title 2", "Title 3", "Title 4"
+ }
+ ));
+ scrollPaneSearchResults.setViewportView(tableSearchResults);
+
+ pnlTabSearchResults.add(scrollPaneSearchResults);
+
+ pnlTabSearch.add(pnlTabSearchResults, java.awt.BorderLayout.CENTER);
+
+ jPanel1.add(pnlTabSearch, java.awt.BorderLayout.CENTER);
+
+ getContentPane().add(jPanel1, java.awt.BorderLayout.CENTER);
+
+ jPanel2.setPreferredSize(new java.awt.Dimension(661, 50));
+
+ btnDismiss.setLabel(org.openide.util.NbBundle.getMessage(SearchResultsDialog.class, "SearchResultsDialog.btnDismiss.label")); // NOI18N
+ btnDismiss.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnDismissActionPerformed(evt);
+ }
+ });
+
+ org.jdesktop.layout.GroupLayout jPanel2Layout = new org.jdesktop.layout.GroupLayout(jPanel2);
+ jPanel2.setLayout(jPanel2Layout);
+ jPanel2Layout.setHorizontalGroup(
+ jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel2Layout.createSequentialGroup()
+ .addContainerGap(528, Short.MAX_VALUE)
+ .add(btnDismiss)
+ .add(38, 38, 38))
+ );
+ jPanel2Layout.setVerticalGroup(
+ jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanel2Layout.createSequentialGroup()
+ .add(15, 15, 15)
+ .add(btnDismiss)
+ .addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ );
+
+ getContentPane().add(jPanel2, java.awt.BorderLayout.SOUTH);
+
+ pack();
+ }// </editor-fold>//GEN-END:initComponents
+
+ private void btnDismissActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnDismissActionPerformed
+ this.dispose();
+ }//GEN-LAST:event_btnDismissActionPerformed
+
+ // Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JButton btnDismiss;
+ private javax.swing.JPanel jPanel1;
+ private javax.swing.JPanel jPanel2;
+ private javax.swing.JPanel pnlTabSearch;
+ private javax.swing.JPanel pnlTabSearchResults;
+ private javax.swing.JPanel pnlTabSearchTop;
+ private javax.swing.JScrollPane scrollPaneSearchResults;
+ private javax.swing.JTable tableSearchResults;
+ // End of variables declaration//GEN-END:variables
+
+}
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/UploadDialog.form b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/UploadDialog.form
new file mode 100644
index 0000000..6ac3155
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/UploadDialog.form
@@ -0,0 +1,363 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.5" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JDialogFormInfo">
+ <Properties>
+ <Property name="defaultCloseOperation" type="int" value="2"/>
+ <Property name="title" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="UploadDialog.title" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[600, 400]"/>
+ </Property>
+ </Properties>
+ <SyntheticProperties>
+ <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+ </SyntheticProperties>
+ <AuxValues>
+ <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="1"/>
+ <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="2"/>
+ <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+ <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+ <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,2,8,0,0,1,-25"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel1">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="6" left="6" right="6" top="6"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[600, 400]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel4">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo">
+ <EtchetBorder/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[945, 76]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="North"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel9">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[100, 32]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="North"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel7">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="West"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="jLabel1">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="UploadDialog.jLabel1.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JTextField" name="txtUploadTarget">
+ <Properties>
+ <Property name="editable" type="boolean" value="false"/>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="UploadDialog.txtUploadTarget.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[200, 28]"/>
+ </Property>
+ <Property name="requestFocusEnabled" type="boolean" value="false"/>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel8">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="East"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnBrowseUploadTarget">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="UploadDialog.btnBrowseUploadTarget.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnBrowseUploadTargetActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel10">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="10" left="1" right="1" top="1"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[100, 40]"/>
+ </Property>
+ <Property name="size" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[100, 32]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel11">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="0" left="0" right="0" top="0"/>
+ </Border>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="East"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnUseIrodsHome">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="UploadDialog.btnUseIrodsHome.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnUseIrodsHomeActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnUseLastUpload">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="UploadDialog.btnUseLastUpload.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnUseLastUploadActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel5">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="1" left="4" right="4" top="14"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[462, 250]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="jLabel2">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="UploadDialog.jLabel2.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="First"/>
+ </Constraint>
+ </Constraints>
+ </Component>
+ <Container class="javax.swing.JScrollPane" name="jScrollPane1">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[454, 190]"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JTable" name="tblFilesToUpload">
+ <Properties>
+ <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor">
+ <Table columnCount="1" rowCount="0">
+ <Column editable="false" title="File" type="java.lang.String"/>
+ </Table>
+ </Property>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel3">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[100, 25]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel6">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="West"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout">
+ <Property name="horizontalGap" type="int" value="1"/>
+ <Property name="verticalGap" type="int" value="1"/>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnAddUploadFile">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="UploadDialog.btnAddUploadFile.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[22, 24]"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnAddUploadFileActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnDeleteUploadFile">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="UploadDialog.btnDeleteUploadFile.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[22, 24]"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnDeleteUploadFileActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel2">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="jPanel12">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="East"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JButton" name="btnUploadNow">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="UploadDialog.btnUploadNow.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="enabled" type="boolean" value="false"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnUploadNowActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnCancel">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="UploadDialog.btnCancel.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnCancelActionPerformed"/>
+ </Events>
+ </Component>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+ </Container>
+ </SubComponents>
+</Form>
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/UploadDialog.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/UploadDialog.java
new file mode 100644
index 0000000..8c08ba5
--- /dev/null
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/UploadDialog.java
@@ -0,0 +1,577 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.irods.jargon.idrop.desktop.systraygui;
+
+import java.awt.Cursor;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import javax.swing.JFileChooser;
+import javax.swing.ListSelectionModel;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+import javax.swing.event.TableModelEvent;
+import javax.swing.event.TableModelListener;
+import javax.swing.table.DefaultTableModel;
+import javax.swing.tree.TreePath;
+import javax.swing.tree.TreeSelectionModel;
+import org.irods.jargon.core.exception.JargonException;
+import org.irods.jargon.core.pub.io.IRODSFile;
+import org.irods.jargon.core.utils.MiscIRODSUtils;
+import org.irods.jargon.idrop.desktop.systraygui.services.IRODSFileService;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSNode;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSOutlineModel;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.IRODSTree;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.LocalFileNode;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.LocalFileSystemModel;
+import org.irods.jargon.idrop.desktop.systraygui.viscomponents.LocalFileTree;
+import org.irods.jargon.idrop.exceptions.IdropException;
+import org.irods.jargon.idrop.finder.IRODSFinderDialog;
+import org.irods.jargon.transfer.dao.domain.LocalIRODSTransfer;
+import org.irods.jargon.transfer.dao.domain.TransferType;
+import org.openide.util.Exceptions;
+import org.slf4j.LoggerFactory;
+
+/**
+ *
+ * @author lisa
+ */
+public class UploadDialog extends javax.swing.JDialog implements ListSelectionListener {
+
+ iDrop idropGUI;
+ IRODSTree irodsTree;
+ LocalFileTree localFileTree;
+ public static org.slf4j.Logger log = LoggerFactory.getLogger(IRODSTree.class);
+
+ /**
+ * Creates new form UploadDialog
+ */
+ public UploadDialog(java.awt.Frame parent, boolean modal) {
+ super(parent, modal);
+ initComponents();
+ }
+
+ public UploadDialog(final iDrop parent, final boolean modal,
+ final IRODSTree irodsTree,
+ final LocalFileTree localFileTree) {
+ super(parent, modal);
+ initComponents();
+
+ this.idropGUI = parent;
+ this.irodsTree = irodsTree;
+ this.localFileTree = localFileTree;
+ this.btnDeleteUploadFile.setEnabled(false);
+ tblFilesToUpload.getSelectionModel().addListSelectionListener(this);
+
+ initUploadTarget();
+// initSourcesFiles();
+ setUploadButtonState();
+ }
+
+ private void initUploadTarget() {
+
+ String target = "";
+
+ //check for selected collection to use for upload target
+ // get iRODS File Service
+ IRODSFileService irodsFS = null;
+ try {
+ irodsFS = new IRODSFileService(idropGUI.getiDropCore().getIrodsAccount(),
+ idropGUI.getiDropCore().getIrodsFileSystem());
+ } catch (Exception ex) {
+ //JOptionPane.showMessageDialog(this, "Cannot access iRODS file system for get.");
+ log.error("cannot create irods file service");
+ return;
+ }
+
+ IRODSOutlineModel irodsFileSystemModel = (IRODSOutlineModel) irodsTree.getModel();
+ ListSelectionModel selectionModel = irodsTree.getSelectionModel();
+ int idx = selectionModel.getLeadSelectionIndex();
+
+ // make sure there is a selected node
+ if (idx >= 0) {
+ IRODSFile ifile = null;
+ try {
+ IRODSNode selectedNode = (IRODSNode) irodsFileSystemModel.getValueAt(idx, 0);
+ ifile = irodsFS.getIRODSFileForPath(selectedNode.getFullPath());
+
+ // rule out "/" and choose parent if file is not a directory
+ String path = ifile.getAbsolutePath();
+ if (ifile.isFile()) {
+ path = ifile.getParent();
+ }
+ if ((path != null) && (!path.equals("/"))) {
+ target = path;
+ }
+ } catch (IdropException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+ }
+// else {
+//
+// // next see if can find some put history in the transfer queue
+// // manager and use that target location
+// // next see if can find some get history in the transfer queue
+// try {
+// List<LocalIRODSTransfer> transfers = idropGUI.getiDropCore().getTransferManager().getRecentQueue();
+//
+// // assuming most recent first
+// for (LocalIRODSTransfer transfer: transfers) {
+// if (transfer.getTransferType() == TransferType.PUT) {
+// target = transfer.getIrodsAbsolutePath();
+// break;
+// }
+// }
+// } catch (JargonException ex) {
+// Exceptions.printStackTrace(ex);
+// }
+// }
+
+ txtUploadTarget.setText(target);
+ }
+
+
+ // seems to be impossible to preselect files in filechooser component
+ // don't do this for now
+// private void initSourcesFiles() {
+//
+// //check for selected files and/or folders to upload
+// TreeSelectionModel selectionModel = localFileTree.getSelectionModel();
+// LocalFileSystemModel fileSystemModel = (LocalFileSystemModel) localFileTree.getModel();
+//
+// TreePath[] selectionPaths = selectionModel.getSelectionPaths();
+//
+// // now select these paths in the file chooser
+// if ( selectionPaths != null) {
+// LocalFileNode sourceNode;
+// for (TreePath selectionPath : selectionPaths) {
+// sourceNode = (LocalFileNode) selectionPath.getLastPathComponent();
+// File file = (File) sourceNode.getUserObject();
+// //txtareaUploadSourceList.append(file.getAbsolutePath() + "\n");
+// localChooser.setSelectedFile(file);
+// }
+// }
+//
+// }
+
+ private void setUploadButtonState() {
+ btnUploadNow.setEnabled(((txtUploadTarget.getText().length() > 0) &&
+ (tblFilesToUpload.getModel().getRowCount() > 0)));
+ }
+
+
+ private void executeUpload() {
+
+ idropGUI.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
+
+ final String targetPath = txtUploadTarget.getText();
+ //final String sourceFiles[] = txtareaUploadSourceList.getText().split("\n");
+ final String sourceFiles[] = getFilesToUpload();
+
+ // process as a put
+ java.awt.EventQueue.invokeLater(new Runnable() {
+ @Override
+ public void run() {
+
+ for (String transferFile : sourceFiles) {
+ log.info("process a put from source: {}",
+ transferFile);
+
+ String sourceResource = idropGUI.getIrodsAccount().getDefaultStorageResource();
+ log.info("initiating put transfer");
+ try {
+ idropGUI.getiDropCore().getTransferManager().enqueueAPut(transferFile,
+ targetPath,
+ sourceResource,
+ idropGUI.getIrodsAccount());
+ } catch (JargonException ex) {
+ java.util.logging.Logger.getLogger(
+ LocalFileTree.class.getName()).log(
+ java.util.logging.Level.SEVERE, null, ex);
+ idropGUI.showIdropException(ex);
+ }
+ }
+ }
+ });
+
+ idropGUI.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+ }
+
+
+ private String[] getFilesToUpload() {
+
+ int numFiles = 0;
+ DefaultTableModel model = (DefaultTableModel) tblFilesToUpload.getModel();
+ numFiles = model.getRowCount();
+ String[] filesToUpload = new String[numFiles];
+
+ for (int i=0; i<numFiles; i++) {
+ filesToUpload[i] = (String) model.getValueAt(i, 0);
+ }
+
+ return filesToUpload;
+ }
+
+ private void setFilesToUpload(File[] files) {
+
+ DefaultTableModel model = (DefaultTableModel) tblFilesToUpload.getModel();
+
+ for(int i=0; i<files.length; i++) {
+ String filePath = files[i].getAbsolutePath();
+ model.addRow(new Object[] {filePath});
+ }
+ }
+
+
+ @Override
+ public void valueChanged(ListSelectionEvent lse) {
+ if (lse.getValueIsAdjusting() == false) {
+ btnDeleteUploadFile.setEnabled(tblFilesToUpload.getSelectedRow() >= 0);
+ }
+ }
+
+// private void btnBrowseUploadSourceActionPerformed(java.awt.event.ActionEvent evt) {
+//
+// JFileChooser localFileChooser = new JFileChooser();
+// localFileChooser.setMultiSelectionEnabled(true);
+// localFileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
+// localFileChooser.setDialogTitle("Select Files and Collections to Upload");
+// localFileChooser.setLocation(
+// (int)this.getLocation().getX(), (int)this.getLocation().getY());
+// int returnVal = localFileChooser.showOpenDialog(this);
+//
+// if (returnVal == JFileChooser.APPROVE_OPTION) {
+// File uploadFiles[] = localFileChooser.getSelectedFiles();
+// for (File uploadFile: uploadFiles) {
+// txtareaUploadSourceList.append(uploadFile.getAbsolutePath() + "\n");
+// }
+// setUploadButtonState();
+// }
+// }
+
+
+ /**
+ * This method is called from within the constructor to initialize the form.
+ * WARNING: Do NOT modify this code. The content of this method is always
+ * regenerated by the Form Editor.
+ */
+ @SuppressWarnings("unchecked")
+ // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+ private void initComponents() {
+
+ jPanel1 = new javax.swing.JPanel();
+ jPanel4 = new javax.swing.JPanel();
+ jPanel9 = new javax.swing.JPanel();
+ jPanel7 = new javax.swing.JPanel();
+ jLabel1 = new javax.swing.JLabel();
+ txtUploadTarget = new javax.swing.JTextField();
+ jPanel8 = new javax.swing.JPanel();
+ btnBrowseUploadTarget = new javax.swing.JButton();
+ jPanel10 = new javax.swing.JPanel();
+ jPanel11 = new javax.swing.JPanel();
+ btnUseIrodsHome = new javax.swing.JButton();
+ btnUseLastUpload = new javax.swing.JButton();
+ jPanel5 = new javax.swing.JPanel();
+ jLabel2 = new javax.swing.JLabel();
+ jScrollPane1 = new javax.swing.JScrollPane();
+ tblFilesToUpload = new javax.swing.JTable();
+ jPanel3 = new javax.swing.JPanel();
+ jPanel6 = new javax.swing.JPanel();
+ btnAddUploadFile = new javax.swing.JButton();
+ btnDeleteUploadFile = new javax.swing.JButton();
+ jPanel2 = new javax.swing.JPanel();
+ jPanel12 = new javax.swing.JPanel();
+ btnUploadNow = new javax.swing.JButton();
+ btnCancel = new javax.swing.JButton();
+
+ setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
+ setTitle(org.openide.util.NbBundle.getMessage(UploadDialog.class, "UploadDialog.title")); // NOI18N
+ setPreferredSize(new java.awt.Dimension(600, 400));
+
+ jPanel1.setBorder(javax.swing.BorderFactory.createEmptyBorder(6, 6, 6, 6));
+ jPanel1.setPreferredSize(new java.awt.Dimension(600, 400));
+ jPanel1.setLayout(new java.awt.BorderLayout());
+
+ jPanel4.setBorder(javax.swing.BorderFactory.createEtchedBorder());
+ jPanel4.setPreferredSize(new java.awt.Dimension(945, 76));
+ jPanel4.setLayout(new java.awt.BorderLayout());
+
+ jPanel9.setPreferredSize(new java.awt.Dimension(100, 32));
+ jPanel9.setLayout(new java.awt.BorderLayout());
+
+ jLabel1.setText(org.openide.util.NbBundle.getMessage(UploadDialog.class, "UploadDialog.jLabel1.text")); // NOI18N
+ jPanel7.add(jLabel1);
+
+ txtUploadTarget.setEditable(false);
+ txtUploadTarget.setText(org.openide.util.NbBundle.getMessage(UploadDialog.class, "UploadDialog.txtUploadTarget.text")); // NOI18N
+ txtUploadTarget.setPreferredSize(new java.awt.Dimension(200, 28));
+ txtUploadTarget.setRequestFocusEnabled(false);
+ jPanel7.add(txtUploadTarget);
+
+ jPanel9.add(jPanel7, java.awt.BorderLayout.WEST);
+
+ btnBrowseUploadTarget.setText(org.openide.util.NbBundle.getMessage(UploadDialog.class, "UploadDialog.btnBrowseUploadTarget.text")); // NOI18N
+ btnBrowseUploadTarget.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnBrowseUploadTargetActionPerformed(evt);
+ }
+ });
+ jPanel8.add(btnBrowseUploadTarget);
+
+ jPanel9.add(jPanel8, java.awt.BorderLayout.EAST);
+
+ jPanel4.add(jPanel9, java.awt.BorderLayout.NORTH);
+
+ jPanel10.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 10, 1));
+ jPanel10.setPreferredSize(new java.awt.Dimension(100, 40));
+ jPanel10.setSize(new java.awt.Dimension(100, 32));
+ jPanel10.setLayout(new java.awt.BorderLayout());
+
+ jPanel11.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
+
+ btnUseIrodsHome.setText(org.openide.util.NbBundle.getMessage(UploadDialog.class, "UploadDialog.btnUseIrodsHome.text")); // NOI18N
+ btnUseIrodsHome.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnUseIrodsHomeActionPerformed(evt);
+ }
+ });
+ jPanel11.add(btnUseIrodsHome);
+
+ btnUseLastUpload.setText(org.openide.util.NbBundle.getMessage(UploadDialog.class, "UploadDialog.btnUseLastUpload.text")); // NOI18N
+ btnUseLastUpload.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnUseLastUploadActionPerformed(evt);
+ }
+ });
+ jPanel11.add(btnUseLastUpload);
+
+ jPanel10.add(jPanel11, java.awt.BorderLayout.EAST);
+
+ jPanel4.add(jPanel10, java.awt.BorderLayout.SOUTH);
+
+ jPanel1.add(jPanel4, java.awt.BorderLayout.NORTH);
+
+ jPanel5.setBorder(javax.swing.BorderFactory.createEmptyBorder(14, 4, 1, 4));
+ jPanel5.setPreferredSize(new java.awt.Dimension(462, 250));
+ jPanel5.setLayout(new java.awt.BorderLayout());
+
+ jLabel2.setText(org.openide.util.NbBundle.getMessage(UploadDialog.class, "UploadDialog.jLabel2.text")); // NOI18N
+ jPanel5.add(jLabel2, java.awt.BorderLayout.PAGE_START);
+
+ jScrollPane1.setPreferredSize(new java.awt.Dimension(454, 190));
+
+ tblFilesToUpload.setModel(new javax.swing.table.DefaultTableModel(
+ new Object [][] {
+
+ },
+ new String [] {
+ "File"
+ }
+ ) {
+ Class[] types = new Class [] {
+ java.lang.String.class
+ };
+ boolean[] canEdit = new boolean [] {
+ false
+ };
+
+ public Class getColumnClass(int columnIndex) {
+ return types [columnIndex];
+ }
+
+ public boolean isCellEditable(int rowIndex, int columnIndex) {
+ return canEdit [columnIndex];
+ }
+ });
+ jScrollPane1.setViewportView(tblFilesToUpload);
+
+ jPanel5.add(jScrollPane1, java.awt.BorderLayout.CENTER);
+
+ jPanel3.setPreferredSize(new java.awt.Dimension(100, 25));
+ jPanel3.setLayout(new java.awt.BorderLayout());
+
+ jPanel6.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.CENTER, 1, 1));
+
+ btnAddUploadFile.setText(org.openide.util.NbBundle.getMessage(UploadDialog.class, "UploadDialog.btnAddUploadFile.text")); // NOI18N
+ btnAddUploadFile.setPreferredSize(new java.awt.Dimension(22, 24));
+ btnAddUploadFile.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnAddUploadFileActionPerformed(evt);
+ }
+ });
+ jPanel6.add(btnAddUploadFile);
+
+ btnDeleteUploadFile.setText(org.openide.util.NbBundle.getMessage(UploadDialog.class, "UploadDialog.btnDeleteUploadFile.text")); // NOI18N
+ btnDeleteUploadFile.setPreferredSize(new java.awt.Dimension(22, 24));
+ btnDeleteUploadFile.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnDeleteUploadFileActionPerformed(evt);
+ }
+ });
+ jPanel6.add(btnDeleteUploadFile);
+
+ jPanel3.add(jPanel6, java.awt.BorderLayout.WEST);
+
+ jPanel5.add(jPanel3, java.awt.BorderLayout.SOUTH);
+
+ jPanel1.add(jPanel5, java.awt.BorderLayout.CENTER);
+
+ getContentPane().add(jPanel1, java.awt.BorderLayout.CENTER);
+
+ jPanel2.setLayout(new java.awt.BorderLayout());
+
+ btnUploadNow.setText(org.openide.util.NbBundle.getMessage(UploadDialog.class, "UploadDialog.btnUploadNow.text")); // NOI18N
+ btnUploadNow.setEnabled(false);
+ btnUploadNow.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnUploadNowActionPerformed(evt);
+ }
+ });
+ jPanel12.add(btnUploadNow);
+
+ btnCancel.setText(org.openide.util.NbBundle.getMessage(UploadDialog.class, "UploadDialog.btnCancel.text")); // NOI18N
+ btnCancel.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnCancelActionPerformed(evt);
+ }
+ });
+ jPanel12.add(btnCancel);
+
+ jPanel2.add(jPanel12, java.awt.BorderLayout.EAST);
+
+ getContentPane().add(jPanel2, java.awt.BorderLayout.SOUTH);
+
+ pack();
+ }// </editor-fold>//GEN-END:initComponents
+
+ private void btnBrowseUploadTargetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnBrowseUploadTargetActionPerformed
+
+ IRODSFinderDialog irodsFinder = new IRODSFinderDialog(
+ idropGUI, false, idropGUI.getiDropCore());
+ irodsFinder.setTitle("Select iRODS Collection Upload Target");
+ irodsFinder.setSelectionType(IRODSFinderDialog.SelectionType.COLLS_ONLY_SELECTION_MODE);
+ irodsFinder.setLocation(
+ (int)this.getLocation().getX(), (int)this.getLocation().getY());
+ irodsFinder.setVisible(true);
+
+ String selectedPath = irodsFinder.getSelectedAbsolutePath();
+ if (selectedPath != null) {
+ txtUploadTarget.setText(selectedPath);
+ }
+ setUploadButtonState();
+ }//GEN-LAST:event_btnBrowseUploadTargetActionPerformed
+
+ private void btnCancelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnCancelActionPerformed
+ this.dispose();
+ }//GEN-LAST:event_btnCancelActionPerformed
+
+ private void btnUploadNowActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnUploadNowActionPerformed
+ executeUpload();
+ this.dispose();
+ }//GEN-LAST:event_btnUploadNowActionPerformed
+
+ private void btnUseIrodsHomeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnUseIrodsHomeActionPerformed
+ String target = "";
+ if (idropGUI.getiDropCore().getIrodsAccount().isAnonymousAccount()) {
+ target = MiscIRODSUtils.computePublicDirectory(idropGUI.getiDropCore().getIrodsAccount());
+ } else {
+ target = MiscIRODSUtils.computeHomeDirectoryForIRODSAccount(idropGUI.getiDropCore().getIrodsAccount());
+ }
+ if (target != null) {
+ txtUploadTarget.setText(target);
+ }
+ setUploadButtonState();
+ }//GEN-LAST:event_btnUseIrodsHomeActionPerformed
+
+ private void btnUseLastUploadActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnUseLastUploadActionPerformed
+ String target = "";
+ // see if can find some get history in the transfer queue
+ try {
+ List<LocalIRODSTransfer> transfers = idropGUI.getiDropCore().getTransferManager().getRecentQueue();
+
+ // assuming most recent first
+ for (LocalIRODSTransfer transfer: transfers) {
+ // must check to match type, user, host, zone, & port
+ if ((transfer.getTransferType() == TransferType.PUT) &&
+ (transfer.getTransferUserName().equals(idropGUI.getiDropCore().getIrodsAccount().getUserName())) &&
+ (transfer.getTransferZone().equals(idropGUI.getiDropCore().getIrodsAccount().getZone())) &&
+ (transfer.getTransferPort() == idropGUI.getiDropCore().getIrodsAccount().getPort()) &&
+ (transfer.getTransferHost().equals(idropGUI.getiDropCore().getIrodsAccount().getHost()))) {
+ target = transfer.getIrodsAbsolutePath();
+ break;
+ }
+ }
+ } catch (JargonException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+ if (target != null) {
+ txtUploadTarget.setText(target);
+ }
+ setUploadButtonState();
+ }//GEN-LAST:event_btnUseLastUploadActionPerformed
+
+ private void btnAddUploadFileActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAddUploadFileActionPerformed
+ JFileChooser localFileChooser = new JFileChooser();
+ localFileChooser.setMultiSelectionEnabled(true);
+ localFileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
+ localFileChooser.setDialogTitle("Select Files to Upload");
+ localFileChooser.setLocation(
+ (int)this.getLocation().getX(), (int)this.getLocation().getY());
+ int returnVal = localFileChooser.showOpenDialog(this);
+
+ if (returnVal == JFileChooser.APPROVE_OPTION) {
+ File[] filesToUpload = localFileChooser.getSelectedFiles();
+ setFilesToUpload(filesToUpload);
+ setUploadButtonState();
+ }
+ }//GEN-LAST:event_btnAddUploadFileActionPerformed
+
+ private void btnDeleteUploadFileActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnDeleteUploadFileActionPerformed
+
+ int[] selectedRows = tblFilesToUpload.getSelectedRows();
+ int numRowsSelected = selectedRows.length;
+
+ // have to remove rows in reverse
+ for(int i=numRowsSelected-1; i>=0; i--) {
+ //for (int selectedRow: selectedRows) {
+ int selectedRow = selectedRows[i];
+ if (selectedRow >= 0) {
+ DefaultTableModel model = (DefaultTableModel) tblFilesToUpload.getModel();
+ model.removeRow(selectedRow);
+ }
+ }
+ }//GEN-LAST:event_btnDeleteUploadFileActionPerformed
+
+ // Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JButton btnAddUploadFile;
+ private javax.swing.JButton btnBrowseUploadTarget;
+ private javax.swing.JButton btnCancel;
+ private javax.swing.JButton btnDeleteUploadFile;
+ private javax.swing.JButton btnUploadNow;
+ private javax.swing.JButton btnUseIrodsHome;
+ private javax.swing.JButton btnUseLastUpload;
+ private javax.swing.JLabel jLabel1;
+ private javax.swing.JLabel jLabel2;
+ private javax.swing.JPanel jPanel1;
+ private javax.swing.JPanel jPanel10;
+ private javax.swing.JPanel jPanel11;
+ private javax.swing.JPanel jPanel12;
+ private javax.swing.JPanel jPanel2;
+ private javax.swing.JPanel jPanel3;
+ private javax.swing.JPanel jPanel4;
+ private javax.swing.JPanel jPanel5;
+ private javax.swing.JPanel jPanel6;
+ private javax.swing.JPanel jPanel7;
+ private javax.swing.JPanel jPanel8;
+ private javax.swing.JPanel jPanel9;
+ private javax.swing.JScrollPane jScrollPane1;
+ private javax.swing.JTable tblFilesToUpload;
+ private javax.swing.JTextField txtUploadTarget;
+ // End of variables declaration//GEN-END:variables
+
+}
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/iDrop.form b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/iDrop.form
index 483783b..80dbbc7 100644
--- a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/iDrop.form
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/iDrop.form
@@ -1,316 +1,70 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<Form version="1.7" maxVersion="1.7" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
+<Form version="1.5" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
<NonVisualComponents>
- <Container class="javax.swing.JPopupMenu" name="searchTablePopupMenu">
- <AuxValues>
- <AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="4"/>
- </AuxValues>
+ <Container class="javax.swing.JPopupMenu" name="jPopupMenu1">
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout">
<Property name="useNullLayout" type="boolean" value="true"/>
</Layout>
- <SubComponents>
- <MenuItem class="javax.swing.JMenuItem" name="menuItemShowInHierarchy">
- <Properties>
- <Property name="text" type="java.lang.String" value="Show in iRODS"/>
- <Property name="toolTipText" type="java.lang.String" value="Show this file or collection in the iRODS hierarchy"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="menuItemShowInHierarchyActionPerformed"/>
- </Events>
- </MenuItem>
- </SubComponents>
- </Container>
- <Component class="javax.swing.ButtonGroup" name="buttonGroupLandF">
- </Component>
- <Container class="javax.swing.JPanel" name="pnlInfoMetadata">
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
- <SubComponents>
- <Component class="javax.swing.JLabel" name="lblMetadataInfo">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
- <Color blue="ff" green="0" id="blue" palette="1" red="0" type="palette"/>
- </Property>
- <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
- <Image iconType="3" name="/edit-4.png"/>
- </Property>
- <Property name="text" type="java.lang.String" value="iRODS AVU Metadata"/>
- </Properties>
- </Component>
- </SubComponents>
</Container>
- <Container class="javax.swing.JPanel" name="pnlInfoSharing">
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
- <SubComponents>
- <Component class="javax.swing.JLabel" name="lblInfoSharing">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
- <Color blue="ff" green="0" id="blue" palette="1" red="0" type="palette"/>
- </Property>
- <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
- <Image iconType="3" name="/share.png"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Access Permissions and Tickets"/>
- </Properties>
- </Component>
- </SubComponents>
- </Container>
- <Container class="javax.swing.JPanel" name="pnlInfoReplication">
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
- <SubComponents>
- <Component class="javax.swing.JLabel" name="lblMetadataInfo1">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
- <Color blue="ff" green="0" id="blue" palette="1" red="0" type="palette"/>
- </Property>
- <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
- <Image iconType="3" name="/edit-copy-3.png"/>
- </Property>
- <Property name="text" type="java.lang.String" value="File Replication"/>
- </Properties>
- </Component>
- </SubComponents>
- </Container>
- <Menu class="javax.swing.JMenuBar" name="jMenuBar1">
- <SubComponents>
- <Menu class="javax.swing.JMenu" name="jMenuFile">
- <Properties>
- <Property name="mnemonic" type="int" value="102"/>
- <Property name="text" type="java.lang.String" value="File"/>
- </Properties>
- <SubComponents>
- <MenuItem class="javax.swing.JMenuItem" name="jMenuItemClose">
- <Properties>
- <Property name="mnemonic" type="int" value="99"/>
- <Property name="text" type="java.lang.String" value="Close iDrop GUI"/>
- <Property name="toolTipText" type="java.lang.String" value="Close the iDrop GUI, leaving iDrop running "/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jMenuItemCloseActionPerformed"/>
- </Events>
- </MenuItem>
- <MenuItem class="javax.swing.JMenuItem" name="jMenuItemExit">
- <Properties>
- <Property name="mnemonic" type="int" value="120"/>
- <Property name="text" type="java.lang.String" value="Exit"/>
- <Property name="toolTipText" type="java.lang.String" value="Exit iDrop entirely"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jMenuItemExitActionPerformed"/>
- </Events>
- </MenuItem>
- </SubComponents>
- </Menu>
- <Menu class="javax.swing.JMenu" name="jMenuEdit">
- <Properties>
- <Property name="mnemonic" type="int" value="69"/>
- <Property name="text" type="java.lang.String" value="Edit"/>
- </Properties>
- </Menu>
- <Menu class="javax.swing.JMenu" name="jMenuView">
- <Properties>
- <Property name="mnemonic" type="int" value="86"/>
- <Property name="text" type="java.lang.String" value="View"/>
- </Properties>
- <SubComponents>
- <MenuItem class="javax.swing.JCheckBoxMenuItem" name="jCheckBoxMenuItemShowSourceTree">
- <Properties>
- <Property name="accelerator" type="javax.swing.KeyStroke" editor="org.netbeans.modules.form.editors.KeyStrokeEditor">
- <KeyStroke key="Shift+L"/>
- </Property>
- <Property name="mnemonic" type="int" value="76"/>
- <Property name="text" type="java.lang.String" value="Show Local"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jCheckBoxMenuItemShowSourceTreeActionPerformed"/>
- </Events>
- </MenuItem>
- <MenuItem class="javax.swing.JCheckBoxMenuItem" name="jCheckBoxMenuItemShowIrodsInfo">
- <Properties>
- <Property name="accelerator" type="javax.swing.KeyStroke" editor="org.netbeans.modules.form.editors.KeyStrokeEditor">
- <KeyStroke key="Shift+L"/>
- </Property>
- <Property name="mnemonic" type="int" value="73"/>
- <Property name="text" type="java.lang.String" value="Show iRODS Info"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jCheckBoxMenuItemShowIrodsInfoActionPerformed"/>
- </Events>
- </MenuItem>
- </SubComponents>
- </Menu>
- <Menu class="javax.swing.JMenu" name="jMenuTools">
- <Properties>
- <Property name="mnemonic" type="int" value="84"/>
- <Property name="text" type="java.lang.String" value="Tools"/>
- <Property name="toolTipText" type="java.lang.String" value="Tools and options for iDrop"/>
- </Properties>
- <SubComponents>
- <Menu class="javax.swing.JMenu" name="jMenuLookAndFeel">
- <Properties>
- <Property name="mnemonic" type="int" value="108"/>
- <Property name="text" type="java.lang.String" value="Set look and feel"/>
- <Property name="toolTipText" type="java.lang.String" value="Set the look and feel for the GUI"/>
- </Properties>
- <SubComponents>
- <MenuItem class="javax.swing.JRadioButtonMenuItem" name="jRadioButtonLookAndFeelDefault">
- <Properties>
- <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
- <ComponentRef name="buttonGroupLandF"/>
- </Property>
- <Property name="mnemonic" type="int" value="100"/>
- <Property name="selected" type="boolean" value="true"/>
- <Property name="text" type="java.lang.String" value="Default"/>
- <Property name="toolTipText" type="java.lang.String" value="Default system look an dfeel"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jRadioButtonLookAndFeelDefaultActionPerformed"/>
- </Events>
- </MenuItem>
- <MenuItem class="javax.swing.JRadioButtonMenuItem" name="jRadioButtonLookAndFeelNimbus">
- <Properties>
- <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
- <ComponentRef name="buttonGroupLandF"/>
- </Property>
- <Property name="mnemonic" type="int" value="110"/>
- <Property name="text" type="java.lang.String" value="Nimbus"/>
- <Property name="toolTipText" type="java.lang.String" value="Nimbus look and feel"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jRadioButtonLookAndFeelNimbusActionPerformed"/>
- </Events>
- </MenuItem>
- <MenuItem class="javax.swing.JRadioButtonMenuItem" name="jRadioButtonMenuItemMetal">
- <Properties>
- <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
- <ComponentRef name="buttonGroupLandF"/>
- </Property>
- <Property name="mnemonic" type="int" value="109"/>
- <Property name="text" type="java.lang.String" value="Metal"/>
- <Property name="toolTipText" type="java.lang.String" value="Metal look and feel"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jRadioButtonMenuItemMetalActionPerformed"/>
- </Events>
- </MenuItem>
- <MenuItem class="javax.swing.JRadioButtonMenuItem" name="jRadioButtonMenuItemMotif">
- <Properties>
- <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
- <ComponentRef name="buttonGroupLandF"/>
- </Property>
- <Property name="mnemonic" type="int" value="116"/>
- <Property name="text" type="java.lang.String" value="Motif"/>
- <Property name="toolTipText" type="java.lang.String" value="Motif look and feel"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jRadioButtonMenuItemMotifActionPerformed"/>
- </Events>
- </MenuItem>
- <MenuItem class="javax.swing.JRadioButtonMenuItem" name="jRadioButtonMenuItemGTK">
- <Properties>
- <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
- <ComponentRef name="buttonGroupLandF"/>
- </Property>
- <Property name="mnemonic" type="int" value="103"/>
- <Property name="text" type="java.lang.String" value="GTK"/>
- <Property name="toolTipText" type="java.lang.String" value="GTK look and feel"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jRadioButtonMenuItemGTKActionPerformed"/>
- </Events>
- </MenuItem>
- </SubComponents>
- </Menu>
- <MenuItem class="javax.swing.JMenuItem" name="jMenuItemConfig">
- <Properties>
- <Property name="mnemonic" type="int" value="112"/>
- <Property name="text" type="java.lang.String" value="Preferences"/>
- <Property name="toolTipText" type="java.lang.String" value="Set preferences"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jMenuItemConfigActionPerformed"/>
- </Events>
- </MenuItem>
- </SubComponents>
- </Menu>
- <Menu class="javax.swing.JMenu" name="jMenuHelp">
- <Properties>
- <Property name="text" type="java.lang.String" value="Help"/>
- </Properties>
- <SubComponents>
- <MenuItem class="javax.swing.JMenuItem" name="jMenuItemAbout">
- <Properties>
- <Property name="text" type="java.lang.String" value="About"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jMenuItemAboutActionPerformed"/>
- </Events>
- </MenuItem>
- </SubComponents>
- </Menu>
- </SubComponents>
- </Menu>
</NonVisualComponents>
<Properties>
- <Property name="defaultCloseOperation" type="int" value="2"/>
- <Property name="title" type="java.lang.String" value="iDrop - iRODS Cloud Browser"/>
+ <Property name="defaultCloseOperation" type="int" value="0"/>
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[600, 600]"/>
+ <Dimension value="[622, 158]"/>
+ </Property>
+ <Property name="size" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[822, 158]"/>
</Property>
</Properties>
<SyntheticProperties>
- <SyntheticProperty name="menuBar" type="java.lang.String" value="jMenuBar1"/>
<SyntheticProperty name="formSizePolicy" type="int" value="1"/>
</SyntheticProperties>
<Events>
- <EventHandler event="windowClosed" listener="java.awt.event.WindowListener" parameters="java.awt.event.WindowEvent" handler="formWindowClosed"/>
+ <EventHandler event="windowClosing" listener="java.awt.event.WindowListener" parameters="java.awt.event.WindowEvent" handler="formWindowClosing"/>
</Events>
<AuxValues>
- <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
+ <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="1"/>
<AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
<AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
<AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
- <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="true"/>
<AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="2"/>
<AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
<AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
<AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
- <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,2,-17,0,0,4,69"/>
+ <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,2,0,0,0,3,-29"/>
</AuxValues>
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
<SubComponents>
- <Container class="javax.swing.JPanel" name="iDropToolbar">
+ <Container class="javax.swing.JPanel" name="pnlMain">
<Properties>
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[800, 400]"/>
+ <Dimension value="[622, 158]"/>
</Property>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[1077, 40]"/>
+ <Dimension value="[730, 635]"/>
</Property>
</Properties>
<Constraints>
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="North"/>
+ <BorderConstraints direction="Center"/>
</Constraint>
</Constraints>
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
<SubComponents>
- <Container class="javax.swing.JPanel" name="pnlToolbarSizer">
+ <Container class="javax.swing.JPanel" name="pnlMainToolbar">
+ <Properties>
+ <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[622, 131]"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[834, 135]"/>
+ </Property>
+ </Properties>
<Constraints>
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
<BorderConstraints direction="North"/>
@@ -319,391 +73,542 @@
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
<SubComponents>
- <Container class="javax.swing.JPanel" name="pnlTopToolbarSearchArea">
+ <Container class="javax.swing.JPanel" name="pnlMainToolbarIcons">
<Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="10" left="20" right="20" top="10"/>
+ </Border>
+ </Property>
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[45, 50]"/>
+ <Dimension value="[622, 90]"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[622, 90]"/>
</Property>
</Properties>
<Constraints>
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="Center"/>
+ <BorderConstraints direction="North"/>
</Constraint>
</Constraints>
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBoxLayout"/>
<SubComponents>
- <Container class="javax.swing.JPanel" name="pnlSearchSizer">
+ <Component class="javax.swing.JButton" name="btnMainToolbarDownload">
<Properties>
+ <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
+ <Image iconType="3" name="/icon_download.png"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnMainToolbarDownload.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="1" left="1" right="28" top="1"/>
+ </Border>
+ </Property>
+ <Property name="horizontalTextPosition" type="int" value="0"/>
+ <Property name="verticalTextPosition" type="int" value="3"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMainToolbarDownloadActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnMainToolbarUpload">
+ <Properties>
+ <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
+ <Image iconType="3" name="/icon_upload.png"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnMainToolbarUpload.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="1" left="1" right="28" top="1"/>
+ </Border>
+ </Property>
+ <Property name="horizontalTextPosition" type="int" value="0"/>
+ <Property name="verticalTextPosition" type="int" value="3"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMainToolbarUploadActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnMainToolbarRefresh">
+ <Properties>
+ <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
+ <Image iconType="3" name="/icon_refresh.png"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnMainToolbarRefresh.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="1" left="1" right="30" top="1"/>
+ </Border>
+ </Property>
+ <Property name="horizontalTextPosition" type="int" value="0"/>
+ <Property name="verticalTextPosition" type="int" value="3"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMainToolbarRefreshActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JSeparator" name="jSeparator1">
+ <Properties>
+ <Property name="orientation" type="int" value="1"/>
+ <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[34, 60]"/>
+ </Property>
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[74, 30]"/>
+ <Dimension value="[34, 60]"/>
</Property>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[254, 50]"/>
+ <Dimension value="[34, 60]"/>
</Property>
</Properties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="South"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout">
- <Property name="alignment" type="int" value="2"/>
- </Layout>
- <SubComponents>
- <Component class="javax.swing.JLabel" name="lblMainSearch">
- <Properties>
- <Property name="text" type="java.lang.String" value="Search:"/>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[45, 40]"/>
- </Property>
- </Properties>
- </Component>
- <Component class="javax.swing.JComboBox" name="comboSearchType">
- <Properties>
- <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor">
- <StringArray count="3">
- <StringItem index="0" value="by name"/>
- <StringItem index="1" value="by tag"/>
- <StringItem index="2" value="by name and tag"/>
- </StringArray>
- </Property>
- <Property name="toolTipText" type="java.lang.String" value="Select the type of search to be carried out using the supplied search string"/>
- </Properties>
- </Component>
- <Component class="javax.swing.JTextField" name="txtMainSearch">
- <Properties>
- <Property name="columns" type="int" value="20"/>
- <Property name="toolTipText" type="java.lang.String" value="Search for files or tags"/>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[100, 30]"/>
- </Property>
- </Properties>
- <Events>
- <EventHandler event="keyPressed" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="txtMainSearchKeyPressed"/>
- </Events>
- </Component>
- <Component class="javax.swing.JButton" name="btnSearch">
- <Properties>
- <Property name="mnemonic" type="int" value="115"/>
- <Property name="text" type="java.lang.String" value="Search"/>
- <Property name="toolTipText" type="java.lang.String" value="Search iRODS based on the current view selected"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnSearchActionPerformed"/>
- </Events>
- </Component>
- </SubComponents>
- </Container>
- </SubComponents>
- </Container>
- <Container class="javax.swing.JPanel" name="pnlLocalToggleSizer">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="West"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
- <SubComponents>
- <Component class="javax.swing.JToggleButton" name="toggleLocalFiles">
+ </Component>
+ <Component class="javax.swing.JButton" name="btnMainToolbarCopy">
+ <Properties>
+ <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
+ <Image iconType="3" name="/icon_replicate.png"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnMainToolbarCopy.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="actionCommand" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnMainToolbarCopy.actionCommand" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="1" left="1" right="24" top="1"/>
+ </Border>
+ </Property>
+ <Property name="horizontalTextPosition" type="int" value="0"/>
+ <Property name="verticalTextPosition" type="int" value="3"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMainToolbarCopyActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnMainToolbarDelete">
+ <Properties>
+ <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
+ <Image iconType="3" name="/icon_delete.png"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnMainToolbarDelete.text_1" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="1" left="1" right="20" top="1"/>
+ </Border>
+ </Property>
+ <Property name="horizontalTextPosition" type="int" value="0"/>
+ <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[81, 70]"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[81, 70]"/>
+ </Property>
+ <Property name="verticalTextPosition" type="int" value="3"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMainToolbarDeleteActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnMainToolbarInfo">
+ <Properties>
+ <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
+ <Image iconType="3" name="/icon_editmetadata.png"/>
+ </Property>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="1" left="1" right="24" top="1"/>
+ </Border>
+ </Property>
+ <Property name="horizontalTextPosition" type="int" value="0"/>
+ <Property name="label" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnMainToolbarInfo.label" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="verticalTextPosition" type="int" value="3"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMainToolbarInfoActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JSeparator" name="jSeparator3">
+ <Properties>
+ <Property name="orientation" type="int" value="1"/>
+ <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[34, 60]"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[34, 60]"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnMainToolbarSync">
+ <Properties>
+ <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
+ <Image iconType="3" name="/icon_synch.png"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnMainToolbarSync.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="1" left="1" right="28" top="1"/>
+ </Border>
+ </Property>
+ <Property name="horizontalTextPosition" type="int" value="0"/>
+ <Property name="verticalTextPosition" type="int" value="3"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMainToolbarSyncActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnMainToolbarSettings">
<Properties>
- <Property name="text" type="java.lang.String" value="&lt;&lt;&lt; Local Files"/>
- <Property name="toolTipText" type="java.lang.String" value="Browse the local file system."/>
+ <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
+ <Image iconType="3" name="/icon_settings.png"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnMainToolbarSettings.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder/>
+ </Border>
+ </Property>
+ <Property name="horizontalTextPosition" type="int" value="0"/>
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[144, 10]"/>
+ <Dimension value="[58, 70]"/>
</Property>
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[144, 10]"/>
+ <Dimension value="[58, 70]"/>
</Property>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[144, 30]"/>
+ <Dimension value="[58, 70]"/>
</Property>
+ <Property name="verticalTextPosition" type="int" value="3"/>
</Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="&lt;&lt;&lt; Local Files "/>
- </AccessibilityProperties>
<Events>
- <EventHandler event="stateChanged" listener="javax.swing.event.ChangeListener" parameters="javax.swing.event.ChangeEvent" handler="toggleLocalFilesStateChanged"/>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="toggleLocalFilesActionPerformed"/>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMainToolbarSettingsActionPerformed"/>
</Events>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="North"/>
- </Constraint>
- </Constraints>
</Component>
</SubComponents>
</Container>
- <Container class="javax.swing.JPanel" name="pnlIrodsDetailsToggleSizer">
+ <Container class="javax.swing.JPanel" name="pnlMainToolbarSearch">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="2" left="10" right="10" top="2"/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[622, 45]"/>
+ </Property>
+ </Properties>
<Constraints>
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="East"/>
+ <BorderConstraints direction="South"/>
</Constraint>
</Constraints>
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBoxLayout"/>
<SubComponents>
- <Component class="javax.swing.JToggleButton" name="toggleIrodsDetails">
+ <Component class="javax.swing.JLabel" name="lblBreadCrumb">
<Properties>
- <Property name="toolTipText" type="java.lang.String" value="Browse the local file system."/>
- <Property name="label" type="java.lang.String" value="iRODS Info &gt;&gt;&gt;&gt;"/>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.lblBreadCrumb.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder bottom="1" left="1" right="2" top="1"/>
+ </Border>
+ </Property>
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[144, 10]"/>
+ <Dimension value="[110, 2000]"/>
</Property>
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[144, 10]"/>
+ <Dimension value="[0, 0]"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Container class="javax.swing.JPanel" name="pnlBreadCrumbNav">
+ <Properties>
+ <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[20, 20]"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[20, 20]"/>
+ </Property>
+ </Properties>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ </Container>
+ <Component class="javax.swing.JSeparator" name="jSeparator2">
+ <Properties>
+ <Property name="orientation" type="int" value="1"/>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JTextField" name="txtMainToolbarSearchTerms">
+ <Properties>
+ <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
+ <Font name="Lucida Grande" size="14" style="0"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.txtMainToolbarSearchTerms.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.txtMainToolbarSearchTerms.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[130, 45]"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JButton" name="btnMainToolbarSearchFiles">
+ <Properties>
+ <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
+ <Image iconType="3" name="/search_files.png"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnMainToolbarSearchFiles.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
</Property>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[144, 30]"/>
+ <Dimension value="[118, 40]"/>
</Property>
</Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value=""/>
- </AccessibilityProperties>
<Events>
- <EventHandler event="stateChanged" listener="javax.swing.event.ChangeListener" parameters="javax.swing.event.ChangeEvent" handler="toggleIrodsDetailsStateChanged"/>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="toggleIrodsDetailsActionPerformed"/>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMainToolbarSearchFilesActionPerformed"/>
</Events>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="North"/>
- </Constraint>
- </Constraints>
</Component>
</SubComponents>
</Container>
</SubComponents>
</Container>
- </SubComponents>
- </Container>
- <Container class="javax.swing.JPanel" name="pnlIdropMain">
- <Properties>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[500, 300]"/>
- </Property>
- </Properties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="Center"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBoxLayout">
- <Property name="axis" type="int" value="3"/>
- </Layout>
- <SubComponents>
- <Container class="javax.swing.JSplitPane" name="jSplitPanelLocalRemote">
+ <Container class="javax.swing.JPanel" name="pnlMainIrodsTree">
<Properties>
<Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
- <Border info="null"/>
- </Property>
- <Property name="dividerLocation" type="int" value="250"/>
- <Property name="dividerSize" type="int" value="30"/>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
+ <Border info="org.netbeans.modules.form.compat2.border.EtchedBorderInfo">
+ <EtchetBorder/>
+ </Border>
</Property>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[0, 0]"/>
+ <Dimension value="[834, 360]"/>
</Property>
</Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
- <Layout class="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout"/>
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
<SubComponents>
- <Container class="javax.swing.JPanel" name="pnlLocalTreeArea">
+ <Container class="javax.swing.JSplitPane" name="splitPanelTrees">
<Properties>
- <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
- <Color blue="66" green="ff" red="99" type="rgb"/>
- </Property>
- <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
- <Border info="org.netbeans.modules.form.compat2.border.LineBorderInfo">
- <LineBorder/>
- </Border>
- </Property>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[0, 0]"/>
- </Property>
- <Property name="opaque" type="boolean" value="false"/>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[0, 0]"/>
+ <Dimension value="[834, 360]"/>
</Property>
</Properties>
<Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout$JSplitPaneConstraintsDescription">
- <JSplitPaneConstraints position="left"/>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
</Constraint>
</Constraints>
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout"/>
<SubComponents>
- <Container class="javax.swing.JPanel" name="pnlLocalRoots">
+ <Container class="javax.swing.JScrollPane" name="scrollIrodsTree">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout$JSplitPaneConstraintsDescription">
+ <JSplitPaneConstraints position="right"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlLocalTreeArea">
<Properties>
+ <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
+ <Color blue="66" green="ff" red="99" type="rgb"/>
+ </Property>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.LineBorderInfo">
+ <LineBorder/>
+ </Border>
+ </Property>
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
<Dimension value="[0, 0]"/>
</Property>
+ <Property name="opaque" type="boolean" value="false"/>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[0, 0]"/>
+ </Property>
</Properties>
<Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="North"/>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout$JSplitPaneConstraintsDescription">
+ <JSplitPaneConstraints position="left"/>
</Constraint>
</Constraints>
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
<SubComponents>
- <Container class="javax.swing.JScrollPane" name="scrollLocalDrives">
+ <Container class="javax.swing.JPanel" name="pnlLocalRoots">
<Properties>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
<Dimension value="[0, 0]"/>
</Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[300, 100]"/>
- </Property>
</Properties>
- <AuxValues>
- <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
- </AuxValues>
<Constraints>
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="Center"/>
+ <BorderConstraints direction="North"/>
</Constraint>
</Constraints>
- <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
<SubComponents>
- <Component class="javax.swing.JList" name="listLocalDrives">
+ <Container class="javax.swing.JScrollPane" name="scrollLocalDrives">
<Properties>
- <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
- <Border info="org.netbeans.modules.form.compat2.border.LineBorderInfo">
- <LineBorder/>
- </Border>
- </Property>
- <Property name="model" type="javax.swing.ListModel" editor="org.netbeans.modules.form.editors2.ListModelEditor">
- <StringArray count="0"/>
- </Property>
- <Property name="selectionMode" type="int" value="0"/>
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
<Dimension value="null"/>
</Property>
+ <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[0, 0]"/>
+ </Property>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[150, 200]"/>
+ <Dimension value="[300, 100]"/>
</Property>
- <Property name="visibleRowCount" type="int" value="4"/>
</Properties>
- </Component>
+ <AuxValues>
+ <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+ <SubComponents>
+ <Component class="javax.swing.JList" name="listLocalDrives">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.LineBorderInfo">
+ <LineBorder/>
+ </Border>
+ </Property>
+ <Property name="model" type="javax.swing.ListModel" editor="org.netbeans.modules.form.editors2.ListModelEditor">
+ <StringArray count="0"/>
+ </Property>
+ <Property name="selectionMode" type="int" value="0"/>
+ <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="null"/>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[150, 200]"/>
+ </Property>
+ <Property name="visibleRowCount" type="int" value="4"/>
+ </Properties>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlDrivesFiller">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ </Container>
</SubComponents>
</Container>
- <Container class="javax.swing.JPanel" name="pnlRefreshButton">
+ <Container class="javax.swing.JScrollPane" name="scrollLocalFileTree">
<Properties>
+ <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
+ <Color blue="ee" green="ee" id="Button.background" palette="3" red="ee" type="palette"/>
+ </Property>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="null"/>
+ </Property>
+ <Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.scrollLocalFileTree.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="verticalScrollBarPolicy" type="int" value="22"/>
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[1000, 30]"/>
+ <Dimension value="null"/>
</Property>
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
<Dimension value="[0, 0]"/>
</Property>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[101, 30]"/>
+ <Dimension value="[500, 500]"/>
</Property>
</Properties>
<Constraints>
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="North"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
- <SubComponents>
- <Component class="javax.swing.JButton" name="btnRefreshLocalDrives">
- <Properties>
- <Property name="label" type="java.lang.String" value="Refresh"/>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[200, 50]"/>
- </Property>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[0, 0]"/>
- </Property>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnRefreshLocalDrivesActionPerformed"/>
- </Events>
- </Component>
- </SubComponents>
- </Container>
- <Container class="javax.swing.JPanel" name="pnlDrivesFiller">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="South"/>
+ <BorderConstraints direction="Center"/>
</Constraint>
</Constraints>
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
</Container>
</SubComponents>
</Container>
- <Container class="javax.swing.JScrollPane" name="scrollLocalFileTree">
- <Properties>
- <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
- <Color blue="ee" green="ee" id="Button.background" palette="3" red="ee" type="palette"/>
- </Property>
- <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
- <Border info="null"/>
- </Property>
- <Property name="toolTipText" type="java.lang.String" value="scroll panel tooltip"/>
- <Property name="verticalScrollBarPolicy" type="int" value="22"/>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[0, 0]"/>
- </Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[500, 500]"/>
- </Property>
- </Properties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="Center"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
- </Container>
</SubComponents>
</Container>
- <Container class="javax.swing.JPanel" name="pnlIrodsArea">
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlMainTransferStatus">
+ <Properties>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[835, 120]"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="South"/>
+ </Constraint>
+ </Constraints>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JPanel" name="pnlIdropBottom">
<Properties>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[500, 300]"/>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo">
+ <BevelBorder bevelType="1"/>
+ </Border>
</Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[600, 304]"/>
+ <Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.pnlIdropBottom.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[166, 66]"/>
</Property>
</Properties>
<Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout$JSplitPaneConstraintsDescription">
- <JSplitPaneConstraints position="right"/>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="Center"/>
</Constraint>
</Constraints>
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
<SubComponents>
- <Container class="javax.swing.JSplitPane" name="splitTargetCollections">
+ <Container class="javax.swing.JPanel" name="pnlCurrentTransferStatus">
<Properties>
- <Property name="dividerLocation" type="int" value="400"/>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[0, 0]"/>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
+ <EmptyBorder/>
+ </Border>
+ </Property>
+ <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[62, 62]"/>
</Property>
</Properties>
<Constraints>
@@ -712,848 +617,181 @@
</Constraint>
</Constraints>
- <Layout class="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout"/>
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout"/>
<SubComponents>
- <Container class="javax.swing.JTabbedPane" name="tabIrodsViews">
+ <Component class="javax.swing.JLabel" name="lblCurrentFile">
<Properties>
+ <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[999, 999]"/>
+ </Property>
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[200, 129]"/>
+ <Dimension value="[30, 10]"/>
</Property>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[350, 300]"/>
+ <Dimension value="[300, 20]"/>
</Property>
</Properties>
- <Events>
- <EventHandler event="stateChanged" listener="javax.swing.event.ChangeListener" parameters="javax.swing.event.ChangeEvent" handler="tabIrodsViewsStateChanged"/>
- </Events>
<Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout$JSplitPaneConstraintsDescription">
- <JSplitPaneConstraints position="left"/>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
+ <GridBagConstraints gridX="3" gridY="0" gridWidth="0" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="9" insetsBottom="0" insetsRight="0" anchor="10" weightX="0.0" weightY="0.0"/>
</Constraint>
</Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
- <SubComponents>
- <Container class="javax.swing.JPanel" name="pnlTabHierarchicalView">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
- <JTabbedPaneConstraints tabName="iRODS Tree View">
- <Property name="tabTitle" type="java.lang.String" value="iRODS Tree View"/>
- </JTabbedPaneConstraints>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
- <SubComponents>
- <Container class="javax.swing.JPanel" name="pnlIrodsTreeToolbar">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="North"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
- <SubComponents>
- <Container class="javax.swing.JToolBar" name="toolbarIrodsTree">
- <Properties>
- <Property name="floatable" type="boolean" value="false"/>
- <Property name="rollover" type="boolean" value="true"/>
- </Properties>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBoxLayout"/>
- <SubComponents>
- <Component class="javax.swing.JButton" name="btnRefreshTargetTree">
- <Properties>
- <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
- <Image iconType="3" name="/recur.png"/>
- </Property>
- <Property name="mnemonic" type="int" value="114"/>
- <Property name="text" type="java.lang.String" value="Refresh"/>
- <Property name="toolTipText" type="java.lang.String" value="Refresh the view of the iRODS server"/>
- <Property name="focusable" type="boolean" value="false"/>
- <Property name="horizontalTextPosition" type="int" value="0"/>
- <Property name="verticalTextPosition" type="int" value="3"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnRefreshTargetTreeActionPerformed"/>
- </Events>
- </Component>
- <Component class="javax.swing.JButton" name="btnGoHomeTargetTree">
- <Properties>
- <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
- <Image iconType="3" name="/go-home-4.png"/>
- </Property>
- <Property name="mnemonic" type="int" value="104"/>
- <Property name="text" type="java.lang.String" value="Home"/>
- <Property name="toolTipText" type="java.lang.String" value="Go to the user home directory on the iRODS grid"/>
- <Property name="focusable" type="boolean" value="false"/>
- <Property name="horizontalTextPosition" type="int" value="0"/>
- <Property name="verticalTextPosition" type="int" value="3"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnGoHomeTargetTreeActionPerformed"/>
- </Events>
- </Component>
- <Component class="javax.swing.JButton" name="btnGoRootTargetTree">
- <Properties>
- <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
- <Image iconType="3" name="/go-parent-folder.png"/>
- </Property>
- <Property name="mnemonic" type="int" value="116"/>
- <Property name="text" type="java.lang.String" value="Top"/>
- <Property name="toolTipText" type="java.lang.String" value="Go to the top of the iRODS tree"/>
- <Property name="focusable" type="boolean" value="false"/>
- <Property name="horizontalTextPosition" type="int" value="0"/>
- <Property name="verticalTextPosition" type="int" value="3"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnGoRootTargetTreeActionPerformed"/>
- </Events>
- </Component>
- <Component class="javax.swing.JButton" name="btnSetRootCustomTargetTree">
- <Properties>
- <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
- <Image iconType="3" name="/go-jump.png"/>
- </Property>
- <Property name="mnemonic" type="int" value="99"/>
- <Property name="text" type="java.lang.String" value="Custom Root"/>
- <Property name="toolTipText" type="java.lang.String" value="Set the root of the tree to a custom path"/>
- <Property name="focusable" type="boolean" value="false"/>
- <Property name="horizontalTextPosition" type="int" value="0"/>
- <Property name="verticalTextPosition" type="int" value="3"/>
- </Properties>
- </Component>
- </SubComponents>
- </Container>
- </SubComponents>
- </Container>
- <Container class="javax.swing.JPanel" name="pnlIrodsTreeMaster">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="Center"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
- <SubComponents>
- <Container class="javax.swing.JScrollPane" name="scrollIrodsTree">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="Center"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
- </Container>
- </SubComponents>
- </Container>
- </SubComponents>
- </Container>
- <Container class="javax.swing.JPanel" name="pnlTabSearch">
- <Properties>
- <Property name="toolTipText" type="java.lang.String" value="Search for files and collections in iRODS and display search results"/>
- </Properties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
- <JTabbedPaneConstraints tabName="Search" toolTip="Search for files and collections in iRODS and display search results">
- <Property name="tabTitle" type="java.lang.String" value="Search"/>
- <Property name="tabToolTip" type="java.lang.String" value="Search for files and collections in iRODS and display search results"/>
- </JTabbedPaneConstraints>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
- <SubComponents>
- <Container class="javax.swing.JPanel" name="pnlTabSearchTop">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="North"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
- </Container>
- <Container class="javax.swing.JPanel" name="pnlTabSearchResults">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="Center"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridLayout">
- <Property name="columns" type="int" value="0"/>
- <Property name="rows" type="int" value="1"/>
- </Layout>
- <SubComponents>
- <Container class="javax.swing.JScrollPane" name="scrollPaneSearchResults">
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
- <SubComponents>
- <Component class="javax.swing.JTable" name="tableSearchResults">
- <Properties>
- <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor">
- <Table columnCount="4" rowCount="4">
- <Column editable="true" title="Title 1" type="java.lang.Object"/>
- <Column editable="true" title="Title 2" type="java.lang.Object"/>
- <Column editable="true" title="Title 3" type="java.lang.Object"/>
- <Column editable="true" title="Title 4" type="java.lang.Object"/>
- </Table>
- </Property>
- </Properties>
- </Component>
- </SubComponents>
- </Container>
- </SubComponents>
- </Container>
- </SubComponents>
- </Container>
- </SubComponents>
- </Container>
- <Container class="javax.swing.JPanel" name="pnlIrodsInfo">
+ </Component>
+ <Component class="javax.swing.JProgressBar" name="progressIntraFile">
<Properties>
<Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
<Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
- <EmptyBorder bottom="10" left="15" right="15" top="10"/>
+ <EmptyBorder bottom="1" left="3" right="1" top="1"/>
</Border>
</Property>
+ <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[10, 60]"/>
+ </Property>
+ <Property name="string" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.progressIntraFile.string" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="stringPainted" type="boolean" value="true"/>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
+ <GridBagConstraints gridX="2" gridY="1" gridWidth="4" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="21" weightX="0.0" weightY="0.0"/>
+ </Constraint>
+ </Constraints>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblTransferFilesCounts">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.lblTransferFilesCounts.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
</Properties>
<Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout$JSplitPaneConstraintsDescription">
- <JSplitPaneConstraints position="right"/>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
+ <GridBagConstraints gridX="0" gridY="2" gridWidth="2" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="22" weightX="0.0" weightY="0.0"/>
</Constraint>
</Constraints>
+ </Component>
+ <Component class="javax.swing.JProgressBar" name="transferStatusProgressBar">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="null"/>
+ </Property>
+ <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+ <Dimension value="[10, 60]"/>
+ </Property>
+ <Property name="string" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.transferStatusProgressBar.string" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="stringPainted" type="boolean" value="true"/>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
+ <GridBagConstraints gridX="2" gridY="2" gridWidth="4" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="17" weightX="8.0" weightY="0.0"/>
+ </Constraint>
+ </Constraints>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblTransferType">
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
+ <GridBagConstraints gridX="2" gridY="0" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="10" weightX="0.0" weightY="0.0"/>
+ </Constraint>
+ </Constraints>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblTransferMessage">
+ <Properties>
+ <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
+ <Color blue="ff" green="0" id="blue" palette="1" red="0" type="palette"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
+ <GridBagConstraints gridX="2" gridY="3" gridWidth="0" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="21" weightX="0.0" weightY="0.0"/>
+ </Constraint>
+ </Constraints>
+ </Component>
+ <Component class="javax.swing.JLabel" name="lblTransferByteCounts">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.lblTransferByteCounts.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
+ <GridBagConstraints gridX="0" gridY="1" gridWidth="2" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="22" weightX="0.0" weightY="0.0"/>
+ </Constraint>
+ </Constraints>
+ </Component>
+ </SubComponents>
+ </Container>
+ <Container class="javax.swing.JPanel" name="pnlTransferOptions">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo">
+ <TitledBorder title="Upload Options">
+ <ResourceString PropertyName="titleX" bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.pnlTransferOptions.border.title" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </TitledBorder>
+ </Border>
+ </Property>
+ </Properties>
+ <Constraints>
+ <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
+ <BorderConstraints direction="East"/>
+ </Constraint>
+ </Constraints>
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ <SubComponents>
+ <Container class="javax.swing.JToolBar" name="idropProgressPanelToolbar">
+ <Properties>
+ <Property name="floatable" type="boolean" value="false"/>
+ <Property name="rollover" type="boolean" value="true"/>
+ </Properties>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBoxLayout"/>
<SubComponents>
- <Container class="javax.swing.JTabbedPane" name="tabInfo">
+ <Component class="javax.swing.JButton" name="btnShowTransferManager">
<Properties>
- <Property name="toolTipText" type="java.lang.String" value="View basic demographics for a file or collection"/>
+ <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
+ <Image iconType="3" name="/configure-5.png"/>
+ </Property>
+ <Property name="mnemonic" type="int" value="109"/>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnShowTransferManager.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.btnShowTransferManager.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="focusable" type="boolean" value="false"/>
+ <Property name="horizontalTextPosition" type="int" value="0"/>
+ <Property name="verticalTextPosition" type="int" value="3"/>
</Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Info"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="Center"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
- <SubComponents>
- <Container class="javax.swing.JScrollPane" name="jScrollPane1">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
- <JTabbedPaneConstraints tabName="Info">
- <Property name="tabTitle" type="java.lang.String" value="Info"/>
- </JTabbedPaneConstraints>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
- <SubComponents>
- <Container class="javax.swing.JPanel" name="pnlInfoInner">
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout"/>
- <SubComponents>
- <Container class="javax.swing.JPanel" name="pnlInfoIcon">
- <Properties>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[50, 50]"/>
- </Property>
- </Properties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="2" gridY="1" gridWidth="3" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="2" insetsLeft="0" insetsBottom="2" insetsRight="2" anchor="21" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridLayout">
- <Property name="columns" type="int" value="0"/>
- <Property name="rows" type="int" value="1"/>
- </Layout>
- <SubComponents>
- <Component class="javax.swing.JLabel" name="jLabel1">
- <Properties>
- <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
- <Color blue="cc" green="0" red="ff" type="rgb"/>
- </Property>
- </Properties>
- </Component>
- </SubComponents>
- </Container>
- <Component class="javax.swing.JLabel" name="lblSelectedFileInfo">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
- <Color blue="ff" green="0" id="blue" palette="1" red="0" type="palette"/>
- </Property>
- <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
- <Image iconType="3" name="/help-contents.png"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Selected File Info"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Label indicating panel for selected file info"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="0" gridWidth="2" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="10" insetsRight="0" anchor="10" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblFilePathLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Path:"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Path Label"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Label for file Path"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="2" gridY="2" gridWidth="2" gridHeight="1" fill="2" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="21" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblFileOrCollectionName">
- <Properties>
- <Property name="text" type="java.lang.String" value="file or collection name "/>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[900, 100]"/>
- </Property>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[80, 30]"/>
- </Property>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Abbreviated file name "/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="File name of selected file or collection (abbreviated if necessary with elipses)"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="2" gridY="3" gridWidth="2" gridHeight="1" fill="2" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="2" insetsBottom="5" insetsRight="0" anchor="21" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblComment">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Comment:"/>
- <Property name="toolTipText" type="java.lang.String" value=""/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="lable for comment area"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="4" gridWidth="2" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="21" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Container class="javax.swing.JScrollPane" name="scrollComment">
- <Properties>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="scroll box for file comment"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Scroll box for file comment"/>
- </AccessibilityProperties>
- <AuxValues>
- <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
- </AuxValues>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="5" gridWidth="2" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="21" weightX="0.0" weightY="0.2"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
- <SubComponents>
- <Component class="javax.swing.JTextArea" name="txtComment">
- <Properties>
- <Property name="columns" type="int" value="30"/>
- <Property name="rows" type="int" value="6"/>
- <Property name="tabSize" type="int" value="5"/>
- <Property name="toolTipText" type="java.lang.String" value="Free form comment for a file or collection"/>
- <Property name="wrapStyleWord" type="boolean" value="true"/>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Comment"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Comment for a file"/>
- </AccessibilityProperties>
- </Component>
- </SubComponents>
- </Container>
- <Component class="javax.swing.Box$Filler" name="filler4">
- <Properties>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 32767]"/>
- </Property>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 0]"/>
- </Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 0]"/>
- </Property>
- </Properties>
- <AuxValues>
- <AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.HorizontalStrut"/>
- </AuxValues>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="6" gridWidth="2" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="10" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblTags">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Tags:"/>
- <Property name="toolTipText" type="java.lang.String" value=""/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Tags"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Label for free tagging area"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="6" gridWidth="2" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="5" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="21" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JTextField" name="txtTags">
- <Properties>
- <Property name="columns" type="int" value="30"/>
- <Property name="toolTipText" type="java.lang.String" value="Name of file or collection. This field allows editing to rename"/>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- </Properties>
- <Events>
- <EventHandler event="focusLost" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="txtTagsFocusLost"/>
- <EventHandler event="keyPressed" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="txtTagsKeyPressed"/>
- </Events>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="7" gridWidth="2" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="17" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JButton" name="btnUpdateInfo">
- <Properties>
- <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
- <Image iconType="3" name="/dialog-accept.png"/>
- </Property>
- <Property name="mnemonic" type="int" value="117"/>
- <Property name="text" type="java.lang.String" value="Update Comment and Tags"/>
- <Property name="toolTipText" type="java.lang.String" value="Update information on the info panel such as tags and comment"/>
- </Properties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnUpdateInfoActionPerformed"/>
- </Events>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="8" gridWidth="2" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="10" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Container class="javax.swing.JPanel" name="pnlFileInfoDemographics">
- <Properties>
- <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
- <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo">
- <BevelBorder bevelType="1"/>
- </Border>
- </Property>
- </Properties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="9" gridWidth="2" gridHeight="2" fill="1" ipadX="0" ipadY="0" insetsTop="8" insetsLeft="2" insetsBottom="6" insetsRight="2" anchor="10" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout"/>
- <SubComponents>
- <Component class="javax.swing.JLabel" name="lblInfoCreatedAt">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="horizontalAlignment" type="int" value="11"/>
- <Property name="text" type="java.lang.String" value="Created:"/>
- </Properties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="0" gridY="0" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="5" insetsLeft="0" insetsBottom="2" insetsRight="0" anchor="13" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblInfoCreatedAtValue">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="0" gridWidth="2" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="4" insetsLeft="5" insetsBottom="5" insetsRight="0" anchor="17" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblInfoCreatedAtTimeValue">
- <Properties>
- <Property name="toolTipText" type="java.lang.String" value="Time file was created"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Created at time"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="time fiel was created"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="3" gridY="0" gridWidth="3" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="4" insetsLeft="5" insetsBottom="5" insetsRight="0" anchor="17" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblInfoUpdatedAt">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="horizontalAlignment" type="int" value="11"/>
- <Property name="text" type="java.lang.String" value="Updated:"/>
- </Properties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="0" gridY="1" gridWidth="1" gridHeight="1" fill="3" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="2" insetsRight="0" anchor="13" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblInfoUpdatedAtValue">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="1" gridWidth="2" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="7" insetsBottom="2" insetsRight="0" anchor="17" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblInfoUpdatedAtTimeValue">
- <Properties>
- <Property name="toolTipText" type="java.lang.String" value="Time file was last updated"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Updated at time"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="3" gridY="1" gridWidth="3" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="5" insetsBottom="2" insetsRight="0" anchor="17" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblInfoLength">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="horizontalAlignment" type="int" value="11"/>
- <Property name="text" type="java.lang.String" value="Length:"/>
- </Properties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="0" gridY="4" gridWidth="1" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="2" insetsLeft="0" insetsBottom="2" insetsRight="0" anchor="13" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblInfoLengthValue">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="4" gridWidth="1" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="5" insetsBottom="2" insetsRight="0" anchor="17" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblInfoChecksum">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="horizontalAlignment" type="int" value="11"/>
- <Property name="text" type="java.lang.String" value="Checksum:"/>
- </Properties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="0" gridY="3" gridWidth="1" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="20" insetsLeft="0" insetsBottom="2" insetsRight="0" anchor="13" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblInfoChecksumValue">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="3" gridWidth="1" gridHeight="1" fill="1" ipadX="0" ipadY="0" insetsTop="20" insetsLeft="5" insetsBottom="2" insetsRight="0" anchor="17" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblOwnerNameLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Owner:"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Label for file or collection owner name"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="3" gridY="3" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="20" insetsLeft="15" insetsBottom="2" insetsRight="0" anchor="22" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblOwnerName">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="4" gridY="3" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="20" insetsLeft="2" insetsBottom="2" insetsRight="0" anchor="10" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblOwnerZoneLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Owner Zone:"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Owner Zone"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="label for owner zone"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="3" gridY="4" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="26" insetsBottom="2" insetsRight="0" anchor="22" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblOwnerZone">
- <Properties>
- <Property name="toolTipText" type="java.lang.String" value="Zone of file owner"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Owner Zone"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="4" gridY="4" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="2" insetsBottom="2" insetsRight="0" anchor="10" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblCollectionTypeLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Collection Type:"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Collection Type"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Label for collection type"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="0" gridY="5" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="15" insetsRight="0" anchor="22" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblCollectionType">
- <Properties>
- <Property name="toolTipText" type="java.lang.String" value="Collection type"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Collection type"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Type of collection"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="5" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="15" insetsRight="0" anchor="10" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblDataPathLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Data Path:"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Label for data path"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="0" gridY="13" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="20" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="22" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblDataPath">
- <Properties>
- <Property name="toolTipText" type="java.lang.String" value="Physical path of file"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Data Path"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Physical path of the data file"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="13" gridWidth="0" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="20" insetsLeft="0" insetsBottom="0" insetsRight="10" anchor="21" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblDataReplicationStatusLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Replication Status:"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Label for data replication status"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Label for data replication status"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="3" gridY="10" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="10" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="22" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblDataReplicationStatus">
- <Properties>
- <Property name="toolTipText" type="java.lang.String" value="Data replication status"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Data Replication Status"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Status of replication of this data object"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="4" gridY="10" gridWidth="7" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="10" insetsLeft="2" insetsBottom="0" insetsRight="10" anchor="21" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblDataVersionLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Data Version:"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Data Version Label"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Label for data version"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="0" gridY="10" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="10" insetsLeft="0" insetsBottom="2" insetsRight="0" anchor="22" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblDataVersion">
- <Properties>
- <Property name="text" type="java.lang.String" value="jLabel2"/>
- <Property name="toolTipText" type="java.lang.String" value="Data version"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Data Version"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Version of data"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="10" gridWidth="0" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="10" insetsLeft="2" insetsBottom="0" insetsRight="10" anchor="21" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblDataTypeLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Data Type:"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Data Type Label"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Label for data type"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="0" gridY="11" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="22" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblDataType">
- <Properties>
- <Property name="toolTipText" type="java.lang.String" value="Data type for selected file"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Data Type"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="1" gridY="11" gridWidth="0" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="10" anchor="21" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblDataStatusLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Data Status:"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Data Status label"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Label for data status"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="3" gridY="11" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="22" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- <Component class="javax.swing.JLabel" name="lblDataStatus">
- <Properties>
- <Property name="toolTipText" type="java.lang.String" value="Status of selected file"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Data status"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription">
- <GridBagConstraints gridX="4" gridY="11" gridWidth="4" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="0" insetsLeft="4" insetsBottom="0" insetsRight="10" anchor="21" weightX="0.0" weightY="0.0"/>
- </Constraint>
- </Constraints>
- </Component>
- </SubComponents>
- </Container>
- </SubComponents>
- </Container>
- </SubComponents>
- </Container>
- </SubComponents>
- </Container>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnShowTransferManagerActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JToggleButton" name="togglePauseTransfer">
+ <Properties>
+ <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
+ <Image iconType="3" name="/media-playback-pause-7.png"/>
+ </Property>
+ <Property name="mnemonic" type="int" value="112"/>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.togglePauseTransfer.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="iDrop.togglePauseTransfer.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="focusable" type="boolean" value="false"/>
+ <Property name="horizontalTextPosition" type="int" value="0"/>
+ <Property name="verticalTextPosition" type="int" value="3"/>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="togglePauseTransferActionPerformed"/>
+ </Events>
+ </Component>
</SubComponents>
</Container>
+ <Component class="javax.swing.JLabel" name="progressIconImageLabel">
+ </Component>
</SubComponents>
</Container>
</SubComponents>
@@ -1562,384 +800,5 @@
</Container>
</SubComponents>
</Container>
- <Container class="javax.swing.JPanel" name="pnlIdropBottom">
- <Properties>
- <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
- <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo">
- <BevelBorder bevelType="1"/>
- </Border>
- </Property>
- <Property name="toolTipText" type="java.lang.String" value="Display area for status and messages"/>
- </Properties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="South"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
- <SubComponents>
- <Container class="javax.swing.JPanel" name="pnlBottomGutter">
- <Properties>
- <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
- <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo">
- <BevelBorder bevelType="1"/>
- </Border>
- </Property>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[2147483647, 10]"/>
- </Property>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Current Grid Panel"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Panel Showing the Current iRODS Grid"/>
- </AccessibilityProperties>
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="South"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
- <SubComponents>
- <Container class="javax.swing.JPanel" name="pnlHostInfo">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="West"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
- <SubComponents>
- <Component class="javax.swing.JLabel" name="lblUserNameLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="User Name:"/>
- </Properties>
- </Component>
- <Component class="javax.swing.JLabel" name="userNameLabel">
- <Properties>
- <Property name="text" type="java.lang.String" value="usernamelabel"/>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="null"/>
- </Property>
- </Properties>
- </Component>
- <Component class="javax.swing.Box$Filler" name="filler1">
- <Properties>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 32767]"/>
- </Property>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 0]"/>
- </Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 0]"/>
- </Property>
- </Properties>
- <AuxValues>
- <AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.HorizontalStrut"/>
- </AuxValues>
- </Component>
- <Component class="javax.swing.JLabel" name="lblZoneLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Zone:"/>
- </Properties>
- </Component>
- <Component class="javax.swing.JLabel" name="lblZone">
- <Properties>
- <Property name="text" type="java.lang.String" value="this is the zone"/>
- </Properties>
- </Component>
- <Component class="javax.swing.Box$Filler" name="filler2">
- <Properties>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 32767]"/>
- </Property>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 0]"/>
- </Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 0]"/>
- </Property>
- </Properties>
- <AuxValues>
- <AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.HorizontalStrut"/>
- </AuxValues>
- </Component>
- <Component class="javax.swing.JLabel" name="lblHostLabel">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Host:"/>
- </Properties>
- </Component>
- <Component class="javax.swing.JLabel" name="lblHost">
- <Properties>
- <Property name="text" type="java.lang.String" value="this is the host"/>
- </Properties>
- </Component>
- <Component class="javax.swing.Box$Filler" name="filler3">
- <Properties>
- <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 32767]"/>
- </Property>
- <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 0]"/>
- </Property>
- <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
- <Dimension value="[10, 0]"/>
- </Property>
- </Properties>
- <AuxValues>
- <AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.HorizontalStrut"/>
- </AuxValues>
- </Component>
- <Component class="javax.swing.JLabel" name="lblDefaultResource">
- <Properties>
- <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
- <Font name="Lucida Grande" size="13" style="1"/>
- </Property>
- <Property name="text" type="java.lang.String" value="Default Storage Resource:"/>
- </Properties>
- </Component>
- <Component class="javax.swing.JComboBox" name="comboDefaultResource">
- <Properties>
- <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor">
- <StringArray count="0"/>
- </Property>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleName" type="java.lang.String" value="Default resource selection"/>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Selection options for the default storage resource"/>
- </AccessibilityProperties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="comboDefaultResourceActionPerformed"/>
- </Events>
- </Component>
- </SubComponents>
- </Container>
- <Container class="javax.swing.JPanel" name="pnlStatusIcon">
- <Constraints>
- <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
- <BorderConstraints direction="East"/>
- </Constraint>
- </Constraints>
-
- <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
- <SubComponents>
- <Component class="javax.swing.JButton" name="btnManageGrids">
- <Properties>
- <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor">
- <Image iconType="3" name="/im-user.png"/>
- </Property>
- <Property name="mnemonic" type="int" value="83"/>
- <Property name="label" type="java.lang.String" value="Switch Grid Account"/>
- </Properties>
- <AccessibilityProperties>
- <Property name="AccessibleContext.accessibleDescription" type="java.lang.String" value="Switch the grid or iRODS account information"/>
- </AccessibilityProperties>
- <Events>
- <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnManageGridsActionPerformed"/>
- </Events>
- </Component>
- </SubComponents>
- </Container>
- </SubComponents>
- </Container>
- <Container class="javax.swing.JPanel" name="pnlCurrentTransferStatus">
- <Properties>
- <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
- <Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
- <EmptyBorder/>
- </Border>
- </Property>
-