MCPcopy Create free account
hub / github.com/PCGen/pcgen / showSavePartyChooser

Method showSavePartyChooser

code/src/java/pcgen/gui2/PCGenFrame.java:744–797  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

742 }
743
744 boolean showSavePartyChooser()
745 {
746 PartyFacade party = CharacterManager.getCharacters();
747 PCGenSettings context = PCGenSettings.getInstance();
748 String parentPath = context.getProperty(PCGenSettings.PCP_SAVE_PATH);
749 File oldFile = party.getFileRef().get();
750
751
752 FileChooser fileChooser = new FileChooser();
753 fileChooser.setTitle("Save PCGen Party");
754 fileChooser.setInitialDirectory(new File(parentPath));
755
756 FileChooser.ExtensionFilter extensionFilter = new FileChooser.ExtensionFilter(
757 "party files only", "*.pcp"
758 );
759 fileChooser.getExtensionFilters().add(extensionFilter);
760 fileChooser.setSelectedExtensionFilter(extensionFilter);
761 if (oldFile != null)
762 {
763 fileChooser.setInitialFileName(oldFile.getName());
764 }
765
766 File file = GuiUtility.runOnJavaFXThreadNow(() ->
767 fileChooser.showSaveDialog(null));
768
769 if (file == null)
770 {
771 return false;
772 }
773 if (file.exists())
774 {
775 boolean overwrite =
776 showWarningConfirm(
777 LanguageBundle.getFormattedString("in_savePcConfirmOverTitle", file.getName()), //$NON-NLS-1$
778 LanguageBundle.getFormattedString("in_savePcConfirmOverMsg", file.getName())); //$NON-NLS-1$
779 if (!overwrite)
780 {
781 return showSavePartyChooser();
782 }
783 }
784 party.setFile(file);
785 context.setProperty(PCGenSettings.PCP_SAVE_PATH, file.getParent());
786 if (!saveAllCharacters())
787 {
788 showErrorMessage(LanguageBundle.getString("in_savePartyFailTitle"), //$NON-NLS-1$
789 LanguageBundle.getString("in_savePartyFailMsg")); //$NON-NLS-1$
790 return false;
791 }
792 if (!CharacterManager.saveCurrentParty())
793 {
794 return showSavePartyChooser();
795 }
796 return true;
797 }
798
799 boolean saveAllCharacters()
800 {

Callers 2

actionPerformedMethod · 0.80
actionPerformedMethod · 0.80

Calls 15

getCharactersMethod · 0.95
getInstanceMethod · 0.95
getFileRefMethod · 0.95
runOnJavaFXThreadNowMethod · 0.95
showWarningConfirmMethod · 0.95
getFormattedStringMethod · 0.95
setFileMethod · 0.95
saveAllCharactersMethod · 0.95
showErrorMessageMethod · 0.95
getStringMethod · 0.95
saveCurrentPartyMethod · 0.95
setPropertyMethod · 0.80

Tested by

no test coverage detected