mirror of
https://github.com/PAMGuard/PAMGuard.git
synced 2024-11-22 07:02:29 +00:00
Added metadata module icon
This commit is contained in:
parent
1387428a32
commit
ecd04279c8
@ -6,7 +6,7 @@
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk-21.0.2.13-hotspot">
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/Amazon Coretto 21">
|
||||
<attributes>
|
||||
<attribute name="module" value="true"/>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
|
@ -45,7 +45,6 @@ import whistlesAndMoans.AbstractWhistleDataUnit;
|
||||
import fftManager.FFTDataUnit;
|
||||
import fftManager.PamFFTControl;
|
||||
import group3dlocaliser.Group3DLocaliserControl;
|
||||
import metadata.MetaDataContol;
|
||||
import meygenturbine.MeygenTurbine;
|
||||
import printscreen.PrintScreenControl;
|
||||
import rockBlock.RockBlockControl;
|
||||
@ -472,6 +471,7 @@ final public class PamModel implements PamSettings {
|
||||
mi.setToolTipText("Interface to Tethys Database");
|
||||
mi.setModulesMenuGroup(utilitiesGroup);
|
||||
mi.setMaxNumber(1);
|
||||
//mi.addGUICompatabilityFlag(PamGUIManager.FX); //has FX enabled GUI.
|
||||
mi.setHidden(SMRUEnable.isEnable() == false);
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,8 @@
|
||||
package dataMap.layoutFX;
|
||||
|
||||
import java.awt.Dimension;
|
||||
|
||||
import PamController.PamController;
|
||||
import PamController.PamControllerInterface;
|
||||
import dataMap.DataMapControl;
|
||||
import javafx.application.Platform;
|
||||
@ -31,7 +34,7 @@ import userDisplayFX.UserDisplayNodeParams;
|
||||
*/
|
||||
public class DataMapPaneFX extends PamBorderPane implements UserDisplayNodeFX {
|
||||
|
||||
private static final double HIDE_PANE_WIDTH = 500;
|
||||
private static final double HIDE_PANE_WIDTH = 400;
|
||||
|
||||
/**
|
||||
* Reference to the data map control.
|
||||
@ -43,6 +46,9 @@ public class DataMapPaneFX extends PamBorderPane implements UserDisplayNodeFX {
|
||||
*/
|
||||
public ScrollingDataPaneFX scrollingDataPanel;
|
||||
|
||||
|
||||
private Dimension graphDimension;
|
||||
|
||||
private SummaryPaneFX summaryPane;
|
||||
|
||||
/**
|
||||
@ -60,11 +66,13 @@ public class DataMapPaneFX extends PamBorderPane implements UserDisplayNodeFX {
|
||||
*/
|
||||
private ScalePaneFX scalePane;
|
||||
|
||||
/**
|
||||
* The settings pane.
|
||||
*/
|
||||
private PamVBox settingsPane;
|
||||
|
||||
/**
|
||||
* Axis which shows the current dates
|
||||
*/
|
||||
private PamDateAxis dateAxis;
|
||||
|
||||
public DataMapPaneFX(DataMapControl dataMapControl){
|
||||
this.dataMapControl=dataMapControl;
|
||||
createDataMapPaneFX();
|
||||
@ -120,6 +128,11 @@ public class DataMapPaneFX extends PamBorderPane implements UserDisplayNodeFX {
|
||||
StackPane stackPane = new StackPane();
|
||||
stackPane.getChildren().addAll(scrollingDataPanel, hidingSummaryPane, showButton);
|
||||
|
||||
dateAxis = new PamDateAxis();
|
||||
dateAxis.setMinHeight(50);
|
||||
dateAxis.prefWidthProperty().bind(scrollingDataPanel.widthProperty());
|
||||
|
||||
this.setTop(dateAxis);
|
||||
this.setCenter(stackPane);
|
||||
}
|
||||
|
||||
@ -146,7 +159,7 @@ public class DataMapPaneFX extends PamBorderPane implements UserDisplayNodeFX {
|
||||
*/
|
||||
private void setGraphDimensions() {
|
||||
long totalLength = dataMapControl.getLastTime() - dataMapControl.getFirstTime();
|
||||
//graphDimension = new Dimension(2000, 100);
|
||||
graphDimension = new Dimension(2000, 100);
|
||||
}
|
||||
|
||||
public void repaintAll() {
|
||||
@ -261,7 +274,6 @@ public class DataMapPaneFX extends PamBorderPane implements UserDisplayNodeFX {
|
||||
* @param timeEnd - the end of loaded data in millis.
|
||||
*/
|
||||
public void selectedDataTime(Long timeStart, Long timeEnd) {
|
||||
System.out.println("SELECTED DATA TIME: " + timeStart + " " + timeEnd);
|
||||
summaryPane.setSelectedDataTime(timeStart, timeEnd);
|
||||
}
|
||||
|
||||
|
@ -12,20 +12,15 @@ import javafx.geometry.Side;
|
||||
import javafx.scene.Node;
|
||||
import javafx.scene.control.Label;
|
||||
import javafx.scene.control.ScrollBar;
|
||||
import javafx.scene.control.ScrollPane.ScrollBarPolicy;
|
||||
import javafx.scene.paint.Color;
|
||||
import javafx.scene.text.Text;
|
||||
import javafx.util.Duration;
|
||||
import PamguardMVC.PamDataBlock;
|
||||
import dataMap.DataMapControl;
|
||||
import pamViewFX.fxGlyphs.PamGlyphDude;
|
||||
import pamViewFX.fxNodes.PamBorderPane;
|
||||
import pamViewFX.fxNodes.PamButton;
|
||||
import pamViewFX.fxNodes.PamColorsFX;
|
||||
import pamViewFX.fxNodes.PamScrollPane;
|
||||
import pamViewFX.fxNodes.PamVBox;
|
||||
import pamViewFX.fxNodes.pamAxis.PamDateAxis;
|
||||
import pamViewFX.fxNodes.sashPane.SashPane;
|
||||
|
||||
public class ScrollingDataPaneFX extends PamBorderPane {
|
||||
|
||||
|
@ -637,6 +637,14 @@ public class ModuleConnectionNode extends StandardConnectionNode implements PAMC
|
||||
removeConnectionPlug(getConnectionPlugs().get(i),false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Tooltip tooltip = ModuleToolTipFactory.getToolTip(pamControlledUnit);
|
||||
|
||||
if (tooltip!=null) {
|
||||
Tooltip. install(this, tooltip);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (pamControlledUnit.getPamModuleInfo()!=null) {
|
||||
|
@ -36,7 +36,7 @@ public class ModuleIconFactory {
|
||||
public enum ModuleIcon {
|
||||
DATAMAP, NMEA, GPS, MAP, SOUND_AQ, SOUND_OUTPUT, FFT, FILTER, CLICK, CLICK_TRAIN, RECORDER, WHISTLE_MOAN,
|
||||
NOISE_BAND, NOISE_FILT, DATABASE, BINARY, TIME_DISPLAY, DETECTION_DISPLAY, ARRAY, DEEP_LEARNING, MATCHED_CLICK_CLASSIFIER,
|
||||
DECIMATOR, CPOD
|
||||
DECIMATOR, CPOD, TETHYS
|
||||
}
|
||||
|
||||
/**
|
||||
@ -130,14 +130,14 @@ public class ModuleIconFactory {
|
||||
case CPOD:
|
||||
iconNode = new Label("CPOD"); //TEMP
|
||||
break;
|
||||
case TETHYS:
|
||||
iconNode = PamGlyphDude.createModuleIcon("file-codemeta");
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
long time2 = System.currentTimeMillis();
|
||||
|
||||
//System.out.println("GET MODULE ICON: " + icon + " load time: " + (time2-time1));
|
||||
|
||||
return iconNode;
|
||||
};
|
||||
|
||||
@ -215,6 +215,7 @@ public class ModuleIconFactory {
|
||||
* @return the module icon enum
|
||||
*/
|
||||
public ModuleIcon getModuleIcon(String className) {
|
||||
System.out.println("Get module icon: " + className);
|
||||
ModuleIcon icon = null;
|
||||
switch (className) {
|
||||
case "Acquisition.AcquisitionControl":
|
||||
@ -268,6 +269,9 @@ public class ModuleIconFactory {
|
||||
case "cpod.CPODControl2":
|
||||
icon=ModuleIcon.CPOD;
|
||||
break;
|
||||
case "MetaDataControl":
|
||||
icon = ModuleIcon.TETHYS;
|
||||
break;
|
||||
}
|
||||
return icon;
|
||||
}
|
||||
|
16
src/dataModelFX/connectionNodes/ModuleToolTipFactory.java
Normal file
16
src/dataModelFX/connectionNodes/ModuleToolTipFactory.java
Normal file
@ -0,0 +1,16 @@
|
||||
package dataModelFX.connectionNodes;
|
||||
|
||||
import PamController.PamControlledUnit;
|
||||
import javafx.scene.control.Tooltip;
|
||||
|
||||
public class ModuleToolTipFactory {
|
||||
|
||||
public static Tooltip getToolTip(PamControlledUnit pamControlledUnit) {
|
||||
|
||||
if (pamControlledUnit.getPamModuleInfo()==null) return null;
|
||||
|
||||
return new Tooltip(pamControlledUnit.getPamModuleInfo().getToolTipText());
|
||||
|
||||
}
|
||||
|
||||
}
|
@ -7,11 +7,13 @@ import java.io.Serializable;
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JMenuItem;
|
||||
|
||||
import Array.ArrayManager;
|
||||
import PamController.PamControlledUnit;
|
||||
import PamController.PamControlledUnitSettings;
|
||||
import PamController.PamController;
|
||||
import PamController.PamSettingManager;
|
||||
import PamController.PamSettings;
|
||||
import PamModel.PamModuleInfo;
|
||||
import metadata.swing.MetaDataDialog;
|
||||
|
||||
/**
|
||||
@ -44,12 +46,25 @@ public class MetaDataContol extends PamControlledUnit implements PamSettings {
|
||||
public static MetaDataContol getMetaDataControl() {
|
||||
if (singleInstance == null) {
|
||||
singleInstance = new MetaDataContol(unitType);
|
||||
singleInstance.addModuleInfo(); //needed for FX
|
||||
// add this line to add it to the main modules list. Then it will get menu's, etc.
|
||||
PamController.getInstance().addControlledUnit(singleInstance);
|
||||
}
|
||||
return singleInstance;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Add module info to the array manager. Need to do this to add icon which is used in data model.
|
||||
*/
|
||||
private void addModuleInfo(){
|
||||
//need to add module info due to fact array manager is a special case
|
||||
PamModuleInfo arrayModuleInfo=new PamModuleInfo("MetaDataControl", "Meta Data MANAGER", MetaDataContol.class);
|
||||
arrayModuleInfo.setCoreModule(true);
|
||||
arrayModuleInfo.setToolTipText("Meta data manager");
|
||||
this.setPamModuleInfo(arrayModuleInfo);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get PAMGuard Metadata. This contains a nilus Deployment object wrapped up
|
||||
* so that it can be serialised into other PAMGuard settings.
|
||||
|
Loading…
Reference in New Issue
Block a user