+ Add Breakpoint.getGroupProperties() method, that returns an implementation + of GroupProperties class with the relevant grouping information + used by BreakpointsWindow to create hierarchy of breakpoint groups +
+
+ * These properties are used by the Breakpoint Window to show a tree
+ * hierarchy of groups and associated breakpoints.
+ * Implementation should fire {@link #PROP_GROUP_PROPERTIES} event when
+ * the group properties change.
+ * @return {@link GroupProperties} or null
when no group properties
+ * are defined.
+ * @since 1.23
+ */
+ public GroupProperties getGroupProperties() {
+ return null;
}
/**
@@ -263,4 +291,49 @@
dispose ();
firePropertyChange (PROP_DISPOSED, Boolean.FALSE, Boolean.TRUE);
}
+
+ /**
+ * Group properties of breakpoint.
+ * These are used by the Breakpoint Window to show a tree hierarchy of
+ * groups and associated breakpoints.
+ * @since 1.23
+ */
+ public static abstract class GroupProperties {
+
+ /**
+ * Get the language of the source file with the breakpoint.
+ * @return The human-readable language of the breakpoint source file or null
+ * when this does not apply.
+ * @see org.netbeans.spi.debugger.ui.BreakpointType.getCategoryDisplayName()
+ */
+ public abstract String getLanguage();
+
+ /**
+ * Get the breakpoint type.
+ * @return The human-readable type of the breakpoint or null
+ * when this does not apply.
+ * @see org.netbeans.spi.debugger.ui.BreakpointType.getTypeDisplayName()
+ */
+ public abstract String getType();
+
+ /**
+ * Get the source files containing this breakpoint.
+ * @return The source files where this breakpoint is submitted or null
+ * when this does not apply.
+ */
+ public abstract FileObject[] getFiles();
+
+ /**
+ * Get the projects containing this breakpoint.
+ * @return The projects in which this breakpoint is submitted or null
+ * when this does not apply.
+ */
+ public abstract Project[] getProjects();
+
+ /**
+ * Test is this breakpoint is hidden (not visible to the user).
+ * @return true
when this breakpoint is hidden, false
otherwise.
+ */
+ public abstract boolean isHidden();
+ }
}