Repository navigation
Releases: dmytrobsp/fastview-rea
Release list
FastView-REA 0.7.0
The follow-ups of 0.6.0, older verification debt and long-standing bugs: channel drags between records, auto-hidden panes, the formula editor's definitions, files compared byte for byte with Fast View 5's, display scaling above 100 %, Windows 11's window frame, the keyboard in the frame's own controls and dialogs, and the print path. Every change was checked against Fast View 5's binary and, where it could be run, side by side in throwaway Windows VMs, and reviewed by an independent reviewer before it merged. Where FastView-REA now does better than the original on purpose, it says so in docs/IMPROVEMENTS.md.
Channel drags and pasted lanes — #73, #74, #76, #133
- The drag cursor follows the original's: the four-way cursor only over a drop target, the no-entry cursor elsewhere.
- A channel dropped on another record's view does nothing (an improvement — the original combined the wrong channels there).
- Pasted lanes can be dragged and dropped like file channels, on lanes and on the frequency and vector panes.
Panes — #124, #126, #127, #128, #143, #149
- A double-click on a pane's tab floats that pane, as in the original.
- Slid-out panes are as large as when docked; unpinning a pane that shares a slot gives it back its own size; closing the front pane of a slid-out group keeps the group out.
Formulas and diagrams — #23, #30, #31, #93
- The formula editor's definitions are evaluated, checked and saved in the list's order, kept rows included; loading settings, the flag and value-mode commands and «Коэффициенты» treat them as the original does.
- A formula naming its own or a later definition fails with the original's message, and a channel read after an analysis function takes the original's late value.
- The diagrams refresh after every command that refreshes them in the original.
- The frequency diagram's «% of the fundamental» labels read «0» for a constant channel (an improvement — the original prints percentages made of rounding noise).
Files — #28, #42
- Saved files are byte for byte the original's:
.omp,.cfg/.dat/.setand.cff, for ASCII and BINARY records, after an ОМП run, with pasted lanes. - A BINARY record's row size is taken from the data as the original does, so records with 8–15 digital channels read correctly; a
.cffwritten with CRLF line ends reads from its first byte. - ADC mode shows the bare code with no unit on every lane, pasted lanes included; a formula channel's frequency bars are corrected like a file channel's.
Display scaling — #35, #45, #147, #138–#141, #44
- At 125 % and 150 % a record opens at the original's first zoom; the diagrams' grid, the status bar's font and panes, «Параметры ОМП»'s grid and the planes' scroll bars follow the original's sizes; diagram and oscillogram printouts use the original's scale.
- The status bar carries the size grip in a normal window, and it resizes the window.
- A context menu that doesn't fit below the pointer opens upward from it.
Windows — #33, #34, #136, #146
- Windows 11's snap layouts appear over the maximise button, and the window has its shadow back.
- The window no longer repaints about 12 times a second while idle (the splash's timer).
- A lane's «*K» icon follows the original's test of the stored ratio values.
Keyboard — #24, #25, #26, #145, #148
- The merge bar's controls and the document list's ▾ take the keys as the original's; Tab doesn't move between them.
- The parameter grid pages by PgUp / PgDn and scrolls a key-selected row into view.
- Dialog arrow keys follow the dialogs' own control groups, skipping disabled controls.
- Shift+Insert / Ctrl+Insert work in text fields and are ignored elsewhere; the rename and level edits act when Enter or Esc is released.
Printing — #21, #22, #27
- «Свойства...» no longer freezes the window: the printer driver's dialog appears over the program, and its choice is used for the job.
- Over the print preview, Ctrl+P, Ctrl+S and Ctrl+O work as in the original; the preview's sheet and the vector page's header match the original's.
The record and tools — #41, #134, #137, #153
- The record of the original's behaviour has its stale verdicts corrected and most "not determined" marks settled.
- The synthetic test-record tools cover more formats and check fixtures for copied values.
Known differences
- MSVCR120's rounding of some very long numbers and its case mapping of 199 rare characters are not modelled (#198, #199 — for the maintainer to accept or not).
Downloads
One archive per platform, the program, its documents and licences at the archive's root: Linux x86-64, Windows x86-64 and macOS (universal).
Full list of issues: milestone 0.7.0.
FastView-REA 0.6.0
The follow-ups of the last two releases: the remaining calculation differences down to the last digit, auto-hidden and floating panes, the keyboard focus that decides what Copy takes, code pages, display scaling above 100 %, and the oscillogram view's first zoom. Every change was checked against Fast View 5's binary and side by side in throwaway Windows VMs, and reviewed by an independent reviewer before it merged. Where FastView-REA now does better than the original on purpose, it says so in docs/IMPROVEMENTS.md.
Calculations — #105, #106, #107, #108, #115, #121
- Formulas read channels as the original does: scaled before the constant part is taken off (with «Удалить постоянную» / «Инвертировать»), and in the ADC-codes mode as raw codes.
tg:/ctg:use a port of Intel's tan that gives exactly the original's last digit for every angle below about 733 000°.- ОМП forms its sequence components and divides complex numbers exactly as the original, so on very clean records the визиры land on the same sample as the original's.
- Every sin / cos in the calculations is now tested on every platform.
Merged channels — #100, #101, #102, #103, #104
- «Объединить» takes each channel's own sampling rate for the common rate and the padding, and after a rate change in «Параметры файла» merged lanes stop where the original's stop.
- Pasted lanes can be dragged onto other lanes (refused with the original's message 1086); digital lanes are left out of lane drags, as in the original.
- Formula channels and pasted lanes can be dropped on the frequency and vector diagrams.
Panes and the keyboard focus — #109, #110, #111, #112, #113, #65, #83
- Auto-hidden panes: a slid-out side or top pane now starts below the window's caption row, so its pin and «×» show and work on every edge (an improvement — in the original they lie hidden under the caption). The pane stays out while the pointer rests near it, as the original's.
- Pulling a tab out of a tab strip floats its pane after the same short drag as a caption, scaled with the display, with the move cursor (new).
- What Copy takes follows the original's keyboard focus: a press on a pane's tab, a closed dialog, a change of document, the merge bar's controls. A pane of a tabbed group that is hidden keeps the focus, as in the original.
- Floating and slid-out panes do nothing while a dialog is open, and a channel dropped on a floating or slid-out window goes to that window, not to what lies underneath.
Code pages — #81, #82, #114
- A name pasted or merged into a record whose code page can't hold its letters (і ї є ґ in KOI8-R or 866) is kept as typed across «Кодировка» switches (an improvement — the original turns such letters into «?»).
- A code page stored in a record's settings other than the usual ones is read as the original reads it, and written back unchanged.
- ОМП's fault flags keep a channel's own name when the run takes it over.
Display scaling and the view — #78, #80, #69, #79, #118, #119, #68
- At 125 % and 150 % dialogs are laid out in the original's dialog units, fonts are whole pixels, and «Параметры ОМП»'s toolbar and buttons sit as in the original.
- The oscillogram's first zoom when a record opens now matches the original's: it follows the size Windows gives a new document window, measured on the original.
- In a narrow window the status bar keeps the same panes as the original's.
- A lane's «*K» icon follows the channel's own display mode.
- Copy with the oscillogram focused was checked: it already puts the same picture formats as the original (#68).
Tools
- A generator of synthetic test records with the structure of a real recorder file and every value invented, and a check that nothing of the real record is copied (#67) — for testing without users' records.
Known differences
- A formula's
tg:/ctg:of an angle beyond about 733 000° uses the platform's tan, not the original runtime's (#131), as forsin:/cos:beyond about 5 million degrees (#116).
Downloads
One archive per platform, the program, its documents and licences at the archive's root: Linux x86-64, Windows x86-64 and macOS (universal).
Full list of issues: milestone 0.6.0.
FastView-REA 0.5.0
Calculations that match the original to the last digit, and docked, floating and auto-hidden panes that behave as the original's. Every change was checked against Fast View 5's binary and side by side in throwaway Windows VMs, and reviewed by an independent reviewer before it merged. Where FastView-REA now does better than the original on purpose, it says so in docs/IMPROVEMENTS.md.
Calculations — #72, #60, #57, #71
- The original's sin / cos, bit for bit. The spectrum, phasors, RMS, harmonics, frequency correction, ОМП and formula functions now use a port of Intel's SSE2 sin / cos (BSD licence,
LICENSE-intel-libm.txt) that gives exactly the same last bit as the original's runtime, on every platform; the angles are formed in the original's order. Labels that used to differ in the last printed digit — most visibly the harmonics of a channel holding a constant value — now read as the original's. - The display factor per sample. In «Вторичные» on a primary record (and with «Удалить постоянную» / «Инвертировать»), every sample is scaled before the sums, as the original does, so values agree to the last bit.
- «% of the fundamental»: the fundamental's own label always reads «100» (the original sometimes prints «100.0» — a rounding accident).
- After «Объединить», then a change of the record's rate in «Параметры файла», the merged channels keep their own sampling period for RMS, A1, phasors, the frequency diagram and formula functions, while channels added later use the new rate — as in the original.
- «Совместить каналы» (and dropping lanes onto a lane) refuses channels of different rates with the original's message «Выбранные каналы имеют разную частоту», changing nothing. Formula lanes can now be dragged too.
Panes — #61, #62, #63, #64, #70, #77, #90
- Auto-hidden panes: the strips sit where the original's do on all four edges (beside the ribbon, not below it), and a slid-out pane spans the window's height or width. A tabbed group gets one strip button per pane — the front one full length, the others short — and a slid-out pane shows only that pane. A divider beside a slid-out pane resizes it, and the size is kept. The ribbon's pane button on an auto-hidden pane slides it out instead of closing it; its caption «×» closes it. Beside a right strip the window's own buttons stay whole and work.
- Floating panes are ordinary tool windows: the rest of the window keeps working while one is open (before, it acted as if a dialog were up).
- Pulling a pane out: a docked pane floats after a short drag of its caption (4 px, scaled with the display) wherever the pointer is — as the original — and the pointer shows the move cursor while the caption is held (new).
- Closing a pane that had the keyboard focus — by its caption «×», the pane menu's «Скрыть» or the ribbon — gives the focus back to the oscillogram, so the arrow keys move В1 again.
Smaller
- ОМП: after «Кодировка», clearing and re-running ОМП finds its «КЗ фазы» flags again (it left them behind or added more) — #66.
- A kV / kA channel's units in the statistics rows were checked against the original: they already match (#86).
Known differences
- A formula's
sin:/cos:of an angle beyond about 5 million degrees uses the platform's sin / cos, not the original runtime's (#116).
Downloads
One archive per platform, the program, its documents and licences (now also LICENSE-intel-libm.txt) at the archive's root: Linux x86-64, Windows x86-64 and macOS (universal).
Full list of issues: milestone 0.5.0.
FastView-REA 0.4.0
The first user feedback on v0.3.0 (#1–#3), a new record format, and display scaling done the original's way. Every change was checked against Fast View 5's binary and side by side in throwaway Windows VMs, and reviewed by an independent reviewer before it merged. Where FastView-REA now does better than the original on purpose, it says so in docs/IMPROVEMENTS.md.
Display scaling (Windows) — #5, #6, #12
- At 125 %, 150 % or any custom scale the window paints one pixel per device pixel: text is crisp and waveforms, grid lines and frames are whole-pixel lines, as at 100 %. The oscillogram, lanes, fonts and diagrams keep their 100 % pixel sizes — as the original does.
- The ribbon, pane captions, tab strips, status bar, menus, tooltips and dialogs grow with the system scale, as the original's do (at 150 % the ribbon collapses the same groups on a small screen).
- On a second monitor at another scale, or after changing the scale without signing out, the window stays crisp and 1:1, where Windows stretches the original into a blur.
- Windows 10 1507 / 1511 (before 1607) at more than 100 %: the oscillogram is crisp, but the ribbon, captions, menus and dialogs stay at their 100 % size (#85).
- Once after the update: at more than 100 % the window reopens smaller (and nearer the top-left) the first time, because older versions saved its size in scaled units.
- Ctrl + / − / 0 no longer zoom the whole interface (on any platform) — the original has no such zoom.
Auto-hidden panes — #4
- A pane pinned to auto-hide stays out while the pointer rests on its strip button; it no longer opens and closes over and over.
- The strip button acts on the press. A click in a slid-out pane, on its strip button or on its caption keeps it out until you click elsewhere, and gives that pane the keyboard focus: Copy then copies its diagram, and the arrow keys stop moving В1 until you click the oscillogram — as in the original.
- No more constant repainting while a pane is out.
«Кодировка» and quick analysis — #7
- After changing the record's encoding in «Параметры файла», quick analysis works again, and so does everything that named a channel: formulas (including ones computed before the switch), quick-analysis page picks, differential / R-X pairs, ОМП station channels and the vector diagram's angle reference follow their channel to its new name; levels and areas stay on their channel.
- Pasted lanes are re-decoded too; a renamed channel keeps its name.
- Renaming: an empty name brings the channel's file name back; a name that is another channel's file name is refused.
- The vector diagram's value cells stay empty until В1 has been placed, as in the original.
- A channel name that no longer exists gives the bare «Имя канала задано неправильно.».
COMTRADE 2013 UTF-8 exports (e.g. Siemens SIPROTEC 7KE85) — #8
- A
.cfgin UTF-8 (with a BOM, or valid UTF-8 at revision 2013) opens with correct names whatever the Display Encoding setting, without the BOM showing; its.hdrcomment is read as UTF-8 too. The original shows such names as mojibake. - Such a record is saved back in UTF-8, with its BOM.
- «Кодировка» on such a record offers its own encoding as a third entry and comes back to it without loss; 1251 / 866 show what the original shows.
- ADC codes are now right for channels in kV / kA (they were off by the unit multiplier) and for float exports with a tiny scale factor, rounded as the original.
- Large records open faster (one computation instead of two).
Smaller
- In narrow windows the status bar hides the panes that don't fit.
Downloads
One archive per platform, the program and its documents at the archive's root: Linux x86-64, Windows x86-64 and macOS (universal).
Full list of issues: milestone 0.4.0.
v0.3.0
v0.2.0
v0.1.0
Full Changelog: https://github.com/dmytrobsp/fastview-rea/commits/v0.1.0