public void save() {
		//the name and the url must entered at least
		if((streamNameTF.getText().trim().equals("") 
				|| streamURLTF.getText().trim().equals("")) && !defaultStream)
		{
			dontExit=true;
			JOptionPane.showMessageDialog(getMe(),trans.getString("noNameOrUrl"));
		}
		//normal save
		else {
			dontExit = false;
			//save all checkbox-states as boolean
			//(selected or not)
			stream.singleFileCB = allInOneCheckBox.isSelected();
			stream.maxTimeCB = lengthRecordCheckBox.isSelected();
			stream.maxMBCB = maxSizeMBCheckBox.isSelected();
			stream.sequenzCB = runIndexCheckBox.isSelected();
			stream.patternCB = patternCheckBox.isSelected();
			
			if(overWriteVersionCheckBox.isSelected())
				stream.completeCB = 0;
			else if (overWriteAllCheckBox.isSelected())
				stream.completeCB = 1;
			else if (overWriteNeverCheckBox.isSelected())
				stream.completeCB = 2;
			else 
				stream.completeCB = 3;

			stream.cutSongIncompleteCB = truncateCheckBox.isSelected();
			stream.neverOverIncompCB = dontOverCheckBox.isSelected();
			stream.noDirEveryStreamCB = noDirForStreamCheckBox.isSelected();
			stream.noIndiviSongsCB = dCreateInvTracksCheckBox.isSelected();
			stream.createReayCB = relayServerCheckBox.isSelected();
			stream.connectToRelayCB = relayConnect.isSelected();
			stream.createPlaylistRelayCB = createRelayFileCB.isSelected();
			stream.dontSearchAltPortCB = dontScanPortCheckBox.isSelected();
			stream.dontAutoReconnectCB = dontReconnectCheckBox.isSelected();
			stream.timeoutReconnectCB = timeoutReconnectCheckBox.isSelected();
			stream.proxyCB = proxyCheckBox.isSelected();
			stream.useragentCB = useragentCheckBox.isSelected();
			stream.countBeforStartCB = skipTracksCheckBox.isSelected();
			stream.metaDataCB = metaDataRuleFileCB.isSelected();
			stream.interfaceCB = interfaceCB.isSelected();
			stream.externMetaDataCB = externalCmdMetaDataCB.isSelected();
			stream.extraArgsCB = freeArgumentCB.isSelected();
			stream.CSRelayCB = codesetRelayCB.isSelected();
			stream.CSMetaCB = codesetMetadataCB.isSelected();
			stream.CSIDTagCB = codesetID3CB.isSelected();
			stream.CSFileSysCB = codesetFilesysCB.isSelected();
			stream.XS2CB= xs2CB.isSelected();
			stream.SPDelayCB = xsOffsetCB.isSelected();
			stream.SPExtraCB = xsPaddingCB.isSelected();
			stream.SPWindowCB= xsSearchCB.isSelected();
			stream.SPSilenceCB = xsSilenceCB.isSelected();
			stream.IDV1CB = id3tagV1CB.isSelected();
			stream.IDV2CB = id3tagV2CB.isSelected();
			
			//Save all Strings from textfiels
			stream.name = streamNameTF.getText();
			stream.address = streamURLTF.getText();
			stream.comment = streamCommentTF.getText();
			stream.website = streamWebsiteTF.getText();
			stream.genre = streamGenreTF.getText();
			stream.singleFileTF = allInOneSaveField.getText();
			stream.maxTimeHHTF = lengthRecordHourField.getText();
			stream.maxTimeMMTF = lengthRecordMinuteField.getText();
			stream.maxTimessTF = lengthRecordSecondField.getText();
			stream.maxMBTF = maxSizeMBField.getText();
			stream.sequenzTF = runIndexField.getText();
			stream.patternTF = patternField.getText();
			stream.relayServerPortTF = realyPortField.getText();
			stream.maxConnectRelayTF = realyConnectionsField.getText();
			stream.relayPlayListTF = createRelayFileTF.getText();
			stream.timeOutReonTF = timeoutReconnectField.getText();
			stream.proxyTF = proxyField.getText();
			stream.useragentTF = useragentField.getText();
			stream.sciptSongsTF = skipTracksField.getText();
			stream.metaDataFileTF = metaDataRuleFileTF.getText();
			stream.interfaceTF = interfaceTF.getText();
			stream.externTF = externalCmdMetaDataTF.getText();
			stream.extraArgsTF = freeArgumentTF.getText();
			stream.CSRelayTF = codesetRelayTF.getText();
			stream.CSMetaDataTF = codesetMetadataTF.getText();
			stream.CSIDTF = codesetID3TF.getText();
			stream.CSFileSysTF = codesetFilesysTF.getText();
			stream.SPDelayTF = xsOffsetTF.getText();
			stream.SPExtraTF1 = xsPadding1TF.getText();
			stream.SPExtraTF2 = xsPadding2TF.getText();
			stream.SPWindowTF1 = xsSearch1TF.getText();
			stream.SPWindowTF2 = xsSearch2TF.getText();
			stream.SPSilenceTF = xsSilenceTF.getText();
			
			if(defaultStream) {
				//set new default stream for runtime
				mainGui.getControlStream().setDefaultStream(stream);
				//and save it
				mainGui.getControlStream().saveDefaultStream();
			} else {
				//if a new Stream is created, get a fresh id
				if(createNewStream) {
					mainGui.getControlStream().addStreamToVector(stream);
					mainGui.getTabel().addLastStreamFromVector();
					mainGui.getControlStream().saveStreamVector();
				} else {
					//update the table panel
					mainGui.getTabel().setNameValueWithConvert(streamNameTF.getText(), 
							mainGui.getControlStream().getPlaceInStreamVector(stream.id));
	
				}
			}
		}
	}