MetaProxy was introduced at the start
of 2019
as a free Windows tool allowing meta-data such as archival descriptions, search terms,
provenance, and even transcriptions, to be associated with images and other data
files in your genealogical data. This article describes the new features in
V3.0 of the Windows edition; these do not apply to the Mac edition.
Although the program has a small
following, it is not yet well-known, and is not even considered a
"genealogical tool" in some quarters. However, following some recent work
to fix reported issues with Windows 'Photo Viewer' and the 'Photos' Store App
under Windows 10, it was decided to give those users more control over their
layout.
So What is New?
A particularly useful feature of
MetaProxy turned out to be its collection feature, where double-clicking on a
root buddy file would automatically open up a series of image data files and
their individual buddy files. The new INI-file setting of Collections=False can be used to turn this off if
required (the default is True), but this also allows the use of a different
file type for such root buddy files. We'll here talk of *.coll for root buddy
files and *.meta for normal buddy files, but the actual file extension may be
chosen by the user.
Because of the similarity between the
display of a collection and the use of a traditional photo album, a tiled mode
has been implemented. This is controlled by two new INI-file parameters: TileH
and TileV, which specify, respectively, the
number of horizontal and vertical tile positions over the screen area. If both
are zero (the default) then tiled mode is disabled, otherwise each will default
to 1 if unspecified. This mode employs overlay mode for individual buddy files,
and so it overrides any separate SideBySide setting.
If the root buddy file of the
collection example in the original article (RisalpurCemetery.meta) is renamed
to RisalpurCemetery.coll, then the INI-file might specify a grid of 3x2 for the
display as follows:
[metaproxy]
CreateType=.meta
[.coll]
TileV=2
TileH=3
This would then result in a layout
similar to the following, where each individual image data file is overlaid
with its specific buddy file, and the original root buddy file (if it has no
data file of its own) is tiled separately:
But the tiled mode is not just for
collections. If a normal buddy file has multiple data files associated with it
then they can be tiled in a similar way. For instance, given a buddy file
called Test_ID-34.meta2 that's associated with two separate images (a *.jpg and
a *.jpeg file) and a Word document (*.doc in this case), then an INI-file
setting of:
[metaproxy]
CreateType=.meta
[.meta2]
TileH=3
would result in the following layout:
This shows the Word document and the
two images spread across the width of the screen, and the buddy file overlaid
on the last of the images. Where people have larger screens than the one used
in this example then this becomes a convenient way to see all of the related
details.
NB: if you're using the normal overlay
mode (SideBySide=False setting) then specifying TileH=1
or TileV=1 will force the image viewer to occupy
the full screen area rather than its default size and position.
Microsoft Mechanisms
While developing this tool, it became
clear that Microsoft has a variety of ways for launching the viewer for data
files (e.g. image viewers), and no central mechanism for finding their main windows.
For instance:
1. Normal process creation for the image viewer (or document viewer). The handle of its top-level window is then determined. Most cases fall into this category, including Microsoft Office Picture Manager, Microsoft Paint, Microsoft Word, and of course the Notepad text editor.
2. When launching the viewer, the data file is simply handed over to an existing instance of the program, which then creates a new tab for it. Adobe Acrobat and Web browsers are examples of this.
3. When the viewer is actually a DLL rather than an EXE, it has to be loaded into a special 'container process' called dllhost. Windows 'Photo Viewer' is an example of this.
4. When the viewer is one of the cut-down 'Store Apps' available under Windows 10 then it follows a different set of rules, and the normal Windows APIs have limited accessibility to them. 'Photos' (aka 'Microsoft.Photos.exe') is an example of this.
Note that if the data file is shown in
the tab of a single-instance viewer (case 2) then the tiled mode mentioned
above will not work as intended since the viewer cannot occupy more than one
tile location.
Diagnostics
In the event of problems being
reported within the Facebook support group, a diagnostic log file can now be
generated via the program copy called metaproxy-D.exe (also available from the
same Dropbox link).
These log files should be emailed to
the author in order to assist in a resolution. There's a 'Contact Form' in the
right-hand panel of this blog-post.