Hi,
I am currently investigating the possibility to introduce the geostyler community extension into the different styling tabs. At the moment, the extension hooks into the styling UI by creating a new separate tab through the usage of the class `org.geoserver.wms.web.data.StyleEditTabPanelInfo`. This solution is not ideal, as the extension (and maybe other extensions as well) is not really integrated / directly next to the sld editor. Please have a look at this screenshot to get an idea what i intend to do: https://github.com/geostyler/geostyler/discussions/1324#discussioncomment-357127 I am still trying to figure out what other options there are, but it seems at least for the styling there is no way of having a custom class injected into the AbstractStylePage, which seems to be the right entry point as it is the parent of all styling tabs. My current solution makes minor changes to that class (src/web/wms/src/main/java/org/geoserver/wms/web/data/AbstractStylePage.java): WebMarkupContainer styleComponents = new WebMarkupContainer("styleComponents"); styleComponents.setOutputMarkupId(true); List<StyleComponentInfo> compInfo = getGeoServerApplication().getBeansOfType(StyleComponentInfo.class); for (StyleComponentInfo comp: compInfo) { try { Component c = (Component) comp.getComponentClass().getConstructor(String.class, AbstractStylePage.class) .newInstance(comp.getId(), this); styleComponents.add(c); } catch (Exception e) { throw new WicketRuntimeException(e); } } styleForm.add(styleComponents); That way i am able to inject my own extension class in the right spot. But as this changes code in the core, i fear this may not be the way to go. Are there any other ways to reach my goal and if not, do you see chances that this change may get into the core when the usual requirements for such a PR are met? Thanks in advance! Johannes Weskamm _______________________________________________ Geoserver-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geoserver-devel
