private void initControls(String initialFieldName, String initialComment,
			DataType initialBaseDataType, int initialBitSize) {
		updating = true;
		try {
			baseDataType = initialBaseDataType;
			dataTypeValidator.apply(baseDataType);
			dtChoiceEditor.setCellEditorValue(initialBaseDataType);
			fieldNameTextField.setText(initialFieldName);
			fieldCommentTextField.setText(initialComment);

			// Use current placementComponent to obtain initial values
			allocSizeModel.setValue((long) placementComponent.getAllocationByteSize());
			int allocBits = 8 * placementComponent.getAllocationByteSize();
			bitSizeModel.setValue((long) initialBitSize);
			bitOffsetModel.setMaximum((long) allocBits - 1);
			BitFieldAllocation bitFieldAllocation = placementComponent.getBitFieldAllocation();
			bitOffsetModel.setValue((long) bitFieldAllocation.getBitOffset());
			updateBitSizeModel();

			updateAllocationOffsetLabel();
		}
		finally {
			updating = false;
		}
	}
Initialize for edit of existing component or no component if bitfieldDtc is null.
If null an allocation size of 4-bytes will be used but may be adjusted.
@param bitfieldDtc bitfield component or null
@param allocationOffset allocation offset to be used
@param useExistingAllocationSize if true attempt to use existing allocation size
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/BitFieldEditorPanel.java