Change History WSMS 3.0.4.Rev 8 (WSMS3048)
(SCR1122) Added wsms-widget-overlay operation Add() with sort parameter that allows
widgets to be added without sorting.
(SCR1122) Added wsms-widget-overlay operation Sort() that allows all added widgets to
be sorted into priority order, must be called after widgets are added without
(SCR1123) For WinMS releases the runtime library is now /MD instead of /MDd
(SCR1124) There is a new directory structure for releases this will allow multiple
versions of WSMS to co-exist. Instead of cinclude and clib directories the
files will be in WSMS30xx/include and WSMS30xx/lib.
(SCR1126) Added new widget wsms-widget-map-mesh that allows a user defined mesh to be
applied as map data.
(SCR1128) Refined Render.Refresh() to only perform a refresh when something within a
session area of interest is modified.
(SCR1129) Moved wsms-database-raster representation data structure into wsms-database.
(SCR1130) Added AGIL database reader that utilizes DevIL + WIFs to load any image format
supported by DevIL http://openil.sourceforge.net as a geo-referenced raster tile.
Note that files are not tiled internally and instead each file forms a complete
tile. So to ensure efficient use of texture memory it is best if the files are
sized in powers of 2 and generally not larger than 1024x1024 as many graphics
cards cannot support textures larger than this size.
(SCR1131) Added GDAL database reader that utilizes the GDAL (Geographic Data Abstraction
Library) to read many different GIS format datasets www.gdal.org
(SCR1132) Added "Shadow" attribute to all WSMS components that utilize a font. Values are
"None", "High", "Medium" and "Low". When applied this will double render the
text slightly offset from the actual text using the background color.
This provide better readability on multi-colored backgrounds.
(SCR1133) Added new session renderer class called PureGL. This allows rendering using a
custom OpenGL engine without the need to use any operating system specific operations
to create the GL context. All specific GL operations are passed in as callback
operations when the render is created. This is very useful for embedded graphics
cards or to allow WSMS to integrate with a non-supported graphics environment that
provides some form of OpenGL widget.
(SCR1125) Updated rendering of WSMS Mil2525 Disrupt symbols to position the base tail as
per the Mil-Std-2525b document images.
(SCR1127) Modified WSMS Series C++ mapping to be correctly aligned across different C++
(SCR1122) To speed up the adding of multiple widgets to an overlay widgets can be added
to an overlay instance without sorting. This significantly speeds up the addition
of new widgets. After all widgets are added the Sort() operation must be called
to sort widgets into Priority Order for correct rendering.
(SCR1124) This new directory structure and naming will allow multiple versions of WSMS to
co-exist and for people to more easily identify which version of WSMS is being used.
Instead of cinclude and clib directories the files will be in WSMS30xx/include and
WSMS30xx/lib and the filenames will be
(SCR1126) Added new WSMS widget wsms-widget-map-mesh, this widget allows a user defined mesh
to be applied as map data. The mesh is centered in a geographic location and sized
based on meters. This allows for dynamically changing map data to be geographically
placed in the session framework.
a. Normal database, series and cache attributes for map class widgets are ignored as
all data is sourced from the caller
b. Data is supplied as a pointer to a sized block of memory; this allows multiple
data formats to be supplied.
c. Currently supported formats are:
i. Boolean1 (1 bit packed Boolean array where true values are mapped to
foreground color and False values are mapped to background color)
ii. Boolean8 (8 bit Boolean array where true or zero values are mapped to
foreground color and False or non-zero values are mapped to
iii. RGBA (32 bit .. 4 x byte = Red, Green, Blue, Alpha values are mapped
to the target image format and displayed as is)
iv. Direct (32bit .. 4 x byte = Red, Green, Blue, Alpha values are passed
directly to the image and not mapped to the output image format,
this is the fastest method of transferring data but relies on
the calling application to match the supplied data format with
the render device format
Special operation Set_Mesh() is used to pass the source data block to the widget.
(SCR1132) There is also a new entry in the wsms.dat file for the new widget, called
"WSMS.Widget.Map.Mesh", see attached wsms.dat file. Please update the RC wsms.dat to
include this entry.
Data : 0
Visible : True
Priority : 99
Center : 0.0 0.0 0.0
Rotation : 0.0
Selectable : False
Highlight : False
Highlight_Method.Colored : False
Highlight_Method.Color : 000 000 000 255
Highlight_Method.Blink : 0.0
Session_Links.Center : False
Session_Links.Scale : False
Session_Links.Rotation : False
Cache : 0
Attributes.Foreground : 255 000 000 255
Attributes.Background : 100 100 100 255
Attributes.Line_Style : Solid
Attributes.Line_Width : 0
Attributes.Fill_Style : Solid
Attributes.Opaque : True
Attributes.View : View_2D
Attributes.Textured : False
Attributes.Width : 100
Attributes.Height : 100