private void createPanel() {
			setLayout(new PairLayout(2, 2));
			setBorder(BorderFactory.createTitledBorder("Text Filter Strategy"));
			ButtonGroup buttonGroup = new ButtonGroup();
			GRadioButton containsButton = new GRadioButton("Contains");
			GRadioButton startsWithButton = new GRadioButton("Starts With");
			GRadioButton matchesExactlyButton = new GRadioButton("Matches Exactly");
			GRadioButton regularExpressionButton = new GRadioButton("Regular Expression");

			startsWithButton.setToolTipText(
				"The filter will match all entries that start with the entered filter text.");
			containsButton.setToolTipText(
				"The filter will match all entries that contain the entered filter text.");
			matchesExactlyButton.setToolTipText(
				"The filter will match all entries that exactly match the entered filter text.");
			regularExpressionButton.setToolTipText(
				"The filter will match all entries that match a regular expression generated from the filter text.");

			buttonGroup.add(containsButton);
			buttonGroup.add(startsWithButton);
			buttonGroup.add(matchesExactlyButton);
			buttonGroup.add(regularExpressionButton);

			startsWithButton.addActionListener(ev -> {
				filterStrategy = TextFilterStrategy.STARTS_WITH;
				enableStandardOptions(true);
			});

			containsButton.addActionListener(ev -> {
				filterStrategy = TextFilterStrategy.CONTAINS;
				enableStandardOptions(true);
			});
			matchesExactlyButton.addActionListener(ev -> {
				filterStrategy = TextFilterStrategy.MATCHES_EXACTLY;
				enableStandardOptions(true);
			});
			regularExpressionButton.addActionListener(ev -> {
				filterStrategy = TextFilterStrategy.REGULAR_EXPRESSION;
				enableStandardOptions(false);
			});

			switch (initialFilterOptions.getTextFilterStrategy()) {
				case STARTS_WITH:
					startsWithButton.setSelected(true);
					break;
				case MATCHES_EXACTLY:
					matchesExactlyButton.setSelected(true);
					break;
				case REGULAR_EXPRESSION:
					regularExpressionButton.setSelected(true);
					break;
				case CONTAINS:
				default:
					containsButton.setSelected(true);
					break;
			}

			add(containsButton);
			add(new GIconLabel(FilterOptions.getIcon(TextFilterStrategy.CONTAINS)));
			add(startsWithButton);
			add(new GIconLabel(FilterOptions.getIcon(TextFilterStrategy.STARTS_WITH)));
			add(matchesExactlyButton);
			add(new GIconLabel(FilterOptions.getIcon(TextFilterStrategy.MATCHES_EXACTLY)));
			add(regularExpressionButton);
			add(new GIconLabel(FilterOptions.getIcon(TextFilterStrategy.REGULAR_EXPRESSION)));
		}
Contains widgets for specifying how to interpret filter terms. Possible selections are:
		- Contains
		- Starts With
		- Matches Exactly
		- Regular Expression
Ghidra/Framework/Docking/src/main/java/docking/widgets/filter/FilterOptionsEditorDialog.java