-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Description
Description of the feature, modification, idea or suggestion
In Windows with predominantly key-value style lists, such as in the main window, Devices tab, right click a device for the menu, select Properties menu item.
This window has 3 tabs, General, Properties and Interfaces (tab buttons). Left clicking a tab button hides 2 of the 3 window elements, depending on which tab button clicked.
The data is displayed in a structure similar to INI files, as in the General tab canvace for a Printer device.
[General]
Description=Local Print Queue
Problem Code=0
[Class]
Name=PrintQueue
Property page provider=printui.dll,PrinterPropPageProviderThis is a proposal.
Proposed implementation details (optional)
A common context menu enabled for tab buttons with above mentioned style of content key-value pairs.
The context menu will consist of options to copy all eligble key-value items from the GUI to a user choice.
As mentioned above, one option could be "Export to Simple HTML-table". In such case, "Export all tabs" would produce 1 <table>-element per tab. A predictable styling format should be included, but without accompanying stylesheet. This has 2 functions;
- Developers using HTML parsers can easily access any data element using XPath or alternatives.
- Ease of changing visual elements for accessibility readers.
- branding elements in case of reports, like example to highlight in a traffic-light color-scheme.
<table class="window window-device window-device-property category category-general">
<table class="window window-device window-device-property category category-class">One can iterate each table in a HTML document, and the right table 'category', and subsequent query for 'category-*' as the last element, and permit only a-z where 1 or more space is replaced with 1 '_'. Ie, "The Génerals" -> "category-the_generals".
It is important that this value has to be last in the attribute, "category category-last_value".
For the web designers; this format is for containing data, design is optional.
An XML, this is expanded to include possible multi-select Device items in the Devices main window. The lang property defaults to the language for UICulture/User Interface language.
<SystemInformer lang="en-us">
<Devices>
<Device>
<Properties>
<Property>
<Category index="0"><![CDATA[General]]></Category>
<Data>
<Name><![CDATA[Problem Code]]></Name>
<Value><![CDATA[0]]></Value>
</Data>
</Property>
</Properties>
</Device>
</Devices>
</SystemInformer>Only forbidden data is the ]]> after <![CDATA[. This way multi-line and space formatted columns can be preserved.
For the CDATA questions and "i dont want to dig into an RFC right now"; https://stackoverflow.com/questions/2784183/what-does-cdata-in-xml-mean
In case of CSV/TSV, using the above mentioned INI-demonstration:
"Category","Name","Value"
"General","Description","Local Print Queue"
"General","Problem Code","0"
"Class","Name","PrintQueue"
"Class","Property page provider","printui.dll,PrinterPropPageProvider"For clipboard there is format code
49369 ("HTML Format")
50349 ("Csv")
49790 ("XML Spreadsheet")
49314 ("Rich Text Format")
49158 ("FileName") 8.3/8dot3 full path
49159 ("FileNameW") full path
49471 ("UniformResourceLocatorW").
Full reference on MSDN Win32 -> Shell -> Clipboard
For graphs, the series displayed could be cached and additonally to above, Save as GIF or one-image-per-point "image-00001.ext", or an appropriate image format. Possibly the ffmpeg's "combine multiple input files" file format:
file "image-00001.ext"
See on Superuser.com Answer for Ffmpeg input image sequence: can I add arbitrary list of images to that?.
Thank you for your time.