13.5.1-1 baseline
Former-commit-id:6384018950
[formerly998961612c
] [formerly6384018950
[formerly998961612c
] [formerlyfe872355a7
[formerly 72a49a353cb22c89c9aa19ed1f4a681c3e89d5f3]]] Former-commit-id:fe872355a7
Former-commit-id:0aab285b8a
[formerly30ba1d634e
] Former-commit-id:146c5e8940
|
@ -86,6 +86,9 @@
|
||||||
<copy todir="${buildDirectory}/plugins">
|
<copy todir="${buildDirectory}/plugins">
|
||||||
<fileset dir="${buildDirectory}/../../" includes="org.springframework*/**"/>
|
<fileset dir="${buildDirectory}/../../" includes="org.springframework*/**"/>
|
||||||
</copy>
|
</copy>
|
||||||
|
<copy todir="${buildDirectory}/plugins">
|
||||||
|
<fileset dir="${buildDirectory}/../../" includes="org.quartz*/**"/>
|
||||||
|
</copy>
|
||||||
<copy todir="${buildDirectory}/plugins">
|
<copy todir="${buildDirectory}/plugins">
|
||||||
<fileset dir="${buildDirectory}/../../" includes="com.raytheon.uf.common.util*/**"/>
|
<fileset dir="${buildDirectory}/../../" includes="com.raytheon.uf.common.util*/**"/>
|
||||||
<fileset dir="${buildDirectory}/../../" includes="com.raytheon.uf.common.status*/**"/>
|
<fileset dir="${buildDirectory}/../../" includes="com.raytheon.uf.common.status*/**"/>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
|
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
|
||||||
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
|
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
|
||||||
|
|
||||||
|
@ -49,7 +49,7 @@
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.common.util"
|
id="com.raytheon.uf.common.util"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -98,7 +98,7 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="org.slf4j"
|
id="org.slf4j"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
|
@ -155,4 +155,10 @@
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.quartz"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"/>
|
||||||
|
|
||||||
</feature>
|
</feature>
|
||||||
|
|
|
@ -15,7 +15,8 @@ Export-Package: com.raytheon.rcm.coll,
|
||||||
Require-Bundle: com.raytheon.rcm.lib;bundle-version="1.0.0",
|
Require-Bundle: com.raytheon.rcm.lib;bundle-version="1.0.0",
|
||||||
org.apache.commons.logging;bundle-version="1.0.4",
|
org.apache.commons.logging;bundle-version="1.0.4",
|
||||||
org.springframework;bundle-version="2.5.6",
|
org.springframework;bundle-version="2.5.6",
|
||||||
org.itadaki.bzip2;bundle-version="0.9.1"
|
org.itadaki.bzip2;bundle-version="0.9.1",
|
||||||
|
org.quartz;bundle-version="1.8.6"
|
||||||
Import-Package: com.raytheon.uf.common.util,
|
Import-Package: com.raytheon.uf.common.util,
|
||||||
org.apache.log4j,
|
org.apache.log4j,
|
||||||
org.junit
|
org.junit
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<project default="p2.build" basedir=".">
|
<project default="main" basedir=".">
|
||||||
|
|
||||||
<!-- TODO: Verify These Properties References An Actual Directory. -->
|
<!-- TODO: Verify These Properties References An Actual Directory. -->
|
||||||
<property name="eclipse.dir"
|
<property name="eclipse.dir"
|
||||||
|
@ -14,9 +14,9 @@
|
||||||
<property name="workspace.dir" value="${basedir}/../" />
|
<property name="workspace.dir" value="${basedir}/../" />
|
||||||
|
|
||||||
<property name="pde.build.script"
|
<property name="pde.build.script"
|
||||||
value="org.eclipse.pde.build_3.6.1.R36x_v20100823/scripts/build.xml" />
|
value="org.eclipse.pde.build_3.8.2.v20121114-140810/scripts/build.xml" />
|
||||||
<property name="eclipse.launcher.jar"
|
<property name="eclipse.launcher.jar"
|
||||||
value="org.eclipse.equinox.launcher_1.1.0.v20100507.jar" />
|
value="org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar" />
|
||||||
|
|
||||||
<!-- Verify That We Have Access To A Copy Of Eclipse -->
|
<!-- Verify That We Have Access To A Copy Of Eclipse -->
|
||||||
<target name="verify">
|
<target name="verify">
|
||||||
|
@ -120,13 +120,6 @@
|
||||||
includes="it.*/**" />
|
includes="it.*/**" />
|
||||||
</copy>
|
</copy>
|
||||||
<!-- END: Copy The Plugins -->
|
<!-- END: Copy The Plugins -->
|
||||||
|
|
||||||
<!-- Copy The Features -->
|
|
||||||
<echo message="FEATURES: *viz*feature*" />
|
|
||||||
<copy todir="${basedir}/cave/p2/features">
|
|
||||||
<fileset dir="${workspace.dir}"
|
|
||||||
includes="*viz*feature*/**" />
|
|
||||||
</copy>
|
|
||||||
</target>
|
</target>
|
||||||
|
|
||||||
<!-- Cleans Up Any Temporary Directories -->
|
<!-- Cleans Up Any Temporary Directories -->
|
||||||
|
@ -154,7 +147,18 @@
|
||||||
<param name="feature"
|
<param name="feature"
|
||||||
value="com.raytheon.viz.feature.awips" />
|
value="com.raytheon.viz.feature.awips" />
|
||||||
<param name="omit"
|
<param name="omit"
|
||||||
value="false" />
|
value="true" />
|
||||||
|
</antcall>
|
||||||
|
<!--
|
||||||
|
we will still build this for the MSFT Windows CAVE.
|
||||||
|
-->
|
||||||
|
<antcall target="p2.build.repo">
|
||||||
|
<param name="feature"
|
||||||
|
value="com.raytheon.uf.common.base.feature" />
|
||||||
|
</antcall>
|
||||||
|
<antcall target="p2.build.repo">
|
||||||
|
<param name="feature"
|
||||||
|
value="com.raytheon.uf.viz.base.feature" />
|
||||||
</antcall>
|
</antcall>
|
||||||
<antcall target="p2.build.repo">
|
<antcall target="p2.build.repo">
|
||||||
<param name="feature"
|
<param name="feature"
|
||||||
|
@ -164,6 +168,10 @@
|
||||||
<param name="feature"
|
<param name="feature"
|
||||||
value="com.raytheon.uf.viz.common.core.feature" />
|
value="com.raytheon.uf.viz.common.core.feature" />
|
||||||
</antcall>
|
</antcall>
|
||||||
|
<antcall target="p2.build.repo">
|
||||||
|
<param name="feature"
|
||||||
|
value="com.raytheon.uf.viz.localization.perspective.feature" />
|
||||||
|
</antcall>
|
||||||
<antcall target="p2.build.repo">
|
<antcall target="p2.build.repo">
|
||||||
<param name="feature"
|
<param name="feature"
|
||||||
value="com.raytheon.uf.viz.core.feature" />
|
value="com.raytheon.uf.viz.core.feature" />
|
||||||
|
@ -188,10 +196,6 @@
|
||||||
<param name="feature"
|
<param name="feature"
|
||||||
value="com.raytheon.uf.viz.d2d.core.feature" />
|
value="com.raytheon.uf.viz.d2d.core.feature" />
|
||||||
</antcall>
|
</antcall>
|
||||||
<antcall target="p2.build.repo">
|
|
||||||
<param name="feature"
|
|
||||||
value="com.raytheon.uf.viz.localization.perspective.feature" />
|
|
||||||
</antcall>
|
|
||||||
<antcall target="p2.build.repo">
|
<antcall target="p2.build.repo">
|
||||||
<param name="feature"
|
<param name="feature"
|
||||||
value="com.raytheon.viz.radar.feature" />
|
value="com.raytheon.viz.radar.feature" />
|
||||||
|
@ -311,8 +315,33 @@
|
||||||
|
|
||||||
<antcall target="cleanup.features" />
|
<antcall target="cleanup.features" />
|
||||||
</target>
|
</target>
|
||||||
|
|
||||||
|
<target name="wa-build" depends="p2.build" description="Builds work assignment specific features after the main build">
|
||||||
|
<for param="wa.feature.list.file">
|
||||||
|
<fileset dir="${basedir}" includes="*-wa-build.properties" />
|
||||||
|
<sequential>
|
||||||
|
<var name="wa.features" unset="true" />
|
||||||
|
<property file="@{wa.feature.list.file}" />
|
||||||
|
<for list="${wa.features}" param="wa.feature">
|
||||||
|
<sequential>
|
||||||
|
<antcall target="p2.build.repo">
|
||||||
|
<param name="feature" value="@{wa.feature}" />
|
||||||
|
</antcall>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</sequential>
|
||||||
|
</for>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="main" depends="clean, p2.build, wa-build" />
|
||||||
|
|
||||||
<target name="p2.build.repo">
|
<target name="p2.build.repo">
|
||||||
|
<!-- Copy The Feature -->
|
||||||
|
<copy todir="${basedir}/cave/p2/features">
|
||||||
|
<fileset dir="${workspace.dir}"
|
||||||
|
includes="${feature}/**" />
|
||||||
|
</copy>
|
||||||
|
|
||||||
<!-- Update The Feature -->
|
<!-- Update The Feature -->
|
||||||
<property name="process.feature.tool"
|
<property name="process.feature.tool"
|
||||||
value="${workspace.dir}/build/tools/ProcessFeature.jar" />
|
value="${workspace.dir}/build/tools/ProcessFeature.jar" />
|
||||||
|
@ -410,20 +439,6 @@
|
||||||
</then>
|
</then>
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
<!-- Remove 'com.raytheon.uf.viz.eclipse.feature' -->
|
|
||||||
<if>
|
|
||||||
<available
|
|
||||||
file="${basedir}/cave/p2/features/com.raytheon.uf.viz.eclipse.feature"
|
|
||||||
type="dir" />
|
|
||||||
<then>
|
|
||||||
<delete includeemptydirs="true">
|
|
||||||
<fileset
|
|
||||||
dir="${basedir}/cave/p2/features/com.raytheon.uf.viz.eclipse.feature"
|
|
||||||
/>
|
|
||||||
</delete>
|
|
||||||
</then>
|
|
||||||
</if>
|
|
||||||
|
|
||||||
<!-- Remove 'com.raytheon.uf.viz.feature.alertviz' -->
|
<!-- Remove 'com.raytheon.uf.viz.feature.alertviz' -->
|
||||||
<if>
|
<if>
|
||||||
<available
|
<available
|
||||||
|
@ -451,20 +466,32 @@
|
||||||
</delete>
|
</delete>
|
||||||
</then>
|
</then>
|
||||||
</if>
|
</if>
|
||||||
|
<!-- Remove 'com.raytheon.uf.common.base.feature' -->
|
||||||
<!-- Remove 'com.raytheon.uf.viz.collaboration.product.feature' -->
|
<if>
|
||||||
<if>
|
<available
|
||||||
<available
|
file="${basedir}/cave/p2/features/com.raytheon.uf.common.base.feature"
|
||||||
file="${basedir}/cave/p2/features/com.raytheon.uf.viz.collaboration.product.feature"
|
type="dir" />
|
||||||
type="dir" />
|
<then>
|
||||||
<then>
|
<delete includeemptydirs="true">
|
||||||
<delete includeemptydirs="true">
|
<fileset
|
||||||
<fileset
|
dir="${basedir}/cave/p2/features/com.raytheon.uf.common.base.feature"
|
||||||
dir="${basedir}/cave/p2/features/com.raytheon.uf.viz.collaboration.product.feature"
|
/>
|
||||||
/>
|
</delete>
|
||||||
</delete>
|
</then>
|
||||||
</then>
|
</if>
|
||||||
</if>
|
<!-- Remove 'com.raytheon.uf.viz.collaboration.product.feature' -->
|
||||||
|
<if>
|
||||||
|
<available
|
||||||
|
file="${basedir}/cave/p2/features/com.raytheon.uf.viz.collaboration.product.feature"
|
||||||
|
type="dir" />
|
||||||
|
<then>
|
||||||
|
<delete includeemptydirs="true">
|
||||||
|
<fileset
|
||||||
|
dir="${basedir}/cave/p2/features/com.raytheon.uf.viz.collaboration.product.feature"
|
||||||
|
/>
|
||||||
|
</delete>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
</target>
|
</target>
|
||||||
|
|
||||||
<taskdef resource="net/sf/antcontrib/antlib.xml"
|
<taskdef resource="net/sf/antcontrib/antlib.xml"
|
||||||
|
|
|
@ -18,6 +18,21 @@
|
||||||
# further licensing information.
|
# further licensing information.
|
||||||
##
|
##
|
||||||
|
|
||||||
|
#
|
||||||
|
# Port of A1 HazardsTable.py.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# SOFTWARE HISTORY
|
||||||
|
#
|
||||||
|
# Date Ticket# Engineer Description
|
||||||
|
# ------------ ---------- ----------- --------------------------
|
||||||
|
# ??/??/?? ???????? Initial Creation.
|
||||||
|
# 05/14/13 1842 dgilling Use GFEVtecUtil to handle NEW
|
||||||
|
# ETN assignment.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
import time, getopt, sys, copy, string, logging
|
import time, getopt, sys, copy, string, logging
|
||||||
import VTECTableUtil, VTECTable
|
import VTECTableUtil, VTECTable
|
||||||
import TimeRange, AbsTime, ActiveTableVtec
|
import TimeRange, AbsTime, ActiveTableVtec
|
||||||
|
@ -28,6 +43,7 @@ from com.raytheon.uf.common.dataplugin.gfe.reference import ReferenceID
|
||||||
from com.raytheon.uf.common.dataplugin.gfe.discrete import DiscreteKey
|
from com.raytheon.uf.common.dataplugin.gfe.discrete import DiscreteKey
|
||||||
from com.raytheon.uf.common.time import TimeRange as JavaTimeRange
|
from com.raytheon.uf.common.time import TimeRange as JavaTimeRange
|
||||||
from com.raytheon.viz.gfe.sampler import HistoSampler, SamplerRequest
|
from com.raytheon.viz.gfe.sampler import HistoSampler, SamplerRequest
|
||||||
|
from com.raytheon.viz.gfe.vtec import GFEVtecUtil
|
||||||
import cPickle
|
import cPickle
|
||||||
|
|
||||||
# This class makes an object that interfaces to the GFE hazard grid
|
# This class makes an object that interfaces to the GFE hazard grid
|
||||||
|
@ -69,14 +85,14 @@ class HazardsTable(VTECTableUtil.VTECTableUtil):
|
||||||
self.__marineProds = ["CWF", "NSH", "GLF", "MWW", "OFF"]
|
self.__marineProds = ["CWF", "NSH", "GLF", "MWW", "OFF"]
|
||||||
|
|
||||||
# list of phen/sig from national centers and "until further notice"
|
# list of phen/sig from national centers and "until further notice"
|
||||||
self.__tpcKeys = [('HU','A'), ('HU','S'), ('HU','W'), ('TR','A'),
|
self.__tpcKeys = self.__processJavaCollection(GFEVtecUtil.TROPICAL_PHENSIGS, self.__convertPhensig)
|
||||||
('TR','W')]
|
|
||||||
self.__tpcBaseETN = '1001'
|
self.__tpcBaseETN = '1001'
|
||||||
self.__ncKeys = [('TO','A'), ('SV','A'), ('HU', 'S'), ('HU','A'), ('HU','W'),
|
self.__ncKeys = self.__processJavaCollection(GFEVtecUtil.NATIONAL_PHENSIGS, self.__convertPhensig)
|
||||||
('TR','A'), ('TR','W')] # added HU.S
|
|
||||||
self.__ufnKeys = [('HU','A'), ('HU','S'), ('HU','W'), ('TR','A'), ('TR','W'),
|
self.__ufnKeys = [('HU','A'), ('HU','S'), ('HU','W'), ('TR','A'), ('TR','W'),
|
||||||
('TY','A'), ('TY','W')]
|
('TY','A'), ('TY','W')]
|
||||||
|
|
||||||
|
self.__sitesIgnoreNatlEtn = self.__processJavaCollection(GFEVtecUtil.IGNORE_NATIONAL_ETN, str)
|
||||||
|
|
||||||
self.__marineZonesPrefix = ["AM", "GM", "PZ", "PK", "PH", "PM", "AN",
|
self.__marineZonesPrefix = ["AM", "GM", "PZ", "PK", "PH", "PM", "AN",
|
||||||
"PS", "SL"] #list of zone name prefix that are marine zones
|
"PS", "SL"] #list of zone name prefix that are marine zones
|
||||||
|
|
||||||
|
@ -682,36 +698,31 @@ class HazardsTable(VTECTableUtil.VTECTableUtil):
|
||||||
assigned.extend(ids2)
|
assigned.extend(ids2)
|
||||||
|
|
||||||
# find highest etn in active table for phen/sig, returns it.
|
# find highest etn in active table for phen/sig, returns it.
|
||||||
|
# This method has been dramatically re-written for A2 to use
|
||||||
|
# GFEVtecUtil to do preliminary ETN assignment instead of scrubbing
|
||||||
|
# the whole set of ActiveTableRecords to calculate it.
|
||||||
def __highestETNActiveTable(self, phen, sig, activeTable):
|
def __highestETNActiveTable(self, phen, sig, activeTable):
|
||||||
#check active table for highest etn
|
|
||||||
presentyear = time.gmtime(self.__time)[0]
|
|
||||||
etn_base = 0
|
etn_base = 0
|
||||||
for active in activeTable:
|
phensig = (phen, sig)
|
||||||
# find only records with
|
|
||||||
# 1. same phen and sig
|
# find the max ETN...
|
||||||
# 2. in the present year
|
# 1. highest ETN period for non-tropical and all GUM products (tpcKeys)
|
||||||
# and not from the national center
|
# or
|
||||||
activeyear = time.gmtime(active['issueTime'])[0]
|
# 2. highest ETN > 1000 for the tropical, non-GUM products (tpcKeys)
|
||||||
phensig = (active['phen'],active['sig'])
|
#
|
||||||
if active['phen'] == phen and active['sig'] == sig and \
|
# Local WFOs do not assign these numbers, so they should have
|
||||||
activeyear == presentyear:
|
# numbers < 1000
|
||||||
# find the max ETN...
|
if phensig not in self.__tpcKeys or self.__siteID4 in self.__sitesIgnoreNatlEtn:
|
||||||
# 1. highest ETN period for non-tropical and all GUM products (tpcKeys)
|
etn_base = GFEVtecUtil.getNextEtn(self.__siteID4, '.'.join(phensig), False) - 1
|
||||||
# or
|
else:
|
||||||
# 2. highest ETN > 1000 for the tropical, non-GUM products (tpcKeys)
|
presentyear = time.gmtime(self.__time)[0]
|
||||||
#
|
for active in activeTable:
|
||||||
# Local WFOs do not assign these numbers, so they should have
|
activeyear = time.gmtime(active['issueTime'])[0]
|
||||||
# numbers < 1000
|
activephensig = (active['phen'],active['sig'])
|
||||||
if active['etn'] > etn_base and \
|
if phensig == activephensig and presentyear == activeyear:
|
||||||
phensig not in self.__tpcKeys:
|
# causes failure if tropical hazards are less than 1001
|
||||||
etn_base = active['etn']
|
if active['etn'] < int(self.__tpcBaseETN):
|
||||||
elif active['etn'] > etn_base and \
|
LogStream.logProblem("Incorrect ETN for tropical hazard.")
|
||||||
phensig in self.__tpcKeys:
|
|
||||||
if self.__siteID4 == 'PGUM':
|
|
||||||
etn_base = active['etn'] # GUM uses their own ETNs regardless of hazard
|
|
||||||
else:
|
|
||||||
if active['etn'] < 1001: # causes failure if tropical hazards are less than 1001
|
|
||||||
self.log.error("Incorrect ETN for tropical hazard.")
|
|
||||||
return etn_base
|
return etn_base
|
||||||
|
|
||||||
#determine the new etn to use, using the etn cache
|
#determine the new etn to use, using the etn cache
|
||||||
|
@ -2389,3 +2400,17 @@ class HazardsTable(VTECTableUtil.VTECTableUtil):
|
||||||
# return False #same phen/sig, not tpc, so. non separate track
|
# return False #same phen/sig, not tpc, so. non separate track
|
||||||
# else:
|
# else:
|
||||||
# return true;
|
# return true;
|
||||||
|
|
||||||
|
def __processJavaCollection(self, javaObj, processMethod=None):
|
||||||
|
retVal = []
|
||||||
|
iter = javaObj.iterator()
|
||||||
|
while iter.hasNext():
|
||||||
|
nextObj = iter.next()
|
||||||
|
if processMethod is not None:
|
||||||
|
nextObj = processMethod(nextObj)
|
||||||
|
retVal.append(nextObj)
|
||||||
|
return retVal
|
||||||
|
|
||||||
|
def __convertPhensig(self, javaPhensig):
|
||||||
|
phenSig = tuple(str(javaPhensig).split('.'))
|
||||||
|
return phenSig
|
||||||
|
|
|
@ -21,7 +21,6 @@
|
||||||
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADMesoPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADMesoPlot.xml"
|
||||||
menuText="30 min stn plot" id="local30minstnplot">
|
menuText="30 min stn plot" id="local30minstnplot">
|
||||||
<dataURI>/ldadmesonet/%</dataURI>
|
|
||||||
<substitute key="svg" value="ldadMesoDesign.svg"/>
|
<substitute key="svg" value="ldadMesoDesign.svg"/>
|
||||||
<substitute key="legend" value="30 min Local Data Plot"/>
|
<substitute key="legend" value="30 min Local Data Plot"/>
|
||||||
<substitute key="posOffset" value="900"/>
|
<substitute key="posOffset" value="900"/>
|
||||||
|
@ -29,7 +28,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADMesoQCPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADMesoQCPlot.xml"
|
||||||
menuText="30 min stn plot + QC" id="local30minstnQCplot">
|
menuText="30 min stn plot + QC" id="local30minstnQCplot">
|
||||||
<dataURI>/qc/%</dataURI>
|
|
||||||
<substitute key="svgPrefix" value="ldadQC"/>
|
<substitute key="svgPrefix" value="ldadQC"/>
|
||||||
<substitute key="legend" value="30 min LDAD QC Plot"/>
|
<substitute key="legend" value="30 min LDAD QC Plot"/>
|
||||||
<substitute key="posOffset" value="900"/>
|
<substitute key="posOffset" value="900"/>
|
||||||
|
@ -40,7 +38,6 @@
|
||||||
<contribute xsi:type="subMenu" menuText="Other Local Plots">
|
<contribute xsi:type="subMenu" menuText="Other Local Plots">
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADMesoPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADMesoPlot.xml"
|
||||||
menuText="15 min stn plot" id="local15minstnplot">
|
menuText="15 min stn plot" id="local15minstnplot">
|
||||||
<dataURI>/ldadmesonet/%</dataURI>
|
|
||||||
<substitute key="svg" value="ldadMesoDesign.svg"/>
|
<substitute key="svg" value="ldadMesoDesign.svg"/>
|
||||||
<substitute key="legend" value="15 min Local Data Plot"/>
|
<substitute key="legend" value="15 min Local Data Plot"/>
|
||||||
<substitute key="posOffset" value="450"/>
|
<substitute key="posOffset" value="450"/>
|
||||||
|
@ -48,7 +45,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADMesoQCPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADMesoQCPlot.xml"
|
||||||
menuText="15 min stn plot + QC" id="local15minstnQCplot">
|
menuText="15 min stn plot + QC" id="local15minstnQCplot">
|
||||||
<dataURI>/qc/%</dataURI>
|
|
||||||
<substitute key="svgPrefix" value="ldadQC"/>
|
<substitute key="svgPrefix" value="ldadQC"/>
|
||||||
<substitute key="legend" value="15 min LDAD QC Plot"/>
|
<substitute key="legend" value="15 min LDAD QC Plot"/>
|
||||||
<substitute key="posOffset" value="450"/>
|
<substitute key="posOffset" value="450"/>
|
||||||
|
@ -58,7 +54,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADMesoPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADMesoPlot.xml"
|
||||||
menuText="5 min stn plot" id="local5minstnplot">
|
menuText="5 min stn plot" id="local5minstnplot">
|
||||||
<dataURI>/ldadmesonet/%</dataURI>
|
|
||||||
<substitute key="svg" value="ldadMesoDesign.svg"/>
|
<substitute key="svg" value="ldadMesoDesign.svg"/>
|
||||||
<substitute key="legend" value="5 min Local Data Plot"/>
|
<substitute key="legend" value="5 min Local Data Plot"/>
|
||||||
<substitute key="posOffset" value="150"/>
|
<substitute key="posOffset" value="150"/>
|
||||||
|
@ -66,7 +61,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADMesoPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADMesoPlot.xml"
|
||||||
menuText="1 min stn plot" id="local1minstnplot">
|
menuText="1 min stn plot" id="local1minstnplot">
|
||||||
<dataURI>/ldadmesonet/%</dataURI>
|
|
||||||
<substitute key="svg" value="ldadMesoDesign.svg"/>
|
<substitute key="svg" value="ldadMesoDesign.svg"/>
|
||||||
<substitute key="legend" value="1 min Local Data Plot"/>
|
<substitute key="legend" value="1 min Local Data Plot"/>
|
||||||
<substitute key="posOffset" value="30"/>
|
<substitute key="posOffset" value="30"/>
|
||||||
|
@ -74,7 +68,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADMesoPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADMesoPlot.xml"
|
||||||
menuText="WindCh/HeatIdx" id="localWindChHeatIdx">
|
menuText="WindCh/HeatIdx" id="localWindChHeatIdx">
|
||||||
<dataURI>/ldadmesonet/%</dataURI>
|
|
||||||
<substitute key="svg" value="ldadMesoHiWcDesign.svg"/>
|
<substitute key="svg" value="ldadMesoHiWcDesign.svg"/>
|
||||||
<substitute key="legend" value="Local WindChill/HeatIndex Plot"/>
|
<substitute key="legend" value="Local WindChill/HeatIndex Plot"/>
|
||||||
<substitute key="posOffset" value="900"/>
|
<substitute key="posOffset" value="900"/>
|
||||||
|
@ -87,7 +80,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADHydroPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADHydroPlot.xml"
|
||||||
menuText="3 hr Precip" id="local3hrPrecip">
|
menuText="3 hr Precip" id="local3hrPrecip">
|
||||||
<dataURI>/ldadhydro/%</dataURI>
|
|
||||||
<substitute key="svg" value="ldadHydro3hrPrecipDesign.svg"/>
|
<substitute key="svg" value="ldadHydro3hrPrecipDesign.svg"/>
|
||||||
<substitute key="legend" value="3 hr Precip Plot"/>
|
<substitute key="legend" value="3 hr Precip Plot"/>
|
||||||
<substitute key="posOffset" value="5400"/>
|
<substitute key="posOffset" value="5400"/>
|
||||||
|
@ -95,7 +87,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADHydroPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADHydroPlot.xml"
|
||||||
menuText="1 hr Precip" id="local1hrPrecip">
|
menuText="1 hr Precip" id="local1hrPrecip">
|
||||||
<dataURI>/ldadhydro/%</dataURI>
|
|
||||||
<substitute key="svg" value="ldadHydro1hrPrecipDesign.svg"/>
|
<substitute key="svg" value="ldadHydro1hrPrecipDesign.svg"/>
|
||||||
<substitute key="legend" value="1 hr Precip Plot"/>
|
<substitute key="legend" value="1 hr Precip Plot"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -103,7 +94,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADHydroPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADHydroPlot.xml"
|
||||||
menuText="30 min Precip" id="local30minPrecip">
|
menuText="30 min Precip" id="local30minPrecip">
|
||||||
<dataURI>/ldadhydro/%</dataURI>
|
|
||||||
<substitute key="svg" value="ldadHydro30minPrecipDesign.svg"/>
|
<substitute key="svg" value="ldadHydro30minPrecipDesign.svg"/>
|
||||||
<substitute key="legend" value="30 min Precip Plot"/>
|
<substitute key="legend" value="30 min Precip Plot"/>
|
||||||
<substitute key="posOffset" value="900"/>
|
<substitute key="posOffset" value="900"/>
|
||||||
|
@ -111,7 +101,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADHydroPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADHydroPlot.xml"
|
||||||
menuText="15 min Precip" id="local15minPrecip">
|
menuText="15 min Precip" id="local15minPrecip">
|
||||||
<dataURI>/ldadhydro/%</dataURI>
|
|
||||||
<substitute key="svg" value="ldadHydro15minPrecipDesign.svg"/>
|
<substitute key="svg" value="ldadHydro15minPrecipDesign.svg"/>
|
||||||
<substitute key="legend" value="15 min Precip Plot"/>
|
<substitute key="legend" value="15 min Precip Plot"/>
|
||||||
<substitute key="posOffset" value="450"/>
|
<substitute key="posOffset" value="450"/>
|
||||||
|
@ -119,7 +108,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/LDADHydroPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/LDADHydroPlot.xml"
|
||||||
menuText="5 min Precip" id="local5minPrecip">
|
menuText="5 min Precip" id="local5minPrecip">
|
||||||
<dataURI>/ldadhydro/%</dataURI>
|
|
||||||
<substitute key="svg" value="ldadHydro5minPrecipDesign.svg"/>
|
<substitute key="svg" value="ldadHydro5minPrecipDesign.svg"/>
|
||||||
<substitute key="legend" value="5 min Precip Plot"/>
|
<substitute key="legend" value="5 min Precip Plot"/>
|
||||||
<substitute key="posOffset" value="150"/>
|
<substitute key="posOffset" value="150"/>
|
||||||
|
|
|
@ -21,7 +21,6 @@
|
||||||
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
||||||
menuText="NWS MSL Pressure" id="msasMSLnwsPressure">
|
menuText="NWS MSL Pressure" id="msasMSLnwsPressure">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svgPrefix" value="msasMSLnwsPressure"/>
|
<substitute key="svgPrefix" value="msasMSLnwsPressure"/>
|
||||||
<substitute key="legend" value="msas MSLP-nws Obs(mb*10)"/>
|
<substitute key="legend" value="msas MSLP-nws Obs(mb*10)"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -31,7 +30,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
||||||
menuText="MSAS MSL Pressure" id="msasMAPSPressure">
|
menuText="MSAS MSL Pressure" id="msasMAPSPressure">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svgPrefix" value="msasMAPSPressure"/>
|
<substitute key="svgPrefix" value="msasMAPSPressure"/>
|
||||||
<substitute key="legend" value="msas MSL Obs(mb*10)"/>
|
<substitute key="legend" value="msas MSL Obs(mb*10)"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -41,7 +39,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
||||||
menuText="Altimeter" id="msasAltimeter">
|
menuText="Altimeter" id="msasAltimeter">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svgPrefix" value="msasAltimeter"/>
|
<substitute key="svgPrefix" value="msasAltimeter"/>
|
||||||
<substitute key="legend" value="msas altimeter Obs(mb*10)"/>
|
<substitute key="legend" value="msas altimeter Obs(mb*10)"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -51,7 +48,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
||||||
menuText="3hr Pressure Change" id="msas3hrPressureChange">
|
menuText="3hr Pressure Change" id="msas3hrPressureChange">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svgPrefix" value="msas3hrPressureChange"/>
|
<substitute key="svgPrefix" value="msas3hrPressureChange"/>
|
||||||
<substitute key="legend" value="msas 3hr press change Obs(mb*10)"/>
|
<substitute key="legend" value="msas 3hr press change Obs(mb*10)"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -61,7 +57,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
||||||
menuText="Wind" id="msasWind">
|
menuText="Wind" id="msasWind">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svgPrefix" value="msasWind"/>
|
<substitute key="svgPrefix" value="msasWind"/>
|
||||||
<substitute key="legend" value="msas wind Obs(kts)"/>
|
<substitute key="legend" value="msas wind Obs(kts)"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -71,7 +66,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
||||||
menuText="Potential Temp" id="msasPotentialTemp">
|
menuText="Potential Temp" id="msasPotentialTemp">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svgPrefix" value="msasPotentialTemp"/>
|
<substitute key="svgPrefix" value="msasPotentialTemp"/>
|
||||||
<substitute key="legend" value="msas theta Obs(K)"/>
|
<substitute key="legend" value="msas theta Obs(K)"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -81,7 +75,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
||||||
menuText="Dewpoint" id="msasDewpoint">
|
menuText="Dewpoint" id="msasDewpoint">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svgPrefix" value="msasDewpoint"/>
|
<substitute key="svgPrefix" value="msasDewpoint"/>
|
||||||
<substitute key="legend" value="msas dewpoint Obs(F)"/>
|
<substitute key="legend" value="msas dewpoint Obs(F)"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -91,7 +84,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MsasQCPlot.xml"
|
||||||
menuText="Dewpoint Depression" id="msasDewpointDepression">
|
menuText="Dewpoint Depression" id="msasDewpointDepression">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svgPrefix" value="msasDewpointDepression"/>
|
<substitute key="svgPrefix" value="msasDewpointDepression"/>
|
||||||
<substitute key="legend" value="msas dewpoint dep Obs(F)"/>
|
<substitute key="legend" value="msas dewpoint dep Obs(F)"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
|
|
@ -21,24 +21,17 @@
|
||||||
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||||
<contribute xsi:type="bundleItem" file="bundles/maritimeFixedBuoy.xml"
|
<contribute xsi:type="bundleItem" file="bundles/maritimeFixedBuoy.xml"
|
||||||
menuText="Fixed Buoys" id="FixedBuoys"
|
menuText="Fixed Buoys" id="FixedBuoys"
|
||||||
productInterval="3600" productOffset="1800">
|
productInterval="3600" productOffset="1800" />
|
||||||
<dataURI>/sfcobs/%/1005/%</dataURI>
|
|
||||||
</contribute>
|
|
||||||
<contribute xsi:type="bundleItem" file="bundles/maritimeMoving.xml"
|
<contribute xsi:type="bundleItem" file="bundles/maritimeMoving.xml"
|
||||||
menuText="Moving Maritime" id="MovingMaritime"
|
menuText="Moving Maritime" id="MovingMaritime"
|
||||||
productInterval="3600" productOffset="1800">
|
productInterval="3600" productOffset="1800" />
|
||||||
<dataURI>/sfcobs/%/1003/%</dataURI>
|
|
||||||
</contribute>
|
|
||||||
<contribute xsi:type="bundleItem" file="bundles/maritimeMAROB.xml"
|
<contribute xsi:type="bundleItem" file="bundles/maritimeMAROB.xml"
|
||||||
menuText="MAROB" id="MAROB"
|
menuText="MAROB" id="MAROB"
|
||||||
productInterval="3600" productOffset="1800">
|
productInterval="3600" productOffset="1800" />
|
||||||
<dataURI>/sfcobs/%/1007/%</dataURI>
|
|
||||||
</contribute>
|
|
||||||
<contribute xsi:type="subMenu" menuText="Other Maritime Plots">
|
<contribute xsi:type="subMenu" menuText="Other Maritime Plots">
|
||||||
<contribute xsi:type="bundleItem" file="bundles/SeaStatePlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/SeaStatePlot.xml"
|
||||||
menuText="Fixed Sea State" id="FixedSeaState"
|
menuText="Fixed Sea State" id="FixedSeaState"
|
||||||
productInterval="3600" productOffset="1800">
|
productInterval="3600" productOffset="1800">
|
||||||
<dataURI>/sfcobs/%</dataURI>
|
|
||||||
<substitute key="svg" value="seaStateDesign.svg"/>
|
<substitute key="svg" value="seaStateDesign.svg"/>
|
||||||
<substitute key="legend" value="Fixed Buoys Sea State"/>
|
<substitute key="legend" value="Fixed Buoys Sea State"/>
|
||||||
<substitute key="reportType" value="1004,1005"/>
|
<substitute key="reportType" value="1004,1005"/>
|
||||||
|
@ -46,7 +39,6 @@
|
||||||
<contribute xsi:type="bundleItem" file="bundles/SeaStatePlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/SeaStatePlot.xml"
|
||||||
menuText="Moving Sea State" id="MovingSeaState"
|
menuText="Moving Sea State" id="MovingSeaState"
|
||||||
productInterval="3600" productOffset="1800">
|
productInterval="3600" productOffset="1800">
|
||||||
<dataURI>/sfcobs/%</dataURI>
|
|
||||||
<substitute key="svg" value="seaStateDesign.svg"/>
|
<substitute key="svg" value="seaStateDesign.svg"/>
|
||||||
<substitute key="legend" value="Moving Buoys/Ships Sea State"/>
|
<substitute key="legend" value="Moving Buoys/Ships Sea State"/>
|
||||||
<substitute key="reportType" value="1003,1006"/>
|
<substitute key="reportType" value="1003,1006"/>
|
||||||
|
@ -54,7 +46,6 @@
|
||||||
<contribute xsi:type="bundleItem" file="bundles/SeaStatePlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/SeaStatePlot.xml"
|
||||||
menuText="MAROB Sea State" id="MAROBSeaState"
|
menuText="MAROB Sea State" id="MAROBSeaState"
|
||||||
productInterval="3600" productOffset="1800">
|
productInterval="3600" productOffset="1800">
|
||||||
<dataURI>/sfcobs/%/1007/%</dataURI>
|
|
||||||
<substitute key="svg" value="seaStateDesign.svg"/>
|
<substitute key="svg" value="seaStateDesign.svg"/>
|
||||||
<substitute key="legend" value="MAROB Sea State"/>
|
<substitute key="legend" value="MAROB Sea State"/>
|
||||||
<substitute key="reportType" value="1007"/>
|
<substitute key="reportType" value="1007"/>
|
||||||
|
@ -62,7 +53,6 @@
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MaritimePlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MaritimePlot.xml"
|
||||||
menuText="Maritime Clouds/Vis" id="MaritimeCloudVis"
|
menuText="Maritime Clouds/Vis" id="MaritimeCloudVis"
|
||||||
productInterval="3600" productOffset="1800">
|
productInterval="3600" productOffset="1800">
|
||||||
<dataURI>/sfcobs/%/1003/%</dataURI>
|
|
||||||
<substitute key="svg" value="maritimeCvDesign.svg"/>
|
<substitute key="svg" value="maritimeCvDesign.svg"/>
|
||||||
<substitute key="legend" value="Maritime Clouds and Visibility"/>
|
<substitute key="legend" value="Maritime Clouds and Visibility"/>
|
||||||
<substitute key="reportType" value="1003"/>
|
<substitute key="reportType" value="1003"/>
|
||||||
|
@ -70,7 +60,6 @@
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MaritimePlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MaritimePlot.xml"
|
||||||
menuText="MAROB Clouds/Vis" id="MarobCloudsVis"
|
menuText="MAROB Clouds/Vis" id="MarobCloudsVis"
|
||||||
productInterval="3600" productOffset="1800">
|
productInterval="3600" productOffset="1800">
|
||||||
<dataURI>/sfcobs/%/1007/%</dataURI>
|
|
||||||
<substitute key="svg" value="maritimeCvDesign.svg"/>
|
<substitute key="svg" value="maritimeCvDesign.svg"/>
|
||||||
<substitute key="legend" value="MAROB Clouds and Visibility"/>
|
<substitute key="legend" value="MAROB Clouds and Visibility"/>
|
||||||
<substitute key="reportType" value="1007"/>
|
<substitute key="reportType" value="1007"/>
|
||||||
|
@ -91,7 +80,6 @@
|
||||||
<contribute xsi:type="bundleItem" file="bundles/Scatterometer.xml"
|
<contribute xsi:type="bundleItem" file="bundles/Scatterometer.xml"
|
||||||
menuText="ASCAT Winds 25 km" id="ASCATWinds"
|
menuText="ASCAT Winds 25 km" id="ASCATWinds"
|
||||||
productInterval="3600" productOffset="1800">
|
productInterval="3600" productOffset="1800">
|
||||||
<dataURI>/bufrascat/%</dataURI>
|
|
||||||
<substitute key="legend" value="ASCAT"/>
|
<substitute key="legend" value="ASCAT"/>
|
||||||
<substitute key="svg" value="ascatPlotDesign.svg"/>
|
<substitute key="svg" value="ascatPlotDesign.svg"/>
|
||||||
<substitute key="plugin" value="bufrascat"/>
|
<substitute key="plugin" value="bufrascat"/>
|
||||||
|
|
|
@ -25,12 +25,9 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="subMenu" menuText="Other Plots">
|
<contribute xsi:type="subMenu" menuText="Other Plots">
|
||||||
<contribute xsi:type="bundleItem" file="bundles/15minSurfacePlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/15minSurfacePlot.xml"
|
||||||
menuText="15 min Plot" id="15MinSurfacePlot">
|
menuText="15 min Plot" id="15MinSurfacePlot" />
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
</contribute>
|
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MetarPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MetarPlot.xml"
|
||||||
menuText="24Hr Chg" id="24HrChg">
|
menuText="24Hr Chg" id="24HrChg">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svg" value="metar24ChgDesign.svg"/>
|
<substitute key="svg" value="metar24ChgDesign.svg"/>
|
||||||
<substitute key="legend" value="METAR 24H Change"/>
|
<substitute key="legend" value="METAR 24H Change"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -38,7 +35,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MetarPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MetarPlot.xml"
|
||||||
menuText="Ceil/Vis Plot (AGL)" id="CeilVisPlotAGL">
|
menuText="Ceil/Vis Plot (AGL)" id="CeilVisPlotAGL">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svg" value="metarCvDesign.svg"/>
|
<substitute key="svg" value="metarCvDesign.svg"/>
|
||||||
<substitute key="legend" value="Ceiling (agl) and Visibility"/>
|
<substitute key="legend" value="Ceiling (agl) and Visibility"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -46,7 +42,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MetarPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MetarPlot.xml"
|
||||||
menuText="Ceil/Vis Plot (MSL)" id="CeilVisPlotMSL">
|
menuText="Ceil/Vis Plot (MSL)" id="CeilVisPlotMSL">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svg" value="metarCvMslDesign.svg"/>
|
<substitute key="svg" value="metarCvMslDesign.svg"/>
|
||||||
<substitute key="legend" value="Ceiling (msl) and Visibility"/>
|
<substitute key="legend" value="Ceiling (msl) and Visibility"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -54,7 +49,6 @@
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MetarPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MetarPlot.xml"
|
||||||
menuText="Wind Ch/HeatIdx" id="WindChHeatIdx">
|
menuText="Wind Ch/HeatIdx" id="WindChHeatIdx">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="svg" value="metarHiWcDesign.svg"/>
|
<substitute key="svg" value="metarHiWcDesign.svg"/>
|
||||||
<substitute key="legend" value="Wind Chill/Heat Index plot"/>
|
<substitute key="legend" value="Wind Chill/Heat Index plot"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
|
@ -67,28 +61,24 @@
|
||||||
|
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MetarPrecipPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MetarPrecipPlot.xml"
|
||||||
menuText="24hr Precip" id="24HrPrecip">
|
menuText="24hr Precip" id="24HrPrecip">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="duration" value="24"/>
|
<substitute key="duration" value="24"/>
|
||||||
<substitute key="posOffset" value="21600"/>
|
<substitute key="posOffset" value="21600"/>
|
||||||
<substitute key="negOffset" value="0"/>
|
<substitute key="negOffset" value="0"/>
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MetarPrecipPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MetarPrecipPlot.xml"
|
||||||
menuText="6hr Precip" id="6HrPrecip">
|
menuText="6hr Precip" id="6HrPrecip">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="duration" value="6"/>
|
<substitute key="duration" value="6"/>
|
||||||
<substitute key="posOffset" value="10800"/>
|
<substitute key="posOffset" value="10800"/>
|
||||||
<substitute key="negOffset" value="10800"/>
|
<substitute key="negOffset" value="10800"/>
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MetarPrecipPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MetarPrecipPlot.xml"
|
||||||
menuText="3hr Precip" id="3HrPrecip">
|
menuText="3hr Precip" id="3HrPrecip">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="duration" value="3"/>
|
<substitute key="duration" value="3"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
<substitute key="negOffset" value="9000"/>
|
<substitute key="negOffset" value="9000"/>
|
||||||
</contribute>
|
</contribute>
|
||||||
<contribute xsi:type="bundleItem" file="bundles/MetarPrecipPlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/MetarPrecipPlot.xml"
|
||||||
menuText="1hr Precip" id="1HrPrecip">
|
menuText="1hr Precip" id="1HrPrecip">
|
||||||
<dataURI>/obs/%</dataURI>
|
|
||||||
<substitute key="duration" value="1"/>
|
<substitute key="duration" value="1"/>
|
||||||
<substitute key="posOffset" value="1800"/>
|
<substitute key="posOffset" value="1800"/>
|
||||||
<substitute key="negOffset" value="1800"/>
|
<substitute key="negOffset" value="1800"/>
|
||||||
|
|
|
@ -30,7 +30,6 @@
|
||||||
<contribute xsi:type="bundleItem" file="bundles/SynSurfacePlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/SynSurfacePlot.xml"
|
||||||
menuText="6 hr Precip" id="synoptic6hrPrecip"
|
menuText="6 hr Precip" id="synoptic6hrPrecip"
|
||||||
productInterval="3600" productOffset="1800">
|
productInterval="3600" productOffset="1800">
|
||||||
<dataURI>/sfcobs/%/1001/%</dataURI>
|
|
||||||
<substitute key="svg" value="synopticPrcp6Design.svg"/>
|
<substitute key="svg" value="synopticPrcp6Design.svg"/>
|
||||||
<substitute key="legend" value="Synoptic 6hr Precip Plot"/>
|
<substitute key="legend" value="Synoptic 6hr Precip Plot"/>
|
||||||
<substitute key="posOffset" value="0"/>
|
<substitute key="posOffset" value="0"/>
|
||||||
|
@ -39,7 +38,6 @@
|
||||||
<contribute xsi:type="bundleItem" file="bundles/SynSurfacePlot.xml"
|
<contribute xsi:type="bundleItem" file="bundles/SynSurfacePlot.xml"
|
||||||
menuText="24 hr Precip" id="synoptic24hrPrecip"
|
menuText="24 hr Precip" id="synoptic24hrPrecip"
|
||||||
productInterval="3600" productOffset="1800">
|
productInterval="3600" productOffset="1800">
|
||||||
<dataURI>/sfcobs/%/1001/%</dataURI>
|
|
||||||
<substitute key="svg" value="synopticPrcp24Design.svg"/>
|
<substitute key="svg" value="synopticPrcp24Design.svg"/>
|
||||||
<substitute key="legend" value="Synoptic 24hr Precip Plot"/>
|
<substitute key="legend" value="Synoptic 24hr Precip Plot"/>
|
||||||
<substitute key="posOffset" value="0"/>
|
<substitute key="posOffset" value="0"/>
|
||||||
|
|
|
@ -7,7 +7,7 @@ Bundle-Activator: com.raytheon.uf.viz.alertviz.Activator
|
||||||
Bundle-Vendor: Raytheon
|
Bundle-Vendor: Raytheon
|
||||||
Require-Bundle: org.eclipse.ui,
|
Require-Bundle: org.eclipse.ui,
|
||||||
org.eclipse.core.runtime,
|
org.eclipse.core.runtime,
|
||||||
org.apache.activemq;visibility:=reexport,
|
org.apache.activemq,
|
||||||
com.raytheon.uf.common.localization;visibility:=reexport,
|
com.raytheon.uf.common.localization;visibility:=reexport,
|
||||||
com.raytheon.uf.common.serialization;visibility:=reexport,
|
com.raytheon.uf.common.serialization;visibility:=reexport,
|
||||||
com.raytheon.uf.viz.core;visibility:=reexport,
|
com.raytheon.uf.viz.core;visibility:=reexport,
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
</layout>
|
</layout>
|
||||||
</appender>
|
</appender>
|
||||||
|
|
||||||
<appender name="AlertVizAdminLogAppender" class="com.raytheon.uf.viz.alertviz.EnvConfigurableRollingFileAppender">
|
<appender name="AlertVizAdminLogAppender" class="com.raytheon.uf.viz.core.log.EnvConfigurableRollingFileAppender">
|
||||||
<param name="envLogVar" value="LOGFILE_ALERTVIZ" />
|
<param name="envLogVar" value="LOGFILE_ALERTVIZ" />
|
||||||
<param name="maxFileSize" value="2GB"/>
|
<param name="maxFileSize" value="2GB"/>
|
||||||
<param name="maxBackupIndex" value="5"/>
|
<param name="maxBackupIndex" value="5"/>
|
||||||
|
|
|
@ -58,7 +58,6 @@ import com.raytheon.uf.viz.alertviz.internal.LogMessageDAO;
|
||||||
* Date Ticket# Engineer Description
|
* Date Ticket# Engineer Description
|
||||||
* ------------ ---------- ----------- --------------------------
|
* ------------ ---------- ----------- --------------------------
|
||||||
* Sep 4, 2008 1433 chammack Initial creation
|
* Sep 4, 2008 1433 chammack Initial creation
|
||||||
* Jun 3, 2013 2026 randerso Improve error handling
|
|
||||||
* </pre>
|
* </pre>
|
||||||
*
|
*
|
||||||
* @author chammack
|
* @author chammack
|
||||||
|
@ -209,12 +208,10 @@ public class AlertvizJob extends Job {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
String xmlString = null;
|
|
||||||
StatusMessage statusMessage = null;
|
|
||||||
try {
|
try {
|
||||||
xmlString = tm.getText();
|
|
||||||
StringReader sr = new StringReader(xmlString);
|
StringReader sr = new StringReader(tm.getText());
|
||||||
statusMessage = (StatusMessage) umsh
|
StatusMessage statusMessage = (StatusMessage) umsh
|
||||||
.unmarshal(sr);
|
.unmarshal(sr);
|
||||||
if (statusMessage.getEventTime() == null) {
|
if (statusMessage.getEventTime() == null) {
|
||||||
statusMessage.setEventTime(SimulatedTime
|
statusMessage.setEventTime(SimulatedTime
|
||||||
|
@ -223,25 +220,34 @@ public class AlertvizJob extends Job {
|
||||||
|
|
||||||
displayAlert(statusMessage);
|
displayAlert(statusMessage);
|
||||||
|
|
||||||
} catch (JMSException e) {
|
|
||||||
String message = "Unable to retrieve JMS message text";
|
|
||||||
handleInteralError(message, e);
|
|
||||||
} catch (JAXBException e) {
|
|
||||||
String message = "Unable to unmarshal XML:\n"
|
|
||||||
+ xmlString;
|
|
||||||
handleInteralError(message, e);
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
String message = "Unexpected exception";
|
// Log to internal Log4j log
|
||||||
if (xmlString == null) {
|
Container
|
||||||
message += ": ";
|
.logInternal(
|
||||||
} else if (statusMessage == null) {
|
Priority.ERROR,
|
||||||
message += " while processing:\n"
|
"AlertVizJob: exception when retrieving text message text or "
|
||||||
+ xmlString;
|
+ "creating text message unmarshaller.",
|
||||||
} else {
|
e);
|
||||||
message += " while processing:\n"
|
StatusMessage sm = new StatusMessage();
|
||||||
+ statusMessage;
|
sm.setPriority(Priority.CRITICAL);
|
||||||
|
sm.setMachineToCurrent();
|
||||||
|
sm.setCategory("GDN_ADMIN");
|
||||||
|
sm.setSourceKey("GDN_ADMIN");
|
||||||
|
sm.setMessage(e.getMessage());
|
||||||
|
sm.setEventTime(SimulatedTime.getSystemTime()
|
||||||
|
.getTime());
|
||||||
|
try {
|
||||||
|
LogMessageDAO.getInstance().save(sm);
|
||||||
|
} catch (AlertvizException e1) {
|
||||||
|
// Nothing but we can do but print
|
||||||
|
// stacktrace
|
||||||
|
// Log to internal Log4j log
|
||||||
|
Container
|
||||||
|
.logInternal(
|
||||||
|
Priority.ERROR,
|
||||||
|
"AlertVizJob unalbe to save to internal database.",
|
||||||
|
e);
|
||||||
}
|
}
|
||||||
handleInteralError(message, e);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -260,25 +266,6 @@ public class AlertvizJob extends Job {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void handleInteralError(String message, Throwable e) {
|
|
||||||
|
|
||||||
// Log to internal Log4j log
|
|
||||||
Container.logInternal(Priority.CRITICAL, message, e);
|
|
||||||
StatusMessage sm = new StatusMessage("GDN_ADMIN", "GDN_ADMIN",
|
|
||||||
Priority.CRITICAL, this.getClass().getPackage().getName(),
|
|
||||||
message, e);
|
|
||||||
sm.setMachineToCurrent();
|
|
||||||
sm.setEventTime(SimulatedTime.getSystemTime().getTime());
|
|
||||||
try {
|
|
||||||
LogMessageDAO.getInstance().save(sm);
|
|
||||||
} catch (AlertvizException e1) {
|
|
||||||
// Nothing but we can do but print stacktrace
|
|
||||||
// Log to internal Log4j log
|
|
||||||
Container.logInternal(Priority.ERROR,
|
|
||||||
"AlertVizJob unalbe to save to internal database.", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* (non-Javadoc)
|
* (non-Javadoc)
|
||||||
*
|
*
|
||||||
|
|
|
@ -36,8 +36,8 @@ import com.raytheon.uf.viz.alertviz.config.Category;
|
||||||
import com.raytheon.uf.viz.alertviz.config.Configuration;
|
import com.raytheon.uf.viz.alertviz.config.Configuration;
|
||||||
import com.raytheon.uf.viz.alertviz.config.ForcedConfiguration;
|
import com.raytheon.uf.viz.alertviz.config.ForcedConfiguration;
|
||||||
import com.raytheon.uf.viz.alertviz.config.Source;
|
import com.raytheon.uf.viz.alertviz.config.Source;
|
||||||
import com.raytheon.uf.viz.alertviz.internal.LogMessageDAO;
|
|
||||||
import com.raytheon.uf.viz.alertviz.internal.PurgeLogJob;
|
import com.raytheon.uf.viz.alertviz.internal.PurgeLogJob;
|
||||||
|
import com.raytheon.uf.viz.alertviz.internal.LogMessageDAO;
|
||||||
import com.raytheon.uf.viz.core.VizApp;
|
import com.raytheon.uf.viz.core.VizApp;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -51,7 +51,6 @@ import com.raytheon.uf.viz.core.VizApp;
|
||||||
* ------------ ---------- ----------- --------------------------
|
* ------------ ---------- ----------- --------------------------
|
||||||
* Sep 8, 2008 1433 chammack Initial creation
|
* Sep 8, 2008 1433 chammack Initial creation
|
||||||
* Oct 18, 2010 5849 cjeanbap NullPointerExceptin thrown if category is null
|
* Oct 18, 2010 5849 cjeanbap NullPointerExceptin thrown if category is null
|
||||||
* Jun 03, 2013 2026 randerso Fixed typo
|
|
||||||
* </pre>
|
* </pre>
|
||||||
*
|
*
|
||||||
* @author chammack
|
* @author chammack
|
||||||
|
@ -121,7 +120,7 @@ public class Container implements IConfigurationChangedListener {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((source == null) || (source.getConfigurationItem() == null)) {
|
if (source == null || source.getConfigurationItem() == null) {
|
||||||
message.setSourceKey("GDN_ADMIN");
|
message.setSourceKey("GDN_ADMIN");
|
||||||
message.setCategory("GDN_ADMIN");
|
message.setCategory("GDN_ADMIN");
|
||||||
message.setMessage(message.getMessage() + " (" + SOURCE_MISSING
|
message.setMessage(message.getMessage() + " (" + SOURCE_MISSING
|
||||||
|
@ -149,9 +148,8 @@ public class Container implements IConfigurationChangedListener {
|
||||||
AlertMetadata amd = source.getConfigurationItem().lookup(
|
AlertMetadata amd = source.getConfigurationItem().lookup(
|
||||||
message.getPriority());
|
message.getPriority());
|
||||||
|
|
||||||
if (forcedConfiguration != null) {
|
if (forcedConfiguration != null)
|
||||||
amd = forcedConfiguration.applyForcedSettings(amd, message);
|
amd = forcedConfiguration.applyForcedSettings(amd, message);
|
||||||
}
|
|
||||||
|
|
||||||
final AlertMetadata metadata = amd;
|
final AlertMetadata metadata = amd;
|
||||||
|
|
||||||
|
@ -175,7 +173,7 @@ public class Container implements IConfigurationChangedListener {
|
||||||
sm.setPriority(priority);
|
sm.setPriority(priority);
|
||||||
sm.setMachineToCurrent();
|
sm.setMachineToCurrent();
|
||||||
sm.setSourceKey("GDN_ADMIN");
|
sm.setSourceKey("GDN_ADMIN");
|
||||||
sm.setCategory("GDN_ADMIN");
|
sm.setCategory("GDN)ADMIN");
|
||||||
sm.setMessage(msg);
|
sm.setMessage(msg);
|
||||||
sm.setEventTime(SimulatedTime.getSystemTime().getTime());
|
sm.setEventTime(SimulatedTime.getSystemTime().getTime());
|
||||||
addToLog(sm);
|
addToLog(sm);
|
||||||
|
@ -194,7 +192,7 @@ public class Container implements IConfigurationChangedListener {
|
||||||
.getEventTime().getTime() : this.shotgunMessageStartTime;
|
.getEventTime().getTime() : this.shotgunMessageStartTime;
|
||||||
|
|
||||||
if (this.lastMessage.getCategory().equals(message.getCategory())
|
if (this.lastMessage.getCategory().equals(message.getCategory())
|
||||||
&& (this.lastMessage.getPriority() == message.getPriority())
|
&& this.lastMessage.getPriority() == message.getPriority()
|
||||||
&& this.lastMessage.getMessage().equals(
|
&& this.lastMessage.getMessage().equals(
|
||||||
message.getMessage())
|
message.getMessage())
|
||||||
&& (Math.abs(message.getEventTime().getTime()
|
&& (Math.abs(message.getEventTime().getTime()
|
||||||
|
@ -252,12 +250,12 @@ public class Container implements IConfigurationChangedListener {
|
||||||
boolean printError = true;
|
boolean printError = true;
|
||||||
if (errorMsg != null) {
|
if (errorMsg != null) {
|
||||||
if (errorMsg.equals(lastErrorDialogMessage)) {
|
if (errorMsg.equals(lastErrorDialogMessage)) {
|
||||||
if ((System.currentTimeMillis() - lastErrorDialogTime) < 60000) {
|
if (System.currentTimeMillis() - lastErrorDialogTime < 60000) {
|
||||||
printError = false;
|
printError = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (lastErrorDialogMessage == null) {
|
} else if (lastErrorDialogMessage == null) {
|
||||||
if ((System.currentTimeMillis() - lastErrorDialogTime) < 60000) {
|
if (System.currentTimeMillis() - lastErrorDialogTime < 60000) {
|
||||||
printError = false;
|
printError = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -303,7 +301,7 @@ public class Container implements IConfigurationChangedListener {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean hasMissing(StatusMessage statMsg) {
|
public static boolean hasMissing(StatusMessage statMsg) {
|
||||||
return (statMsg.getMessage() != null)
|
return statMsg.getMessage() != null
|
||||||
&& (statMsg.getMessage().contains(CATEGORY_MISSING) || statMsg
|
&& (statMsg.getMessage().contains(CATEGORY_MISSING) || statMsg
|
||||||
.getMessage().contains(SOURCE_MISSING));
|
.getMessage().contains(SOURCE_MISSING));
|
||||||
}
|
}
|
||||||
|
@ -321,9 +319,8 @@ public class Container implements IConfigurationChangedListener {
|
||||||
String cat = message.getCategory();
|
String cat = message.getCategory();
|
||||||
String source = message.getSourceKey();
|
String source = message.getSourceKey();
|
||||||
|
|
||||||
boolean isInternal = ((cat != null) && cat
|
boolean isInternal = (cat != null && cat.equalsIgnoreCase("GDN_ADMIN"))
|
||||||
.equalsIgnoreCase("GDN_ADMIN"))
|
|| (source != null && source.equalsIgnoreCase("GDN_ADMIN"));
|
||||||
|| ((source != null) && source.equalsIgnoreCase("GDN_ADMIN"));
|
|
||||||
if (isInternal) {
|
if (isInternal) {
|
||||||
switch (message.getPriority()) {
|
switch (message.getPriority()) {
|
||||||
case CRITICAL:
|
case CRITICAL:
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<projectDescription>
|
<projectDescription>
|
||||||
<name>com.raytheon.uf.viz.eclipse.feature</name>
|
<name>com.raytheon.uf.viz.archive.feature</name>
|
||||||
<comment></comment>
|
<comment></comment>
|
||||||
<projects>
|
<projects>
|
||||||
</projects>
|
</projects>
|
39
cave/com.raytheon.uf.viz.archive.feature/feature.xml
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<feature
|
||||||
|
id="com.raytheon.uf.viz.archive.feature"
|
||||||
|
label="Feature"
|
||||||
|
version="1.0.0.qualifier"
|
||||||
|
provider-name="RAYTHEON">
|
||||||
|
|
||||||
|
<description url="http://www.example.com/description">
|
||||||
|
[Enter Feature Description here.]
|
||||||
|
</description>
|
||||||
|
|
||||||
|
<copyright url="http://www.example.com/copyright">
|
||||||
|
[Enter Copyright Description here.]
|
||||||
|
</copyright>
|
||||||
|
|
||||||
|
<license url="http://www.example.com/license">
|
||||||
|
[Enter License Description here.]
|
||||||
|
</license>
|
||||||
|
|
||||||
|
<requires>
|
||||||
|
<import plugin="org.eclipse.ui" version="3.8.2" match="greaterOrEqual"/>
|
||||||
|
<import plugin="org.eclipse.core.runtime"/>
|
||||||
|
<import plugin="com.raytheon.viz.ui" version="1.12.1174" match="greaterOrEqual"/>
|
||||||
|
<import plugin="com.raytheon.uf.common.serialization" version="1.12.1174" match="greaterOrEqual"/>
|
||||||
|
<import plugin="com.raytheon.uf.common.localization" version="1.12.1174" match="greaterOrEqual"/>
|
||||||
|
<import plugin="com.raytheon.uf.common.archive" version="1.0.0" match="greaterOrEqual"/>
|
||||||
|
<import plugin="com.raytheon.uf.common.time" version="1.12.1174" match="greaterOrEqual"/>
|
||||||
|
<import plugin="com.raytheon.uf.common.util" version="1.12.1174" match="greaterOrEqual"/>
|
||||||
|
<import plugin="org.apache.commons.io"/>
|
||||||
|
</requires>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="com.raytheon.uf.viz.archive"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
</feature>
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<projectDescription>
|
<projectDescription>
|
||||||
<name>com.raytheon.uf.edex.ebxml</name>
|
<name>com.raytheon.uf.viz.archive</name>
|
||||||
<comment></comment>
|
<comment></comment>
|
||||||
<projects>
|
<projects>
|
||||||
</projects>
|
</projects>
|
|
@ -1,4 +1,4 @@
|
||||||
#Mon Jun 25 15:43:02 CDT 2012
|
#Wed May 01 15:01:03 CDT 2013
|
||||||
eclipse.preferences.version=1
|
eclipse.preferences.version=1
|
||||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
|
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
|
17
cave/com.raytheon.uf.viz.archive/META-INF/MANIFEST.MF
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
Manifest-Version: 1.0
|
||||||
|
Bundle-ManifestVersion: 2
|
||||||
|
Bundle-Name: Archive
|
||||||
|
Bundle-SymbolicName: com.raytheon.uf.viz.archive;singleton:=true
|
||||||
|
Bundle-Version: 1.0.0.qualifier
|
||||||
|
Bundle-Activator: com.raytheon.uf.viz.archive.Activator
|
||||||
|
Bundle-Vendor: RAYTHEON
|
||||||
|
Require-Bundle: org.eclipse.ui;bundle-version="3.8.2",
|
||||||
|
org.eclipse.core.runtime,
|
||||||
|
com.raytheon.viz.ui;bundle-version="1.12.1174",
|
||||||
|
com.raytheon.uf.common.serialization;bundle-version="1.12.1174",
|
||||||
|
com.raytheon.uf.common.localization;bundle-version="1.12.1174",
|
||||||
|
com.raytheon.uf.common.archive;bundle-version="1.0.0",
|
||||||
|
com.raytheon.uf.common.time;bundle-version="1.12.1174",
|
||||||
|
com.raytheon.uf.common.util;bundle-version="1.12.1174"
|
||||||
|
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
||||||
|
Bundle-ActivationPolicy: lazy
|
88
cave/com.raytheon.uf.viz.archive/plugin.xml
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
|
||||||
|
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
|
||||||
|
|
||||||
|
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
|
||||||
|
This_software_product_contains_export-restricted_data_whose
|
||||||
|
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
|
||||||
|
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
|
||||||
|
an_export_license_or_other_authorization.
|
||||||
|
|
||||||
|
Contractor_Name:________Raytheon_Company
|
||||||
|
Contractor_Address:_____6825_Pine_Street,_Suite_340
|
||||||
|
________________________Mail_Stop_B8
|
||||||
|
________________________Omaha,_NE_68106
|
||||||
|
________________________402.291.0100
|
||||||
|
|
||||||
|
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
|
||||||
|
further_licensing_information.
|
||||||
|
-->
|
||||||
|
<?eclipse version="3.2"?>
|
||||||
|
<plugin>
|
||||||
|
<extension
|
||||||
|
point="com.raytheon.uf.viz.localization.localizationpath">
|
||||||
|
<path
|
||||||
|
application="Archive"
|
||||||
|
localizationType="COMMON_STATIC"
|
||||||
|
name="Archive"
|
||||||
|
value="archive"
|
||||||
|
recursive="false"
|
||||||
|
extensionFilter=".xml">
|
||||||
|
</path>
|
||||||
|
</extension>
|
||||||
|
<extension
|
||||||
|
point="org.eclipse.ui.menus">
|
||||||
|
<menuContribution
|
||||||
|
allPopups="false"
|
||||||
|
locationURI="menu:CAVE?after=group1">
|
||||||
|
<command
|
||||||
|
commandId="com.raytheon.uf.viz.archive.retentionui"
|
||||||
|
id="archivetest"
|
||||||
|
label="Archive Retention..."
|
||||||
|
style="push">
|
||||||
|
</command>
|
||||||
|
</menuContribution>
|
||||||
|
</extension>
|
||||||
|
<extension
|
||||||
|
point="org.eclipse.ui.menus">
|
||||||
|
<menuContribution
|
||||||
|
allPopups="false"
|
||||||
|
locationURI="menu:CAVE?after=group1">
|
||||||
|
<command
|
||||||
|
commandId="com.raytheon.uf.viz.archive.casecreationui"
|
||||||
|
id="archivetest"
|
||||||
|
label="Archive Case Creation..."
|
||||||
|
style="push">
|
||||||
|
</command>
|
||||||
|
</menuContribution>
|
||||||
|
</extension>
|
||||||
|
<extension
|
||||||
|
point="org.eclipse.ui.commands">
|
||||||
|
<command
|
||||||
|
id="com.raytheon.uf.viz.archive.casecreationui"
|
||||||
|
name="casecreation">
|
||||||
|
</command>
|
||||||
|
</extension>
|
||||||
|
<extension
|
||||||
|
point="org.eclipse.ui.commands">
|
||||||
|
<command
|
||||||
|
id="com.raytheon.uf.viz.archive.retentionui"
|
||||||
|
name="archiveretention">
|
||||||
|
</command>
|
||||||
|
</extension>
|
||||||
|
<extension
|
||||||
|
point="org.eclipse.ui.handlers">
|
||||||
|
<handler
|
||||||
|
class="com.raytheon.uf.viz.archive.ArchiveCaseCreationDialogAction"
|
||||||
|
commandId="com.raytheon.uf.viz.archive.casecreationui">
|
||||||
|
</handler>
|
||||||
|
</extension>
|
||||||
|
<extension
|
||||||
|
point="org.eclipse.ui.handlers">
|
||||||
|
<handler
|
||||||
|
class="com.raytheon.uf.viz.archive.ArchiveRetentionDialogAction"
|
||||||
|
commandId="com.raytheon.uf.viz.archive.retentionui">
|
||||||
|
</handler>
|
||||||
|
</extension>
|
||||||
|
</plugin>
|
|
@ -0,0 +1,108 @@
|
||||||
|
/**
|
||||||
|
* This software was developed and / or modified by Raytheon Company,
|
||||||
|
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||||
|
*
|
||||||
|
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||||
|
* This software product contains export-restricted data whose
|
||||||
|
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||||
|
* to non-U.S. persons whether in the United States or abroad requires
|
||||||
|
* an export license or other authorization.
|
||||||
|
*
|
||||||
|
* Contractor Name: Raytheon Company
|
||||||
|
* Contractor Address: 6825 Pine Street, Suite 340
|
||||||
|
* Mail Stop B8
|
||||||
|
* Omaha, NE 68106
|
||||||
|
* 402.291.0100
|
||||||
|
*
|
||||||
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
|
* further licensing information.
|
||||||
|
**/
|
||||||
|
package com.raytheon.uf.viz;
|
||||||
|
|
||||||
|
import com.raytheon.uf.common.time.util.TimeUtil;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Convenience class for taking retention hours and converting to days/hours.
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
*
|
||||||
|
* SOFTWARE HISTORY
|
||||||
|
*
|
||||||
|
* Date Ticket# Engineer Description
|
||||||
|
* ------------ ---------- ----------- --------------------------
|
||||||
|
* May 2, 2013 1966 rferrel Initial creation
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @author rferrel
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class RetentionHours {
|
||||||
|
|
||||||
|
private int retentionHours;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor with default 7 day retention.
|
||||||
|
*/
|
||||||
|
public RetentionHours() {
|
||||||
|
this(7 * TimeUtil.HOURS_PER_DAY);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor specify retention hours.
|
||||||
|
*
|
||||||
|
* @param retentionHours
|
||||||
|
*/
|
||||||
|
public RetentionHours(int retentionHours) {
|
||||||
|
this.retentionHours = retentionHours;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set retention to this number of days.
|
||||||
|
*
|
||||||
|
* @param days
|
||||||
|
*/
|
||||||
|
public void setDays(int days) {
|
||||||
|
retentionHours = days * TimeUtil.HOURS_PER_DAY;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Convert retention hours to days. Note values are truncated so a retention
|
||||||
|
* of 23 hours will return 0 days.
|
||||||
|
*
|
||||||
|
* @return days
|
||||||
|
*/
|
||||||
|
public int getDays() {
|
||||||
|
return retentionHours / TimeUtil.HOURS_PER_DAY;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get retention in hours.
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public int getHours() {
|
||||||
|
return retentionHours;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set number hours of retention.
|
||||||
|
*
|
||||||
|
* @param hours
|
||||||
|
*/
|
||||||
|
public void setHours(int hours) {
|
||||||
|
retentionHours = hours;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (non-Javadoc)
|
||||||
|
*
|
||||||
|
* @see java.lang.Object#toString()
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "RetentionHours [days:" + getDays() + ", hours:" + getHours()
|
||||||
|
+ "]";
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,70 @@
|
||||||
|
/**
|
||||||
|
* This software was developed and / or modified by Raytheon Company,
|
||||||
|
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||||
|
*
|
||||||
|
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||||
|
* This software product contains export-restricted data whose
|
||||||
|
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||||
|
* to non-U.S. persons whether in the United States or abroad requires
|
||||||
|
* an export license or other authorization.
|
||||||
|
*
|
||||||
|
* Contractor Name: Raytheon Company
|
||||||
|
* Contractor Address: 6825 Pine Street, Suite 340
|
||||||
|
* Mail Stop B8
|
||||||
|
* Omaha, NE 68106
|
||||||
|
* 402.291.0100
|
||||||
|
*
|
||||||
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
|
* further licensing information.
|
||||||
|
**/
|
||||||
|
package com.raytheon.uf.viz.archive;
|
||||||
|
|
||||||
|
import org.osgi.framework.BundleActivator;
|
||||||
|
import org.osgi.framework.BundleContext;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Activator class for Archive.
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
*
|
||||||
|
* SOFTWARE HISTORY
|
||||||
|
*
|
||||||
|
* Date Ticket# Engineer Description
|
||||||
|
* ------------ ---------- ----------- --------------------------
|
||||||
|
* May 13, 2013 1966 rferrel Initial creation
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @author rferrel
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
public class Activator implements BundleActivator {
|
||||||
|
|
||||||
|
private static BundleContext context;
|
||||||
|
|
||||||
|
static BundleContext getContext() {
|
||||||
|
return context;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (non-Javadoc)
|
||||||
|
*
|
||||||
|
* @see
|
||||||
|
* org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext
|
||||||
|
* )
|
||||||
|
*/
|
||||||
|
public void start(BundleContext bundleContext) throws Exception {
|
||||||
|
Activator.context = bundleContext;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (non-Javadoc)
|
||||||
|
*
|
||||||
|
* @see
|
||||||
|
* org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
|
||||||
|
*/
|
||||||
|
public void stop(BundleContext bundleContext) throws Exception {
|
||||||
|
Activator.context = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,51 @@
|
||||||
|
package com.raytheon.uf.viz.archive;
|
||||||
|
|
||||||
|
import org.eclipse.core.commands.AbstractHandler;
|
||||||
|
import org.eclipse.core.commands.ExecutionEvent;
|
||||||
|
import org.eclipse.core.commands.ExecutionException;
|
||||||
|
import org.eclipse.swt.widgets.Shell;
|
||||||
|
import org.eclipse.ui.PlatformUI;
|
||||||
|
|
||||||
|
import com.raytheon.uf.viz.archive.ui.CaseCreationDlg;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Action to bring up the Archive Case Creation dialog..
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
*
|
||||||
|
* SOFTWARE HISTORY
|
||||||
|
*
|
||||||
|
* Date Ticket# Engineer Description
|
||||||
|
* ------------ ---------- ----------- --------------------------
|
||||||
|
* May 16, 2013 1966 rferrel Initial creation
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @author rferrel
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
public class ArchiveCaseCreationDialogAction extends AbstractHandler {
|
||||||
|
private CaseCreationDlg dialog;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (non-Javadoc)
|
||||||
|
*
|
||||||
|
* @see
|
||||||
|
* org.eclipse.core.commands.AbstractHandler#execute(org.eclipse.core.commands
|
||||||
|
* .ExecutionEvent)
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Object execute(ExecutionEvent event) throws ExecutionException {
|
||||||
|
if (dialog == null || dialog.isDisposed()) {
|
||||||
|
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
|
||||||
|
.getShell();
|
||||||
|
dialog = new CaseCreationDlg(shell);
|
||||||
|
dialog.open();
|
||||||
|
} else {
|
||||||
|
dialog.bringToTop();
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,50 @@
|
||||||
|
package com.raytheon.uf.viz.archive;
|
||||||
|
|
||||||
|
import org.eclipse.core.commands.AbstractHandler;
|
||||||
|
import org.eclipse.core.commands.ExecutionEvent;
|
||||||
|
import org.eclipse.core.commands.ExecutionException;
|
||||||
|
import org.eclipse.swt.widgets.Shell;
|
||||||
|
import org.eclipse.ui.PlatformUI;
|
||||||
|
|
||||||
|
import com.raytheon.uf.viz.archive.ui.ArchiveRetentionDlg;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Action to display the Archive Retention dialog.
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
*
|
||||||
|
* SOFTWARE HISTORY
|
||||||
|
*
|
||||||
|
* Date Ticket# Engineer Description
|
||||||
|
* ------------ ---------- ----------- --------------------------
|
||||||
|
* May 16, 2013 1966 rferrel Initial creation
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @author rferrel
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
public class ArchiveRetentionDialogAction extends AbstractHandler {
|
||||||
|
private ArchiveRetentionDlg dialog;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (non-Javadoc)
|
||||||
|
*
|
||||||
|
* @see
|
||||||
|
* org.eclipse.core.commands.AbstractHandler#execute(org.eclipse.core.commands
|
||||||
|
* .ExecutionEvent)
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Object execute(ExecutionEvent event) throws ExecutionException {
|
||||||
|
if (dialog == null || dialog.isDisposed()) {
|
||||||
|
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
|
||||||
|
.getShell();
|
||||||
|
dialog = new ArchiveRetentionDlg(shell);
|
||||||
|
dialog.open();
|
||||||
|
} else {
|
||||||
|
dialog.bringToTop();
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,113 @@
|
||||||
|
/**
|
||||||
|
* This software was developed and / or modified by Raytheon Company,
|
||||||
|
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||||
|
*
|
||||||
|
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||||
|
* This software product contains export-restricted data whose
|
||||||
|
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||||
|
* to non-U.S. persons whether in the United States or abroad requires
|
||||||
|
* an export license or other authorization.
|
||||||
|
*
|
||||||
|
* Contractor Name: Raytheon Company
|
||||||
|
* Contractor Address: 6825 Pine Street, Suite 340
|
||||||
|
* Mail Stop B8
|
||||||
|
* Omaha, NE 68106
|
||||||
|
* 402.291.0100
|
||||||
|
*
|
||||||
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
|
* further licensing information.
|
||||||
|
**/
|
||||||
|
package com.raytheon.uf.viz.archive.data;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.eclipse.core.runtime.IProgressMonitor;
|
||||||
|
import org.eclipse.core.runtime.IStatus;
|
||||||
|
import org.eclipse.core.runtime.Status;
|
||||||
|
import org.eclipse.core.runtime.jobs.Job;
|
||||||
|
|
||||||
|
import com.raytheon.uf.common.util.FileUtil;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class uses a obtains information on a File in a Job in order to remove
|
||||||
|
* from the UI thread.
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
*
|
||||||
|
* SOFTWARE HISTORY
|
||||||
|
*
|
||||||
|
* Date Ticket# Engineer Description
|
||||||
|
* ------------ ---------- ----------- --------------------------
|
||||||
|
* May 15, 2013 1966 rferrel Initial creation
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @author rferrel
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class FileInfo {
|
||||||
|
private static final SizeJob sizeJob = new FileInfo.SizeJob();
|
||||||
|
|
||||||
|
private File file;
|
||||||
|
|
||||||
|
private long size = -1L;
|
||||||
|
|
||||||
|
public FileInfo(File file) {
|
||||||
|
this.file = file;
|
||||||
|
FileInfo.sizeJob.queue(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
public long getSize() {
|
||||||
|
return size;
|
||||||
|
}
|
||||||
|
|
||||||
|
static private class SizeJob extends Job {
|
||||||
|
private LinkedList<FileInfo> queueList = new LinkedList<FileInfo>();
|
||||||
|
|
||||||
|
List<IUpdateListener> listeners = new ArrayList<IUpdateListener>();
|
||||||
|
|
||||||
|
protected void queue(FileInfo fileInfo) {
|
||||||
|
synchronized (queueList) {
|
||||||
|
queueList.add(fileInfo);
|
||||||
|
if (getJobManager().currentJob() == null) {
|
||||||
|
schedule();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public SizeJob() {
|
||||||
|
super("Size Job");
|
||||||
|
setSystem(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected IStatus run(IProgressMonitor monitor) {
|
||||||
|
while (!queueList.isEmpty()) {
|
||||||
|
FileInfo[] list = null;
|
||||||
|
synchronized (queueList) {
|
||||||
|
list = queueList.toArray(new FileInfo[0]);
|
||||||
|
queueList.clear();
|
||||||
|
}
|
||||||
|
|
||||||
|
for (FileInfo fileInfo : list) {
|
||||||
|
File file = fileInfo.file;
|
||||||
|
if (file.isDirectory()) {
|
||||||
|
fileInfo.size = FileUtil.sizeOfDirectory(file);
|
||||||
|
} else {
|
||||||
|
fileInfo.size = file.length();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (IUpdateListener listener : listeners) {
|
||||||
|
listener.update(list);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return Status.OK_STATUS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -17,12 +17,10 @@
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
* further licensing information.
|
* further licensing information.
|
||||||
**/
|
**/
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui;
|
package com.raytheon.uf.viz.archive.data;
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.comm.provider.session.CollaborationConnection;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO Add Description
|
* A listener to update file/directory information.
|
||||||
*
|
*
|
||||||
* <pre>
|
* <pre>
|
||||||
*
|
*
|
||||||
|
@ -30,18 +28,19 @@ import com.raytheon.uf.viz.collaboration.comm.provider.session.CollaborationConn
|
||||||
*
|
*
|
||||||
* Date Ticket# Engineer Description
|
* Date Ticket# Engineer Description
|
||||||
* ------------ ---------- ----------- --------------------------
|
* ------------ ---------- ----------- --------------------------
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
* May 16, 2013 1966 rferrel Initial creation
|
||||||
*
|
*
|
||||||
* </pre>
|
* </pre>
|
||||||
*
|
*
|
||||||
* @author mschenke
|
* @author rferrel
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public interface ICollaborationUIManager {
|
public interface IUpdateListener {
|
||||||
|
/**
|
||||||
public CollaborationConnection getConnection();
|
* List of files/directories with updated information
|
||||||
|
*
|
||||||
public void logout();
|
* @param fileInfoArray
|
||||||
|
*/
|
||||||
|
public void update(FileInfo[] fileInfoArray);
|
||||||
}
|
}
|
|
@ -0,0 +1,349 @@
|
||||||
|
/**
|
||||||
|
* This software was developed and / or modified by Raytheon Company,
|
||||||
|
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||||
|
*
|
||||||
|
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||||
|
* This software product contains export-restricted data whose
|
||||||
|
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||||
|
* to non-U.S. persons whether in the United States or abroad requires
|
||||||
|
* an export license or other authorization.
|
||||||
|
*
|
||||||
|
* Contractor Name: Raytheon Company
|
||||||
|
* Contractor Address: 6825 Pine Street, Suite 340
|
||||||
|
* Mail Stop B8
|
||||||
|
* Omaha, NE 68106
|
||||||
|
* 402.291.0100
|
||||||
|
*
|
||||||
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
|
* further licensing information.
|
||||||
|
**/
|
||||||
|
package com.raytheon.uf.viz.archive.ui;
|
||||||
|
|
||||||
|
import org.eclipse.swt.SWT;
|
||||||
|
import org.eclipse.swt.events.SelectionAdapter;
|
||||||
|
import org.eclipse.swt.events.SelectionEvent;
|
||||||
|
import org.eclipse.swt.layout.GridData;
|
||||||
|
import org.eclipse.swt.layout.GridLayout;
|
||||||
|
import org.eclipse.swt.widgets.Button;
|
||||||
|
import org.eclipse.swt.widgets.Combo;
|
||||||
|
import org.eclipse.swt.widgets.Composite;
|
||||||
|
import org.eclipse.swt.widgets.Label;
|
||||||
|
import org.eclipse.swt.widgets.Layout;
|
||||||
|
import org.eclipse.swt.widgets.Shell;
|
||||||
|
import org.eclipse.swt.widgets.Spinner;
|
||||||
|
|
||||||
|
import com.raytheon.uf.viz.archive.ui.ArchiveTableComp.TableType;
|
||||||
|
import com.raytheon.viz.ui.dialogs.CaveSWTDialog;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Archive retention dialog.
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
*
|
||||||
|
* SOFTWARE HISTORY
|
||||||
|
*
|
||||||
|
* Date Ticket# Engineer Description
|
||||||
|
* ------------ ---------- ----------- --------------------------
|
||||||
|
* May 23, 2013 #1964 lvenable Initial creation
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @author lvenable
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
public class ArchiveRetentionDlg extends CaveSWTDialog {
|
||||||
|
|
||||||
|
/** Table composite that holds the table controls. */
|
||||||
|
private ArchiveTableComp tableComp;
|
||||||
|
|
||||||
|
/** Archive config combo box. */
|
||||||
|
private Combo archCfgCbo;
|
||||||
|
|
||||||
|
/** Category combo box. */
|
||||||
|
private Combo categoryCbo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor.
|
||||||
|
*
|
||||||
|
* @param parentShell
|
||||||
|
* Parent shell.
|
||||||
|
*/
|
||||||
|
public ArchiveRetentionDlg(Shell parentShell) {
|
||||||
|
super(parentShell, SWT.DIALOG_TRIM | SWT.MIN, CAVE.DO_NOT_BLOCK
|
||||||
|
| CAVE.MODE_INDEPENDENT | CAVE.INDEPENDENT_SHELL);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Layout constructShellLayout() {
|
||||||
|
// Create the main layout for the shell.
|
||||||
|
GridLayout mainLayout = new GridLayout(1, false);
|
||||||
|
mainLayout.marginHeight = 2;
|
||||||
|
mainLayout.marginWidth = 2;
|
||||||
|
|
||||||
|
return mainLayout;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void initializeComponents(Shell shell) {
|
||||||
|
setText("Archive Retention");
|
||||||
|
Composite mainComp = new Composite(shell, SWT.NONE);
|
||||||
|
GridLayout gl = new GridLayout(1, false);
|
||||||
|
gl.marginHeight = 0;
|
||||||
|
gl.marginWidth = 0;
|
||||||
|
gl.horizontalSpacing = 0;
|
||||||
|
mainComp.setLayout(gl);
|
||||||
|
|
||||||
|
init();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initialize method to create all of the composite & controls.
|
||||||
|
*/
|
||||||
|
private void init() {
|
||||||
|
createRetentionControls();
|
||||||
|
createTable();
|
||||||
|
addSeparator(shell, SWT.HORIZONTAL);
|
||||||
|
createBottomActionButtons();
|
||||||
|
|
||||||
|
// TODO : Remove this when functionality is implemented
|
||||||
|
populateComboBoxes();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the retention controls.
|
||||||
|
*/
|
||||||
|
private void createRetentionControls() {
|
||||||
|
Composite retentionComp = new Composite(shell, SWT.NONE);
|
||||||
|
GridLayout gl = new GridLayout(5, false);
|
||||||
|
GridData gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
retentionComp.setLayout(gl);
|
||||||
|
retentionComp.setLayoutData(gd);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Top row of controls.
|
||||||
|
*/
|
||||||
|
Label archCfgLbl = new Label(retentionComp, SWT.NONE);
|
||||||
|
archCfgLbl.setText("Archive Config: ");
|
||||||
|
|
||||||
|
gd = new GridData(200, SWT.DEFAULT);
|
||||||
|
archCfgCbo = new Combo(retentionComp, SWT.VERTICAL | SWT.DROP_DOWN
|
||||||
|
| SWT.BORDER | SWT.READ_ONLY);
|
||||||
|
archCfgCbo.setLayoutData(gd);
|
||||||
|
archCfgCbo.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
/*
|
||||||
|
* TODO - add code to update the category combo box
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
gd = new GridData();
|
||||||
|
gd.horizontalIndent = 20;
|
||||||
|
Label minRetentionLbl = new Label(retentionComp, SWT.NONE);
|
||||||
|
minRetentionLbl.setText("Minimum Retention: ");
|
||||||
|
minRetentionLbl.setLayoutData(gd);
|
||||||
|
|
||||||
|
gd = new GridData(60, SWT.DEFAULT);
|
||||||
|
final Spinner minRetentionSpnr = new Spinner(retentionComp, SWT.BORDER);
|
||||||
|
minRetentionSpnr.setIncrement(1);
|
||||||
|
minRetentionSpnr.setPageIncrement(5);
|
||||||
|
minRetentionSpnr.setMaximum(Integer.MAX_VALUE);
|
||||||
|
minRetentionSpnr.setMinimum(1);
|
||||||
|
minRetentionSpnr.setLayoutData(gd);
|
||||||
|
|
||||||
|
final Combo minRetentionCbo = new Combo(retentionComp, SWT.VERTICAL
|
||||||
|
| SWT.DROP_DOWN | SWT.BORDER | SWT.READ_ONLY);
|
||||||
|
minRetentionCbo.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
handleRetentionSelection(minRetentionCbo, minRetentionSpnr);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
minRetentionCbo.add("Hours");
|
||||||
|
minRetentionCbo.add("Days");
|
||||||
|
minRetentionCbo.select(0);
|
||||||
|
minRetentionCbo.setData(minRetentionCbo.getItem(minRetentionCbo
|
||||||
|
.getSelectionIndex()));
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Bottom row of controls.
|
||||||
|
*/
|
||||||
|
Label catLbl = new Label(retentionComp, SWT.NONE);
|
||||||
|
catLbl.setText("Category: ");
|
||||||
|
|
||||||
|
gd = new GridData(200, SWT.DEFAULT);
|
||||||
|
categoryCbo = new Combo(retentionComp, SWT.VERTICAL | SWT.DROP_DOWN
|
||||||
|
| SWT.BORDER | SWT.READ_ONLY);
|
||||||
|
categoryCbo.setLayoutData(gd);
|
||||||
|
categoryCbo.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
/*
|
||||||
|
* TODO - add code to update the information in the table
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
gd = new GridData();
|
||||||
|
gd.horizontalIndent = 20;
|
||||||
|
Label extRetentionLbl = new Label(retentionComp, SWT.NONE);
|
||||||
|
extRetentionLbl.setText("Extended Retention: ");
|
||||||
|
extRetentionLbl.setLayoutData(gd);
|
||||||
|
|
||||||
|
gd = new GridData(60, SWT.DEFAULT);
|
||||||
|
final Spinner extRetentionSpnr = new Spinner(retentionComp, SWT.BORDER);
|
||||||
|
extRetentionSpnr.setIncrement(1);
|
||||||
|
extRetentionSpnr.setPageIncrement(5);
|
||||||
|
extRetentionSpnr.setMaximum(Integer.MAX_VALUE);
|
||||||
|
extRetentionSpnr.setMinimum(1);
|
||||||
|
extRetentionSpnr.setLayoutData(gd);
|
||||||
|
|
||||||
|
final Combo extRetentionCbo = new Combo(retentionComp, SWT.VERTICAL
|
||||||
|
| SWT.DROP_DOWN | SWT.BORDER | SWT.READ_ONLY);
|
||||||
|
extRetentionCbo.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
handleRetentionSelection(extRetentionCbo, extRetentionSpnr);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
extRetentionCbo.add("Hours");
|
||||||
|
extRetentionCbo.add("Days");
|
||||||
|
extRetentionCbo.select(0);
|
||||||
|
extRetentionCbo.setData(extRetentionCbo.getItem(extRetentionCbo
|
||||||
|
.getSelectionIndex()));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the table control.
|
||||||
|
*/
|
||||||
|
private void createTable() {
|
||||||
|
tableComp = new ArchiveTableComp(shell, TableType.Case);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the bottom action buttons.
|
||||||
|
*/
|
||||||
|
private void createBottomActionButtons() {
|
||||||
|
|
||||||
|
Composite actionControlComp = new Composite(shell, SWT.NONE);
|
||||||
|
GridLayout gl = new GridLayout(3, false);
|
||||||
|
GridData gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
actionControlComp.setLayout(gl);
|
||||||
|
actionControlComp.setLayoutData(gd);
|
||||||
|
|
||||||
|
Button calcSizeBtn = new Button(actionControlComp, SWT.PUSH);
|
||||||
|
calcSizeBtn.setText(" Calculate Sizes ");
|
||||||
|
calcSizeBtn.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
// TODO : add calculate size functionality
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Button saveBtn = new Button(actionControlComp, SWT.PUSH);
|
||||||
|
saveBtn.setText(" Save... ");
|
||||||
|
saveBtn.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
// TODO : add save functionality
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
gd = new GridData(SWT.RIGHT, SWT.DEFAULT, true, false);
|
||||||
|
Button closeBtn = new Button(actionControlComp, SWT.PUSH);
|
||||||
|
closeBtn.setText(" Close ");
|
||||||
|
closeBtn.setLayoutData(gd);
|
||||||
|
closeBtn.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
close();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handle the retention selection for both minimum and extended retention.
|
||||||
|
*
|
||||||
|
* @param comboBox
|
||||||
|
* Retention combo box.
|
||||||
|
* @param spinner
|
||||||
|
* Retention spinner.
|
||||||
|
*/
|
||||||
|
private void handleRetentionSelection(Combo comboBox, Spinner spinner) {
|
||||||
|
// If the selection didn't change then just return.
|
||||||
|
if (comboBox.getItem(comboBox.getSelectionIndex()).equals(
|
||||||
|
(String) comboBox.getData())) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
int time = 0;
|
||||||
|
|
||||||
|
if (comboBox.getItem(comboBox.getSelectionIndex()).equals("Hours")) {
|
||||||
|
time = convertTime(true, spinner.getSelection());
|
||||||
|
} else {
|
||||||
|
time = convertTime(false, spinner.getSelection());
|
||||||
|
}
|
||||||
|
|
||||||
|
spinner.setSelection(time);
|
||||||
|
comboBox.setData(comboBox.getItem(comboBox.getSelectionIndex()));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Covert time from either hours to days or days to hours.
|
||||||
|
*
|
||||||
|
* @param daysToHours
|
||||||
|
* Flag indicating how to convert the time.
|
||||||
|
* @param time
|
||||||
|
* Time to be converted.
|
||||||
|
* @return The converted time.
|
||||||
|
*/
|
||||||
|
private int convertTime(boolean daysToHours, int time) {
|
||||||
|
int convertedTime = 0;
|
||||||
|
|
||||||
|
if (daysToHours) {
|
||||||
|
convertedTime = time * 24;
|
||||||
|
} else {
|
||||||
|
convertedTime = time / 24;
|
||||||
|
}
|
||||||
|
|
||||||
|
return convertedTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a separator line to the provided container.
|
||||||
|
*
|
||||||
|
* @param container
|
||||||
|
* Composite.
|
||||||
|
* @param orientation
|
||||||
|
* Vertical or horizontal orientation.
|
||||||
|
*/
|
||||||
|
private void addSeparator(Composite container, int orientation) {
|
||||||
|
// Separator label
|
||||||
|
GridData gd;
|
||||||
|
|
||||||
|
if (orientation == SWT.HORIZONTAL) {
|
||||||
|
gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
} else {
|
||||||
|
gd = new GridData(SWT.DEFAULT, SWT.FILL, false, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
Label sepLbl = new Label(container, SWT.SEPARATOR | orientation);
|
||||||
|
sepLbl.setLayoutData(gd);
|
||||||
|
}
|
||||||
|
|
||||||
|
/********************************************************
|
||||||
|
* TEST METHODS - to be removed when functionality is implemented.
|
||||||
|
* ******************************************************
|
||||||
|
*/
|
||||||
|
private void populateComboBoxes() {
|
||||||
|
archCfgCbo.add("Raw");
|
||||||
|
archCfgCbo.add("Processed");
|
||||||
|
archCfgCbo.select(0);
|
||||||
|
|
||||||
|
categoryCbo.add("Radar");
|
||||||
|
categoryCbo.add("Point");
|
||||||
|
categoryCbo.add("Satellite");
|
||||||
|
categoryCbo.select(0);
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,303 @@
|
||||||
|
/**
|
||||||
|
* This software was developed and / or modified by Raytheon Company,
|
||||||
|
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||||
|
*
|
||||||
|
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||||
|
* This software product contains export-restricted data whose
|
||||||
|
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||||
|
* to non-U.S. persons whether in the United States or abroad requires
|
||||||
|
* an export license or other authorization.
|
||||||
|
*
|
||||||
|
* Contractor Name: Raytheon Company
|
||||||
|
* Contractor Address: 6825 Pine Street, Suite 340
|
||||||
|
* Mail Stop B8
|
||||||
|
* Omaha, NE 68106
|
||||||
|
* 402.291.0100
|
||||||
|
*
|
||||||
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
|
* further licensing information.
|
||||||
|
**/
|
||||||
|
package com.raytheon.uf.viz.archive.ui;
|
||||||
|
|
||||||
|
import org.eclipse.swt.SWT;
|
||||||
|
import org.eclipse.swt.events.MouseAdapter;
|
||||||
|
import org.eclipse.swt.events.MouseEvent;
|
||||||
|
import org.eclipse.swt.events.SelectionAdapter;
|
||||||
|
import org.eclipse.swt.events.SelectionEvent;
|
||||||
|
import org.eclipse.swt.layout.GridData;
|
||||||
|
import org.eclipse.swt.layout.GridLayout;
|
||||||
|
import org.eclipse.swt.widgets.Composite;
|
||||||
|
import org.eclipse.swt.widgets.Control;
|
||||||
|
import org.eclipse.swt.widgets.Label;
|
||||||
|
import org.eclipse.swt.widgets.Menu;
|
||||||
|
import org.eclipse.swt.widgets.MenuItem;
|
||||||
|
import org.eclipse.swt.widgets.Table;
|
||||||
|
import org.eclipse.swt.widgets.TableColumn;
|
||||||
|
import org.eclipse.swt.widgets.TableItem;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Archive table composite that contains the SWT table.
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
*
|
||||||
|
* SOFTWARE HISTORY
|
||||||
|
*
|
||||||
|
* Date Ticket# Engineer Description
|
||||||
|
* ------------ ---------- ----------- --------------------------
|
||||||
|
* May 23, 2013 #1964 lvenable Initial creation
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @author lvenable
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
public class ArchiveTableComp extends Composite {
|
||||||
|
|
||||||
|
/** Table control. */
|
||||||
|
private Table table;
|
||||||
|
|
||||||
|
/** Popup menu. */
|
||||||
|
private Menu popupMenu;
|
||||||
|
|
||||||
|
/** Number of selected items label. */
|
||||||
|
private Label selectedLbl;
|
||||||
|
|
||||||
|
/** Size label. */
|
||||||
|
private Label sizeLbl;
|
||||||
|
|
||||||
|
/** Table type enumeration. */
|
||||||
|
public enum TableType {
|
||||||
|
Retention, Case
|
||||||
|
};
|
||||||
|
|
||||||
|
/** Current table type. */
|
||||||
|
private TableType tableType = TableType.Retention;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor.
|
||||||
|
*
|
||||||
|
* @param parent
|
||||||
|
* Parent composite.
|
||||||
|
* @param type
|
||||||
|
* Table type.
|
||||||
|
*/
|
||||||
|
public ArchiveTableComp(Composite parent, TableType type) {
|
||||||
|
super(parent, 0);
|
||||||
|
|
||||||
|
tableType = type;
|
||||||
|
init();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initialize composites and controls.
|
||||||
|
*/
|
||||||
|
private void init() {
|
||||||
|
GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true);
|
||||||
|
GridLayout gl = new GridLayout(1, true);
|
||||||
|
gl.verticalSpacing = 2;
|
||||||
|
gl.marginHeight = 2;
|
||||||
|
gl.marginWidth = 2;
|
||||||
|
this.setLayout(gl);
|
||||||
|
this.setLayoutData(gd);
|
||||||
|
|
||||||
|
createTable();
|
||||||
|
createTableLabels();
|
||||||
|
|
||||||
|
updateSelectionLabel();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the table control.
|
||||||
|
*/
|
||||||
|
private void createTable() {
|
||||||
|
table = new Table(this, SWT.CHECK | SWT.BORDER | SWT.V_SCROLL
|
||||||
|
| SWT.H_SCROLL | SWT.MULTI);
|
||||||
|
GridData gd = new GridData(SWT.FILL, SWT.DEFAULT, true, true);
|
||||||
|
gd.widthHint = 730;
|
||||||
|
gd.heightHint = 270;
|
||||||
|
table.setLayoutData(gd);
|
||||||
|
table.setHeaderVisible(true);
|
||||||
|
table.setLinesVisible(true);
|
||||||
|
|
||||||
|
TableColumn pathColumn = new TableColumn(table, SWT.CENTER);
|
||||||
|
pathColumn.setText("Path");
|
||||||
|
|
||||||
|
TableColumn sizeColumn = new TableColumn(table, SWT.CENTER);
|
||||||
|
if (tableType == TableType.Retention) {
|
||||||
|
sizeColumn.setText("Current Size (MB)");
|
||||||
|
} else if (tableType == TableType.Case) {
|
||||||
|
sizeColumn.setText("Size (MB)");
|
||||||
|
}
|
||||||
|
|
||||||
|
populateTable();
|
||||||
|
|
||||||
|
for (int i = 0; i < 2; i++) {
|
||||||
|
table.getColumn(i).setResizable(false);
|
||||||
|
table.getColumn(i).setMoveable(false);
|
||||||
|
table.getColumn(i).pack();
|
||||||
|
}
|
||||||
|
|
||||||
|
table.getColumn(1).setWidth(100);
|
||||||
|
|
||||||
|
table.addMouseListener(new MouseAdapter() {
|
||||||
|
@Override
|
||||||
|
public void mouseDown(MouseEvent me) {
|
||||||
|
if (me.button == 3) {
|
||||||
|
createPopupMenu(table);
|
||||||
|
popupMenu.setVisible(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
table.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
updateSelectionLabel();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the table labels.
|
||||||
|
*/
|
||||||
|
private void createTableLabels() {
|
||||||
|
Composite lblComp = new Composite(this, SWT.NONE);
|
||||||
|
GridLayout gl = new GridLayout(2, true);
|
||||||
|
GridData gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
lblComp.setLayout(gl);
|
||||||
|
lblComp.setLayoutData(gd);
|
||||||
|
|
||||||
|
gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
selectedLbl = new Label(lblComp, SWT.NONE);
|
||||||
|
selectedLbl.setLayoutData(gd);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO : keep for future use. This will be used to show the total size
|
||||||
|
* of the selected items in the table.
|
||||||
|
*/
|
||||||
|
// gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
// sizeLbl = new Label(lblComp, SWT.NONE);
|
||||||
|
// sizeLbl.setLayoutData(gd);
|
||||||
|
// sizeLbl.setText("Size of Selected items: 0" + sizeSuffix);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update the selection items label.
|
||||||
|
*/
|
||||||
|
private void updateSelectionLabel() {
|
||||||
|
TableItem[] itemArray = table.getItems();
|
||||||
|
int count = 0;
|
||||||
|
|
||||||
|
for (TableItem ti : itemArray) {
|
||||||
|
if (ti.getChecked()) {
|
||||||
|
count++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
selectedLbl.setText("Selected Items: " + count);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the table popup menu.
|
||||||
|
*
|
||||||
|
* @param parent
|
||||||
|
* Parent control.
|
||||||
|
*/
|
||||||
|
private void createPopupMenu(Control parent) {
|
||||||
|
if (popupMenu != null) {
|
||||||
|
popupMenu.dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
popupMenu = new Menu(parent);
|
||||||
|
|
||||||
|
MenuItem checkSelectedItem = new MenuItem(popupMenu, SWT.NONE);
|
||||||
|
checkSelectedItem.setText("Check selected rows");
|
||||||
|
checkSelectedItem.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
handleCheckSelectedRow(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
MenuItem uncheckSelectedItem = new MenuItem(popupMenu, SWT.NONE);
|
||||||
|
uncheckSelectedItem.setText("Uncheck selected rows");
|
||||||
|
uncheckSelectedItem.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
handleCheckSelectedRow(false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
new MenuItem(popupMenu, SWT.SEPARATOR);
|
||||||
|
|
||||||
|
MenuItem checkAllItem = new MenuItem(popupMenu, SWT.NONE);
|
||||||
|
checkAllItem.setText("Check all rows");
|
||||||
|
checkAllItem.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
handleCheckAll(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
MenuItem uncheckAllItem = new MenuItem(popupMenu, SWT.NONE);
|
||||||
|
uncheckAllItem.setText("Uncheck all rows");
|
||||||
|
uncheckAllItem.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
handleCheckAll(false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Set the pop-up menu as the pop-up for the shell
|
||||||
|
parent.setMenu(popupMenu);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Action performed when the item in the table is checked/unchecked.
|
||||||
|
*
|
||||||
|
* @param check
|
||||||
|
* Checked flag.
|
||||||
|
*/
|
||||||
|
private void handleCheckSelectedRow(boolean check) {
|
||||||
|
TableItem[] itemArray = table.getSelection();
|
||||||
|
|
||||||
|
for (TableItem ti : itemArray) {
|
||||||
|
ti.setChecked(check);
|
||||||
|
}
|
||||||
|
|
||||||
|
updateSelectionLabel();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check or uncheck all of the table items.
|
||||||
|
*
|
||||||
|
* @param check
|
||||||
|
* Flag indicating check or uncheck all items.
|
||||||
|
*/
|
||||||
|
private void handleCheckAll(boolean check) {
|
||||||
|
TableItem[] itemArray = table.getItems();
|
||||||
|
|
||||||
|
for (TableItem ti : itemArray) {
|
||||||
|
ti.setChecked(check);
|
||||||
|
}
|
||||||
|
|
||||||
|
updateSelectionLabel();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO : this is just for display purposes. This will go away when the
|
||||||
|
* functionality is implemented.
|
||||||
|
*/
|
||||||
|
private void populateTable() {
|
||||||
|
for (int i = 0; i < 150; i++) {
|
||||||
|
TableItem item = new TableItem(table, SWT.NONE);
|
||||||
|
item.setText(0,
|
||||||
|
"/home/lvenable/caveData/configuration/base/com.raytheon.uf.viz.gisdatastore/"
|
||||||
|
+ i + " ");
|
||||||
|
if (i % 5 == 0) {
|
||||||
|
item.setChecked(true);
|
||||||
|
}
|
||||||
|
item.setText(1, "?????");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,609 @@
|
||||||
|
/**
|
||||||
|
* This software was developed and / or modified by Raytheon Company,
|
||||||
|
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||||
|
*
|
||||||
|
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||||
|
* This software product contains export-restricted data whose
|
||||||
|
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||||
|
* to non-U.S. persons whether in the United States or abroad requires
|
||||||
|
* an export license or other authorization.
|
||||||
|
*
|
||||||
|
* Contractor Name: Raytheon Company
|
||||||
|
* Contractor Address: 6825 Pine Street, Suite 340
|
||||||
|
* Mail Stop B8
|
||||||
|
* Omaha, NE 68106
|
||||||
|
* 402.291.0100
|
||||||
|
*
|
||||||
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
|
* further licensing information.
|
||||||
|
**/
|
||||||
|
package com.raytheon.uf.viz.archive.ui;
|
||||||
|
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
import org.eclipse.swt.SWT;
|
||||||
|
import org.eclipse.swt.events.SelectionAdapter;
|
||||||
|
import org.eclipse.swt.events.SelectionEvent;
|
||||||
|
import org.eclipse.swt.graphics.GC;
|
||||||
|
import org.eclipse.swt.graphics.Point;
|
||||||
|
import org.eclipse.swt.layout.GridData;
|
||||||
|
import org.eclipse.swt.layout.GridLayout;
|
||||||
|
import org.eclipse.swt.widgets.Button;
|
||||||
|
import org.eclipse.swt.widgets.Combo;
|
||||||
|
import org.eclipse.swt.widgets.Composite;
|
||||||
|
import org.eclipse.swt.widgets.DirectoryDialog;
|
||||||
|
import org.eclipse.swt.widgets.Label;
|
||||||
|
import org.eclipse.swt.widgets.Layout;
|
||||||
|
import org.eclipse.swt.widgets.MessageBox;
|
||||||
|
import org.eclipse.swt.widgets.Shell;
|
||||||
|
import org.eclipse.swt.widgets.Spinner;
|
||||||
|
|
||||||
|
import com.raytheon.uf.common.time.util.TimeUtil;
|
||||||
|
import com.raytheon.uf.viz.archive.ui.ArchiveTableComp.TableType;
|
||||||
|
import com.raytheon.viz.ui.dialogs.AwipsCalendar;
|
||||||
|
import com.raytheon.viz.ui.dialogs.CaveSWTDialog;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Case creation dialog.
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
*
|
||||||
|
* SOFTWARE HISTORY
|
||||||
|
*
|
||||||
|
* Date Ticket# Engineer Description
|
||||||
|
* ------------ ---------- ----------- --------------------------
|
||||||
|
* May 23, 2013 #1964 lvenable Initial creation
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @author lvenable
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
public class CaseCreationDlg extends CaveSWTDialog {
|
||||||
|
|
||||||
|
/** Table control */
|
||||||
|
private ArchiveTableComp tableComp;
|
||||||
|
|
||||||
|
/** Start time label. */
|
||||||
|
private Label startTimeLbl;
|
||||||
|
|
||||||
|
/** End time label. */
|
||||||
|
private Label endTimeLbl;
|
||||||
|
|
||||||
|
/** Start date. */
|
||||||
|
private Date startDate;
|
||||||
|
|
||||||
|
/** End date. */
|
||||||
|
private Date endDate;
|
||||||
|
|
||||||
|
/** Archive configuration combo box. */
|
||||||
|
private Combo archCfgCbo;
|
||||||
|
|
||||||
|
/** Category combo box. */
|
||||||
|
private Combo categoryCbo;
|
||||||
|
|
||||||
|
/** Compression check box. */
|
||||||
|
private Button compressChk;
|
||||||
|
|
||||||
|
/** Break files check box. */
|
||||||
|
private Button breakFilesChk;
|
||||||
|
|
||||||
|
/** File size spinner control. */
|
||||||
|
private Spinner fileSizeSpnr;
|
||||||
|
|
||||||
|
/** File size combo box. */
|
||||||
|
private Combo fileSizeCbo;
|
||||||
|
|
||||||
|
/** Maximum file size label. */
|
||||||
|
private Label maxFileSizeLbl;
|
||||||
|
|
||||||
|
/** Directory location label. */
|
||||||
|
private Label locationLbl;
|
||||||
|
|
||||||
|
/** Uncompressed file size label. */
|
||||||
|
private Label uncompressSizeLbl;
|
||||||
|
|
||||||
|
/** Date format. */
|
||||||
|
private SimpleDateFormat dateFmt = new SimpleDateFormat(
|
||||||
|
"E MMM dd yyyy HH:00 z");
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor.
|
||||||
|
*
|
||||||
|
* @param parentShell
|
||||||
|
* Parent shell.
|
||||||
|
*/
|
||||||
|
public CaseCreationDlg(Shell parentShell) {
|
||||||
|
super(parentShell, SWT.DIALOG_TRIM | SWT.MIN, CAVE.DO_NOT_BLOCK
|
||||||
|
| CAVE.MODE_INDEPENDENT | CAVE.INDEPENDENT_SHELL);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Layout constructShellLayout() {
|
||||||
|
// Create the main layout for the shell.
|
||||||
|
GridLayout mainLayout = new GridLayout(1, false);
|
||||||
|
mainLayout.marginHeight = 2;
|
||||||
|
mainLayout.marginWidth = 2;
|
||||||
|
|
||||||
|
return mainLayout;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void initializeComponents(Shell shell) {
|
||||||
|
setText("Case Creation");
|
||||||
|
Composite mainComp = new Composite(shell, SWT.NONE);
|
||||||
|
GridLayout gl = new GridLayout(1, false);
|
||||||
|
gl.marginHeight = 0;
|
||||||
|
gl.marginWidth = 0;
|
||||||
|
gl.horizontalSpacing = 0;
|
||||||
|
mainComp.setLayout(gl);
|
||||||
|
|
||||||
|
init();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initialize method to create all of the composite & controls.
|
||||||
|
*/
|
||||||
|
private void init() {
|
||||||
|
|
||||||
|
createTimeControls();
|
||||||
|
addSeparator(shell, SWT.HORIZONTAL);
|
||||||
|
createCaseCompressionControls();
|
||||||
|
addSeparator(shell, SWT.HORIZONTAL);
|
||||||
|
createFileBrowserControls();
|
||||||
|
createTable();
|
||||||
|
addSeparator(shell, SWT.HORIZONTAL);
|
||||||
|
createBottomActionButtons();
|
||||||
|
|
||||||
|
populateComboBoxes();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the time controls.
|
||||||
|
*/
|
||||||
|
private void createTimeControls() {
|
||||||
|
Composite timeComp = new Composite(shell, SWT.NONE);
|
||||||
|
GridLayout gl = new GridLayout(4, false);
|
||||||
|
GridData gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
timeComp.setLayout(gl);
|
||||||
|
timeComp.setLayoutData(gd);
|
||||||
|
|
||||||
|
Button startBtn = new Button(timeComp, SWT.PUSH);
|
||||||
|
startBtn.setText(" Start Time... ");
|
||||||
|
startBtn.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
displayDateTimeControls(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
gd = new GridData(220, SWT.DEFAULT);
|
||||||
|
startTimeLbl = new Label(timeComp, SWT.BORDER);
|
||||||
|
startTimeLbl.setLayoutData(gd);
|
||||||
|
|
||||||
|
gd = new GridData();
|
||||||
|
gd.horizontalIndent = 20;
|
||||||
|
Button endBtn = new Button(timeComp, SWT.PUSH);
|
||||||
|
endBtn.setText(" End Time... ");
|
||||||
|
endBtn.setLayoutData(gd);
|
||||||
|
endBtn.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
displayDateTimeControls(false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
gd = new GridData(220, SWT.DEFAULT);
|
||||||
|
endTimeLbl = new Label(timeComp, SWT.BORDER);
|
||||||
|
endTimeLbl.setLayoutData(gd);
|
||||||
|
|
||||||
|
Date date = TimeUtil.newDate();
|
||||||
|
startDate = date;
|
||||||
|
endDate = date;
|
||||||
|
startTimeLbl.setText(dateFmt.format(startDate));
|
||||||
|
endTimeLbl.setText(dateFmt.format(endDate));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the case compression controls.
|
||||||
|
*/
|
||||||
|
private void createCaseCompressionControls() {
|
||||||
|
Composite caseCompressionComp = new Composite(shell, SWT.NONE);
|
||||||
|
GridLayout gl = new GridLayout(3, false);
|
||||||
|
GridData gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
caseCompressionComp.setLayout(gl);
|
||||||
|
caseCompressionComp.setLayoutData(gd);
|
||||||
|
|
||||||
|
createComboControls(caseCompressionComp);
|
||||||
|
addSeparator(caseCompressionComp, SWT.VERTICAL);
|
||||||
|
createCompressionControls(caseCompressionComp);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the Archive and Category combo controls.
|
||||||
|
*
|
||||||
|
* @param comp
|
||||||
|
* Composite to put the controls in.
|
||||||
|
*/
|
||||||
|
private void createComboControls(Composite comp) {
|
||||||
|
Composite comboComp = new Composite(comp, SWT.NONE);
|
||||||
|
GridLayout gl = new GridLayout(2, false);
|
||||||
|
GridData gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
comboComp.setLayout(gl);
|
||||||
|
comboComp.setLayoutData(gd);
|
||||||
|
|
||||||
|
Label archCfgLbl = new Label(comboComp, SWT.NONE);
|
||||||
|
archCfgLbl.setText("Archive Config: ");
|
||||||
|
|
||||||
|
gd = new GridData(200, SWT.DEFAULT);
|
||||||
|
archCfgCbo = new Combo(comboComp, SWT.VERTICAL | SWT.DROP_DOWN
|
||||||
|
| SWT.BORDER | SWT.READ_ONLY);
|
||||||
|
archCfgCbo.setLayoutData(gd);
|
||||||
|
archCfgCbo.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
/*
|
||||||
|
* TODO - add code to update the category combo box
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Label catLbl = new Label(comboComp, SWT.NONE);
|
||||||
|
catLbl.setText("Category: ");
|
||||||
|
|
||||||
|
gd = new GridData(200, SWT.DEFAULT);
|
||||||
|
categoryCbo = new Combo(comboComp, SWT.VERTICAL | SWT.DROP_DOWN
|
||||||
|
| SWT.BORDER | SWT.READ_ONLY);
|
||||||
|
categoryCbo.setLayoutData(gd);
|
||||||
|
categoryCbo.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
/*
|
||||||
|
* TODO - add code to update the information in the table
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the compression controls.
|
||||||
|
*
|
||||||
|
* @param comp
|
||||||
|
* Composite to put the control in.
|
||||||
|
*/
|
||||||
|
private void createCompressionControls(Composite comp) {
|
||||||
|
Composite compressionComp = new Composite(comp, SWT.NONE);
|
||||||
|
GridLayout gl = new GridLayout(1, false);
|
||||||
|
GridData gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
compressionComp.setLayout(gl);
|
||||||
|
compressionComp.setLayoutData(gd);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Uncompressed file size label
|
||||||
|
*/
|
||||||
|
Composite compressionLblComp = new Composite(compressionComp, SWT.NONE);
|
||||||
|
gl = new GridLayout(3, false);
|
||||||
|
gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
compressionLblComp.setLayout(gl);
|
||||||
|
compressionLblComp.setLayoutData(gd);
|
||||||
|
|
||||||
|
Label uncompressLbl = new Label(compressionLblComp, SWT.NONE);
|
||||||
|
uncompressLbl.setText("Uncompressed Case Size: ");
|
||||||
|
|
||||||
|
gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
uncompressSizeLbl = new Label(compressionLblComp, SWT.NONE);
|
||||||
|
uncompressSizeLbl.setText("1024 MB");
|
||||||
|
uncompressSizeLbl.setLayoutData(gd);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Compression controls
|
||||||
|
*/
|
||||||
|
compressChk = new Button(compressionComp, SWT.CHECK);
|
||||||
|
compressChk.setText("Compress Files");
|
||||||
|
compressChk.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
handleCompressSelection();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
gd = new GridData();
|
||||||
|
gd.horizontalIndent = 20;
|
||||||
|
breakFilesChk = new Button(compressionComp, SWT.CHECK);
|
||||||
|
breakFilesChk.setText("Break into multiple files");
|
||||||
|
breakFilesChk.setLayoutData(gd);
|
||||||
|
breakFilesChk.setEnabled(false);
|
||||||
|
breakFilesChk.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
handleBreakFilesSelection(breakFilesChk.getSelection());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Composite maxFileSizeComp = new Composite(compressionComp, SWT.NONE);
|
||||||
|
gl = new GridLayout(3, false);
|
||||||
|
gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
gd.horizontalIndent = 20;
|
||||||
|
maxFileSizeComp.setLayout(gl);
|
||||||
|
maxFileSizeComp.setLayoutData(gd);
|
||||||
|
|
||||||
|
maxFileSizeLbl = new Label(maxFileSizeComp, SWT.NONE);
|
||||||
|
maxFileSizeLbl.setText("Max File Size: ");
|
||||||
|
maxFileSizeLbl.setEnabled(false);
|
||||||
|
|
||||||
|
gd = new GridData(60, SWT.DEFAULT);
|
||||||
|
fileSizeSpnr = new Spinner(maxFileSizeComp, SWT.BORDER);
|
||||||
|
fileSizeSpnr.setIncrement(1);
|
||||||
|
fileSizeSpnr.setPageIncrement(50);
|
||||||
|
fileSizeSpnr.setMaximum(2000);
|
||||||
|
fileSizeSpnr.setMinimum(500);
|
||||||
|
fileSizeSpnr.setLayoutData(gd);
|
||||||
|
fileSizeSpnr.setEnabled(false);
|
||||||
|
|
||||||
|
fileSizeCbo = new Combo(maxFileSizeComp, SWT.VERTICAL | SWT.DROP_DOWN
|
||||||
|
| SWT.BORDER | SWT.READ_ONLY);
|
||||||
|
fileSizeCbo.setEnabled(false);
|
||||||
|
fileSizeCbo.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
handleFileSizeChangeSelection();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the file browser controls.
|
||||||
|
*/
|
||||||
|
private void createFileBrowserControls() {
|
||||||
|
Composite fileBrowserComp = new Composite(shell, SWT.NONE);
|
||||||
|
GridLayout gl = new GridLayout(4, false);
|
||||||
|
GridData gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
fileBrowserComp.setLayout(gl);
|
||||||
|
fileBrowserComp.setLayoutData(gd);
|
||||||
|
|
||||||
|
Label caseLbl = new Label(fileBrowserComp, SWT.NONE);
|
||||||
|
caseLbl.setText("Case Location: ");
|
||||||
|
|
||||||
|
gd = new GridData(300, SWT.DEFAULT);
|
||||||
|
locationLbl = new Label(fileBrowserComp, SWT.BORDER);
|
||||||
|
locationLbl.setLayoutData(gd);
|
||||||
|
|
||||||
|
Button browseBtn = new Button(fileBrowserComp, SWT.PUSH);
|
||||||
|
browseBtn.setText(" Browse... ");
|
||||||
|
browseBtn.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
handleBrowserSelection();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the table control.
|
||||||
|
*/
|
||||||
|
private void createTable() {
|
||||||
|
tableComp = new ArchiveTableComp(shell, TableType.Case);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create the bottom action buttons.
|
||||||
|
*/
|
||||||
|
private void createBottomActionButtons() {
|
||||||
|
|
||||||
|
Composite actionControlComp = new Composite(shell, SWT.NONE);
|
||||||
|
GridLayout gl = new GridLayout(3, false);
|
||||||
|
GridData gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
actionControlComp.setLayout(gl);
|
||||||
|
actionControlComp.setLayoutData(gd);
|
||||||
|
|
||||||
|
Button exportBtn = new Button(actionControlComp, SWT.PUSH);
|
||||||
|
exportBtn.setText(" Export Case Config... ");
|
||||||
|
exportBtn.addSelectionListener(new SelectionAdapter() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Button generateBtn = new Button(actionControlComp, SWT.PUSH);
|
||||||
|
generateBtn.setText(" Generate ");
|
||||||
|
generateBtn.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
gd = new GridData(SWT.RIGHT, SWT.DEFAULT, true, false);
|
||||||
|
Button closeBtn = new Button(actionControlComp, SWT.PUSH);
|
||||||
|
closeBtn.setText(" Close ");
|
||||||
|
closeBtn.setLayoutData(gd);
|
||||||
|
closeBtn.addSelectionListener(new SelectionAdapter() {
|
||||||
|
@Override
|
||||||
|
public void widgetSelected(SelectionEvent e) {
|
||||||
|
close();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enable/Disable controls based on the compression check box.
|
||||||
|
*/
|
||||||
|
private void handleCompressSelection() {
|
||||||
|
if (compressChk.getSelection()) {
|
||||||
|
handleBreakFilesSelection(breakFilesChk.getSelection());
|
||||||
|
} else {
|
||||||
|
handleBreakFilesSelection(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
breakFilesChk.setEnabled(compressChk.getSelection());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enable/Disable file size controls.
|
||||||
|
*
|
||||||
|
* @param enabled
|
||||||
|
* Enabled flag.
|
||||||
|
*/
|
||||||
|
private void handleBreakFilesSelection(boolean enabled) {
|
||||||
|
maxFileSizeLbl.setEnabled(enabled);
|
||||||
|
fileSizeSpnr.setEnabled(enabled);
|
||||||
|
fileSizeCbo.setEnabled(enabled);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Action performed when the file size has changed.
|
||||||
|
*/
|
||||||
|
private void handleFileSizeChangeSelection() {
|
||||||
|
/*
|
||||||
|
* If the same item was selected just return.
|
||||||
|
*/
|
||||||
|
if (fileSizeCbo.getItem(fileSizeCbo.getSelectionIndex()).equals(
|
||||||
|
(String) fileSizeCbo.getData())) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (fileSizeCbo.getItem(fileSizeCbo.getSelectionIndex()).equals("MB")) {
|
||||||
|
fileSizeSpnr.setIncrement(1);
|
||||||
|
fileSizeSpnr.setPageIncrement(50);
|
||||||
|
fileSizeSpnr.setMaximum(2000);
|
||||||
|
fileSizeSpnr.setMinimum(500);
|
||||||
|
fileSizeSpnr.setSelection(500);
|
||||||
|
} else {
|
||||||
|
fileSizeSpnr.setIncrement(1);
|
||||||
|
fileSizeSpnr.setPageIncrement(5);
|
||||||
|
fileSizeSpnr.setMinimum(1);
|
||||||
|
fileSizeSpnr.setMaximum(10);
|
||||||
|
fileSizeSpnr.setSelection(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
fileSizeCbo
|
||||||
|
.setData(fileSizeCbo.getItem(fileSizeCbo.getSelectionIndex()));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Display the directory browser dialog.
|
||||||
|
*/
|
||||||
|
private void handleBrowserSelection() {
|
||||||
|
DirectoryDialog dlg = new DirectoryDialog(shell, SWT.OPEN);
|
||||||
|
String dirName = dlg.open();
|
||||||
|
if (dirName != null) {
|
||||||
|
locationLbl.setText(trimDirectoryName(dirName));
|
||||||
|
locationLbl.setToolTipText(dirName);
|
||||||
|
locationLbl.setData(dirName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a separator line to the provided container.
|
||||||
|
*
|
||||||
|
* @param container
|
||||||
|
* Composite.
|
||||||
|
* @param orientation
|
||||||
|
* Vertical or horizontal orientation.
|
||||||
|
*/
|
||||||
|
private void addSeparator(Composite container, int orientation) {
|
||||||
|
// Separator label
|
||||||
|
GridData gd;
|
||||||
|
|
||||||
|
if (orientation == SWT.HORIZONTAL) {
|
||||||
|
gd = new GridData(SWT.FILL, SWT.DEFAULT, true, false);
|
||||||
|
} else {
|
||||||
|
gd = new GridData(SWT.DEFAULT, SWT.FILL, false, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
Label sepLbl = new Label(container, SWT.SEPARATOR | orientation);
|
||||||
|
sepLbl.setLayoutData(gd);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Display the date/time controls.
|
||||||
|
*
|
||||||
|
* @param startTimeFlag
|
||||||
|
* True for start time, false for end time.
|
||||||
|
*/
|
||||||
|
private void displayDateTimeControls(boolean startTimeFlag) {
|
||||||
|
AwipsCalendar ac = new AwipsCalendar(shell, 1);
|
||||||
|
Date date = (Date) ac.open();
|
||||||
|
|
||||||
|
if (startTimeFlag) {
|
||||||
|
if (date.after(endDate)) {
|
||||||
|
MessageBox mb = new MessageBox(shell, SWT.ICON_QUESTION
|
||||||
|
| SWT.OK);
|
||||||
|
mb.setText("Date Error");
|
||||||
|
mb.setMessage("The selected start date is after the end date. Resetting.");
|
||||||
|
mb.open();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (date.before(startDate)) {
|
||||||
|
MessageBox mb = new MessageBox(shell, SWT.ICON_QUESTION
|
||||||
|
| SWT.OK);
|
||||||
|
mb.setText("Date Error");
|
||||||
|
mb.setMessage("The selected end date is before the start date. Resetting.");
|
||||||
|
mb.open();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (startTimeFlag) {
|
||||||
|
startTimeLbl.setText(dateFmt.format(date));
|
||||||
|
} else {
|
||||||
|
endTimeLbl.setText(dateFmt.format(date));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Trim the directory name if it is too long to fit in the label. The
|
||||||
|
* beginning of the path will be replaced with "...".
|
||||||
|
*
|
||||||
|
* @param str
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
private String trimDirectoryName(String str) {
|
||||||
|
Point strExtent;
|
||||||
|
Point ellipseExt;
|
||||||
|
|
||||||
|
GC gc = new GC(shell);
|
||||||
|
gc.setFont(locationLbl.getFont());
|
||||||
|
|
||||||
|
ellipseExt = gc.stringExtent("...");
|
||||||
|
int labelWidth = locationLbl.getBounds().width - (5 + ellipseExt.x);
|
||||||
|
|
||||||
|
strExtent = gc.stringExtent(str);
|
||||||
|
|
||||||
|
if (strExtent.x > labelWidth) {
|
||||||
|
while (strExtent.x > labelWidth) {
|
||||||
|
str = str.substring(2);
|
||||||
|
strExtent = gc.stringExtent(str);
|
||||||
|
}
|
||||||
|
str = "..." + str;
|
||||||
|
}
|
||||||
|
|
||||||
|
gc.dispose();
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
/********************************************************
|
||||||
|
* TEST METHODS ******************************************************
|
||||||
|
*/
|
||||||
|
private void populateComboBoxes() {
|
||||||
|
archCfgCbo.add("Raw");
|
||||||
|
archCfgCbo.add("Processed");
|
||||||
|
archCfgCbo.select(0);
|
||||||
|
|
||||||
|
categoryCbo.add("Radar");
|
||||||
|
categoryCbo.add("Point");
|
||||||
|
categoryCbo.add("Satellite");
|
||||||
|
categoryCbo.select(0);
|
||||||
|
|
||||||
|
fileSizeCbo.add("MB");
|
||||||
|
fileSizeCbo.add("GB");
|
||||||
|
fileSizeCbo.select(0);
|
||||||
|
fileSizeCbo
|
||||||
|
.setData(fileSizeCbo.getItem(fileSizeCbo.getSelectionIndex()));
|
||||||
|
}
|
||||||
|
}
|
|
@ -7,8 +7,7 @@ Bundle-Activator: com.raytheon.uf.viz.aviation.advisory.Activator
|
||||||
Bundle-Vendor: RAYTHEON
|
Bundle-Vendor: RAYTHEON
|
||||||
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
|
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
|
||||||
Require-Bundle: com.raytheon.uf.viz.core
|
Require-Bundle: com.raytheon.uf.viz.core
|
||||||
Import-Package: com.raytheon.edex.scriptfactory,
|
Import-Package: com.raytheon.uf.common.dataplugin,
|
||||||
com.raytheon.uf.common.dataplugin,
|
|
||||||
com.raytheon.uf.common.geospatial,
|
com.raytheon.uf.common.geospatial,
|
||||||
com.raytheon.uf.common.time,
|
com.raytheon.uf.common.time,
|
||||||
com.raytheon.uf.viz.core,
|
com.raytheon.uf.viz.core,
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<projectDescription>
|
<projectDescription>
|
||||||
<name>com.raytheon.uf.edex.event.feature</name>
|
<name>com.raytheon.uf.viz.base.feature</name>
|
||||||
<comment></comment>
|
<comment></comment>
|
||||||
<projects>
|
<projects>
|
||||||
</projects>
|
</projects>
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<feature
|
<feature
|
||||||
id="com.raytheon.uf.viz.collaboration.product.feature"
|
id="com.raytheon.uf.viz.base.feature"
|
||||||
label="Collaboration Product Feature"
|
label="CAVE Feature"
|
||||||
version="1.0.0.qualifier"
|
version="1.0.0.qualifier"
|
||||||
provider-name="RAYTHEON">
|
provider-name="RAYTHEON">
|
||||||
|
|
||||||
|
@ -17,233 +17,231 @@
|
||||||
[Enter License Description here.]
|
[Enter License Description here.]
|
||||||
</license>
|
</license>
|
||||||
|
|
||||||
<includes
|
<requires>
|
||||||
id="org.eclipse.rcp"
|
<import feature="com.raytheon.uf.common.base.feature" version="1.0.0.qualifier"/>
|
||||||
version="0.0.0"/>
|
</requires>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.viz.collaboration.comm"
|
id="com.raytheon.uf.viz.core"
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.google.guava"
|
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.common.comm"
|
id="com.raytheon.viz.ui"
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.status"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.serialization"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.util"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="org.apache.http"
|
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="org.apache.commons.codec"
|
id="com.raytheon.uf.viz.personalities.cave"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="org.apache.commons.logging"
|
id="org.apache.activemq"
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="org.apache.log4j"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="javax.jms"
|
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="org.geotools"
|
id="com.raytheon.uf.viz.localization"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="com.raytheon.viz.core"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.facebook.thrift"
|
id="org.eclipse.core.resources"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.ui.ide"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.ui.workbench"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.team.core"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.core.filesystem"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.ui.workbench.texteditor"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.jface.text"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.text"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.compare.core"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="com.raytheon.uf.common.menus"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="com.raytheon.uf.viz.ui.menus"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="javax.persistence"
|
id="com.raytheon.viz.alerts"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="com.raytheon.uf.viz.productbrowser"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="org.junit"
|
id="com.raytheon.uf.viz.core.rsc"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="net.sf.swtaddons"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="net.sf.cglib"
|
id="org.eclipse.draw2d"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.emf.common.ui"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="com.raytheon.viz.core.gl"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="org.apache.commons.lang"
|
id="javax.media.opengl"
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="javax.vecmath"
|
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="javax.measure"
|
id="javax.media.opengl.linux32"
|
||||||
|
os="linux"
|
||||||
|
arch="x86"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
fragment="true"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="javax.media.opengl.linux64"
|
||||||
|
os="linux"
|
||||||
|
arch="x86_64"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
fragment="true"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="javax.media.opengl.win32"
|
||||||
|
os="win32"
|
||||||
|
arch="x86"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
fragment="true"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="com.raytheon.uf.common.dataplugin.maps"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="com.raytheon.uf.viz.core.maps"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="org.jivesoftware.smack"
|
id="com.raytheon.viz.ui.tools.nav"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="com.raytheon.uf.viz.spring.dm"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="org.eclipse.ecf"
|
id="org.eclipse.emf.common"
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="org.eclipse.ecf.presence"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="org.eclipse.ecf.provider.xmpp"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="org.eclipse.ecf.identity"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="org.eclipse.ecf.provider"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="org.eclipse.ecf.filetransfer"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="org.eclipse.ecf.sharedobject"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="org.eclipse.equinox.concurrent"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.viz.application"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.viz.collaboration.product"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.viz.collaboration.core.ui"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.localization"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.serialization.comm"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.auth"
|
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"
|
version="0.0.0"
|
|
@ -8,8 +8,7 @@ Bundle-Vendor: RAYTHEON
|
||||||
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
|
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Import-Package: com.raytheon.edex.scriptfactory,
|
Import-Package: com.raytheon.uf.common.dataplugin,
|
||||||
com.raytheon.uf.common.dataplugin,
|
|
||||||
com.raytheon.uf.common.dataplugin.bufrsigwx,
|
com.raytheon.uf.common.dataplugin.bufrsigwx,
|
||||||
com.raytheon.uf.common.dataplugin.bufrsigwx.common,
|
com.raytheon.uf.common.dataplugin.bufrsigwx.common,
|
||||||
com.raytheon.uf.common.geospatial,
|
com.raytheon.uf.common.geospatial,
|
||||||
|
|
|
@ -8,7 +8,6 @@ Bundle-Vendor: RAYTHEON
|
||||||
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
|
Eclipse-RegisterBuddy: com.raytheon.viz.core, com.raytheon.uf.viz.core
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
||||||
Import-Package: com.raytheon.edex.plugin.ccfp,
|
Import-Package: com.raytheon.edex.plugin.ccfp,
|
||||||
com.raytheon.edex.scriptfactory,
|
|
||||||
com.raytheon.uf.common.dataplugin,
|
com.raytheon.uf.common.dataplugin,
|
||||||
com.raytheon.uf.common.geospatial,
|
com.raytheon.uf.common.geospatial,
|
||||||
com.raytheon.uf.common.status,
|
com.raytheon.uf.common.status,
|
||||||
|
|
|
@ -20,7 +20,8 @@ Require-Bundle: org.eclipse.ui,
|
||||||
com.raytheon.uf.common.dataplugin.level;bundle-version="1.12.1174",
|
com.raytheon.uf.common.dataplugin.level;bundle-version="1.12.1174",
|
||||||
com.raytheon.uf.common.dataplugin.satellite;bundle-version="1.0.0",
|
com.raytheon.uf.common.dataplugin.satellite;bundle-version="1.0.0",
|
||||||
com.raytheon.uf.common.dataplugin.grid;bundle-version="1.0.0",
|
com.raytheon.uf.common.dataplugin.grid;bundle-version="1.0.0",
|
||||||
com.raytheon.uf.common.parameter;bundle-version="1.0.0"
|
com.raytheon.uf.common.parameter;bundle-version="1.0.0",
|
||||||
|
com.raytheon.uf.common.colormap;bundle-version="1.12.1174"
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Export-Package: com.raytheon.uf.viz.cloudheight,
|
Export-Package: com.raytheon.uf.viz.cloudheight,
|
||||||
|
|
|
@ -36,6 +36,7 @@ import org.eclipse.swt.widgets.Shell;
|
||||||
import org.eclipse.ui.PlatformUI;
|
import org.eclipse.ui.PlatformUI;
|
||||||
import org.opengis.metadata.spatial.PixelOrientation;
|
import org.opengis.metadata.spatial.PixelOrientation;
|
||||||
|
|
||||||
|
import com.raytheon.uf.common.colormap.prefs.ColorMapParameters;
|
||||||
import com.raytheon.uf.common.dataplugin.satellite.units.ir.IRPixel;
|
import com.raytheon.uf.common.dataplugin.satellite.units.ir.IRPixel;
|
||||||
import com.raytheon.uf.common.geospatial.ISpatialObject;
|
import com.raytheon.uf.common.geospatial.ISpatialObject;
|
||||||
import com.raytheon.uf.common.geospatial.MapUtil;
|
import com.raytheon.uf.common.geospatial.MapUtil;
|
||||||
|
@ -53,7 +54,6 @@ import com.raytheon.uf.viz.cloudheight.impl.ModelCloudHeightSourceImplementation
|
||||||
import com.raytheon.uf.viz.cloudheight.impl.RaobCloudHeightSourceImplementation;
|
import com.raytheon.uf.viz.cloudheight.impl.RaobCloudHeightSourceImplementation;
|
||||||
import com.raytheon.uf.viz.cloudheight.rsc.PopupSkewTResource;
|
import com.raytheon.uf.viz.cloudheight.rsc.PopupSkewTResource;
|
||||||
import com.raytheon.uf.viz.cloudheight.ui.CloudHeightRightClickAction;
|
import com.raytheon.uf.viz.cloudheight.ui.CloudHeightRightClickAction;
|
||||||
import com.raytheon.uf.viz.core.drawables.ColorMapParameters;
|
|
||||||
import com.raytheon.uf.viz.core.drawables.IDescriptor;
|
import com.raytheon.uf.viz.core.drawables.IDescriptor;
|
||||||
import com.raytheon.uf.viz.core.drawables.IDescriptor.FramesInfo;
|
import com.raytheon.uf.viz.core.drawables.IDescriptor.FramesInfo;
|
||||||
import com.raytheon.uf.viz.core.drawables.ResourcePair;
|
import com.raytheon.uf.viz.core.drawables.ResourcePair;
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
Manifest-Version: 1.0
|
|
||||||
Bundle-ManifestVersion: 2
|
|
||||||
Bundle-Name: Collaboration Core UI
|
|
||||||
Bundle-SymbolicName: com.raytheon.uf.viz.collaboration.core.ui
|
|
||||||
Bundle-Version: 1.0.0.qualifier
|
|
||||||
Bundle-Activator: com.raytheon.uf.viz.collaboration.core.ui.Activator
|
|
||||||
Bundle-Vendor: RAYTHEON
|
|
||||||
Require-Bundle: org.eclipse.ui,
|
|
||||||
org.eclipse.core.runtime,
|
|
||||||
com.raytheon.uf.viz.collaboration.comm;bundle-version="1.0.0",
|
|
||||||
org.eclipse.ecf.presence;bundle-version="2.0.0"
|
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
|
||||||
Bundle-ActivationPolicy: lazy
|
|
||||||
Export-Package: com.raytheon.uf.viz.collaboration.core.ui
|
|
Before Width: | Height: | Size: 348 B |
Before Width: | Height: | Size: 573 B |
Before Width: | Height: | Size: 157 B |
Before Width: | Height: | Size: 688 B |
Before Width: | Height: | Size: 823 B |
Before Width: | Height: | Size: 605 B |
Before Width: | Height: | Size: 617 B |
Before Width: | Height: | Size: 110 B |
Before Width: | Height: | Size: 215 B |
|
@ -1,50 +0,0 @@
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui;
|
|
||||||
|
|
||||||
import org.eclipse.ui.plugin.AbstractUIPlugin;
|
|
||||||
import org.osgi.framework.BundleContext;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The activator class controls the plug-in life cycle
|
|
||||||
*/
|
|
||||||
public class Activator extends AbstractUIPlugin {
|
|
||||||
|
|
||||||
// The plug-in ID
|
|
||||||
public static final String PLUGIN_ID = "com.raytheon.uf.viz.collaboration.core.ui"; //$NON-NLS-1$
|
|
||||||
|
|
||||||
// The shared instance
|
|
||||||
private static Activator plugin;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The constructor
|
|
||||||
*/
|
|
||||||
public Activator() {
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
* @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
|
|
||||||
*/
|
|
||||||
public void start(BundleContext context) throws Exception {
|
|
||||||
super.start(context);
|
|
||||||
plugin = this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
* @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
|
|
||||||
*/
|
|
||||||
public void stop(BundleContext context) throws Exception {
|
|
||||||
plugin = null;
|
|
||||||
super.stop(context);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Returns the shared instance
|
|
||||||
*
|
|
||||||
* @return the shared instance
|
|
||||||
*/
|
|
||||||
public static Activator getDefault() {
|
|
||||||
return plugin;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,295 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import javax.swing.tree.TreePath;
|
|
||||||
|
|
||||||
import org.eclipse.ecf.presence.roster.IRoster;
|
|
||||||
import org.eclipse.ecf.presence.roster.IRosterEntry;
|
|
||||||
import org.eclipse.ecf.presence.roster.IRosterGroup;
|
|
||||||
import org.eclipse.jface.action.IContributionItem;
|
|
||||||
import org.eclipse.jface.action.IMenuListener;
|
|
||||||
import org.eclipse.jface.action.IMenuManager;
|
|
||||||
import org.eclipse.jface.action.MenuManager;
|
|
||||||
import org.eclipse.jface.viewers.TreeViewer;
|
|
||||||
import org.eclipse.swt.SWT;
|
|
||||||
import org.eclipse.swt.events.DisposeEvent;
|
|
||||||
import org.eclipse.swt.events.DisposeListener;
|
|
||||||
import org.eclipse.swt.events.KeyAdapter;
|
|
||||||
import org.eclipse.swt.events.KeyEvent;
|
|
||||||
import org.eclipse.swt.events.MouseAdapter;
|
|
||||||
import org.eclipse.swt.events.MouseEvent;
|
|
||||||
import org.eclipse.swt.events.MouseTrackAdapter;
|
|
||||||
import org.eclipse.swt.graphics.Image;
|
|
||||||
import org.eclipse.swt.layout.GridData;
|
|
||||||
import org.eclipse.swt.layout.GridLayout;
|
|
||||||
import org.eclipse.swt.widgets.Composite;
|
|
||||||
import org.eclipse.swt.widgets.Display;
|
|
||||||
import org.eclipse.swt.widgets.Label;
|
|
||||||
import org.eclipse.swt.widgets.Menu;
|
|
||||||
import org.eclipse.swt.widgets.Text;
|
|
||||||
import org.eclipse.swt.widgets.Tree;
|
|
||||||
import org.eclipse.swt.widgets.TreeColumn;
|
|
||||||
import org.eclipse.ui.PlatformUI;
|
|
||||||
import org.eclipse.ui.plugin.AbstractUIPlugin;
|
|
||||||
|
|
||||||
import com.google.common.eventbus.Subscribe;
|
|
||||||
import com.raytheon.uf.viz.collaboration.comm.identity.event.IRosterChangeEvent;
|
|
||||||
import com.raytheon.uf.viz.collaboration.comm.provider.session.CollaborationConnection;
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.data.ActiveSessionsTreeData;
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.data.MyUserTreeData;
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.data.UserGroupTreeData;
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.tree.UsersTreeContentProvider;
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.tree.UsersTreeLabelProvider;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class CollaborationGroupControl {
|
|
||||||
|
|
||||||
private Text filterText;
|
|
||||||
|
|
||||||
private TreeViewer usersTreeViewer;
|
|
||||||
|
|
||||||
private IMenuManager mainMenu;
|
|
||||||
|
|
||||||
private ICollaborationUIManager manager;
|
|
||||||
|
|
||||||
private ActiveSessionsTreeData activeSessions;
|
|
||||||
|
|
||||||
private MyUserTreeData myUserData;
|
|
||||||
|
|
||||||
private List<UserGroupTreeData> groups = new ArrayList<UserGroupTreeData>();
|
|
||||||
|
|
||||||
public CollaborationGroupControl(Composite compsite,
|
|
||||||
ICollaborationUIManager manager) {
|
|
||||||
this.manager = manager;
|
|
||||||
initializeGroupControl(compsite);
|
|
||||||
manager.getConnection().registerEventHandler(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param parent
|
|
||||||
*/
|
|
||||||
private void initializeGroupControl(Composite parent) {
|
|
||||||
parent.setLayout(new GridLayout());
|
|
||||||
createFilterText(parent);
|
|
||||||
createUserTree(parent);
|
|
||||||
|
|
||||||
createMainMenu();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param parent
|
|
||||||
*/
|
|
||||||
private void createUserTree(Composite parent) {
|
|
||||||
Composite treeComp = new Composite(parent, SWT.NONE);
|
|
||||||
treeComp.setLayout(new GridLayout(1, false));
|
|
||||||
treeComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
|
|
||||||
Tree tree = new Tree(treeComp, SWT.VIRTUAL | SWT.MULTI | SWT.V_SCROLL
|
|
||||||
| SWT.H_SCROLL | SWT.BORDER);
|
|
||||||
tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
|
|
||||||
|
|
||||||
// any width would work
|
|
||||||
new TreeColumn(tree, SWT.NONE).setWidth(200);
|
|
||||||
|
|
||||||
MenuManager menuMgr = new MenuManager();
|
|
||||||
menuMgr.setRemoveAllWhenShown(true);
|
|
||||||
menuMgr.addMenuListener(new IMenuListener() {
|
|
||||||
public void menuAboutToShow(IMenuManager mgr) {
|
|
||||||
fillContextMenu(mgr);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Menu menu = menuMgr.createContextMenu(tree);
|
|
||||||
tree.setMenu(menu);
|
|
||||||
|
|
||||||
usersTreeViewer = new TreeViewer(tree);
|
|
||||||
usersTreeViewer.setContentProvider(new UsersTreeContentProvider());
|
|
||||||
usersTreeViewer.setLabelProvider(new UsersTreeLabelProvider());
|
|
||||||
populateTree();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void populateTree() {
|
|
||||||
if (myUserData == null) {
|
|
||||||
myUserData = new MyUserTreeData(CollaborationConnection
|
|
||||||
.getConnection().getUser());
|
|
||||||
activeSessions = new ActiveSessionsTreeData();
|
|
||||||
usersTreeViewer.add(new TreePath(new Object[0]), new Object[] {
|
|
||||||
myUserData, activeSessions });
|
|
||||||
}
|
|
||||||
usersTreeViewer.remove(groups.toArray(new Object[groups.size()]));
|
|
||||||
groups.clear();
|
|
||||||
populateGroups();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
private void populateGroups() {
|
|
||||||
Map<String, UserGroupTreeData> dataMap = new HashMap<String, UserGroupTreeData>();
|
|
||||||
IRoster roster = CollaborationConnection.getConnection()
|
|
||||||
.getRosterManager().getRoster();
|
|
||||||
for (Object item : roster.getItems()) {
|
|
||||||
if (item instanceof IRosterGroup) {
|
|
||||||
IRosterGroup group = (IRosterGroup) item;
|
|
||||||
} else if (item instanceof IRosterEntry) {
|
|
||||||
IRosterEntry entry = (IRosterEntry) item;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void fillContextMenu(IMenuManager mgr) {
|
|
||||||
// TODO: Fill context menu based on selected tree items
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
private void createFilterText(Composite parent) {
|
|
||||||
Composite comp = new Composite(parent, SWT.BORDER);
|
|
||||||
comp.setBackground(Display.getCurrent().getSystemColor(
|
|
||||||
SWT.COLOR_LIST_BACKGROUND));
|
|
||||||
GridLayout layout = new GridLayout(2, false);
|
|
||||||
layout.marginHeight = 0;
|
|
||||||
layout.marginWidth = 0;
|
|
||||||
comp.setLayout(layout);
|
|
||||||
GridData gd = new GridData(SWT.FILL, SWT.NONE, true, false);
|
|
||||||
comp.setLayoutData(gd);
|
|
||||||
|
|
||||||
filterText = new Text(comp, SWT.SINGLE | SWT.NONE);
|
|
||||||
GridData data = new GridData(SWT.FILL, SWT.NONE, true, false);
|
|
||||||
filterText.setLayoutData(data);
|
|
||||||
filterText.addKeyListener(new KeyAdapter() {
|
|
||||||
@Override
|
|
||||||
public void keyReleased(KeyEvent e) {
|
|
||||||
filter();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// Load icons to be used for label button
|
|
||||||
final Image inactiveImage = AbstractUIPlugin.imageDescriptorFromPlugin(
|
|
||||||
PlatformUI.PLUGIN_ID, "$nl$/icons/full/dtool16/clear_co.gif")
|
|
||||||
.createImage();
|
|
||||||
final Image activeImage = AbstractUIPlugin.imageDescriptorFromPlugin(
|
|
||||||
PlatformUI.PLUGIN_ID, "$nl$/icons/full/etool16/clear_co.gif")
|
|
||||||
.createImage();
|
|
||||||
|
|
||||||
final Label clearButton = new Label(comp, SWT.NONE);
|
|
||||||
clearButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER,
|
|
||||||
false, false));
|
|
||||||
clearButton.setImage(inactiveImage);
|
|
||||||
clearButton.setBackground(parent.getDisplay().getSystemColor(
|
|
||||||
SWT.COLOR_LIST_BACKGROUND));
|
|
||||||
clearButton.setToolTipText("Clear text");
|
|
||||||
// Add listener for enter/exit changing icon
|
|
||||||
clearButton.addMouseTrackListener(new MouseTrackAdapter() {
|
|
||||||
public void mouseEnter(MouseEvent e) {
|
|
||||||
clearButton.setImage(activeImage);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void mouseExit(MouseEvent e) {
|
|
||||||
clearButton.setImage(inactiveImage);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
// Add mouse listener for clear pressed
|
|
||||||
clearButton.addMouseListener(new MouseAdapter() {
|
|
||||||
@Override
|
|
||||||
public void mouseUp(MouseEvent e) {
|
|
||||||
filterText.setText("");
|
|
||||||
filter();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
// Add dispose listener
|
|
||||||
clearButton.addDisposeListener(new DisposeListener() {
|
|
||||||
public void widgetDisposed(DisposeEvent e) {
|
|
||||||
inactiveImage.dispose();
|
|
||||||
activeImage.dispose();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
private void createMainMenu() {
|
|
||||||
// TODO: Populate the main menu
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the {@link Tree} object that contains user information for the
|
|
||||||
* control
|
|
||||||
*
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public Tree getUserTree() {
|
|
||||||
return usersTreeViewer.getTree();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Gets the contribution items for the group main menu
|
|
||||||
*
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public IContributionItem[] getMainMenuItems() {
|
|
||||||
return mainMenu.getItems();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Filters the group view based on the text
|
|
||||||
*
|
|
||||||
* @param text
|
|
||||||
*/
|
|
||||||
private void filter() {
|
|
||||||
String currText = filterText.getText();
|
|
||||||
// TODO: Filter the visible tree objects
|
|
||||||
}
|
|
||||||
|
|
||||||
@Subscribe
|
|
||||||
public void handleRosterChangeEvent(IRosterChangeEvent rosterChangeEvent) {
|
|
||||||
// TODO: Handle roster events
|
|
||||||
switch (rosterChangeEvent.getType()) {
|
|
||||||
case ADD:
|
|
||||||
break;
|
|
||||||
case MODIFY:
|
|
||||||
break;
|
|
||||||
case DELETE:
|
|
||||||
break;
|
|
||||||
case PRESENCE:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class AliasAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class ChangeFontAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class ChangePasswordAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class ChangeStatusMessageAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class ChooseRoleAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class ChooseSiteAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,163 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import static com.raytheon.uf.viz.collaboration.core.ui.CollaborationIconFactory.getIconImage;
|
|
||||||
|
|
||||||
import org.eclipse.jface.action.Action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Factory for constructing core collaboration ui functionality actions
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class CollaborationActionFactory {
|
|
||||||
|
|
||||||
public static Action createAliasAction(CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new AliasAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Alias...");
|
|
||||||
// TODO: Find Alias image
|
|
||||||
action.setImageDescriptor(getIconImage("alias.gif"));
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createChangeFontAction(
|
|
||||||
CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new ChangeFontAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Change Font...");
|
|
||||||
action.setImageDescriptor(getIconImage("font.gif"));
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createChangePasswordAction(
|
|
||||||
CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new ChangePasswordAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Change Password...");
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createChooseRoleAction(
|
|
||||||
CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new ChooseRoleAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Change Role");
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createChooseSiteAction(
|
|
||||||
CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new ChooseSiteAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Change Site");
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createChooseStatusAction(
|
|
||||||
CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new ChooseStatusAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Change Status");
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createCollapseAllAction(
|
|
||||||
CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new CollapseAllAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Collapse All...");
|
|
||||||
action.setImageDescriptor(getIconImage("collapseall.gif"));
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createCreateGroupAction(
|
|
||||||
CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new CreateGroupAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Create Group...");
|
|
||||||
action.setImageDescriptor(getIconImage("group.gif"));
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createCreateSessionAction(
|
|
||||||
CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new CreateSessionAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Create Session...");
|
|
||||||
action.setImageDescriptor(getIconImage("add_collaborate.gif"));
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createLoginAction(CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new LogoutAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Login");
|
|
||||||
action.setImageDescriptor(getIconImage("login.gif"));
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createLogoutAction(CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new LogoutAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Logout");
|
|
||||||
action.setImageDescriptor(getIconImage("logout.gif"));
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createP2PChatAction(CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new P2PChatAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Chat...");
|
|
||||||
action.setImageDescriptor(getIconImage("chats.gif"));
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createShowFeedAction(CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new ShowFeedAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("Display Feed...");
|
|
||||||
action.setImageDescriptor(getIconImage("feed.gif"));
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Action createViewLogAction(CollaborationGroupControl control) {
|
|
||||||
AbstractCollaborationAction action = new ViewLogAction();
|
|
||||||
action.setControl(control);
|
|
||||||
action.setText("View Log...");
|
|
||||||
action.setImageDescriptor(getIconImage("log.gif"));
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class CollapseAllAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class CreateGroupAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class LoginAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class LogoutAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class P2PChatAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class ShowFeedAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.action;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class ViewLogAction extends AbstractCollaborationAction {
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see com.raytheon.uf.viz.collaboration.core.ui.action.AbstractCollaborationAction#run(com.raytheon.uf.viz.collaboration.core.ui.CollaborationGroupControl)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void run(CollaborationGroupControl control) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,83 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.data;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.eclipse.ecf.presence.roster.IRosterEntry;
|
|
||||||
import org.eclipse.ecf.presence.roster.IRosterGroup;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 26, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class UserGroupTreeData {
|
|
||||||
|
|
||||||
private String groupName;
|
|
||||||
|
|
||||||
private IRosterGroup group;
|
|
||||||
|
|
||||||
private List<UserTreeData> groupUsers;
|
|
||||||
|
|
||||||
public UserGroupTreeData(String groupName, IRosterGroup group) {
|
|
||||||
this.groupName = groupName;
|
|
||||||
this.group = group;
|
|
||||||
this.groupUsers = new ArrayList<UserTreeData>();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return the groupName
|
|
||||||
*/
|
|
||||||
public String getGroupName() {
|
|
||||||
return groupName;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return the groupUsers
|
|
||||||
*/
|
|
||||||
public List<UserTreeData> getGroupUsers() {
|
|
||||||
return new ArrayList<UserTreeData>(groupUsers);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Adds a user to this group
|
|
||||||
*
|
|
||||||
* @param user
|
|
||||||
*/
|
|
||||||
public void addUserToGroup(UserId user, IRosterEntry entry) {
|
|
||||||
groupUsers.add(new UserTreeData(user, entry));
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,114 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.tree;
|
|
||||||
|
|
||||||
import org.eclipse.jface.viewers.ITreeContentProvider;
|
|
||||||
import org.eclipse.jface.viewers.Viewer;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 27, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class UsersTreeContentProvider implements ITreeContentProvider {
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see org.eclipse.jface.viewers.IContentProvider#dispose()
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void dispose() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface
|
|
||||||
* .viewers.Viewer, java.lang.Object, java.lang.Object)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.eclipse.jface.viewers.ITreeContentProvider#getElements(java.lang.
|
|
||||||
* Object)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Object[] getElements(Object inputElement) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.
|
|
||||||
* Object)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Object[] getChildren(Object parentElement) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object
|
|
||||||
* )
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Object getParent(Object element) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.
|
|
||||||
* Object)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public boolean hasChildren(Object element) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,110 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.core.ui.tree;
|
|
||||||
|
|
||||||
import org.eclipse.jface.viewers.ColumnLabelProvider;
|
|
||||||
import org.eclipse.swt.graphics.Image;
|
|
||||||
|
|
||||||
import com.raytheon.uf.viz.collaboration.comm.identity.info.SiteConfigInformation;
|
|
||||||
import com.raytheon.uf.viz.collaboration.comm.provider.session.CollaborationConnection;
|
|
||||||
import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.data.ActiveSessionsTreeData;
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.data.MyUserTreeData;
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.data.UserGroupTreeData;
|
|
||||||
import com.raytheon.uf.viz.collaboration.core.ui.data.UserTreeData;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Add Description
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 27, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class UsersTreeLabelProvider extends ColumnLabelProvider {
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.eclipse.jface.viewers.ColumnLabelProvider#getImage(java.lang.Object)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Image getImage(Object element) {
|
|
||||||
Image image = null;
|
|
||||||
if (element instanceof UserTreeData) {
|
|
||||||
|
|
||||||
} else if (element instanceof MyUserTreeData) {
|
|
||||||
|
|
||||||
} else if (element instanceof UserGroupTreeData) {
|
|
||||||
|
|
||||||
} else if (element instanceof ActiveSessionsTreeData) {
|
|
||||||
|
|
||||||
}
|
|
||||||
return image;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.eclipse.jface.viewers.ColumnLabelProvider#getText(java.lang.Object)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public String getText(Object element) {
|
|
||||||
String text = null;
|
|
||||||
if (element instanceof UserTreeData) {
|
|
||||||
text = formatUserId(((UserTreeData) element).getUser());
|
|
||||||
} else if (element instanceof MyUserTreeData) {
|
|
||||||
text = formatUserId(((UserTreeData) element).getUser())
|
|
||||||
+ " - "
|
|
||||||
+ CollaborationConnection.getConnection()
|
|
||||||
.getConnectionData().getServer();
|
|
||||||
} else if (element instanceof UserGroupTreeData) {
|
|
||||||
text = ((UserGroupTreeData) element).getGroupName();
|
|
||||||
} else if (element instanceof ActiveSessionsTreeData) {
|
|
||||||
text = "Active Sessions";
|
|
||||||
}
|
|
||||||
return text;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static String formatUserId(UserId user) {
|
|
||||||
Object site = user.getProperties().get(SiteConfigInformation.SITE_NAME);
|
|
||||||
Object role = user.getProperties().get(SiteConfigInformation.ROLE_NAME);
|
|
||||||
String name = (user.getAlias() != null ? user.getAlias() : user
|
|
||||||
.getName());
|
|
||||||
if (site != null) {
|
|
||||||
name += " - " + site;
|
|
||||||
}
|
|
||||||
if (role != null) {
|
|
||||||
name += " - " + role;
|
|
||||||
}
|
|
||||||
return name;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -25,6 +25,8 @@ import java.util.List;
|
||||||
|
|
||||||
import com.google.common.eventbus.Subscribe;
|
import com.google.common.eventbus.Subscribe;
|
||||||
import com.raytheon.uf.common.colormap.IColorMap;
|
import com.raytheon.uf.common.colormap.IColorMap;
|
||||||
|
import com.raytheon.uf.common.colormap.image.ColorMapData;
|
||||||
|
import com.raytheon.uf.common.colormap.prefs.ColorMapParameters;
|
||||||
import com.raytheon.uf.common.status.UFStatus.Priority;
|
import com.raytheon.uf.common.status.UFStatus.Priority;
|
||||||
import com.raytheon.uf.viz.collaboration.display.Activator;
|
import com.raytheon.uf.viz.collaboration.display.Activator;
|
||||||
import com.raytheon.uf.viz.core.DrawableImage;
|
import com.raytheon.uf.viz.core.DrawableImage;
|
||||||
|
@ -34,7 +36,6 @@ import com.raytheon.uf.viz.core.IMesh;
|
||||||
import com.raytheon.uf.viz.core.PixelCoverage;
|
import com.raytheon.uf.viz.core.PixelCoverage;
|
||||||
import com.raytheon.uf.viz.core.data.IColorMapDataRetrievalCallback;
|
import com.raytheon.uf.viz.core.data.IColorMapDataRetrievalCallback;
|
||||||
import com.raytheon.uf.viz.core.data.IRenderedImageCallback;
|
import com.raytheon.uf.viz.core.data.IRenderedImageCallback;
|
||||||
import com.raytheon.uf.viz.core.drawables.ColorMapParameters;
|
|
||||||
import com.raytheon.uf.viz.core.drawables.IColormappedImage;
|
import com.raytheon.uf.viz.core.drawables.IColormappedImage;
|
||||||
import com.raytheon.uf.viz.core.drawables.IImage;
|
import com.raytheon.uf.viz.core.drawables.IImage;
|
||||||
import com.raytheon.uf.viz.core.drawables.PaintProperties;
|
import com.raytheon.uf.viz.core.drawables.PaintProperties;
|
||||||
|
|
|
@ -21,7 +21,6 @@
|
||||||
<import feature="com.raytheon.uf.viz.common.core.feature" version="1.0.0.qualifier"/>
|
<import feature="com.raytheon.uf.viz.common.core.feature" version="1.0.0.qualifier"/>
|
||||||
<import feature="com.raytheon.uf.viz.core.feature" version="1.0.0.qualifier"/>
|
<import feature="com.raytheon.uf.viz.core.feature" version="1.0.0.qualifier"/>
|
||||||
<import feature="com.raytheon.uf.viz.cots.feature" version="1.0.0.qualifier"/>
|
<import feature="com.raytheon.uf.viz.cots.feature" version="1.0.0.qualifier"/>
|
||||||
<import feature="com.raytheon.uf.viz.eclipse.feature" version="1.0.0.qualifier"/>
|
|
||||||
<import feature="com.raytheon.viz.radar.feature" version="1.0.0.qualifier"/>
|
<import feature="com.raytheon.viz.radar.feature" version="1.0.0.qualifier"/>
|
||||||
</requires>
|
</requires>
|
||||||
|
|
||||||
|
@ -95,12 +94,6 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.google.guava"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.viz.drawing"
|
id="com.raytheon.uf.viz.drawing"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -150,4 +143,11 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.equinox.concurrent"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
</feature>
|
</feature>
|
||||||
|
|
|
@ -1,13 +0,0 @@
|
||||||
Manifest-Version: 1.0
|
|
||||||
Bundle-ManifestVersion: 2
|
|
||||||
Bundle-Name: Collaboration Product
|
|
||||||
Bundle-SymbolicName: com.raytheon.uf.viz.collaboration.product;singleton:=true
|
|
||||||
Bundle-Version: 1.0.0.qualifier
|
|
||||||
Bundle-Activator: com.raytheon.uf.viz.collaboration.product.Activator
|
|
||||||
Bundle-Vendor: RAYTHEON
|
|
||||||
Require-Bundle: org.eclipse.ui,
|
|
||||||
org.eclipse.core.runtime,
|
|
||||||
com.raytheon.uf.viz.application;bundle-version="1.0.0",
|
|
||||||
com.raytheon.uf.common.localization;bundle-version="1.12.1174"
|
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
|
||||||
Bundle-ActivationPolicy: lazy
|
|
|
@ -1,58 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<?pde version="3.5"?>
|
|
||||||
|
|
||||||
<product name="collaboration" id="com.raytheon.uf.viz.collaboration.product.collaboration" application="com.raytheon.uf.viz.application.application" useFeatures="true" includeLaunchers="true">
|
|
||||||
|
|
||||||
<aboutInfo>
|
|
||||||
<image path="/com.raytheon.viz.product.awips/icons/ipr.gif"/>
|
|
||||||
<text>
|
|
||||||
Alert Visualizer
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Developed on the Raytheon Visualization Environment (viz)
|
|
||||||
</text>
|
|
||||||
</aboutInfo>
|
|
||||||
|
|
||||||
<configIni use="default">
|
|
||||||
</configIni>
|
|
||||||
|
|
||||||
<launcherArgs>
|
|
||||||
<programArgs>-data @user.home/caveData -user @user.home/caveData -clean -component collaboration</programArgs>
|
|
||||||
<programArgsLin>-consoleLog</programArgsLin>
|
|
||||||
<vmArgs>-Xincgc -Xmx256M -Xss2024k -Dosgi.instance.area.readOnly=true -Dosgi.hook.configurators.exclude=org.eclipse.core.runtime.internal.adaptor.EclipseLogHook,org.eclipse.core.runtime.internal.adaptor.EclipseErrorHandler -Dorg.eclipse.update.reconcile=false -Dqpid.dest_syntax=BURL -Dorg.eclipse.update.reconcile=false -XX:MaxPermSize=128m -Dorg.eclipse.ui/KEY_CONFIGURATION_ID=com.raytheon.viz.ui.awips.scheme -Dawips.mode=pypies -Dqpid.dest_syntax=BURL -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false</vmArgs>
|
|
||||||
</launcherArgs>
|
|
||||||
|
|
||||||
<windowImages/>
|
|
||||||
|
|
||||||
<launcher name="collaboration">
|
|
||||||
<solaris/>
|
|
||||||
<win useIco="false">
|
|
||||||
<bmp
|
|
||||||
winSmallHigh="/com.raytheon.viz.ui.personalities.awips/alertViz_icon16x16_32bit.bmp"
|
|
||||||
winSmallLow="/com.raytheon.viz.ui.personalities.awips/alertViz_icon16x16_8bit.bmp"
|
|
||||||
winMediumHigh="/com.raytheon.viz.ui.personalities.awips/alertViz_icon32x32_32bit.bmp"
|
|
||||||
winMediumLow="/com.raytheon.viz.ui.personalities.awips/alertViz_icon32x32_8bit.bmp"
|
|
||||||
winLargeHigh="/com.raytheon.viz.ui.personalities.awips/alertViz_icon48x48_32bit.bmp"
|
|
||||||
winLargeLow="/com.raytheon.viz.ui.personalities.awips/alertViz_icon48x48_8bit.bmp"/>
|
|
||||||
</win>
|
|
||||||
</launcher>
|
|
||||||
|
|
||||||
<vm>
|
|
||||||
<linux include="true">jdk1.6.0</linux>
|
|
||||||
<windows include="true">jdk1.6.0</windows>
|
|
||||||
</vm>
|
|
||||||
|
|
||||||
<plugins>
|
|
||||||
</plugins>
|
|
||||||
|
|
||||||
<features>
|
|
||||||
<feature id="com.raytheon.uf.viz.collaboration.product.feature" version="1.0.0.qualifier"/>
|
|
||||||
</features>
|
|
||||||
|
|
||||||
<configurations>
|
|
||||||
<plugin id="com.raytheon.uf.viz.spring.dm" autoStart="true" startLevel="5" />
|
|
||||||
<plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="4" />
|
|
||||||
</configurations>
|
|
||||||
|
|
||||||
</product>
|
|
|
@ -1,47 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
|
|
||||||
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
|
|
||||||
|
|
||||||
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
|
|
||||||
This_software_product_contains_export-restricted_data_whose
|
|
||||||
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
|
|
||||||
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
|
|
||||||
an_export_license_or_other_authorization.
|
|
||||||
|
|
||||||
Contractor_Name:________Raytheon_Company
|
|
||||||
Contractor_Address:_____6825_Pine_Street,_Suite_340
|
|
||||||
________________________Mail_Stop_B8
|
|
||||||
________________________Omaha,_NE_68106
|
|
||||||
________________________402.291.0100
|
|
||||||
|
|
||||||
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
|
|
||||||
further_licensing_information.
|
|
||||||
-->
|
|
||||||
<?eclipse version="3.2"?>
|
|
||||||
<plugin>
|
|
||||||
<extension
|
|
||||||
point="com.raytheon.uf.viz.core.component">
|
|
||||||
<component key="collaboration" class="com.raytheon.uf.viz.collaboration.product.CollaborationComponent"/>
|
|
||||||
</extension>
|
|
||||||
<extension
|
|
||||||
id="collaboration"
|
|
||||||
point="org.eclipse.core.runtime.products">
|
|
||||||
<product
|
|
||||||
application="com.raytheon.uf.viz.application.application"
|
|
||||||
name="collaboration">
|
|
||||||
<property
|
|
||||||
name="aboutText"
|
|
||||||
value="Alert Visualizer



Developed on the Raytheon Visualization Environment (viz)">
|
|
||||||
</property>
|
|
||||||
<property
|
|
||||||
name="aboutImage"
|
|
||||||
value="platform:/plugin/com.raytheon.viz.product.awips/icons/ipr.gif">
|
|
||||||
</property>
|
|
||||||
<property
|
|
||||||
name="appName"
|
|
||||||
value="collaboration">
|
|
||||||
</property>
|
|
||||||
</product>
|
|
||||||
</extension>
|
|
||||||
</plugin>
|
|
|
@ -1,222 +0,0 @@
|
||||||
/**
|
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
|
||||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
||||||
*
|
|
||||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
||||||
* This software product contains export-restricted data whose
|
|
||||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
||||||
* to non-U.S. persons whether in the United States or abroad requires
|
|
||||||
* an export license or other authorization.
|
|
||||||
*
|
|
||||||
* Contractor Name: Raytheon Company
|
|
||||||
* Contractor Address: 6825 Pine Street, Suite 340
|
|
||||||
* Mail Stop B8
|
|
||||||
* Omaha, NE 68106
|
|
||||||
* 402.291.0100
|
|
||||||
*
|
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
||||||
* further licensing information.
|
|
||||||
**/
|
|
||||||
package com.raytheon.uf.viz.collaboration.product;
|
|
||||||
|
|
||||||
import java.io.File;
|
|
||||||
|
|
||||||
import com.raytheon.uf.common.localization.ILocalizationAdapter;
|
|
||||||
import com.raytheon.uf.common.localization.LocalizationContext;
|
|
||||||
import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel;
|
|
||||||
import com.raytheon.uf.common.localization.LocalizationContext.LocalizationType;
|
|
||||||
import com.raytheon.uf.common.localization.LocalizationFile;
|
|
||||||
import com.raytheon.uf.common.localization.LocalizationFile.ModifiableLocalizationFile;
|
|
||||||
import com.raytheon.uf.common.localization.exception.LocalizationOpFailedException;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO Mimic CAVELocalizationAdapter!
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
*
|
|
||||||
* SOFTWARE HISTORY
|
|
||||||
*
|
|
||||||
* Date Ticket# Engineer Description
|
|
||||||
* ------------ ---------- ----------- --------------------------
|
|
||||||
* Jun 27, 2012 mschenke Initial creation
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @author mschenke
|
|
||||||
* @version 1.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class CollaborationLocalizationAdapter implements ILocalizationAdapter {
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* com.raytheon.uf.common.localization.ILocalizationAdapter#getPath(com.
|
|
||||||
* raytheon.uf.common.localization.LocalizationContext, java.lang.String)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public File getPath(LocalizationContext context, String fileName) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see com.raytheon.uf.common.localization.ILocalizationAdapter#
|
|
||||||
* getLocalizationMetadata
|
|
||||||
* (com.raytheon.uf.common.localization.LocalizationContext[],
|
|
||||||
* java.lang.String)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public ListResponse[] getLocalizationMetadata(
|
|
||||||
LocalizationContext[] context, String fileName)
|
|
||||||
throws LocalizationOpFailedException {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* com.raytheon.uf.common.localization.ILocalizationAdapter#retrieve(com
|
|
||||||
* .raytheon.uf.common.localization.LocalizationFile)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void retrieve(LocalizationFile file)
|
|
||||||
throws LocalizationOpFailedException {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* com.raytheon.uf.common.localization.ILocalizationAdapter#save(com.raytheon
|
|
||||||
* .uf.common.localization.LocalizationFile. ModifiableLocalizationFile)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public boolean save(ModifiableLocalizationFile file)
|
|
||||||
throws LocalizationOpFailedException {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* com.raytheon.uf.common.localization.ILocalizationAdapter#listDirectory
|
|
||||||
* (com.raytheon.uf.common.localization.LocalizationContext[],
|
|
||||||
* java.lang.String, boolean, boolean)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public ListResponse[] listDirectory(LocalizationContext[] context,
|
|
||||||
String path, boolean recursive, boolean filesOnly)
|
|
||||||
throws LocalizationOpFailedException {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see com.raytheon.uf.common.localization.ILocalizationAdapter#
|
|
||||||
* getLocalSearchHierarchy
|
|
||||||
* (com.raytheon.uf.common.localization.LocalizationContext
|
|
||||||
* .LocalizationType)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public LocalizationContext[] getLocalSearchHierarchy(LocalizationType type) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* com.raytheon.uf.common.localization.ILocalizationAdapter#getStaticContexts
|
|
||||||
* ()
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public LocalizationType[] getStaticContexts() {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* com.raytheon.uf.common.localization.ILocalizationAdapter#getContext(com
|
|
||||||
* .raytheon.uf.common.localization.LocalizationContext.LocalizationType,
|
|
||||||
* com
|
|
||||||
* .raytheon.uf.common.localization.LocalizationContext.LocalizationLevel)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public LocalizationContext getContext(LocalizationType type,
|
|
||||||
LocalizationLevel level) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* com.raytheon.uf.common.localization.ILocalizationAdapter#delete(com.raytheon
|
|
||||||
* .uf.common.localization.LocalizationFile. ModifiableLocalizationFile)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public boolean delete(ModifiableLocalizationFile file)
|
|
||||||
throws LocalizationOpFailedException {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* com.raytheon.uf.common.localization.ILocalizationAdapter#getContextList
|
|
||||||
* (com
|
|
||||||
* .raytheon.uf.common.localization.LocalizationContext.LocalizationLevel)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public String[] getContextList(LocalizationLevel level)
|
|
||||||
throws LocalizationOpFailedException {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* com.raytheon.uf.common.localization.ILocalizationAdapter#getAvailableLevels
|
|
||||||
* ()
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public LocalizationLevel[] getAvailableLevels() {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* com.raytheon.uf.common.localization.ILocalizationAdapter#exists(com.raytheon
|
|
||||||
* .uf.common.localization.LocalizationFile)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public boolean exists(LocalizationFile file) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -18,51 +18,10 @@
|
||||||
</license>
|
</license>
|
||||||
|
|
||||||
<requires>
|
<requires>
|
||||||
|
<import feature="com.raytheon.uf.viz.base.feature" version="1.0.0.qualifier"/>
|
||||||
<import feature="com.raytheon.uf.viz.cots.feature" version="1.0.0.qualifier"/>
|
<import feature="com.raytheon.uf.viz.cots.feature" version="1.0.0.qualifier"/>
|
||||||
</requires>
|
</requires>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.auth"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.colormap"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.comm"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.dataquery"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.datastorage"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.derivparam"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.common.dissemination"
|
id="com.raytheon.uf.common.dissemination"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -70,60 +29,6 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.geospatial"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.units"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.localization"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.menus"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.message"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.pointdata"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.pypies"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.python"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.common.cache"
|
id="com.raytheon.uf.common.cache"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -131,20 +36,6 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.serialization"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.serialization.comm"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.common.site"
|
id="com.raytheon.uf.common.site"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -152,19 +43,6 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.status"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.time"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.common.topo"
|
id="com.raytheon.uf.common.topo"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -172,20 +50,6 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.util"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.alertmonitor"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.edex.common"
|
id="com.raytheon.edex.common"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -193,13 +57,6 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.dataplugin"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.edex.core"
|
id="com.raytheon.uf.edex.core"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -214,20 +71,6 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.dataplugin.level"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.edex.topo"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.edex.meteolib"
|
id="com.raytheon.edex.meteolib"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -284,34 +127,40 @@
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.common.stats"
|
id="meteolib.jni"
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.event"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.dataaccess"
|
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.common.image"
|
id="meteolib.jni.linux32"
|
||||||
|
os="linux"
|
||||||
|
arch="x86"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
fragment="true"/>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.common.python.concurrent"
|
id="meteolib.jni.linux64"
|
||||||
|
os="linux"
|
||||||
|
arch="x86_64"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
fragment="true"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="meteolib.jni.win32"
|
||||||
|
os="win32"
|
||||||
|
arch="x86"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
fragment="true"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="javax.servlet"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
|
|
|
@ -19,48 +19,10 @@
|
||||||
|
|
||||||
<requires>
|
<requires>
|
||||||
<import feature="com.raytheon.uf.viz.cots.feature" version="1.0.0.qualifier"/>
|
<import feature="com.raytheon.uf.viz.cots.feature" version="1.0.0.qualifier"/>
|
||||||
<import feature="com.raytheon.uf.viz.eclipse.feature" version="1.0.0.qualifier"/>
|
|
||||||
<import feature="com.raytheon.uf.viz.common.core.feature" version="1.0.0.qualifier"/>
|
<import feature="com.raytheon.uf.viz.common.core.feature" version="1.0.0.qualifier"/>
|
||||||
|
<import feature="com.raytheon.uf.viz.localization.perspective.feature" version="1.0.0.qualifier"/>
|
||||||
</requires>
|
</requires>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.viz.core"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.viz.core.gl"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.viz.core"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.viz.core.rsc"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.viz.productbrowser"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.viz.localization"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.viz.python.swt"
|
id="com.raytheon.uf.viz.python.swt"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -68,18 +30,6 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.viz.ui.menus"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.viz.ui"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.viz.xy"
|
id="com.raytheon.uf.viz.xy"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -123,13 +73,6 @@
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.viz.alerts"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.viz.derivparam"
|
id="com.raytheon.uf.viz.derivparam"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -148,13 +91,6 @@
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.viz.spring.dm"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.viz.ui.tools.looping"
|
id="com.raytheon.viz.ui.tools.looping"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -167,12 +103,6 @@
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.viz.ui.tools.nav"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.viz.core.contours"
|
id="com.raytheon.viz.core.contours"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -187,25 +117,6 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.dataplugin.maps"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.viz.core.maps"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"/>
|
|
||||||
|
|
||||||
<plugin
|
|
||||||
id="com.raytheon.uf.common.alertviz"
|
|
||||||
download-size="0"
|
|
||||||
install-size="0"
|
|
||||||
version="0.0.0"
|
|
||||||
unpack="false"/>
|
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="com.raytheon.uf.viz.alertviz"
|
id="com.raytheon.uf.viz.alertviz"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
|
@ -249,4 +160,38 @@
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.jdt.ui"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.jdt.core"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.jdt.core.manipulation"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.jdt.launching"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="org.eclipse.jdt.debug"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"/>
|
||||||
|
|
||||||
</feature>
|
</feature>
|
||||||
|
|
|
@ -19,7 +19,6 @@
|
||||||
|
|
||||||
<requires>
|
<requires>
|
||||||
<import feature="com.raytheon.uf.viz.cots.feature" version="1.0.0.qualifier"/>
|
<import feature="com.raytheon.uf.viz.cots.feature" version="1.0.0.qualifier"/>
|
||||||
<import feature="com.raytheon.uf.viz.eclipse.feature" version="1.0.0.qualifier"/>
|
|
||||||
<import feature="com.raytheon.uf.viz.common.core.feature" version="1.0.0.qualifier"/>
|
<import feature="com.raytheon.uf.viz.common.core.feature" version="1.0.0.qualifier"/>
|
||||||
<import feature="com.raytheon.uf.viz.core.feature" version="1.0.0.qualifier"/>
|
<import feature="com.raytheon.uf.viz.core.feature" version="1.0.0.qualifier"/>
|
||||||
</requires>
|
</requires>
|
||||||
|
|
|
@ -19,7 +19,8 @@ Require-Bundle: org.eclipse.ui,
|
||||||
com.raytheon.uf.viz.core.rsc;bundle-version="1.0.0",
|
com.raytheon.uf.viz.core.rsc;bundle-version="1.0.0",
|
||||||
com.raytheon.uf.viz.ui.menus;bundle-version="1.12.1174",
|
com.raytheon.uf.viz.ui.menus;bundle-version="1.12.1174",
|
||||||
com.raytheon.uf.common.dataplugin.maps;bundle-version="1.0.0",
|
com.raytheon.uf.common.dataplugin.maps;bundle-version="1.0.0",
|
||||||
com.raytheon.uf.viz.localization;bundle-version="1.12.1174"
|
com.raytheon.uf.viz.localization;bundle-version="1.12.1174",
|
||||||
|
com.raytheon.uf.common.colormap;bundle-version="1.12.1174"
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Eclipse-RegisterBuddy: com.raytheon.uf.viz.core
|
Eclipse-RegisterBuddy: com.raytheon.uf.viz.core
|
||||||
|
@ -27,4 +28,5 @@ Export-Package: com.raytheon.uf.viz.core.maps,
|
||||||
com.raytheon.uf.viz.core.maps.actions,
|
com.raytheon.uf.viz.core.maps.actions,
|
||||||
com.raytheon.uf.viz.core.maps.display,
|
com.raytheon.uf.viz.core.maps.display,
|
||||||
com.raytheon.uf.viz.core.maps.menus,
|
com.raytheon.uf.viz.core.maps.menus,
|
||||||
com.raytheon.uf.viz.core.maps.rsc
|
com.raytheon.uf.viz.core.maps.rsc,
|
||||||
|
com.raytheon.uf.viz.core.maps.scales
|
||||||
|
|
|
@ -3,4 +3,5 @@ com.raytheon.uf.viz.core.maps.rsc.DbMapResourceData
|
||||||
com.raytheon.uf.viz.core.maps.rsc.DbPointMapResourceData
|
com.raytheon.uf.viz.core.maps.rsc.DbPointMapResourceData
|
||||||
com.raytheon.uf.viz.core.maps.MapStylePreferenceStore
|
com.raytheon.uf.viz.core.maps.MapStylePreferenceStore
|
||||||
com.raytheon.uf.viz.core.maps.display.MapRenderableDisplay
|
com.raytheon.uf.viz.core.maps.display.MapRenderableDisplay
|
||||||
com.raytheon.uf.viz.core.maps.display.PlainMapRenderableDisplay
|
com.raytheon.uf.viz.core.maps.display.PlainMapRenderableDisplay
|
||||||
|
com.raytheon.uf.viz.core.maps.scales.MapScaleRenderableDisplay
|
|
@ -49,6 +49,12 @@
|
||||||
<commandParameter id="mapName" name="Map Name" optional="false"/>
|
<commandParameter id="mapName" name="Map Name" optional="false"/>
|
||||||
<commandParameter id="mapPath" name="Map Path" optional="false"/>
|
<commandParameter id="mapPath" name="Map Path" optional="false"/>
|
||||||
</command>
|
</command>
|
||||||
|
<command
|
||||||
|
id="com.raytheon.viz.ui.maps.createProjection"
|
||||||
|
categoryId="com.raytheon.uf.viz.core.commandCategory"
|
||||||
|
description="Command to create a new map projection"
|
||||||
|
name="Create Projection">
|
||||||
|
</command>
|
||||||
</extension>
|
</extension>
|
||||||
<extension
|
<extension
|
||||||
point="org.eclipse.ui.handlers">
|
point="org.eclipse.ui.handlers">
|
||||||
|
@ -56,6 +62,14 @@
|
||||||
class="com.raytheon.uf.viz.core.maps.actions.LoadMap"
|
class="com.raytheon.uf.viz.core.maps.actions.LoadMap"
|
||||||
commandId="com.raytheon.uf.viz.core.maps.actions.LoadMap">
|
commandId="com.raytheon.uf.viz.core.maps.actions.LoadMap">
|
||||||
</handler>
|
</handler>
|
||||||
|
<handler
|
||||||
|
class="com.raytheon.uf.viz.core.maps.scales.MapScaleHandler"
|
||||||
|
commandId="com.raytheon.viz.ui.setScale">
|
||||||
|
</handler>
|
||||||
|
<handler
|
||||||
|
class="com.raytheon.uf.viz.core.maps.actions.CreateProjectionHandler"
|
||||||
|
commandId="com.raytheon.viz.ui.maps.createProjection">
|
||||||
|
</handler>
|
||||||
</extension>
|
</extension>
|
||||||
<extension
|
<extension
|
||||||
point="com.raytheon.viz.ui.contextualMenu">
|
point="com.raytheon.viz.ui.contextualMenu">
|
||||||
|
@ -110,4 +124,22 @@
|
||||||
value="mapStyles">
|
value="mapStyles">
|
||||||
</path>
|
</path>
|
||||||
</extension>
|
</extension>
|
||||||
|
<extension
|
||||||
|
point="org.eclipse.ui.menus">
|
||||||
|
<menuContribution
|
||||||
|
locationURI="menu:file.new">
|
||||||
|
<command
|
||||||
|
commandId="com.raytheon.viz.ui.maps.createProjection"
|
||||||
|
label="Map Projection..."
|
||||||
|
style="push">
|
||||||
|
</command>
|
||||||
|
</menuContribution>
|
||||||
|
<menuContribution
|
||||||
|
locationURI="menu:com.raytheon.viz.ui.scale">
|
||||||
|
<dynamic
|
||||||
|
class="com.raytheon.uf.viz.core.maps.scales.MapScalePopulator"
|
||||||
|
id="com.raytheon.uf.viz.core.maps.mapScales">
|
||||||
|
</dynamic>
|
||||||
|
</menuContribution>
|
||||||
|
</extension>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
* further licensing information.
|
* further licensing information.
|
||||||
**/
|
**/
|
||||||
package com.raytheon.uf.viz.d2d.ui.map;
|
package com.raytheon.uf.viz.core.maps.actions;
|
||||||
|
|
||||||
import org.eclipse.core.commands.ExecutionEvent;
|
import org.eclipse.core.commands.ExecutionEvent;
|
||||||
import org.eclipse.core.commands.ExecutionException;
|
import org.eclipse.core.commands.ExecutionException;
|
||||||
|
@ -25,7 +25,7 @@ import org.eclipse.core.commands.IHandler;
|
||||||
import org.eclipse.swt.widgets.Shell;
|
import org.eclipse.swt.widgets.Shell;
|
||||||
import org.eclipse.ui.PlatformUI;
|
import org.eclipse.ui.PlatformUI;
|
||||||
|
|
||||||
import com.raytheon.uf.viz.d2d.ui.dialogs.CreateProjectionDialog;
|
import com.raytheon.uf.viz.core.maps.dialogs.CreateProjectionDialog;
|
||||||
import com.raytheon.viz.ui.tools.AbstractTool;
|
import com.raytheon.viz.ui.tools.AbstractTool;
|
||||||
|
|
||||||
/**
|
/**
|
|
@ -1,4 +1,4 @@
|
||||||
package com.raytheon.uf.viz.d2d.ui.map.actions;
|
package com.raytheon.uf.viz.core.maps.actions;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This software was developed and / or modified by Raytheon Company,
|
* This software was developed and / or modified by Raytheon Company,
|
||||||
|
@ -29,12 +29,10 @@ import org.eclipse.core.commands.ExecutionException;
|
||||||
import com.raytheon.uf.common.status.IUFStatusHandler;
|
import com.raytheon.uf.common.status.IUFStatusHandler;
|
||||||
import com.raytheon.uf.common.status.UFStatus;
|
import com.raytheon.uf.common.status.UFStatus;
|
||||||
import com.raytheon.uf.common.status.UFStatus.Priority;
|
import com.raytheon.uf.common.status.UFStatus.Priority;
|
||||||
|
import com.raytheon.uf.viz.core.maps.scales.MapScales;
|
||||||
|
import com.raytheon.uf.viz.core.maps.scales.MapScales.MapScale;
|
||||||
|
import com.raytheon.uf.viz.core.maps.scales.MapScales.PartId;
|
||||||
import com.raytheon.uf.viz.core.procedures.Bundle;
|
import com.raytheon.uf.viz.core.procedures.Bundle;
|
||||||
import com.raytheon.uf.viz.core.status.StatusConstants;
|
|
||||||
import com.raytheon.uf.viz.d2d.core.map.MapScales;
|
|
||||||
import com.raytheon.uf.viz.d2d.core.map.MapScales.MapScale;
|
|
||||||
import com.raytheon.uf.viz.d2d.core.map.MapScales.PartId;
|
|
||||||
import com.raytheon.uf.viz.d2d.ui.Activator;
|
|
||||||
import com.raytheon.viz.ui.UiUtil;
|
import com.raytheon.viz.ui.UiUtil;
|
||||||
import com.raytheon.viz.ui.editor.AbstractEditor;
|
import com.raytheon.viz.ui.editor.AbstractEditor;
|
||||||
|
|
||||||
|
@ -46,6 +44,7 @@ import com.raytheon.viz.ui.editor.AbstractEditor;
|
||||||
* Date Ticket# Engineer Description
|
* Date Ticket# Engineer Description
|
||||||
* ------------ ---------- ----------- --------------------------
|
* ------------ ---------- ----------- --------------------------
|
||||||
* Apr 11, 2007 chammack Initial Creation.
|
* Apr 11, 2007 chammack Initial Creation.
|
||||||
|
* Mar 21, 2013 1638 mschenke Changed map scales not tied to d2d
|
||||||
*
|
*
|
||||||
* </pre>
|
* </pre>
|
||||||
*
|
*
|
||||||
|
@ -53,7 +52,9 @@ import com.raytheon.viz.ui.editor.AbstractEditor;
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
*/
|
*/
|
||||||
public class NewMapEditor extends AbstractHandler {
|
public class NewMapEditor extends AbstractHandler {
|
||||||
private static final transient IUFStatusHandler statusHandler = UFStatus.getHandler(NewMapEditor.class);
|
|
||||||
|
private static final transient IUFStatusHandler statusHandler = UFStatus
|
||||||
|
.getHandler(NewMapEditor.class);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* (non-Javadoc)
|
* (non-Javadoc)
|
|
@ -17,7 +17,7 @@
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
* further licensing information.
|
* further licensing information.
|
||||||
**/
|
**/
|
||||||
package com.raytheon.uf.viz.d2d.ui.dialogs;
|
package com.raytheon.uf.viz.core.maps.dialogs;
|
||||||
|
|
||||||
import java.text.DecimalFormat;
|
import java.text.DecimalFormat;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
@ -66,7 +66,7 @@ import com.raytheon.uf.viz.core.IDisplayPaneContainer;
|
||||||
import com.raytheon.uf.viz.core.exception.VizException;
|
import com.raytheon.uf.viz.core.exception.VizException;
|
||||||
import com.raytheon.uf.viz.core.map.IMapDescriptor;
|
import com.raytheon.uf.viz.core.map.IMapDescriptor;
|
||||||
import com.raytheon.uf.viz.core.map.MapDescriptor;
|
import com.raytheon.uf.viz.core.map.MapDescriptor;
|
||||||
import com.raytheon.uf.viz.d2d.ui.map.actions.NewMapEditor;
|
import com.raytheon.uf.viz.core.maps.actions.NewMapEditor;
|
||||||
import com.raytheon.viz.ui.EditorUtil;
|
import com.raytheon.viz.ui.EditorUtil;
|
||||||
import com.raytheon.viz.ui.dialogs.CaveJFACEDialog;
|
import com.raytheon.viz.ui.dialogs.CaveJFACEDialog;
|
||||||
import com.vividsolutions.jts.geom.Coordinate;
|
import com.vividsolutions.jts.geom.Coordinate;
|
||||||
|
@ -87,7 +87,8 @@ import com.vividsolutions.jts.geom.Coordinate;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class CreateProjectionDialog extends CaveJFACEDialog {
|
public class CreateProjectionDialog extends CaveJFACEDialog {
|
||||||
private static final transient IUFStatusHandler statusHandler = UFStatus.getHandler(CreateProjectionDialog.class);
|
private static final transient IUFStatusHandler statusHandler = UFStatus
|
||||||
|
.getHandler(CreateProjectionDialog.class);
|
||||||
|
|
||||||
private DefaultMathTransformFactory factory;
|
private DefaultMathTransformFactory factory;
|
||||||
|
|
||||||
|
@ -186,30 +187,30 @@ public class CreateProjectionDialog extends CaveJFACEDialog {
|
||||||
|
|
||||||
factory = new DefaultMathTransformFactory();
|
factory = new DefaultMathTransformFactory();
|
||||||
Set<?> methods = factory.getAvailableMethods(Projection.class);
|
Set<?> methods = factory.getAvailableMethods(Projection.class);
|
||||||
//Removed for DR 15567
|
// Removed for DR 15567
|
||||||
// String[] projections = new String[methods.size()];
|
// String[] projections = new String[methods.size()];
|
||||||
|
|
||||||
//int i = 0;
|
// int i = 0;
|
||||||
List<Object> prjj = new ArrayList<Object>();
|
List<Object> prjj = new ArrayList<Object>();
|
||||||
for (Object obj : methods) {
|
for (Object obj : methods) {
|
||||||
if (obj instanceof MapProjection.AbstractProvider) {
|
if (obj instanceof MapProjection.AbstractProvider) {
|
||||||
MapProjection.AbstractProvider prj = (MapProjection.AbstractProvider) obj;
|
MapProjection.AbstractProvider prj = (MapProjection.AbstractProvider) obj;
|
||||||
// DR15567 Remove "Orthographic" projection temporarily
|
// DR15567 Remove "Orthographic" projection temporarily
|
||||||
String orthProj = prj.getName().getCode();
|
String orthProj = prj.getName().getCode();
|
||||||
if (orthProj == "Orthographic"){
|
if (orthProj == "Orthographic") {
|
||||||
continue;
|
continue;
|
||||||
} else {
|
} else {
|
||||||
prjj.add(prj.getName().getCode());
|
prjj.add(prj.getName().getCode());
|
||||||
}
|
}
|
||||||
//Put this back in when ready to revert the code
|
// Put this back in when ready to revert the code
|
||||||
//projections[i++] = prj.getName().getCode();
|
// projections[i++] = prj.getName().getCode();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// DR15567
|
// DR15567
|
||||||
String[] projections = new String[prjj.size()];
|
String[] projections = new String[prjj.size()];
|
||||||
int j = 0;
|
int j = 0;
|
||||||
for (Object obj : prjj){
|
for (Object obj : prjj) {
|
||||||
projections[j++] = obj.toString();
|
projections[j++] = obj.toString();
|
||||||
}
|
}
|
||||||
// End of mods
|
// End of mods
|
||||||
Arrays.sort(projections);
|
Arrays.sort(projections);
|
|
@ -29,16 +29,17 @@ import javax.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
import org.eclipse.swt.graphics.Rectangle;
|
import org.eclipse.swt.graphics.Rectangle;
|
||||||
|
|
||||||
|
import com.raytheon.uf.common.colormap.prefs.ColorMapParameters;
|
||||||
import com.raytheon.uf.common.serialization.ISerializableObject;
|
import com.raytheon.uf.common.serialization.ISerializableObject;
|
||||||
import com.raytheon.uf.viz.core.IExtent;
|
import com.raytheon.uf.viz.core.IExtent;
|
||||||
import com.raytheon.uf.viz.core.IGraphicsTarget;
|
import com.raytheon.uf.viz.core.IGraphicsTarget;
|
||||||
import com.raytheon.uf.viz.core.PixelExtent;
|
import com.raytheon.uf.viz.core.PixelExtent;
|
||||||
import com.raytheon.uf.viz.core.datastructure.LoopProperties;
|
import com.raytheon.uf.viz.core.datastructure.LoopProperties;
|
||||||
import com.raytheon.uf.viz.core.drawables.AbstractRenderableDisplay;
|
import com.raytheon.uf.viz.core.drawables.AbstractRenderableDisplay;
|
||||||
import com.raytheon.uf.viz.core.drawables.ColorMapParameters;
|
|
||||||
import com.raytheon.uf.viz.core.drawables.PaintProperties;
|
import com.raytheon.uf.viz.core.drawables.PaintProperties;
|
||||||
import com.raytheon.uf.viz.core.drawables.ResourcePair;
|
import com.raytheon.uf.viz.core.drawables.ResourcePair;
|
||||||
import com.raytheon.uf.viz.core.exception.VizException;
|
import com.raytheon.uf.viz.core.exception.VizException;
|
||||||
|
import com.raytheon.uf.viz.core.map.IMapDescriptor;
|
||||||
import com.raytheon.uf.viz.core.map.MapDescriptor;
|
import com.raytheon.uf.viz.core.map.MapDescriptor;
|
||||||
import com.raytheon.uf.viz.core.rsc.AbstractVizResource;
|
import com.raytheon.uf.viz.core.rsc.AbstractVizResource;
|
||||||
import com.raytheon.uf.viz.core.rsc.AbstractVizResource.ResourceStatus;
|
import com.raytheon.uf.viz.core.rsc.AbstractVizResource.ResourceStatus;
|
||||||
|
@ -91,7 +92,7 @@ public class MapRenderableDisplay extends AbstractRenderableDisplay implements
|
||||||
super();
|
super();
|
||||||
}
|
}
|
||||||
|
|
||||||
public MapRenderableDisplay(MapDescriptor desc) {
|
public MapRenderableDisplay(IMapDescriptor desc) {
|
||||||
this();
|
this();
|
||||||
setDescriptor(desc);
|
setDescriptor(desc);
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,7 +23,7 @@ import javax.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import javax.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import javax.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
import com.raytheon.uf.viz.core.map.MapDescriptor;
|
import com.raytheon.uf.viz.core.map.IMapDescriptor;
|
||||||
import com.raytheon.uf.viz.core.rsc.ResourceList;
|
import com.raytheon.uf.viz.core.rsc.ResourceList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -57,7 +57,7 @@ public class PlainMapRenderableDisplay extends MapRenderableDisplay {
|
||||||
/**
|
/**
|
||||||
* @param desc
|
* @param desc
|
||||||
*/
|
*/
|
||||||
public PlainMapRenderableDisplay(MapDescriptor desc) {
|
public PlainMapRenderableDisplay(IMapDescriptor desc) {
|
||||||
super(desc);
|
super(desc);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
/**
|
||||||
|
* This software was developed and / or modified by Raytheon Company,
|
||||||
|
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||||
|
*
|
||||||
|
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||||
|
* This software product contains export-restricted data whose
|
||||||
|
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||||
|
* to non-U.S. persons whether in the United States or abroad requires
|
||||||
|
* an export license or other authorization.
|
||||||
|
*
|
||||||
|
* Contractor Name: Raytheon Company
|
||||||
|
* Contractor Address: 6825 Pine Street, Suite 340
|
||||||
|
* Mail Stop B8
|
||||||
|
* Omaha, NE 68106
|
||||||
|
* 402.291.0100
|
||||||
|
*
|
||||||
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
|
* further licensing information.
|
||||||
|
**/
|
||||||
|
package com.raytheon.uf.viz.core.maps.scales;
|
||||||
|
|
||||||
|
import com.raytheon.uf.viz.core.maps.scales.MapScales.MapScale;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Interface for display containing a scale
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
*
|
||||||
|
* SOFTWARE HISTORY
|
||||||
|
*
|
||||||
|
* Date Ticket# Engineer Description
|
||||||
|
* ------------ ---------- ----------- --------------------------
|
||||||
|
* Mar 21, 2013 mschenke Initial creation
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @author mschenke
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
public interface IMapScaleDisplay {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the name of the scale to be used in
|
||||||
|
* {@link MapScales#getScaleByName(String)}
|
||||||
|
*/
|
||||||
|
public String getScaleName();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Changes the scale of the display
|
||||||
|
*
|
||||||
|
* @param scale
|
||||||
|
*/
|
||||||
|
public void changeScale(MapScale scale);
|
||||||
|
}
|
|
@ -0,0 +1,89 @@
|
||||||
|
/**
|
||||||
|
* This software was developed and / or modified by Raytheon Company,
|
||||||
|
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||||
|
*
|
||||||
|
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||||
|
* This software product contains export-restricted data whose
|
||||||
|
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||||
|
* to non-U.S. persons whether in the United States or abroad requires
|
||||||
|
* an export license or other authorization.
|
||||||
|
*
|
||||||
|
* Contractor Name: Raytheon Company
|
||||||
|
* Contractor Address: 6825 Pine Street, Suite 340
|
||||||
|
* Mail Stop B8
|
||||||
|
* Omaha, NE 68106
|
||||||
|
* 402.291.0100
|
||||||
|
*
|
||||||
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
|
* further licensing information.
|
||||||
|
**/
|
||||||
|
package com.raytheon.uf.viz.core.maps.scales;
|
||||||
|
|
||||||
|
import org.eclipse.core.commands.AbstractHandler;
|
||||||
|
import org.eclipse.core.commands.ExecutionEvent;
|
||||||
|
import org.eclipse.core.commands.ExecutionException;
|
||||||
|
import org.eclipse.ui.IEditorPart;
|
||||||
|
import org.eclipse.ui.handlers.HandlerUtil;
|
||||||
|
|
||||||
|
import com.raytheon.uf.viz.core.IDisplayPane;
|
||||||
|
import com.raytheon.uf.viz.core.IDisplayPaneContainer;
|
||||||
|
import com.raytheon.uf.viz.core.drawables.IRenderableDisplay;
|
||||||
|
import com.raytheon.uf.viz.core.globals.VizGlobalsManager;
|
||||||
|
import com.raytheon.uf.viz.core.maps.scales.MapScales.MapScale;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handler of setScale command that looks for a {@link MapScale} by name of
|
||||||
|
* attribute scale and sets on any {@link IMapScaleDisplay}s on the current
|
||||||
|
* editor
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
*
|
||||||
|
* SOFTWARE HISTORY
|
||||||
|
*
|
||||||
|
* Date Ticket# Engineer Description
|
||||||
|
* ------------ ---------- ----------- --------------------------
|
||||||
|
* Mar 22, 2013 mschenke Initial creation
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @author mschenke
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class MapScaleHandler extends AbstractHandler {
|
||||||
|
|
||||||
|
public static final String SET_SCALE_COMMAND_ID = "com.raytheon.viz.ui.setScale";
|
||||||
|
|
||||||
|
public static final String SCALE_NAME_ID = "scale";
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (non-Javadoc)
|
||||||
|
*
|
||||||
|
* @see
|
||||||
|
* org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.
|
||||||
|
* ExecutionEvent)
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Object execute(ExecutionEvent event) throws ExecutionException {
|
||||||
|
MapScale scale = MapScales.getInstance().getScaleByName(
|
||||||
|
event.getParameter(SCALE_NAME_ID));
|
||||||
|
if (scale != null) {
|
||||||
|
IEditorPart part = HandlerUtil.getActiveEditor(event);
|
||||||
|
if (part instanceof IDisplayPaneContainer) {
|
||||||
|
IDisplayPaneContainer container = (IDisplayPaneContainer) part;
|
||||||
|
for (IDisplayPane pane : container.getDisplayPanes()) {
|
||||||
|
IRenderableDisplay display = pane.getRenderableDisplay();
|
||||||
|
if (display instanceof IMapScaleDisplay) {
|
||||||
|
((IMapScaleDisplay) display).changeScale(scale);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
container.refresh();
|
||||||
|
VizGlobalsManager.getInstance(
|
||||||
|
HandlerUtil.getActiveWorkbenchWindow(event)).updateUI(
|
||||||
|
container);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -17,7 +17,7 @@
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
* further licensing information.
|
* further licensing information.
|
||||||
**/
|
**/
|
||||||
package com.raytheon.uf.viz.d2d.ui;
|
package com.raytheon.uf.viz.core.maps.scales;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
@ -30,20 +30,20 @@ import org.eclipse.ui.menus.CommandContributionItem;
|
||||||
import org.eclipse.ui.menus.CommandContributionItemParameter;
|
import org.eclipse.ui.menus.CommandContributionItemParameter;
|
||||||
|
|
||||||
import com.raytheon.uf.viz.core.IDisplayPaneContainer;
|
import com.raytheon.uf.viz.core.IDisplayPaneContainer;
|
||||||
import com.raytheon.uf.viz.d2d.core.map.D2DMapRenderableDisplay;
|
import com.raytheon.uf.viz.core.maps.scales.MapScales.MapScale;
|
||||||
import com.raytheon.uf.viz.d2d.core.map.MapScales;
|
|
||||||
import com.raytheon.uf.viz.d2d.core.map.MapScales.MapScale;
|
|
||||||
import com.raytheon.viz.ui.EditorUtil;
|
import com.raytheon.viz.ui.EditorUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO Add Description
|
* UI populator for map scales
|
||||||
*
|
*
|
||||||
* <pre>
|
* <pre>
|
||||||
*
|
*
|
||||||
* SOFTWARE HISTORY
|
* SOFTWARE HISTORY
|
||||||
* Date Ticket# Engineer Description
|
* Date Ticket# Engineer Description
|
||||||
* ------------ ---------- ----------- --------------------------
|
* ------------ ---------- ----------- --------------------------
|
||||||
* Oct 7, 2010 mschenke Initial creation
|
* Oct 7, 2010 mschenke Initial creation
|
||||||
|
* Mar 21, 2013 1638 mschenke Made map scales not tied to d2d
|
||||||
|
*
|
||||||
*
|
*
|
||||||
* </pre>
|
* </pre>
|
||||||
*
|
*
|
||||||
|
@ -63,20 +63,19 @@ public class MapScalePopulator extends CompoundContributionItem {
|
||||||
protected IContributionItem[] getContributionItems() {
|
protected IContributionItem[] getContributionItems() {
|
||||||
MenuManager menuMgr = new MenuManager("Scales", "mapControls");
|
MenuManager menuMgr = new MenuManager("Scales", "mapControls");
|
||||||
IDisplayPaneContainer cont = EditorUtil.getActiveVizContainer();
|
IDisplayPaneContainer cont = EditorUtil.getActiveVizContainer();
|
||||||
// Load scales if we have d2d map renderable display on editor or, there
|
|
||||||
// is no editor opened in the d2d perspective
|
|
||||||
if ((cont != null && (cont.getActiveDisplayPane()
|
if ((cont != null && (cont.getActiveDisplayPane()
|
||||||
.getRenderableDisplay() instanceof D2DMapRenderableDisplay))
|
.getRenderableDisplay() instanceof IMapScaleDisplay))
|
||||||
|| EditorUtil.getActiveEditor() == null) {
|
|| EditorUtil.getActiveEditor() == null) {
|
||||||
for (MapScale scale : MapScales.getInstance().getScales()) {
|
for (MapScale scale : MapScales.getInstance().getScales()) {
|
||||||
Map<String, String> parms = new HashMap<String, String>();
|
Map<String, String> parms = new HashMap<String, String>();
|
||||||
parms.put("scale", scale.getDisplayName());
|
parms.put(MapScaleHandler.SCALE_NAME_ID, scale.getDisplayName());
|
||||||
CommandContributionItem item = new CommandContributionItem(
|
CommandContributionItem item = new CommandContributionItem(
|
||||||
new CommandContributionItemParameter(
|
new CommandContributionItemParameter(
|
||||||
PlatformUI.getWorkbench(), null,
|
PlatformUI.getWorkbench(), null,
|
||||||
"com.raytheon.viz.ui.setScale", parms, null,
|
MapScaleHandler.SET_SCALE_COMMAND_ID, parms,
|
||||||
null, null, scale.getDisplayName(), null, null,
|
null, null, null, scale.getDisplayName(), null,
|
||||||
CommandContributionItem.STYLE_PUSH, null, true));
|
null, CommandContributionItem.STYLE_PUSH, null,
|
||||||
|
true));
|
||||||
menuMgr.add(item);
|
menuMgr.add(item);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -0,0 +1,152 @@
|
||||||
|
/**
|
||||||
|
* This software was developed and / or modified by Raytheon Company,
|
||||||
|
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||||
|
*
|
||||||
|
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||||
|
* This software product contains export-restricted data whose
|
||||||
|
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||||
|
* to non-U.S. persons whether in the United States or abroad requires
|
||||||
|
* an export license or other authorization.
|
||||||
|
*
|
||||||
|
* Contractor Name: Raytheon Company
|
||||||
|
* Contractor Address: 6825 Pine Street, Suite 340
|
||||||
|
* Mail Stop B8
|
||||||
|
* Omaha, NE 68106
|
||||||
|
* 402.291.0100
|
||||||
|
*
|
||||||
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
|
* further licensing information.
|
||||||
|
**/
|
||||||
|
package com.raytheon.uf.viz.core.maps.scales;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import javax.xml.bind.annotation.XmlAccessType;
|
||||||
|
import javax.xml.bind.annotation.XmlAccessorType;
|
||||||
|
import javax.xml.bind.annotation.XmlAttribute;
|
||||||
|
import javax.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
|
import com.raytheon.uf.common.status.UFStatus.Priority;
|
||||||
|
import com.raytheon.uf.viz.core.VizConstants;
|
||||||
|
import com.raytheon.uf.viz.core.drawables.AbstractRenderableDisplay;
|
||||||
|
import com.raytheon.uf.viz.core.drawables.ResourcePair;
|
||||||
|
import com.raytheon.uf.viz.core.exception.VizException;
|
||||||
|
import com.raytheon.uf.viz.core.globals.VizGlobalsManager;
|
||||||
|
import com.raytheon.uf.viz.core.map.IMapDescriptor;
|
||||||
|
import com.raytheon.uf.viz.core.maps.display.PlainMapRenderableDisplay;
|
||||||
|
import com.raytheon.uf.viz.core.maps.scales.MapScales.MapScale;
|
||||||
|
import com.raytheon.uf.viz.core.procedures.Bundle;
|
||||||
|
import com.raytheon.uf.viz.core.rsc.ResourceList;
|
||||||
|
import com.raytheon.viz.ui.actions.LoadSerializedXml;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* MapRenderableDisplay associated with a {@link MapScale}
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
*
|
||||||
|
* SOFTWARE HISTORY
|
||||||
|
*
|
||||||
|
* Date Ticket# Engineer Description
|
||||||
|
* ------------ ---------- ----------- --------------------------
|
||||||
|
* Mar 22, 2013 mschenke Initial creation
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @author mschenke
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
@XmlAccessorType(XmlAccessType.NONE)
|
||||||
|
@XmlRootElement
|
||||||
|
public class MapScaleRenderableDisplay extends PlainMapRenderableDisplay
|
||||||
|
implements IMapScaleDisplay {
|
||||||
|
|
||||||
|
@XmlAttribute
|
||||||
|
protected String scale = (String) VizGlobalsManager.getCurrentInstance()
|
||||||
|
.getPropery(VizConstants.SCALE_ID);
|
||||||
|
|
||||||
|
public MapScaleRenderableDisplay() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
public MapScaleRenderableDisplay(IMapDescriptor desc) {
|
||||||
|
super(desc);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (non-Javadoc)
|
||||||
|
*
|
||||||
|
* @see com.raytheon.uf.viz.core.maps.scales.IMapScaleDisplay#getScaleName()
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String getScaleName() {
|
||||||
|
return scale;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (non-Javadoc)
|
||||||
|
*
|
||||||
|
* @see
|
||||||
|
* com.raytheon.uf.viz.core.maps.scales.IMapScaleDisplay#changeScale(com
|
||||||
|
* .raytheon.uf.viz.core.maps.scales.MapScales.MapScale)
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void changeScale(MapScale scale) {
|
||||||
|
MapScale currentScale = MapScales.getInstance().getScaleByName(
|
||||||
|
getScaleName());
|
||||||
|
Bundle bundle = (Bundle) LoadSerializedXml.deserialize(currentScale
|
||||||
|
.getFile());
|
||||||
|
for (AbstractRenderableDisplay display : bundle.getDisplays()) {
|
||||||
|
descriptor.getResourceList().removeAll(
|
||||||
|
display.getDescriptor().getResourceList());
|
||||||
|
}
|
||||||
|
loadScale(scale);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void clear() {
|
||||||
|
MapScale scale = MapScales.getInstance().getScaleByName(getScaleName());
|
||||||
|
if (scale == null) {
|
||||||
|
scale = MapScales.getInstance().getScaleByName(
|
||||||
|
(String) VizGlobalsManager.getCurrentInstance().getPropery(
|
||||||
|
VizConstants.SCALE_ID));
|
||||||
|
}
|
||||||
|
if (scale != null) {
|
||||||
|
ResourceList list = descriptor.getResourceList();
|
||||||
|
for (ResourcePair rp : list) {
|
||||||
|
if (rp.getProperties().isSystemResource() == false) {
|
||||||
|
// Keep system resources
|
||||||
|
list.remove(rp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
loadScale(scale);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void loadScale(MapScale scale) {
|
||||||
|
Bundle bundle = (Bundle) LoadSerializedXml.deserialize(scale.getFile());
|
||||||
|
for (AbstractRenderableDisplay ard : bundle.getDisplays()) {
|
||||||
|
try {
|
||||||
|
descriptor.setGridGeometry(ard.getDescriptor()
|
||||||
|
.getGridGeometry());
|
||||||
|
descriptor.getResourceList().addAll(
|
||||||
|
ard.getDescriptor().getResourceList());
|
||||||
|
ard.getDescriptor().getResourceList().clear();
|
||||||
|
break;
|
||||||
|
} catch (VizException e) {
|
||||||
|
statusHandler.handle(Priority.PROBLEM, e.getLocalizedMessage(),
|
||||||
|
e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
descriptor.getResourceList().instantiateResources(descriptor, true);
|
||||||
|
this.scale = scale.getDisplayName();
|
||||||
|
scaleToClientArea(getBounds());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> getGlobalsMap() {
|
||||||
|
Map<String, Object> globals = super.getGlobalsMap();
|
||||||
|
globals.put(VizConstants.SCALE_ID, getScaleName());
|
||||||
|
return globals;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -17,9 +17,11 @@
|
||||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||||
* further licensing information.
|
* further licensing information.
|
||||||
**/
|
**/
|
||||||
package com.raytheon.uf.viz.d2d.core.map;
|
package com.raytheon.uf.viz.core.maps.scales;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import javax.xml.bind.JAXB;
|
import javax.xml.bind.JAXB;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import javax.xml.bind.annotation.XmlAccessType;
|
||||||
|
@ -28,14 +30,22 @@ import javax.xml.bind.annotation.XmlAttribute;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import javax.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import javax.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
|
import org.eclipse.ui.IWorkbenchWindow;
|
||||||
|
|
||||||
import com.raytheon.uf.common.localization.FileUpdatedMessage;
|
import com.raytheon.uf.common.localization.FileUpdatedMessage;
|
||||||
import com.raytheon.uf.common.localization.ILocalizationFileObserver;
|
import com.raytheon.uf.common.localization.ILocalizationFileObserver;
|
||||||
import com.raytheon.uf.common.localization.LocalizationFile;
|
import com.raytheon.uf.common.localization.LocalizationFile;
|
||||||
import com.raytheon.uf.common.localization.PathManagerFactory;
|
import com.raytheon.uf.common.localization.PathManagerFactory;
|
||||||
import com.raytheon.uf.common.serialization.ISerializableObject;
|
import com.raytheon.uf.common.serialization.ISerializableObject;
|
||||||
|
import com.raytheon.uf.common.serialization.SerializationException;
|
||||||
|
import com.raytheon.uf.common.serialization.SerializationUtil;
|
||||||
import com.raytheon.uf.common.status.IUFStatusHandler;
|
import com.raytheon.uf.common.status.IUFStatusHandler;
|
||||||
import com.raytheon.uf.common.status.UFStatus;
|
import com.raytheon.uf.common.status.UFStatus;
|
||||||
import com.raytheon.uf.common.status.UFStatus.Priority;
|
import com.raytheon.uf.common.status.UFStatus.Priority;
|
||||||
|
import com.raytheon.uf.viz.core.exception.VizException;
|
||||||
|
import com.raytheon.uf.viz.core.procedures.Bundle;
|
||||||
|
import com.raytheon.uf.viz.core.procedures.Procedure;
|
||||||
|
import com.raytheon.viz.ui.actions.LoadSerializedXml;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Serializable object representation of map scales
|
* Serializable object representation of map scales
|
||||||
|
@ -45,7 +55,8 @@ import com.raytheon.uf.common.status.UFStatus.Priority;
|
||||||
* SOFTWARE HISTORY
|
* SOFTWARE HISTORY
|
||||||
* Date Ticket# Engineer Description
|
* Date Ticket# Engineer Description
|
||||||
* ------------ ---------- ----------- --------------------------
|
* ------------ ---------- ----------- --------------------------
|
||||||
* Oct 7, 2010 mschenke Initial creation
|
* Oct 7, 2010 mschenke Initial creation
|
||||||
|
* Mar 21, 2013 1638 mschenke Made map scales not tied to d2d
|
||||||
*
|
*
|
||||||
* </pre>
|
* </pre>
|
||||||
*
|
*
|
||||||
|
@ -134,7 +145,7 @@ public class MapScales implements ISerializableObject {
|
||||||
private static final String SCALES_DIR = "bundles" + File.separator
|
private static final String SCALES_DIR = "bundles" + File.separator
|
||||||
+ "scales" + File.separator;
|
+ "scales" + File.separator;
|
||||||
|
|
||||||
private static final String fileName = SCALES_DIR + "scalesInfo.xml";
|
public static final String FILE_NAME = SCALES_DIR + "scalesInfo.xml";
|
||||||
|
|
||||||
private static ILocalizationFileObserver listener = new ILocalizationFileObserver() {
|
private static ILocalizationFileObserver listener = new ILocalizationFileObserver() {
|
||||||
@Override
|
@Override
|
||||||
|
@ -156,6 +167,40 @@ public class MapScales implements ISerializableObject {
|
||||||
return instance;
|
return instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void loadScales(IWorkbenchWindow window, MapScale... scales)
|
||||||
|
throws VizException {
|
||||||
|
if (scales == null || scales.length == 0) {
|
||||||
|
scales = getInstance().getScales();
|
||||||
|
}
|
||||||
|
Procedure procedure = new Procedure();
|
||||||
|
List<Bundle> bundles = new ArrayList<Bundle>();
|
||||||
|
for (MapScale scale : scales) {
|
||||||
|
String editorId = null;
|
||||||
|
for (PartId partId : scale.getPartIds()) {
|
||||||
|
if (partId.isView() == false) {
|
||||||
|
editorId = partId.getId();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (editorId != null) {
|
||||||
|
File file = scale.getFile();
|
||||||
|
try {
|
||||||
|
Bundle b = SerializationUtil.jaxbUnmarshalFromXmlFile(
|
||||||
|
Bundle.class, file);
|
||||||
|
b.setEditor(editorId);
|
||||||
|
bundles.add(b);
|
||||||
|
} catch (SerializationException e) {
|
||||||
|
statusHandler.handle(
|
||||||
|
Priority.PROBLEM,
|
||||||
|
"Error deserializing bundle: "
|
||||||
|
+ file.getAbsolutePath(), e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
procedure.setBundles(bundles.toArray(new Bundle[bundles.size()]));
|
||||||
|
LoadSerializedXml.loadProcedureToScreen(procedure, window);
|
||||||
|
}
|
||||||
|
|
||||||
private static synchronized void fileUpdated() {
|
private static synchronized void fileUpdated() {
|
||||||
instance = null;
|
instance = null;
|
||||||
}
|
}
|
||||||
|
@ -165,18 +210,18 @@ public class MapScales implements ISerializableObject {
|
||||||
locFile.removeFileUpdatedObserver(listener);
|
locFile.removeFileUpdatedObserver(listener);
|
||||||
}
|
}
|
||||||
locFile = PathManagerFactory.getPathManager()
|
locFile = PathManagerFactory.getPathManager()
|
||||||
.getStaticLocalizationFile(fileName);
|
.getStaticLocalizationFile(FILE_NAME);
|
||||||
locFile.addFileUpdatedObserver(listener);
|
locFile.addFileUpdatedObserver(listener);
|
||||||
File file = locFile.getFile();
|
File file = locFile.getFile();
|
||||||
if (file == null) {
|
if (file == null) {
|
||||||
statusHandler.handle(Priority.PROBLEM,
|
statusHandler.handle(Priority.PROBLEM,
|
||||||
"Could not find any version of scale file: " + fileName);
|
"Could not find any version of scale file: " + FILE_NAME);
|
||||||
} else {
|
} else {
|
||||||
try {
|
try {
|
||||||
instance = JAXB.unmarshal(file, MapScales.class);
|
instance = JAXB.unmarshal(file, MapScales.class);
|
||||||
} catch (RuntimeException e) {
|
} catch (RuntimeException e) {
|
||||||
statusHandler.handle(Priority.PROBLEM,
|
statusHandler.handle(Priority.PROBLEM,
|
||||||
"Could not parse scale file: " + fileName, e);
|
"Could not parse scale file: " + FILE_NAME, e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -15,7 +15,6 @@ Require-Bundle: org.eclipse.core.runtime,
|
||||||
com.raytheon.uf.common.time;bundle-version="1.12.1174",
|
com.raytheon.uf.common.time;bundle-version="1.12.1174",
|
||||||
org.geotools;bundle-version="2.6.4",
|
org.geotools;bundle-version="2.6.4",
|
||||||
com.raytheon.uf.common.geospatial;bundle-version="1.12.1174",
|
com.raytheon.uf.common.geospatial;bundle-version="1.12.1174",
|
||||||
com.raytheon.viz.ui.tools.map;bundle-version="1.12.1174",
|
|
||||||
com.raytheon.viz.core;bundle-version="1.12.1174"
|
com.raytheon.viz.core;bundle-version="1.12.1174"
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
com.raytheon.uf.viz.core.rsc.FirstAvailableResourceData
|
com.raytheon.uf.viz.core.rsc.FirstAvailableResourceData
|
||||||
com.raytheon.uf.viz.core.rsc.tools.AwipsToolsResourceData
|
com.raytheon.uf.viz.core.rsc.tools.GenericToolsResourceData
|
|
@ -27,6 +27,7 @@ import org.eclipse.jface.action.IMenuManager;
|
||||||
|
|
||||||
import com.raytheon.uf.viz.core.DrawableString;
|
import com.raytheon.uf.viz.core.DrawableString;
|
||||||
import com.raytheon.uf.viz.core.IDisplayPane;
|
import com.raytheon.uf.viz.core.IDisplayPane;
|
||||||
|
import com.raytheon.uf.viz.core.IDisplayPaneContainer;
|
||||||
import com.raytheon.uf.viz.core.IExtent;
|
import com.raytheon.uf.viz.core.IExtent;
|
||||||
import com.raytheon.uf.viz.core.IGraphicsTarget;
|
import com.raytheon.uf.viz.core.IGraphicsTarget;
|
||||||
import com.raytheon.uf.viz.core.drawables.IDescriptor;
|
import com.raytheon.uf.viz.core.drawables.IDescriptor;
|
||||||
|
@ -37,10 +38,12 @@ import com.raytheon.uf.viz.core.exception.VizException;
|
||||||
import com.raytheon.uf.viz.core.legend.ILegendDecorator;
|
import com.raytheon.uf.viz.core.legend.ILegendDecorator;
|
||||||
import com.raytheon.uf.viz.core.rsc.AbstractResourceData;
|
import com.raytheon.uf.viz.core.rsc.AbstractResourceData;
|
||||||
import com.raytheon.uf.viz.core.rsc.AbstractVizResource;
|
import com.raytheon.uf.viz.core.rsc.AbstractVizResource;
|
||||||
|
import com.raytheon.uf.viz.core.rsc.IInputHandler.InputPriority;
|
||||||
import com.raytheon.uf.viz.core.rsc.LoadProperties;
|
import com.raytheon.uf.viz.core.rsc.LoadProperties;
|
||||||
import com.raytheon.uf.viz.core.rsc.RenderingOrderFactory.ResourceOrder;
|
import com.raytheon.uf.viz.core.rsc.RenderingOrderFactory.ResourceOrder;
|
||||||
import com.raytheon.viz.ui.cmenu.ContextMenuManager;
|
import com.raytheon.viz.ui.cmenu.ContextMenuManager;
|
||||||
import com.raytheon.viz.ui.cmenu.IContextMenuProvider;
|
import com.raytheon.viz.ui.cmenu.IContextMenuProvider;
|
||||||
|
import com.raytheon.viz.ui.input.InputAdapter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Base legend resource class, does majority of work for drawing legends.
|
* Base legend resource class, does majority of work for drawing legends.
|
||||||
|
@ -68,6 +71,56 @@ public abstract class AbstractLegendResource<T extends AbstractResourceData>
|
||||||
|
|
||||||
private static final int RIGHT_OFFSET_IN_PIXELS = 18;
|
private static final int RIGHT_OFFSET_IN_PIXELS = 18;
|
||||||
|
|
||||||
|
private InputAdapter resourceClickedHandler = new InputAdapter() {
|
||||||
|
|
||||||
|
private boolean moved = false;
|
||||||
|
|
||||||
|
private ResourcePair mouseDownRsc;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean handleMouseDown(int x, int y, int mouseButton) {
|
||||||
|
boolean handle = moved = false;
|
||||||
|
IDisplayPaneContainer container = getResourceContainer();
|
||||||
|
IDisplayPane active = container.getActiveDisplayPane();
|
||||||
|
if (active.getDescriptor() == getDescriptor()) {
|
||||||
|
mouseDownRsc = checkLabelSpace(getDescriptor(),
|
||||||
|
active.getTarget(), x, y);
|
||||||
|
if (mouseDownRsc != null) {
|
||||||
|
handle = AbstractLegendResource.this.checkResourceClick(
|
||||||
|
mouseDownRsc, mouseButton);
|
||||||
|
if (!handle) {
|
||||||
|
mouseDownRsc = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return handle;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean handleMouseDownMove(int x, int y, int mouseButton) {
|
||||||
|
if (mouseDownRsc != null) {
|
||||||
|
moved = true;
|
||||||
|
}
|
||||||
|
return moved;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean handleMouseUp(int x, int y, int mouseButton) {
|
||||||
|
if (mouseDownRsc != null) {
|
||||||
|
try {
|
||||||
|
if (!moved) {
|
||||||
|
resourceClicked(mouseDownRsc, mouseButton);
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
mouseDownRsc = null;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param resourceData
|
* @param resourceData
|
||||||
* @param loadProperties
|
* @param loadProperties
|
||||||
|
@ -84,7 +137,10 @@ public abstract class AbstractLegendResource<T extends AbstractResourceData>
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
protected void disposeInternal() {
|
protected void disposeInternal() {
|
||||||
|
IDisplayPaneContainer container = getResourceContainer();
|
||||||
|
if (container != null) {
|
||||||
|
container.unregisterMouseHandler(resourceClickedHandler);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -148,7 +204,11 @@ public abstract class AbstractLegendResource<T extends AbstractResourceData>
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
protected void initInternal(IGraphicsTarget target) throws VizException {
|
protected void initInternal(IGraphicsTarget target) throws VizException {
|
||||||
|
IDisplayPaneContainer container = getResourceContainer();
|
||||||
|
if (container != null) {
|
||||||
|
container.registerMouseHandler(resourceClickedHandler,
|
||||||
|
InputPriority.SYSTEM_RESOURCE);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected ResourcePair checkLabelSpace(IDescriptor descriptor,
|
protected ResourcePair checkLabelSpace(IDescriptor descriptor,
|
||||||
|
@ -289,4 +349,14 @@ public abstract class AbstractLegendResource<T extends AbstractResourceData>
|
||||||
ContextMenuManager.fillContextMenu(menuManager, selectedResource,
|
ContextMenuManager.fillContextMenu(menuManager, selectedResource,
|
||||||
getResourceContainer());
|
getResourceContainer());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected boolean checkResourceClick(ResourcePair mouseDownRsc,
|
||||||
|
int mouseButton) {
|
||||||
|
// Do nothing
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void resourceClicked(ResourcePair resource, int mouseButton) {
|
||||||
|
// Do nothing
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,10 +30,16 @@ import com.raytheon.uf.viz.core.rsc.AbstractVizResource;
|
||||||
import com.raytheon.uf.viz.core.rsc.GenericResourceData;
|
import com.raytheon.uf.viz.core.rsc.GenericResourceData;
|
||||||
import com.raytheon.uf.viz.core.rsc.LoadProperties;
|
import com.raytheon.uf.viz.core.rsc.LoadProperties;
|
||||||
import com.raytheon.uf.viz.core.rsc.ResourceList;
|
import com.raytheon.uf.viz.core.rsc.ResourceList;
|
||||||
|
import com.raytheon.uf.viz.core.rsc.capabilities.BlendableCapability;
|
||||||
|
import com.raytheon.uf.viz.core.rsc.capabilities.BlendedCapability;
|
||||||
import com.raytheon.uf.viz.core.rsc.capabilities.ColorableCapability;
|
import com.raytheon.uf.viz.core.rsc.capabilities.ColorableCapability;
|
||||||
|
import com.raytheon.uf.viz.core.rsc.capabilities.EditableCapability;
|
||||||
|
import com.raytheon.viz.ui.input.EditableManager;
|
||||||
|
import com.raytheon.viz.ui.input.preferences.MousePreferenceManager;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO Add Description
|
* Default legend resource, handles visibility toggling and editableness
|
||||||
|
* toggling. TODO: Make D2DLegendResource extend it
|
||||||
*
|
*
|
||||||
* <pre>
|
* <pre>
|
||||||
*
|
*
|
||||||
|
@ -52,6 +58,13 @@ import com.raytheon.uf.viz.core.rsc.capabilities.ColorableCapability;
|
||||||
public class DefaultLegendResource extends
|
public class DefaultLegendResource extends
|
||||||
AbstractLegendResource<GenericResourceData> {
|
AbstractLegendResource<GenericResourceData> {
|
||||||
|
|
||||||
|
private static final String HIDE_RESOURCE_PREF = "com.raytheon.viz.d2d.ui.hide.resource";
|
||||||
|
|
||||||
|
private static final String EDIT_RESOURCE_PREF = "com.raytheon.viz.ui.input.resource.edit";
|
||||||
|
|
||||||
|
private MousePreferenceManager prefManager = MousePreferenceManager
|
||||||
|
.getInstance();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param resourceData
|
* @param resourceData
|
||||||
* @param loadProperties
|
* @param loadProperties
|
||||||
|
@ -94,6 +107,12 @@ public class DefaultLegendResource extends
|
||||||
} else {
|
} else {
|
||||||
legend.label = rsc.getName();
|
legend.label = rsc.getName();
|
||||||
legend.resource = resourcePair;
|
legend.resource = resourcePair;
|
||||||
|
|
||||||
|
if (rsc.hasCapability(EditableCapability.class)
|
||||||
|
&& rsc.getCapability(EditableCapability.class)
|
||||||
|
.isEditable()) {
|
||||||
|
legend.label += " (Editable)";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!vis) {
|
if (!vis) {
|
||||||
|
@ -115,4 +134,82 @@ public class DefaultLegendResource extends
|
||||||
}
|
}
|
||||||
return entries;
|
return entries;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected boolean checkResourceClick(ResourcePair mouseDownRsc,
|
||||||
|
int mouseButton) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void resourceClicked(ResourcePair resource, int mouseButton) {
|
||||||
|
if (prefManager.handleClick(EDIT_RESOURCE_PREF, mouseButton)
|
||||||
|
&& resource.getResource().hasCapability(
|
||||||
|
EditableCapability.class)) {
|
||||||
|
// Editable case
|
||||||
|
toggleEditability(resource);
|
||||||
|
} else {
|
||||||
|
// Visibility case
|
||||||
|
toggleVisibility(resource);
|
||||||
|
}
|
||||||
|
issueRefresh();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Toggle visibility of resource taking blended/blendable resources into
|
||||||
|
* account.
|
||||||
|
*
|
||||||
|
* If resource to toggle is blended, 1st check to see if parent resource is
|
||||||
|
* visible. If not visible then make parent and all children visible.
|
||||||
|
*
|
||||||
|
* @param rp
|
||||||
|
*/
|
||||||
|
protected boolean toggleVisibility(ResourcePair rp) {
|
||||||
|
AbstractVizResource<?, ?> rsc = rp.getResource();
|
||||||
|
if (rsc != null) {
|
||||||
|
if (rsc.hasCapability(BlendedCapability.class)) {
|
||||||
|
ResourcePair parentRsc = rsc.getCapability(
|
||||||
|
BlendedCapability.class).getBlendableResource();
|
||||||
|
ResourceList children = parentRsc.getResource()
|
||||||
|
.getCapability(BlendableCapability.class)
|
||||||
|
.getResourceList();
|
||||||
|
if (parentRsc.getProperties().isVisible() == false) {
|
||||||
|
parentRsc.getProperties().setVisible(true);
|
||||||
|
for (ResourcePair child : children) {
|
||||||
|
child.getProperties().setVisible(true);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// topmost resource is visible, toggle us and other
|
||||||
|
// rsc
|
||||||
|
if (rp.getProperties().isVisible() == false) {
|
||||||
|
rp.getProperties().setVisible(true);
|
||||||
|
parentRsc
|
||||||
|
.getResource()
|
||||||
|
.getCapability(BlendableCapability.class)
|
||||||
|
.setAlphaStep(BlendableCapability.BLEND_MAX / 2);
|
||||||
|
} else {
|
||||||
|
parentRsc.getResource()
|
||||||
|
.getCapability(BlendableCapability.class)
|
||||||
|
.toggle(rp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return rp.getProperties().isVisible();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
rp.getProperties().setVisible(!rp.getProperties().isVisible());
|
||||||
|
return rp.getProperties().isVisible();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Toggles the editable flag on the resource
|
||||||
|
*
|
||||||
|
* @param rp
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
protected boolean toggleEditability(ResourcePair rp) {
|
||||||
|
EditableManager.makeEditable(rp.getResource(), !rp.getResource()
|
||||||
|
.getCapability(EditableCapability.class).isEditable());
|
||||||
|
return rp.getResource().getCapability(EditableCapability.class)
|
||||||
|
.isEditable();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,10 +59,11 @@ public class LatLonReadoutAction extends AbstractRightClickAction {
|
||||||
private boolean hasLatLonReadout = false;
|
private boolean hasLatLonReadout = false;
|
||||||
|
|
||||||
public LatLonReadoutAction() {
|
public LatLonReadoutAction() {
|
||||||
this.actionText = "Lat/Lon Readout";
|
this("Lat/Lon Readout");
|
||||||
}
|
}
|
||||||
|
|
||||||
public LatLonReadoutAction(String actionText) {
|
public LatLonReadoutAction(String actionText) {
|
||||||
|
super(AS_CHECK_BOX);
|
||||||
this.actionText = actionText;
|
this.actionText = actionText;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -83,8 +84,8 @@ public class LatLonReadoutAction extends AbstractRightClickAction {
|
||||||
pane.getDescriptor().getResourceList().removeRsc(rsc);
|
pane.getDescriptor().getResourceList().removeRsc(rsc);
|
||||||
}
|
}
|
||||||
List<ISamplingResource> samplers = pane.getDescriptor()
|
List<ISamplingResource> samplers = pane.getDescriptor()
|
||||||
.getResourceList()
|
.getResourceList()
|
||||||
.getResourcesByTypeAsType(ISamplingResource.class);
|
.getResourcesByTypeAsType(ISamplingResource.class);
|
||||||
for (ISamplingResource sampler : samplers) {
|
for (ISamplingResource sampler : samplers) {
|
||||||
if (sampled) {
|
if (sampled) {
|
||||||
break;
|
break;
|
||||||
|
|