log

age author description
2020-07-21 Chris Cannam Merge
2020-07-21 Chris Cannam This function is now C-linkage (with pointers) for simplicity after we pulled it optionally out into a separate DLL
2020-07-02 Chris Cannam Where the "below" view represents only a subset of the "above" view, cut off the feature mappings at the outer edges of the "below" view - don't map everything outside this (it would all just map onto the same single points at beginning and end, which is excessive, confusing and not useful)
2020-06-30 Chris Cannam Fix potential divide-by-zero (depending on a race elsewhere)
2020-06-18 Chris Cannam Merge from branch csv-import-headers
2020-06-18 Chris Cannam Support column headers, with user toggle; also distinguish visibly between tab and general whitespace delimiters csv-import-headers
2020-06-16 Chris Cannam Fix some Qt deprecations
2020-05-14 Chris Cannam Profiling point
2020-05-14 Chris Cannam It turns out icons are loaded repeatedly when recreating menus, causing an actually appreciable slowdown when some cases. Provide a cache
2020-05-11 Chris Cannam Make ImageLayer able to report whether an image format can be opened
2020-05-06 Chris Cannam Reduce font size when pane is very thin
2020-05-06 Chris Cannam Reduce heights of alignment views if (they are visible and) we are squashed for space
2020-04-30 Chris Cannam When asked to render the whole view width, we need to wait for the layers to be ready before we can determine what the width is
2020-04-29 Chris Cannam Fix compiler warning
2020-04-29 Chris Cannam Debug
2020-04-29 Chris Cannam Further removal of Qt 5.6+-only APIs
2020-04-29 Chris Cannam This addAction API from Qt 5.6+ is still, unfortunately, too recent for some of our builds
2020-04-29 Chris Cannam Complete round-trip name-type conversion for melodic range & peak freq spectrograms (also has the effect of making them creatable from OSC)
2020-04-22 Chris Cannam Add list of packs, fix download test logic
2020-04-20 Chris Cannam Use Provider structure
2020-04-09 Chris Cannam Fixes for mingw
2020-04-09 Chris Cannam Add missing include
2020-04-09 Chris Cannam Use our base column type
2020-04-06 Chris Cannam Merge from branch sensible-delimited-data-strings
2020-04-03 Chris Cannam Switch to the StringExport api now found in svcore sensible-delimited-data-strings
2020-04-03 Chris Cannam Merge from branch audio-source-refactor. Mostly handling changes to plugin ownership
2020-04-03 Chris Cannam Remove unused variable
2020-04-03 Chris Cannam That didn't work well on a machine with a higher scaled-pixel ratio, try this
2020-03-31 Chris Cannam Provide context menu in LevelPanToolButton, + a bit of tidying
2020-03-30 Chris Cannam Add right-button context menu to panner widget
2020-03-27 Chris Cannam Add context menus to property box controls
2020-03-27 Chris Cannam Add context menu to Thumbwheel
2020-03-27 Chris Cannam Add test for whether presentation name is at default or not
2020-03-26 Chris Cannam Add optional context menu to AudioDial
2020-03-26 Chris Cannam Factor out the menu titling code formerly in MainWindow
2020-03-25 Chris Cannam Add a tab-bar context menu signal to the property stack
2020-03-20 Chris Cannam Use shared_ptr for plugin instances throughout; also descriptors are copyable audio-source-refactor
2020-01-24 Chris Cannam Merge from branch background-mode
2020-01-24 Chris Cannam Add optional unset entry to colour combo background-mode
2020-01-24 Chris Cannam Make nearby-colour matching a bit more sophisticated, with slightly better algorithm (we think?) and ability to insist on dark/light background background-mode
2020-01-23 Chris Cannam Pick accent colour from OS theme if appropriate background-mode
2020-01-23 Chris Cannam Apply sensible highlight/link colours background-mode
2020-01-20 Chris Cannam More sensible approach to colour setting on Windows background-mode
2020-01-17 Chris Cannam Windows stylesheet background-mode
2020-01-17 Chris Cannam Comments and palette adjustments
2020-01-15 Chris Cannam Cut this down, we don't need the things we were calculating (also avoid possible null pointer dereference of v)
2020-01-15 Chris Cannam Model -> layer, + word wrap
2020-01-15 Chris Cannam Clarify comment
2020-01-14 Chris Cannam Merge from branch csv-export-dialog
2020-01-14 Chris Cannam Add CSV export dialog, + associated supporting changes csv-export-dialog
2020-01-14 Chris Cannam Don't write empty lines
2020-01-10 Chris Cannam Merge from branch spectrogram-export
2020-01-10 Chris Cannam Add support for a header line on delimited data output spectrogram-export
2020-01-10 Chris Cannam Add option to export timestamp column spectrogram-export
2020-01-09 Chris Cannam Use Colour3DPlotExporter in line with SpectrogramLayer spectrogram-export
2020-01-09 Chris Cannam Provide parameters needed for scale and thresholding spectrogram-export
2020-01-09 Chris Cannam Handle scale factor, needed for all spectrogram export; handle thresholding (using gain/normalisation for threshold calculation) in peak frequency export spectrogram-export
2020-01-09 Chris Cannam Give timer a parent so as not to leak it spectrogram-export
2020-01-08 Chris Cannam Update in-progress comments only spectrogram-export
2020-01-07 Chris Cannam Fix typo in range spectrogram-export
2020-01-07 Chris Cannam Comment only spectrogram-export
2020-01-07 Chris Cannam Handle peaks spectrogram-export
2020-01-07 Chris Cannam Provide export model spectrogram-export
2020-01-06 Chris Cannam Start work on spectrogram export code spectrogram-export
2019-11-22 Chris Cannam Fix note numbering - ensure stable across whole track (as it used to be, but without scanning all notes in paint in order to do that)
2019-11-21 Chris Cannam Merge
2019-11-21 Chris Cannam Fixes to NoteLayer, particularly to calculation of vertical scale when model unit is not Hz. To avoid inconsistency we now behave as if the unit is always Hz from the point of view of the external API and display, converting at the point where we obtain values from the events themselves. Also various fixes to editing.
2019-10-31 Chris Cannam Further replacements of QRect::right() with the right (arf) calculation
2019-10-31 Chris Cannam Use x + width() instead of QRect::right(), which doesn't return what we need and leaves us a pixel short; also subtract the resolution from the start frame to avoid scrolling scraggy single-pixel lines when we should be drawing nice fat ones
2019-10-17 Chris Cannam Permit getScaleProvidingLayerForUnit to return a dormant layer if there is no visible alternative. This is necessary to avoid the scale disappearing in Tony when the spectrogram is toggled off.
2019-10-17 Chris Cannam Pass a y-coord, optionally, to Layer::snapToFeatureFrame. This is necessary for BoxLayer which needs to coordinate its snaps with the box it is highlighting for editing. Then in BoxLayer, merge getPointToDrag and getLocalPoints into a single getLocalPoint and use this throughout.
2019-10-17 Chris Cannam Update getPointToDrag to prefer boxes that are containing the mouse position in height as well as width
2019-10-16 Chris Cannam Make audio dial more visible in Mac dark mode
2019-10-16 Chris Cannam Return true from getValueExtents always, just with no unit in the case where we don't have a nice neat scale. This should preserve the property of preventing other layers auto-aligning to us, while also ensuring we don't get overlooked for the purposes of drawing our own scale in a situation where a scale-less layer is on top of us
2019-10-16 Chris Cannam Debug output
2019-10-16 Chris Cannam Overhaul the way WaveformLayer reports value and display extents. The previous logic has been nonsense for a very long time, excused only by the fact that it was very seldom relevant (only really if another layer with unit V came along that wanted to auto-align with it). Partial fix for #1954 Peculiar alignment for Amplitude Follower y-scale in Auto-Align mode
2019-10-16 Chris Cannam Fix getScaleProvidingLayerForUnit to make it only return a layer that actually has display extents. Modify getVisibleExtentsForUnit to make it more like the behaviour in 3.x: where no layer with display extents is found, use the union of the value extents of layers with the right unit. Partial fix for #1954 Peculiar alignment for Amplitude Follower y-scale in Auto-Align mode.
2019-10-16 Chris Cannam Debug output tweaks
2019-10-15 Chris Cannam Overhaul choice of layer to show scale, in Pane::drawVerticalScale, making it call out to the same logic used by View::getVisibleExtentsForUnit when appropriate. Also refuse to accept scale from dormant top layer.
2019-10-15 Chris Cannam Avoid compiler warning
2019-10-15 Chris Cannam Clarify naming of some view-related methods. Rename LayerGeometryProvider::getValueExtents to getVisibleExtentsForUnit, and View::getTextLabelHeight to getTextLabelYCoord. Add View::getVisibleExtentsForAnyUnit to be used to determine which unit to adopt in a new e.g. box layer.
2019-10-15 Chris Cannam Fix #1951 Selecting row in data editor with multiple items having same frame always selects the first
2019-10-14 Chris Cannam Tidy / debug
2019-10-09 Chris Cannam Fix #1904 Scrolling colour 3d plot does not always work when in View normalisation mode. We shouldn't imagine we've just invalidated the cache if the truth is that we've only just created the renderer
2019-10-09 Chris Cannam Fix failure to apply new frame when pasting events
2019-10-09 Chris Cannam Further light streamlining
2019-10-09 Chris Cannam Slightly streamline image scaling
2019-10-07 Chris Cannam Don't create alignment views at all if not requested (now that the request is made only at construction time)
2019-10-07 Chris Cannam Fix alignment of property box when switching back on after having been hidden
2019-10-07 Chris Cannam Fix compiler warning
2019-10-04 Chris Cannam Fix goof
2019-10-04 Chris Cannam Rework PaneStack so that the options that generally aren't (or can't be) changed after construction are supplied to the constructor instead of being set through setter methods.
2019-10-04 Chris Cannam Debug bits
2019-09-25 Chris Cannam Merge
2019-09-25 Chris Cannam Make the waveform layer do the expected thing when MergeChannels mode (i.e. butterfly mode) is enabled even if there is only 1 channel. This combination isn't actually available in the UI for SV, but it's useful for Sonic Lineup.
2019-09-25 Chris Cannam Merge from branch time-frequency-boxes
2019-09-25 Chris Cannam With duration and two values, propose a box model (value and extent) time-frequency-boxes
2019-09-25 Chris Cannam Tidying time-frequency-boxes
2019-09-25 Chris Cannam Make getTopLayerDisplayExtents public (ugh) for use when setting up a new empty layer with auto-align over the top of another one time-frequency-boxes
2019-09-25 Chris Cannam Rename TimeFrequencyBoxLayer to just BoxLayer, supporting vertical scales other than Hz time-frequency-boxes
2019-09-21 Chris Cannam Fix confusion about capture scope with MSVC time-frequency-boxes
2019-09-20 Chris Cannam This is what the icon is actually called time-frequency-boxes
2019-09-20 Chris Cannam Item-editing updates needed for time-frequency box layer time-frequency-boxes
2019-09-20 Chris Cannam Fixes to drag and paint in time-freq box layer time-frequency-boxes
2019-09-20 Chris Cannam Shorten name (Boxes -> Box) time-frequency-boxes
2019-09-19 Chris Cannam Add TimeFrequencyBoxes to layer factory time-frequency-boxes
2019-09-19 Chris Cannam Introduce time-frequency box layer time-frequency-boxes
2019-09-17 Chris Cannam Merge
2019-09-17 Chris Cannam The default key frame map is not working well at the moment, because its extents are not being properly updated as the models they depend on are loaded. Leave it empty for now.
2019-09-16 Chris Cannam Comment
2019-09-13 Chris Cannam Fix, I think, #1914 Mounting rounding error when dragging aligned view left/right - and therefore the associated #1874 Pointer position becomes increasingly erroneous when rewinding with alignment active
2019-09-13 Chris Cannam Debug updates
2019-09-13 Chris Cannam Debug changes
2019-09-12 Chris Cannam Only set maximum frequency on FFT model when in a special verticallyFixed mode
2019-09-12 Chris Cannam Set maximum frequency on FFT model to reduce cache size (experimental)
2019-09-12 Chris Cannam Pass the cache pointer through rather than looking it up afresh from the model id for each column
2019-09-11 Chris Cannam Generate peak cache directly from model, not from whole-model cache (which turns out to be very slow for large models)
2019-09-11 Chris Cannam More debug bits
2019-09-10 Chris Cannam Debug concerns
2019-09-04 Chris Cannam Indentation
2019-08-15 Chris Cannam Show relative pitch if recorded
2019-08-14 Chris Cannam Separate out handling of alignment progress bar from the layer progress bars and fix tendency to have them hanging around even when alignment has completed
2019-08-13 Chris Cannam Toward trying to figure out a progress-bar problem
2019-08-13 Chris Cannam Ensure rightCropFrame doesn't end up rounded to the left of the desired end pixel
2019-08-09 Chris Cannam Improve drawn alignment of lines in AlignmentView against the view below; also cache the mapping locations
2019-08-08 Chris Cannam Debug
2019-08-08 Chris Cannam Fix overlooked alignment
2019-08-02 Chris Cannam Attempt a mechanism for the View to time-align a layer on display using an aligning version of the ViewProxy
2019-08-02 Chris Cannam Add direct method to get source model
2019-07-19 Chris Cannam Correct erroneous signal signature
2019-07-18 Chris Cannam Fix failure to show alignment progress bar
2019-07-17 Chris Cannam Merge from branch by-id
2019-07-17 Chris Cannam Tidy; also don't show cancel buttons for alignments by-id
2019-07-17 Chris Cannam Fix inability to set layer's model to None by-id
2019-07-15 Chris Cannam Emit a signal when a cancel is pressed by-id
2019-07-12 Chris Cannam Comment by-id
2019-07-05 Chris Cannam Update for removal of (public) getId from Model by-id
2019-07-04 Chris Cannam Update for changes to PlayParameters by-id
2019-07-03 Chris Cannam Further ModelId updates by-id
2019-07-03 Chris Cannam Fix a number of Qt deprecation warnings by-id
2019-07-02 Chris Cannam Further ModelId updates by-id
2019-07-02 Chris Cannam Couple more updates by-id
2019-07-02 Chris Cannam Further layer updates by-id
2019-07-02 Chris Cannam Further layer updates for ModelById by-id
2019-07-02 Chris Cannam Further layer updates for ModelById by-id
2019-07-01 Chris Cannam Further layer updates by-id
2019-07-01 Chris Cannam More layer updates by-id
2019-06-28 Chris Cannam Further layer updates for ById by-id
2019-06-27 Chris Cannam Some work on updating layers for ModelId bits by-id
2019-06-13 Chris Cannam Add opportunistic-editing toggle
2019-06-13 Chris Cannam Don't try to draw scale from a dormant layer!
2019-05-24 Chris Cannam Merge
2019-05-24 Chris Cannam Don't attempt performance alignment when not in align mode
2019-05-24 Chris Cannam Fix incorrect frequency display in peak-freq mode
2019-05-22 Chris Cannam Branch 3.3-stable
2019-05-20 Chris Cannam Fix incorrect visibility of alignment view when not requested; fix current indicator size when x-button is disabled
2019-05-20 Chris Cannam Fix incorrect repaint at left edge in segmentation mode
2019-05-17 Chris Cannam Add option to suppress close button on first pane
2019-05-17 Chris Cannam Merge from branch single-point
2019-05-16 Chris Cannam Make it possible to disable cancel buttons single-point
2019-05-16 Chris Cannam Avoid showing progress bars for dormant layers. They'll typically be duplicates, e.g. in the vect app you can get many dormant layers all reporting the alignment completion at the same time. (Maybe it would be better just to reject progress bars for alignment in dormant layers? Hm) single-point
2019-05-10 Chris Cannam Comment single-point
2019-05-10 Chris Cannam Add setLayerProperties (from XML string) single-point
2019-05-10 Chris Cannam Remove margin from inner frame single-point
2019-05-09 Chris Cannam Smoother cache & colour management in colour 3d plots single-point
2019-05-03 Chris Cannam Make inversion configurable in settings single-point
2019-05-01 Chris Cannam When invalidating cache in a time-constrained context, don't start rendering in the same cycle as well - leave it for a further update. Slightly experimental effort to make the UI feel more responsive. single-point
2019-05-01 Chris Cannam Tweak peak-cache allocations etc in the hope of making long spectrograms a little faster to re-render single-point
2019-05-01 Chris Cannam Don't discard large wheel deltas; just clamp them single-point
2019-05-01 Chris Cannam Some debug bits single-point
2019-04-30 Chris Cannam Add option to make pane sizes auto-resize-only (i.e. remove user control via a splitter); also place alignment views above panes instead of below, meaning the extra bit of space that we currently have for the pane without one at least goes to the primary pane single-point
2019-04-30 Chris Cannam Shrink alignment panes to sensible size on non-hi-dpi screens single-point
2019-04-30 Chris Cannam Add getNearbyColourIndex to ColourDatabase; tweak getContrastingColour for bright colours; add comments single-point
2019-04-25 Chris Cannam Avoid showing final (useless) alignment view single-point
2019-04-24 Chris Cannam Make AudioDial a bit more visible with a dark background single-point
2019-04-24 Chris Cannam Merge from default branch single-point
2019-04-24 Chris Cannam Comment
2019-04-23 Chris Cannam Add function to request multiple filenames
2019-03-28 Chris Cannam Update to using export IDs stored in XmlExportables single-point
2019-03-22 Chris Cannam Use updated ImageModel single-point
2019-03-22 Chris Cannam Use updated TextModel single-point
2019-03-21 Chris Cannam Fix tendency of start position of measure rect to wander as you drag out the rect (at certain zoom resolutions) single-point
2019-03-21 Chris Cannam Merge
2019-03-21 Chris Cannam Fix tendency of start position of measure rect to wander as you drag out the rec
2019-03-21 Chris Cannam Updates for SparseOneDimensionalModel in new API single-point
2019-03-20 Chris Cannam Further snap fixes single-point
2019-03-20 Chris Cannam Begin fixing the various snap operations. Also remove SnapNearest, which is never used and seems to consume more lines of code than the rest! single-point
2019-03-20 Chris Cannam Use overspill to render time-value point line properly at edges single-point
2019-03-19 Chris Cannam Update TimeValueLayer etc single-point
2019-03-15 Chris Cannam Update RegionLayer to updated RegionModel single-point
2019-03-15 Chris Cannam Update to use external set of commands single-point
2019-03-14 Chris Cannam Update following FlexiNoteModel removal, using new NoteModel API where flexi was previously used single-point
2019-03-14 Chris Cannam Finish updating NoteLayer to single-point API single-point
2019-03-13 Chris Cannam Toward getting NoteLayer to work with single-point APIs single-point
2019-03-08 Chris Cannam Update to Event api in place of Clipboard points single-point
2019-03-05 Chris Cannam Keep the point being edited highlighted while the edit dialog is open
2019-02-18 Chris Cannam Fix inadvertent hardcoding of SV file extension
2019-02-14 Chris Cannam Merge
2019-02-14 Chris Cannam Comments
2019-02-14 Chris Cannam Use zero-width pen when zoomed out - this seems to make a huge difference to speed when rendering on top of another layer, for some reason
2019-01-23 Chris Cannam Merge
2019-01-21 Chris Cannam Fix potential divide-by-zero
2019-01-21 Chris Cannam Avoid compiler warning
2019-01-09 Chris Cannam Merge from branch fix-static-analysis
2019-01-09 Chris Cannam Support changing the separator (if more than one plausible one is found) and repopulating the dialog
2018-12-19 Chris Cannam Debug tweaks
2018-12-19 Chris Cannam Sample a column only if it is set (avoids flash of mis-ranged material when scrolling with view normalisation on)
2018-12-04 Chris Cannam Merge from default branch fix-static-analysis
2018-11-29 Chris Cannam Fix erasing of Region layer labels as the playhead moves over them
2018-11-26 Chris Cannam Use nullptr throughout fix-static-analysis
2018-11-26 Chris Cannam Header guards fix-static-analysis
2018-11-26 Chris Cannam Use override throughout fix-static-analysis
2018-11-22 Chris Cannam Fixes from clang modernize-use-override fix-static-analysis
2018-11-16 Chris Cannam Make horizontal wheeling a bit less crazily fast in the absence of fine delta information
2018-11-15 Chris Cannam Retain consistent min freq (rather than min bin no) when changing fft parameters in spectrum; scale ffts by window size rather than fft size in case of oversampling, to avoid fading out because of scale factor including zero padding
2018-11-15 Chris Cannam Handle integer pixel scaling as well
2018-11-15 Chris Cannam Scale pen for retina display on macOS as well as for hidpi display elsewhere
2018-11-15 Chris Cannam Different approach to x-coord calculation in slice layer - let's acknowledge that we really do have two different types of model, those whose "bins" are actually at a single value (frequency in the case of the spectrum) and those whose bins are just labels.
2018-11-14 Chris Cannam Fixes to spectrum axis calculations, + default to starting at bin 1
2018-11-14 Chris Cannam We need to draw illumination label *after* the spectrum...
2018-11-14 Chris Cannam Fix some incorrect pixel scaling
2018-11-14 Chris Cannam Fix compiler warning
2018-11-14 Chris Cannam Merge from branch spectrogramparam
2018-11-14 Chris Cannam Various tweaks & fixes to log-scale handling in spectrum. We can't easily preserve the nice behaviour where peaks stay in place as fft size changes, without potentially losing a bit of low-frequency information spectrogramparam
2018-11-14 Chris Cannam Correct positioning for centre line when antialiasing with non-0-width pen spectrogramparam
2018-11-14 Chris Cannam Highlight the current peak line in the spectrum (when shown); also a fix to the crosshair labelling spectrogramparam
2018-11-13 Chris Cannam Toward highlighting peaks on spectrum spectrogramparam
2018-11-13 Chris Cannam Move layer name text up a bit when rendering on a layer with a horizontal scale (i.e. spectrum) spectrogramparam
2018-11-13 Chris Cannam Make "zoom to region" work sensibly for slice/spectrum layers; ensure that min/max bin are remapped properly when changing fft size spectrogramparam
2018-11-13 Chris Cannam Make mention of the shift-drag feature and zooming in the status text spectrogramparam
2018-11-12 Chris Cannam Small speedups spectrogramparam
2018-11-12 Chris Cannam Use log-frequency rather than log-bin for calculating x coord in spectrum. This has the advantage that frequency positions don't move when we change the window size or oversampling ratio, but it does give us an unhelpfully large amount of space for very low frequencies - to be considered spectrogramparam
2018-11-08 Chris Cannam Retrieve only the values already determined to be peaks spectrogramparam
2018-11-08 Chris Cannam Fix "colour" rendering for spectrum (now resembles a filled "line" mode rather than a filled "block" mode) spectrogramparam
2018-11-07 Chris Cannam Switch spectrum to antialiased drawing with considerable speedup for the dense areas; take horizontal scale height into account when rendering slice layer height spectrogramparam
2018-11-07 Chris Cannam Add oversampling option to spectrum as well spectrogramparam
2018-11-06 Chris Cannam Merge from default branch spectrogramparam
2018-11-06 Chris Cannam Make the context help for custom controls explain how to reset them
2018-11-06 Chris Cannam Experimental oversampling param spectrogramparam
2018-11-06 Chris Cannam Avoid nan/inf values (and consequent crash) in colour scale range
2018-11-06 Chris Cannam Use label of property for tooltip, not just id of it
2018-11-06 Chris Cannam Merge from branch zoom
2018-11-06 Chris Cannam Fix incorrect start/end overlay drawing when zoomed far in zoom
2018-11-06 Chris Cannam Merge from default branch zoom
2018-11-05 Chris Cannam Scaling tweaks
2018-11-02 Chris Cannam Short-circuit drawing a little bit for contiguous ranges
2018-11-02 Chris Cannam Progressively increase sample-box size slightly
2018-11-01 Chris Cannam Initialise level and pan from current state of layer's parameters (e.g. when reloading session) waverevision
2018-11-01 Chris Cannam Use a distinguishable text for this state waverevision
2018-11-01 Chris Cannam Merge branch waverevision
2018-10-31 Chris Cannam Rework waveform renderer to use smooth paths, aiming to get near-pixel-identical results when zoomed out far enough for a single path not to be relevant waverevision
2018-10-30 Chris Cannam Fix the mix/merge channels behaviour in pixels-per-frame zone
2018-10-30 Chris Cannam Minor tidying
2018-10-30 Chris Cannam Add show-derivative option but, like inverting the colour scale, I don't think it's as useful as I'd hoped
2018-10-30 Chris Cannam Fix inconsistency between centre frame actually set and centre frame notified as set, which caused the start frame location to creep out of place gradually as you page through
2018-10-18 Chris Cannam Add mechanism for saving/loading colour maps by name/id rather than by numerical index, for future compatibility when adding to or changing the supported colour maps. Add two new colour maps (and one old one). Write out backward-compatible numerical indices for use when reloading in older versions. Also add a mechanism to invert the colour map, though I don't think it turns out useful enough to include in the UI.
2018-10-12 Chris Cannam Merge
2018-10-05 Chris Cannam Merge from default branch zoom
2018-10-11 Chris Cannam Merge
2018-10-11 Chris Cannam Oops, typeof is not standard
2018-10-11 Chris Cannam Rework cacheing logic to reduce the number of reallocations and be more correct about the repaint areas. I don't expect the difference to be really noticeable but in theory performance should be a little better...
2018-10-11 Chris Cannam Fix ugly text positioning/drawing on osx
2018-10-10 Chris Cannam Remove some debug bits
2018-10-10 Chris Cannam Use zoom constraints more consistently, including the new RelativelyFine one
2018-10-10 Chris Cannam Merge from branch zoom
2018-10-05 Chris Cannam Debug tweaks zoom
2018-10-03 Chris Cannam Scale positioning
2018-10-03 Chris Cannam Use newly-introduced cancel icon instead of fileclose. The deceptive name of fileclose had me thinking nobody was using it, so I removed it and the cancel buttons disappeared
2018-10-01 Chris Cannam Merge from default branch zoom
2018-10-01 Chris Cannam Avoid blowing up when faced with min==max in parameter range
2018-10-01 Chris Cannam Use locale-aware comparators for sorting user-visible strings
2018-09-28 Chris Cannam Avoid overflow problems when dealing with large numbers of microseconds zoom
2018-09-28 Chris Cannam Use more precise text rendering when zoomed in beyond the ms level zoom
2018-09-28 Chris Cannam This is the correct size zoom
2018-09-27 Chris Cannam Fix crash when scrolling beyond end of waveform (+ fix compiler warnings) zoom
2018-09-27 Chris Cannam Fix stupidity zoom
2018-09-27 Chris Cannam Fixes for TimeRuler spacing and for the boundaries of the WaveformLayer paint area zoom
2018-09-26 Chris Cannam Remove WaveformOversampler again from here; it's now in svcore zoom
2018-09-26 Chris Cannam Add custom waveform oversampler method zoom
2018-09-25 Chris Cannam Get oversampled rendering almost working, but I think we need to take more care with the oversampling itself zoom
2018-09-25 Chris Cannam Fix accidental always-auto-normalise zoom
2018-09-24 Chris Cannam Toward oversampling rendering zoom
2018-09-21 Chris Cannam Factor out paintChannelScaleGuides zoom
2018-09-21 Chris Cannam Another tidy zoom
2018-09-21 Chris Cannam A further refactor with range blocks zoom
2018-09-21 Chris Cannam Refactor out paintChannel zoom
2018-09-21 Chris Cannam Fix typo that created un-reloadable session file zoom
2018-09-21 Chris Cannam Ensure getFrameForX returns value on zoom blocksize boundary; take advantage of that (this is essentially reverting to the same behaviour as in the default branch, which we should probably have done all along) zoom
2018-09-20 Chris Cannam Responding to a hang due to mismatching zoom and block sizes zoom
2018-09-20 Chris Cannam Avoid compiler warning zoom
2018-09-20 Chris Cannam Further ZoomLevel fixes zoom
2018-09-20 Chris Cannam More ZoomLevel updates zoom
2018-09-19 Chris Cannam Gradual ZoomLevel updates zoom
2018-09-17 Chris Cannam Merge from default branch zoom
2018-09-12 Chris Cannam Merge from branch import-audio-data
2018-09-12 Chris Cannam Propose to take only value-like columns as audio samples, not all numeric ones - now that it's easy enough for the user to overrule import-audio-data
2018-09-07 Chris Cannam Move out these bits which are now in CSVFormat import-audio-data
2018-09-06 Chris Cannam Sample range import-audio-data
2018-09-06 Chris Cannam Refactor; the two use-cases of CSVFormatDialog were turning out to be different enough to justify two separate classes import-audio-data
2018-09-06 Chris Cannam Support audio-format CSV format selection in dialog import-audio-data
2018-09-04 Chris Cannam Merge from default branch import-audio-data
2018-08-09 Chris Cannam Tidy edges of scale area on Mac
2018-07-04 Chris Cannam Ensure scale appears for layer when drawn in AutoAlign mode without any other layer present to align to
2018-07-04 Chris Cannam Layers such as time-value layers with ColourDistinguishes property should use the dark background when a bright colour is selected. This is how it was always supposed to work, I think, but I broke it so long ago that this "fix" might itself come across as a surprising breaking change
2018-06-28 Chris Cannam Fix compiler warning
2018-06-28 Chris Cannam Handle additional case import-audio-data
2018-06-28 Chris Cannam Rename guard import-audio-data
2018-06-28 Chris Cannam Fix compiler warning import-audio-data
2018-06-26 Chris Cannam Tool button on Mac (something has gone very wrong with the appearance of the push button in latest builds)
2018-06-26 Chris Cannam Never scale down
2018-06-26 Chris Cannam Improve level-pan rendering quality on non-retina OSX
2018-06-25 Chris Cannam Better rendering for widget cells
2018-06-25 Chris Cannam Slightly nicer pan handling, avoiding showing spurious >0dB peaks
2018-06-22 Chris Cannam Experiment with rounded rects
2018-06-22 Chris Cannam Collect the bits of bookkeeping for mouse wheel events, and use in all widgets
2018-06-22 Chris Cannam Proper handling for wheel rotation distance
2018-06-21 Chris Cannam Half-steps for level in level-pan widget
2018-06-21 Chris Cannam Ctrl-click on level-pan tool button now also resets to default
2018-06-11 Chris Cannam Merge from branch plugin-path-config
2018-06-11 Chris Cannam Fix compiler warning plugin-path-config
2018-06-08 Chris Cannam Minor improvement to (still nasty) button layout on OSX plugin-path-config
2018-06-08 Chris Cannam Use type keys as indices rather than labels plugin-path-config
2018-06-06 Chris Cannam Fix erroneous tooltip plugin-path-config
2018-06-04 Chris Cannam Show value of environment variable; populate for last plugin type by default (as that happens to be Vamp) plugin-path-config
2018-05-25 Chris Cannam Various logic fixes, and use new setter-class structures plugin-path-config
2018-05-25 Chris Cannam Plugin review dialog plugin-path-config
2018-05-23 Chris Cannam Add "Add" plugin-path-config
2018-05-23 Chris Cannam More work on plugin path configuration layout &c plugin-path-config
2018-05-21 Chris Cannam Toward more than one plugin type in this widget plugin-path-config
2018-05-15 Chris Cannam Grey-out meaningless buttons plugin-path-config
2018-05-15 Chris Cannam Better editing mechanism plugin-path-config
2018-05-15 Chris Cannam Up/down plugin-path-config
2018-05-11 Chris Cannam Toward allowing the user to see (at least, and maybe change) the plugin path plugin-path-config
2018-05-08 Chris Cannam Hack to ensure vertical scale lines are in the right place in pixel-doubling rendering
2018-05-08 Chris Cannam Tidy
2018-05-03 Chris Cannam Merge from branch horizontal-scale
2018-05-03 Chris Cannam Provide linear horizontal scale in spectrum as well as log; fix bin positioning and colour scale property box updating; ensure proper background colour and visibility of peak lines horizontal-scale
2018-05-02 Chris Cannam Merge horizontal-scale
2018-05-02 Chris Cannam Fix positioning of peak lines on spectrum layer (origin is already accounted for in the bin/frequency to x conversion functions)
2018-05-02 Chris Cannam Tweaks to horizontal scale horizontal-scale
2018-05-01 Chris Cannam Draw some ticks horizontal-scale
2018-05-01 Chris Cannam Branch toward adding horizontal numerical scales to things horizontal-scale
2018-04-26 Chris Cannam Tidy
2018-04-26 Chris Cannam Scale scalable icon
2018-04-24 Chris Cannam Adjust y-coord of text labels to accommodate larger scaled fonts
2018-04-23 Chris Cannam Delete rows in reverse order for safety
2018-04-23 Chris Cannam Avoid crash when scrolling with an empty layer open
2018-04-19 Chris Cannam Make selection extents more visible on hi-dpi
2018-04-19 Chris Cannam Make the overlays at either end translucent, so they don't completely crop out any underlying text or necessary info (e.g. selection extents)
2018-04-17 Lucas Thompson Formatting changes to align more with SV style conventions
2018-04-17 Lucas Thompson Accept optional modality in constructor and fix subsequent possible side effect (re-opening dialog when just cancelled)
2018-03-01 Chris Cannam Untabify
2018-03-01 Chris Cannam Convert some cerrs to SVCERRs. Apart from anything else, this makes MSVC2017 happy
2017-12-12 Chris Cannam This was new in GCC 7
2017-12-07 Chris Cannam Add fallthrough attribute
2017-07-18 Chris Cannam Fix loading of should-not-auto-invert scalable icons
2017-07-10 Chris Cannam Merge from branch "scale-ticks"
2017-05-04 Chris Cannam Make use of ScaleTickIntervals in log scale as well scale-ticks
2017-05-04 Chris Cannam Rework log scale calculation, update to changed interface scale-ticks
2017-05-04 Chris Cannam Make use of ScaleTickIntervals in linear numerical scale (not log yet) scale-ticks
2017-03-12 Chris Cannam Remove debug out
2017-03-07 Chris Cannam Make some corrections to crosshair (measure cursor) positioning and feature descriptions. Needs review.
2017-03-07 Chris Cannam Fix crash when changing window size in the spectrum layer
2017-02-28 Chris Cannam Fix failure to respect saved linear-scale setting in layer when the model suggests it would prefer log scale
2017-02-28 Chris Cannam Restrict colour 3d plot log scale range to 10 orders of magnitude
2017-02-28 Chris Cannam Fix attribute name -- it's colourScale in the spectrogram, but it's just scale here
2017-02-28 Chris Cannam Fix a couple of compiler warnings
2017-02-28 Chris Cannam Emit
2017-02-28 Chris Cannam Ctrl-click, and middle-button click, on level-pan widget reset to default (not implemented yet for level-pan tool button though)
2017-02-28 Chris Cannam Explanatory comment
2017-02-28 Chris Cannam Ensure threshold is equal to minValue; default of 0 is inadequate when minValue < 0 (fixes bug that made all negative values appear black)
2017-02-28 Chris Cannam Remove unused function
2017-02-28 Chris Cannam Use Range01 normalisation in Colour 3D Plot. This gives us the same column normalisation behaviour as in 2.5 (better than the Max1 option).
2017-02-23 Chris Cannam Debug notes, tidying
2017-02-22 Chris Cannam Merge
2017-02-22 Chris Cannam Fix various "model deleted with no aboutToDelete notification" warnings (and one associated potential memory leak)
2017-02-22 Chris Cannam Overrides
2017-02-22 Chris Cannam Add activity log output to debug log too
2017-02-21 Chris Cannam Fix #1792 measure tool crosshairs rendered in wrong colour. Also extend crosshairs over the no-man's-land at the left
2017-02-07 Chris Cannam Some work to make spectrum layers (and slice layers generally) zoomable in the frequency axis. Also fixes a number of view id mixups in SliceLayer which broke offset calculations for the x axis scale.
2017-01-27 Chris Cannam More tweaks to when to render from the middle
2017-01-27 Chris Cannam Looks like we can be a bit more relaxed here
2017-01-27 Chris Cannam Wire up normalise-visible-area mode in colour 3d plot
2017-01-27 Chris Cannam Untabify
2017-01-26 Chris Cannam Scale pen, place line ends in centres of bins, default to line mode
2017-01-26 Chris Cannam Move this function into cpp file
2017-01-26 Chris Cannam Scale piano keyboard height according to text size
2017-01-26 Chris Cannam Fix silly definition that prevented spectrum scale from appearing
2017-01-26 Chris Cannam Scale pens
2017-01-26 Chris Cannam Add method to scale pen widths for hi-res screens
2017-01-26 Chris Cannam Guard only
2017-01-26 Chris Cannam Scale pen used for centre line
2017-01-26 Chris Cannam Guard only
2017-01-26 Chris Cannam Minor debug
2017-01-26 Chris Cannam Switch widget type to one that gets mouseover notifications
2017-01-26 Chris Cannam Randomise start offset for partial paints, it looks (I think) a little better
2017-01-26 Chris Cannam Measure time taken to render per pixel, and use the time last time around to decide whether to be time constrained this time around
2017-01-26 Chris Cannam Fix #1781 Running CQ Chromagram spits out stacks of "bin index out of range" warnings
2017-01-16 Chris Cannam Fix incorrect call to getColumn() that broke the peak-frequency spectrogram and close zoom levels of the colour 3d plot
2017-01-13 Chris Cannam Debug toward tracking down strange peak-frequency spectrogram update problem
2017-01-13 Chris Cannam Make getPreferredPeakCache check the render mode itself
2017-01-13 Chris Cannam Merge from branch 3.0-integration
2017-01-13 Chris Cannam Fix memory leak of cache pixmaps in View 3.0-integration
2017-01-05 Chris Cannam More cache hit counts; make debug output from colour 3d plot renderer (even though it is to SVDEBUG) appear only with explicit debug flag 3.0-integration
2017-01-05 Chris Cannam Don't start in the middle when repainting the whole width while using a peak cache. It looks funny. 3.0-integration
2017-01-05 Chris Cannam Make the colour 3d plot renderer able to support more than one level of peak cache; introduce a second "peak" cache for the spectrogram layer that actually has a 1-1 column relationship with the underlying FFT model, and use it in addition to the existing peak cache if memory is plentiful. Makes spectrograms appear much faster in many common situations. 3.0-integration
2017-01-05 Chris Cannam Recreate FFT model when something changes, not the next time it's requested (avoids extra work when only retrieving the model) 3.0-integration
2017-01-04 Chris Cannam Wire up record monitoring 3.0-integration
2017-01-03 Chris Cannam Provisionally add labels for normalisation menu (sigh) 3.0-integration
2017-01-03 Chris Cannam Add help icon, + update subrepo 3.0-integration
2017-01-03 Chris Cannam Comment some debug output 3.0-integration
2017-01-03 Chris Cannam Fix some compiler warnings 3.0-integration
2016-12-20 Chris Cannam Fix erroneous use of single-colour setting to determine dark/light background when in segmentation mode 3.0-integration
2016-12-20 Chris Cannam Further PropertyBox layout overhaul: avoid crash (/ assertion failure) when property type changes from e.g. colour to colourmap, by replacing the existing widget within the layout rather than trying to repopulate it 3.0-integration
2016-12-19 Chris Cannam Merge from branch svg, and thus (in some subrepos) from levelpanwidget 3.0-integration
2016-12-19 Chris Cannam Implement "Export SVG file..." svg
2016-12-16 Chris Cannam Fix incorrect initial display levels in LevelPanWidget levelpanwidget
2016-12-16 Chris Cannam Support mouse wheel on level-pan tool button levelpanwidget
2016-12-16 Chris Cannam Add swatches to colour map combo (optionally, as it turns out they are quite visually distracting) levelpanwidget
2016-12-16 Chris Cannam Introduce a colour map combo too. Doesn't yet have swatches levelpanwidget
2016-12-16 Chris Cannam Take advantage of the fact that a group layout is now always used, to simplify code levelpanwidget
2016-12-16 Chris Cannam Introduce colour combobox class, to replace ad-hoc code in property box levelpanwidget
2016-12-15 Chris Cannam Adjust spacing in property box levelpanwidget
2016-12-15 Chris Cannam Record scale factor in log levelpanwidget
2016-12-15 Chris Cannam Some adjustments to make view elements clearer and more correctly sized, especially on hidpi (non-pixel-doubling) systems levelpanwidget
2016-12-15 Chris Cannam Retina thumbwheels levelpanwidget
2016-12-15 Chris Cannam Tool tips levelpanwidget
2016-12-15 Chris Cannam An attempt to improve PropertyBox layout on the Mac. Make all rows consistent by always creating a group layout for each row, regardless of whether the item(s) in it are marked as grouped or not. levelpanwidget
2016-12-15 Chris Cannam Make play params area of property box look a bit better on OSX levelpanwidget
2016-12-15 Chris Cannam As NotifyingPushButton, but a ToolButton levelpanwidget
2016-12-15 Chris Cannam Moving around some UI bits levelpanwidget
2016-12-14 Chris Cannam Merge from branch 3.0-integration levelpanwidget
2016-12-14 Chris Cannam Minor debug tweaks 3.0-integration
2016-12-13 Chris Cannam Fix some compiler problems 3.0-integration
2016-12-12 Chris Cannam Some hackery toward having a zoomlevel type zoom
2016-12-09 Chris Cannam Merge from branch bqresample 3.0-integration
2016-12-09 Chris Cannam Fixes to sample rate and latency handling bqresample
2016-12-06 Chris Cannam Some work on play parameters and level controls in property box levelpanwidget
2016-12-06 Chris Cannam Switch to level-pan tool button in property box levelpanwidget
2016-12-05 Chris Cannam Introduce level-pan widget to property box levelpanwidget
2016-12-05 Chris Cannam Add monitoring to level-pan widget (though not well, yet) levelpanwidget
2016-12-05 Chris Cannam Another use of WidgetScale more-hidpi
2016-12-05 Chris Cannam Some icon updates more-hidpi
2016-12-05 Chris Cannam Scale the sizes of a few more UI elements more-hidpi
2016-11-30 Chris Cannam Bigger colour swatches for bigger fonts 3.0-integration
2016-11-30 Chris Cannam Always accept wheel events 3.0-integration
2016-11-28 Chris Cannam More debug 3.0-integration
2016-11-23 Chris Cannam Avoid rounding error giving too few bins in column request 3.0-integration