![]() |
Audacity 3.2.0
|
This is an Audacity Specific ruler panel which additionally has border, selection markers, play marker. More...
#include <AdornedRulerPanel.h>
Classes | |
class | CommonCell |
class | CommonRulerHandle |
struct | MainGroup |
class | MovePlayRegionHandle |
class | NewPlayRegionHandle |
class | PlayRegionAdjustingHandle |
class | QPCell |
struct | Resetter |
class | ResizePlayRegionHandle |
class | ScrubbingCell |
class | ScrubbingHandle |
class | ScrubbingRulerOverlay |
struct | Subgroup |
class | TrackPanelGuidelineOverlay |
Public Types | |
enum | RulerTypeValues : int { stMinutesAndSeconds , stBeatsAndMeasures , stNumRulerTypes } |
![]() | |
using | SimpleCellVisitor = std::function< void(const wxRect &rect, TrackPanelCell &cell) > |
using | SimpleNodeVisitor = std::function< void(const wxRect &rect, TrackPanelNode &node) > |
Public Member Functions | |
AdornedRulerPanel (AudacityProject *project, wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, ViewInfo *viewinfo=NULL) | |
~AdornedRulerPanel () | |
void | Refresh (bool eraseBackground=true, const wxRect *rect=(const wxRect *) NULL) override |
bool | AcceptsFocus () const override |
bool | AcceptsFocusFromKeyboard () const override |
void | SetFocusFromKbd () override |
int | GetRulerHeight () |
wxRect | GetInnerRect () const |
void | SetLeftOffset (int offset) |
void | DrawSelection () |
void | SetPlayRegion (double playRegionStart, double playRegionEnd) |
void | ClearPlayRegion () |
void | TogglePinnedHead () |
void | GetMaxSize (wxCoord *width, wxCoord *height) |
void | InvalidateRuler () |
void | UpdatePrefs () override |
void | ReCreateButtons () |
void | UpdateQuickPlayPos (wxCoord &mousePosX) |
bool | ShowingScrubRuler () const |
bool | SetPanelSize () |
void | DrawBothOverlays () |
void | DoDrawScrubIndicator (wxDC *dc, wxCoord xx, int width, bool scrub, bool seek) |
void | UpdateButtonStates () |
void | SetNumGuides (size_t nn) |
AudacityProject * | GetProject () const override |
![]() | |
CellularPanel (wxWindow *parent, wxWindowID id, const wxPoint &pos, const wxSize &size, ViewInfo *viewInfo, long style=wxTAB_TRAVERSAL|wxNO_BORDER) | |
~CellularPanel () override | |
virtual AudacityProject * | GetProject () const =0 |
virtual std::shared_ptr< TrackPanelNode > | Root ()=0 |
virtual TrackPanelCell * | GetFocusedCell ()=0 |
virtual void | SetFocusedCell ()=0 |
virtual void | ProcessUIHandleResult (TrackPanelCell *pClickedCell, TrackPanelCell *pLatestCell, unsigned refreshResult)=0 |
virtual void | UpdateStatusMessage (const TranslatableString &)=0 |
void | Visit (Visitor &visitor) |
void | VisitCells (const SimpleCellVisitor &visitor) |
void | VisitPreorder (const SimpleNodeVisitor &visitor) |
void | VisitPostorder (const SimpleNodeVisitor &visitor) |
FoundCell | FindCell (int mouseX, int mouseY) |
wxRect | FindRect (const TrackPanelCell &cell) |
wxRect | FindRect (const std::function< bool(TrackPanelNode &) > &pred) |
UIHandlePtr | Target () |
std::shared_ptr< TrackPanelCell > | LastCell () const |
bool | IsMouseCaptured () |
Determines if a modal tool is active. More... | |
wxCoord | MostRecentXCoord () const |
void | HandleCursorForPresentMouseState (bool doHit=true) |
void | Draw (TrackPanelDrawingContext &context, unsigned nPasses) |
![]() | |
OverlayPanel (wxWindow *parent, wxWindowID id, const wxPoint &pos, const wxSize &size, long style=wxTAB_TRAVERSAL|wxNO_BORDER) | |
void | AddOverlay (const std::weak_ptr< Overlay > &pOverlay) |
void | ClearOverlays () |
void | DrawOverlays (bool repaint_all, wxDC *pDC=nullptr) |
![]() | |
BackedPanel (wxWindow *parent, wxWindowID id, const wxPoint &pos, const wxSize &size, long style) | |
~BackedPanel () | |
wxDC & | GetBackingDC () |
wxDC & | GetBackingDCForRepaint () |
void | ResizeBacking () |
void | RepairBitmap (wxDC &dc, wxCoord x, wxCoord y, wxCoord width, wxCoord height) |
void | DisplayBitmap (wxDC &dc) |
void | OnSize (wxSizeEvent &event) |
![]() | |
wxPanelWrapper () | |
wxPanelWrapper (wxWindow *parent, wxWindowID winid=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxTAB_TRAVERSAL|wxNO_BORDER, const TranslatableString &name=XO("Panel")) | |
bool | Create (wxWindow *parent, wxWindowID winid=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxTAB_TRAVERSAL|wxNO_BORDER, const TranslatableString &name=XO("Panel")) |
void | SetLabel (const TranslatableString &label) |
void | SetName (const TranslatableString &name) |
void | SetToolTip (const TranslatableString &toolTip) |
void | SetName () |
![]() | |
wxTabTraversalWrapper (Args &&... args) | |
wxTabTraversalWrapper (const wxTabTraversalWrapper &)=delete | |
wxTabTraversalWrapper (wxTabTraversalWrapper &&)=delete | |
wxTabTraversalWrapper & | operator= (const wxTabTraversalWrapper &)=delete |
wxTabTraversalWrapper & | operator= (wxTabTraversalWrapper &&)=delete |
Static Public Member Functions | |
static AdornedRulerPanel & | Get (AudacityProject &project) |
static const AdornedRulerPanel & | Get (const AudacityProject &project) |
static void | Destroy (AudacityProject &project) |
static int | GetRulerHeight (bool showScrubBar) |
static TempAllowFocus | TemporarilyAllowFocus () |
Private Types | |
enum class | MenuChoice { QuickPlay , Scrub } |
enum | MouseEventState { mesNone , mesDraggingPlayRegionStart , mesDraggingPlayRegionEnd , mesSelectingPlayRegionClick , mesSelectingPlayRegionRange } |
using | TempAllowFocus = std::unique_ptr< bool, Resetter > |
Private Member Functions | |
void | DoIdle () |
void | OnIdle (wxIdleEvent &evt) |
void | OnAudioStartStop (AudioIOEvent) |
void | OnPaint (wxPaintEvent &evt) |
void | OnSize (wxSizeEvent &evt) |
void | OnLeave (wxMouseEvent &evt) |
void | OnThemeChange (struct ThemeChangeMessage) |
void | OnSelectionChange (Observer::Message) |
void | DoSelectionChange (const SelectedRegion &selectedRegion) |
bool | UpdateRects () |
void | HandleQPClick (wxMouseEvent &event, wxCoord mousePosX) |
void | HandleQPDrag (wxMouseEvent &event, wxCoord mousePosX) |
void | HandleQPRelease (wxMouseEvent &event) |
void | StartQPPlay (bool newDefault, bool cutPreview, const double *pStartTime=nullptr) |
void | DoDrawBackground (wxDC *dc) |
void | DoDrawEdge (wxDC *dc) |
void | DoDrawMarks (wxDC *dc, bool) |
wxRect | RegionRectangle (double t0, double t1) const |
wxRect | PlayRegionRectangle () const |
wxRect | SelectedRegionRectangle () const |
void | DoDrawPlayRegion (wxDC *dc, const wxRect &rectP, const wxRect &rectL, const wxRect &rectR) |
void | DoDrawPlayRegionLimits (wxDC *dc, const wxRect &rect) |
void | DoDrawOverlap (wxDC *dc, const wxRect &rect) |
void | DoDrawSelection (wxDC *dc, const wxRect &rectS, const wxRect &rectL, const wxRect &rectR) |
void | ShowContextMenu (MenuChoice choice, const wxPoint *pPosition) |
double | Pos2Time (int p, bool ignoreFisheye=false) const |
int | Time2Pos (double t, bool ignoreFisheye=false) const |
bool | IsWithinMarker (int mousePosX, double markerTime) |
void | ShowMenu (const wxPoint &pos) |
void | ShowScrubMenu (const wxPoint &pos) |
void | HandleSnapping (size_t index) |
void | RefreshTimelineFormat () |
void | OnTimelineFormatChange (wxCommandEvent &evt) |
void | OnSyncSelToQuickPlay (wxCommandEvent &evt) |
void | OnAutoScroll (wxCommandEvent &evt) |
void | OnTogglePlayRegion (wxCommandEvent &evt) |
void | OnClearPlayRegion (wxCommandEvent &evt) |
void | OnSetPlayRegionToSelection (wxCommandEvent &evt) |
void | OnPinnedButton (wxCommandEvent &event) |
void | OnTogglePinnedState (wxCommandEvent &event) |
std::shared_ptr< TrackPanelNode > | Root () override |
TrackPanelCell * | GetFocusedCell () override |
void | SetFocusedCell () override |
void | ProcessUIHandleResult (TrackPanelCell *pClickedTrack, TrackPanelCell *pLatestCell, unsigned refreshResult) override |
void | UpdateStatusMessage (const TranslatableString &) override |
void | CreateOverlays () |
![]() | |
PrefsListener () | |
virtual | ~PrefsListener () |
virtual void | UpdatePrefs ()=0 |
virtual void | UpdateSelectedPrefs (int id) |
Static Private Member Functions | |
static void | DragSelection (AudacityProject &project) |
![]() | |
static void | Broadcast (int id=0) |
Call this static function to notify all PrefsListener objects. More... | |
Static Private Attributes | |
static bool | s_AcceptsFocus { false } |
static constexpr size_t | MAX_GUIDES = 2 |
Additional Inherited Members | |
![]() | |
bool | HasEscape () |
bool | CancelDragging (bool escaping) |
void | DoContextMenu (TrackPanelCell *pCell=nullptr) |
void | ClearTargets () |
![]() | |
ViewInfo * | mViewInfo |
wxMouseState | mLastMouseState |
This is an Audacity Specific ruler panel which additionally has border, selection markers, play marker.
Once TrackPanel uses wxSizers, we will derive it from some wxWindow and the GetSize and SetSize functions will then be wxWidgets functions instead.
Definition at line 29 of file AdornedRulerPanel.h.
|
private |
Definition at line 121 of file AdornedRulerPanel.h.
|
strongprivate |
Enumerator | |
---|---|
QuickPlay | |
Scrub |
Definition at line 129 of file AdornedRulerPanel.h.
|
private |
Enumerator | |
---|---|
mesNone | |
mesDraggingPlayRegionStart | |
mesDraggingPlayRegionEnd | |
mesSelectingPlayRegionClick | |
mesSelectingPlayRegionRange |
Definition at line 192 of file AdornedRulerPanel.h.
enum AdornedRulerPanel::RulerTypeValues : int |
Enumerator | |
---|---|
stMinutesAndSeconds | |
stBeatsAndMeasures | |
stNumRulerTypes |
Definition at line 269 of file AdornedRulerPanel.h.
AdornedRulerPanel::AdornedRulerPanel | ( | AudacityProject * | project, |
wxWindow * | parent, | ||
wxWindowID | id, | ||
const wxPoint & | pos = wxDefaultPosition , |
||
const wxSize & | size = wxDefaultSize , |
||
ViewInfo * | viewinfo = NULL |
||
) |
Definition at line 1275 of file AdornedRulerPanel.cpp.
References BasicUI::CallAfter(), DoSelectionChange(), AudioIO::Get(), TrackList::Get(), gPrefs, mAudioIOSubscription, mButtons, mesNone, mIndTime, mIsDragging, mIsRecording, mLeftDownClick, mLeftOffset, mMouseEventState, mOuter, mPlayRegionDragsSelection, mPlayRegionSubscription, mQPCell, mRuler, mRulerType, mScrubbingCell, mThemeChangeSubscription, mTimelineToolTip, mTracks, mUpdater, CellularPanel::mViewInfo, OnAudioStartStop(), OnSelectionChange(), OnThemeChange(), RulerPanelViewPreference, ViewInfo::selectedRegion, LinearUpdater::SetData(), wxPanelWrapper::SetLabel(), Ruler::SetLabelEdges(), wxPanelWrapper::SetName(), Observer::Publisher< Message, NotifyAll >::Subscribe(), theTheme, UpdatePrefs(), wxT(), and XO().
AdornedRulerPanel::~AdornedRulerPanel | ( | ) |
Definition at line 1339 of file AdornedRulerPanel.cpp.
|
inlineoverride |
Definition at line 51 of file AdornedRulerPanel.h.
|
inlineoverride |
Definition at line 52 of file AdornedRulerPanel.h.
void AdornedRulerPanel::ClearPlayRegion | ( | ) |
Definition at line 2747 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), ProjectAudioManager::Get(), GetProject(), Refresh(), and ProjectAudioManager::Stop().
|
private |
Definition at line 2867 of file AdornedRulerPanel.cpp.
References OverlayPanel::AddOverlay(), GetProject(), GetProjectPanel(), mOverlay, and mProject.
|
static |
Definition at line 1266 of file AdornedRulerPanel.cpp.
References ClientData::Site< Host, ClientData, ObjectCopyingPolicy, Pointer, ObjectLockingPolicy, RegistryLockingPolicy >::Assign(), ClientData::Site< Host, ClientData, ObjectCopyingPolicy, Pointer, ObjectLockingPolicy, RegistryLockingPolicy >::Find(), GetAttachedWindows(), and anonymous_namespace{AdornedRulerPanel.cpp}::sKey.
Referenced by ProjectManager::OnCloseWindow().
|
private |
Definition at line 2492 of file AdornedRulerPanel.cpp.
References mInner, mScrubZone, ShowingScrubRuler(), TimelineBackgroundColor(), TimelineTextColor(), and AColor::UseThemeColour().
Referenced by OnPaint().
|
private |
Definition at line 2508 of file AdornedRulerPanel.cpp.
References AColor::BevelTrackInfo(), BottomMargin, AColor::Line(), mOuter, and RightMargin.
Referenced by OnPaint().
|
private |
Definition at line 2523 of file AdornedRulerPanel.cpp.
References ThemeBase::Colour(), Ruler::Draw(), min(), mInner, mRuler, mRulerType, Pos2Time(), Ruler::SetRange(), Ruler::SetTickColour(), Ruler::SetTickLengths(), stBeatsAndMeasures, stMinutesAndSeconds, theTheme, and TimelineTextColor().
Referenced by OnPaint().
|
private |
Definition at line 2638 of file AdornedRulerPanel.cpp.
References AlphaBlend(), mLastPlayRegionActive, SelectionOpacity, TimelineLimitsColor(), and TimelineLoopRegionColor().
Referenced by OnPaint().
|
private |
Definition at line 2580 of file AdornedRulerPanel.cpp.
References ThemeBase::Colour(), ViewInfo::Get(), mLastPlayRegionActive, mProject, theTheme, and TimelineLoopRegionColor().
Referenced by OnPaint().
|
private |
Definition at line 2599 of file AdornedRulerPanel.cpp.
References ThemeBase::Colour(), theTheme, and TimelineLimitsColor().
Referenced by OnPaint().
void AdornedRulerPanel::DoDrawScrubIndicator | ( | wxDC * | dc, |
wxCoord | xx, | ||
int | width, | ||
bool | scrub, | ||
bool | seek | ||
) |
Definition at line 2672 of file AdornedRulerPanel.cpp.
References IndicatorHeightForWidth(), IndicatorOffset, mInner, mScrubZone, and ShowingScrubRuler().
|
private |
Definition at line 2647 of file AdornedRulerPanel.cpp.
References AlphaBlend(), SelectionOpacity, TimelineBackgroundColor(), and TimelineLimitsColor().
Referenced by OnPaint().
|
private |
Definition at line 1529 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), mLastDrawnH, mLastDrawnPlayRegion, mLastDrawnSelectedRegion, mLastDrawnZoom, mLastPlayRegionActive, mProject, Refresh(), SetPanelSize(), and UpdateRects().
Referenced by OnIdle().
|
private |
Definition at line 1664 of file AdornedRulerPanel.cpp.
References PlayRegion::Active(), AudioIOBase::Get(), ViewInfo::Get(), ViewInfo::playRegion, SetPlayRegion(), SelectedRegion::t0(), and SelectedRegion::t1().
Referenced by AdornedRulerPanel(), OnAudioStartStop(), and OnSelectionChange().
|
staticprivate |
Definition at line 2322 of file AdornedRulerPanel.cpp.
References ViewInfo::Get().
Referenced by AdornedRulerPanel::PlayRegionAdjustingHandle::Drag().
void AdornedRulerPanel::DrawBothOverlays | ( | ) |
Definition at line 2179 of file AdornedRulerPanel.cpp.
References OverlayPanel::DrawOverlays(), GetProject(), and GetProjectPanel().
Referenced by OnLeave(), and ProcessUIHandleResult().
void AdornedRulerPanel::DrawSelection | ( | ) |
Definition at line 2543 of file AdornedRulerPanel.cpp.
References Refresh().
Referenced by TrackPanel::UpdateSelectionDisplay().
|
static |
Definition at line 1255 of file AdornedRulerPanel.cpp.
References ClientData::Site< Host, ClientData, ObjectCopyingPolicy, Pointer, ObjectLockingPolicy, RegistryLockingPolicy >::Get(), GetAttachedWindows(), and anonymous_namespace{AdornedRulerPanel.cpp}::sKey.
Referenced by ScrubbingToolBar::DoRegenerateTooltips(), AdornedRulerPanel::PlayRegionAdjustingHandle::Drag(), AdornedRulerPanel::TrackPanelGuidelineOverlay::Draw(), EditCursorOverlay::Draw(), PlayIndicatorOverlayBase::Draw(), ScrubbingToolBar::EnableDisableButtons(), Get(), anonymous_namespace{PlayIndicatorOverlay.cpp}::GetIndicatorBitmap(), AdornedRulerPanel::ScrubbingRulerOverlay::GetRuler(), AdornedRulerPanel::PlayRegionAdjustingHandle::HasEscape(), InitProjectWindow(), anonymous_namespace{SelectMenus.cpp}::MoveWhenAudioInactive(), anonymous_namespace{EditMenus.cpp}::OnCut(), PlayIndicatorOverlay::OnTimer(), ScrubbingOverlay::OnTimer(), anonymous_namespace{AdornedRulerPanel.cpp}::OnTogglePinnedHead(), ScrubForwarder::ScrubForwarder(), AdornedRulerPanel::PlayRegionAdjustingHandle::SnappedTime(), AdornedRulerPanel::PlayRegionAdjustingHandle::SnappedTimes(), AdornedRulerPanel::CommonRulerHandle::StartPlay(), AdornedRulerPanel::PlayRegionAdjustingHandle::Unsnap(), and AdornedRulerPanel::TrackPanelGuidelineOverlay::Update().
|
static |
Definition at line 1260 of file AdornedRulerPanel.cpp.
References Get().
|
overrideprivatevirtual |
Implements CellularPanel.
Definition at line 2841 of file AdornedRulerPanel.cpp.
References mQPCell.
|
inline |
Definition at line 58 of file AdornedRulerPanel.h.
Referenced by anonymous_namespace{PlayIndicatorOverlay.cpp}::GetIndicatorBitmap().
void AdornedRulerPanel::GetMaxSize | ( | wxCoord * | width, |
wxCoord * | height | ||
) |
Definition at line 2758 of file AdornedRulerPanel.cpp.
References Ruler::GetMaxSize(), and mRuler.
|
overridevirtual |
Implements CellularPanel.
Definition at line 2835 of file AdornedRulerPanel.cpp.
References mProject.
Referenced by ClearPlayRegion(), CreateOverlays(), DrawBothOverlays(), HandleSnapping(), OnPaint(), SetPlayRegion(), ShowingScrubRuler(), ShowMenu(), and UpdateStatusMessage().
|
inline |
Definition at line 56 of file AdornedRulerPanel.h.
References GetRulerHeight().
Referenced by ScreenshotCommand::GetPanelRect(), GetRulerHeight(), ReCreateButtons(), and SetPanelSize().
|
static |
Definition at line 2657 of file AdornedRulerPanel.cpp.
References ProperRulerHeight, and ScrubHeight.
|
private |
|
private |
|
private |
|
private |
Definition at line 2331 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), GetProject(), mIsSnapped, mPlayRegionDragsSelection, mProject, mQuickPlayPos, mTracks, CellularPanel::mViewInfo, and ViewInfo::selectedRegion.
Referenced by UpdateQuickPlayPos().
void AdornedRulerPanel::InvalidateRuler | ( | ) |
Definition at line 1452 of file AdornedRulerPanel.cpp.
References Ruler::Invalidate(), and mRuler.
|
private |
Definition at line 1742 of file AdornedRulerPanel.cpp.
References SELECT_TOLERANCE_PIXEL, and Time2Pos().
|
private |
Definition at line 1553 of file AdornedRulerPanel.cpp.
References CellularPanel::CancelDragging(), AudioIOEvent::CAPTURE, CellularPanel::ClearTargets(), DoSelectionChange(), mIsRecording, AudioIOEvent::MONITOR, CellularPanel::mViewInfo, AudioIOEvent::on, ViewInfo::selectedRegion, AudioIOEvent::type, and UpdateButtonStates().
Referenced by AdornedRulerPanel().
|
private |
Definition at line 2399 of file AdornedRulerPanel.cpp.
References PrefsListener::Broadcast(), ViewInfo::bUpdateTrackIndicator, FileConfig::Flush(), gPrefs, CellularPanel::mViewInfo, ViewInfo::UpdateScrollPrefsID(), and wxT().
|
private |
Definition at line 2417 of file AdornedRulerPanel.cpp.
References SelectUtilities::ClearPlayRegion(), and mProject.
|
private |
Definition at line 1523 of file AdornedRulerPanel.cpp.
References DoIdle().
|
private |
Definition at line 1643 of file AdornedRulerPanel.cpp.
References BasicUI::CallAfter(), and DrawBothOverlays().
|
private |
Definition at line 1577 of file AdornedRulerPanel.cpp.
References BackedPanel::DisplayBitmap(), DoDrawBackground(), DoDrawEdge(), DoDrawMarks(), DoDrawOverlap(), DoDrawPlayRegion(), DoDrawPlayRegionLimits(), DoDrawSelection(), OverlayPanel::DrawOverlays(), ViewInfo::Get(), BackedPanel::GetBackingDCForRepaint(), GetProject(), mLastDrawnH, mLastDrawnPlayRegion, mLastDrawnSelectedRegion, mLastDrawnZoom, PlayRegionRectangle(), and SelectedRegionRectangle().
|
private |
Definition at line 2221 of file AdornedRulerPanel.cpp.
References QuickPlay, and ShowContextMenu().
|
private |
Definition at line 1658 of file AdornedRulerPanel.cpp.
References DoSelectionChange(), CellularPanel::mViewInfo, and ViewInfo::selectedRegion.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 2422 of file AdornedRulerPanel.cpp.
References mProject, and SelectUtilities::SetPlayRegionToSelection().
|
private |
Definition at line 1630 of file AdornedRulerPanel.cpp.
References mOuter, BackedPanel::OnSize(), and UpdateRects().
|
private |
Definition at line 2382 of file AdornedRulerPanel.cpp.
References FileConfig::Flush(), gPrefs, mPlayRegionDragsSelection, and wxT().
|
private |
Definition at line 1651 of file AdornedRulerPanel.cpp.
References ThemeChangeMessage::appearance, and ReCreateButtons().
Referenced by AdornedRulerPanel().
|
private |
Definition at line 2361 of file AdornedRulerPanel.cpp.
References BeatsPerMinute, TimeFormat::Instance(), Ruler::Invalidate(), LowerTimeSignature, mBeatsFormat, mRuler, mRulerType, OnBeatsAndMeasuresID, OnMinutesAndSecondsID, Setting< T >::Read(), Refresh(), RulerPanelViewPreference, BeatsFormat::SetData(), Ruler::SetFormat(), stBeatsAndMeasures, stMinutesAndSeconds, and UpperTimeSignature.
|
private |
Definition at line 2226 of file AdornedRulerPanel.cpp.
References TogglePinnedHead(), and UpdateButtonStates().
|
private |
Definition at line 2412 of file AdornedRulerPanel.cpp.
References mProject, and SelectUtilities::TogglePlayRegion().
|
private |
Definition at line 2548 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), mProject, and RegionRectangle().
Referenced by OnPaint().
|
private |
Definition at line 1728 of file AdornedRulerPanel.cpp.
References mLeftOffset, CellularPanel::mViewInfo, and ZoomInfo::PositionToTime().
Referenced by DoDrawMarks(), and UpdateQuickPlayPos().
|
overrideprivatevirtual |
Implements CellularPanel.
Definition at line 2853 of file AdornedRulerPanel.cpp.
References DrawBothOverlays(), RefreshCode::DrawOverlays, Refresh(), and RefreshCode::RefreshAll.
void AdornedRulerPanel::ReCreateButtons | ( | ) |
Definition at line 1377 of file AdornedRulerPanel.cpp.
References ThemeBase::Colour(), GetRulerHeight(), id, ThemeBase::ImageSize(), ToolBar::MakeAlternateImages(), ToolBar::MakeButton(), ToolBar::MakeButtonBackgroundsSmall(), mButtons, min(), OnTogglePinnedStateID, safenew, Grabber::SetAsSpacer(), size, theTheme, and UpdateButtonStates().
Referenced by OnThemeChange(), and UpdatePrefs().
|
override |
Definition at line 1343 of file AdornedRulerPanel.cpp.
References BasicUI::CallAfter(), and CellularPanel::HandleCursorForPresentMouseState().
Referenced by ClearPlayRegion(), DoIdle(), DrawSelection(), OnTimelineFormatChange(), ProcessUIHandleResult(), RefreshTimelineFormat(), SetPlayRegion(), and TrackPanel::UpdateVRulerSize().
|
private |
Definition at line 2347 of file AdornedRulerPanel.cpp.
References BeatsPerMinute, TimeFormat::Instance(), Ruler::Invalidate(), LowerTimeSignature, mBeatsFormat, mRuler, mRulerType, Setting< T >::Read(), Refresh(), BeatsFormat::SetData(), Ruler::SetFormat(), stBeatsAndMeasures, stMinutesAndSeconds, and UpperTimeSignature.
Referenced by UpdatePrefs().
|
private |
Definition at line 2565 of file AdornedRulerPanel.cpp.
References min(), mInner, and Time2Pos().
Referenced by PlayRegionRectangle(), and SelectedRegionRectangle().
|
overrideprivatevirtual |
Implements CellularPanel.
Definition at line 2829 of file AdornedRulerPanel.cpp.
|
private |
Definition at line 2557 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), mProject, and RegionRectangle().
Referenced by OnPaint().
|
overrideprivatevirtual |
|
override |
Definition at line 2783 of file AdornedRulerPanel.cpp.
References BasicUI::SetFocus(), and TemporarilyAllowFocus().
void AdornedRulerPanel::SetLeftOffset | ( | int | offset | ) |
Definition at line 2662 of file AdornedRulerPanel.cpp.
References Ruler::Invalidate(), mLeftOffset, mRuler, mUpdater, CellularPanel::mViewInfo, and LinearUpdater::SetData().
Referenced by TrackPanel::UpdateVRulerSize().
void AdornedRulerPanel::SetNumGuides | ( | size_t | nn | ) |
Definition at line 2770 of file AdornedRulerPanel.cpp.
References MAX_GUIDES, min(), mIsSnapped, mNumGuides, mQuickPlayOffset, mQuickPlayPos, and mQuickPlayPosUnsnapped.
bool AdornedRulerPanel::SetPanelSize | ( | ) |
Definition at line 2165 of file AdornedRulerPanel.cpp.
References GetRulerHeight(), ShowingScrubRuler(), and size.
Referenced by DoIdle().
void AdornedRulerPanel::SetPlayRegion | ( | double | playRegionStart, |
double | playRegionEnd | ||
) |
Definition at line 2731 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), GetProject(), mesNone, mMouseEventState, and Refresh().
Referenced by DoSelectionChange().
|
private |
Definition at line 2428 of file AdornedRulerPanel.cpp.
References QuickPlay, Scrub, ShowMenu(), ShowScrubMenu(), and UpdateButtonStates().
Referenced by OnPinnedButton().
bool AdornedRulerPanel::ShowingScrubRuler | ( | ) | const |
Definition at line 2822 of file AdornedRulerPanel.cpp.
References Scrubber::Get(), and GetProject().
Referenced by AdornedRulerPanel::Subgroup::Children(), DoDrawBackground(), DoDrawScrubIndicator(), ScrubbingToolBar::DoRegenerateTooltips(), ScrubbingToolBar::EnableDisableButtons(), SetPanelSize(), and UpdateRects().
|
private |
Definition at line 2254 of file AdornedRulerPanel.cpp.
References _, ViewInfo::bUpdateTrackIndicator, ViewInfo::Get(), TracksPrefs::GetPinnedHeadPreference(), GetProject(), LoopToggleText, mPlayRegionDragsSelection, mRulerType, CellularPanel::mViewInfo, OnAutoScrollID, OnBeatsAndMeasuresID, OnClearPlayRegionID, OnMinutesAndSecondsID, OnSetPlayRegionToSelectionID, OnSyncQuickPlaySelID, OnTogglePinnedStateID, OnTogglePlayRegionID, BasicMenu::Handle::Popup(), stBeatsAndMeasures, stMinutesAndSeconds, TranslatableString::Stripped(), and TranslatableString::Translation().
Referenced by ShowContextMenu().
|
private |
Definition at line 2308 of file AdornedRulerPanel.cpp.
References Scrubber::Get(), mProject, and BasicMenu::Handle::Popup().
Referenced by ShowContextMenu().
|
private |
Definition at line 2083 of file AdornedRulerPanel.cpp.
References cutPreviewPlay, PackedArray::end(), ViewInfo::Get(), ProjectAudioManager::Get(), ProjectAudioIO::GetDefaultOptions(), TrackList::GetEndTime(), TrackList::GetStartTime(), loopedPlay, mProject, mTracks, and normalPlay.
|
static |
Definition at line 2765 of file AdornedRulerPanel.cpp.
Referenced by SetFocusFromKbd().
|
private |
Definition at line 1735 of file AdornedRulerPanel.cpp.
References mLeftOffset, CellularPanel::mViewInfo, and ZoomInfo::TimeToPosition().
Referenced by IsWithinMarker(), and RegionRectangle().
void AdornedRulerPanel::TogglePinnedHead | ( | ) |
Definition at line 2883 of file AdornedRulerPanel.cpp.
References Scrubber::Get(), TracksPrefs::GetPinnedHeadPreference(), ToolManager::ModifyAllProjectToolbarMenus(), mProject, TracksPrefs::SetPinnedHeadPreference(), and UpdateButtonStates().
Referenced by anonymous_namespace{AdornedRulerPanel.cpp}::OnTogglePinnedHead(), and OnTogglePinnedState().
void AdornedRulerPanel::UpdateButtonStates | ( | ) |
Definition at line 2191 of file AdornedRulerPanel.cpp.
References AudioIO::Get(), TracksPrefs::GetPinnedHeadPreference(), label, mProject, OnTogglePinnedStateID, AButton::PopUp(), ToolBar::SetButtonToolTip(), AButton::SetLabel(), AButton::UpdateStatus(), Verbatim(), wxT(), and XO().
Referenced by OnAudioStartStop(), OnTogglePinnedState(), ReCreateButtons(), ShowContextMenu(), TogglePinnedHead(), and UpdatePrefs().
|
overridevirtual |
Implements PrefsListener.
Definition at line 1349 of file AdornedRulerPanel.cpp.
References gPrefs, mNeedButtonUpdate, mRuler, mTimelineToolTip, Setting< T >::Read(), ReCreateButtons(), RefreshTimelineFormat(), ScrollingPreference, Ruler::SetTwoTone(), UpdateButtonStates(), and wxT().
Referenced by AdornedRulerPanel().
void AdornedRulerPanel::UpdateQuickPlayPos | ( | wxCoord & | mousePosX | ) |
Definition at line 2232 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), HandleSnapping(), min(), mNumGuides, mProject, mQuickPlayOffset, mQuickPlayPos, mQuickPlayPosUnsnapped, and Pos2Time().
|
private |
Definition at line 1675 of file AdornedRulerPanel.cpp.
References BottomMargin, LeftMargin, min(), mInner, mOuter, mRuler, mScrubZone, RightMargin, ScrubHeight, Ruler::SetBounds(), ShowingScrubRuler(), and TopMargin.
Referenced by DoIdle(), and OnSize().
|
overrideprivatevirtual |
Implements CellularPanel.
Definition at line 2862 of file AdornedRulerPanel.cpp.
References ProjectStatus::Get(), GetProject(), and ProjectStatus::Set().
|
private |
Definition at line 253 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
staticconstexprprivate |
Definition at line 159 of file AdornedRulerPanel.h.
Referenced by SetNumGuides().
|
private |
Definition at line 140 of file AdornedRulerPanel.h.
Referenced by OnTimelineFormatChange(), and RefreshTimelineFormat().
|
private |
Definition at line 207 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), and ReCreateButtons().
|
private |
Definition at line 157 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 152 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel::Subgroup::Children(), AdornedRulerPanel::MainGroup::Children(), DoDrawBackground(), DoDrawMarks(), DoDrawScrubIndicator(), RegionRectangle(), and UpdateRects().
|
private |
Definition at line 203 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 168 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), and OnAudioStartStop().
|
private |
Definition at line 163 of file AdornedRulerPanel.h.
Referenced by HandleSnapping(), and SetNumGuides().
|
private |
Definition at line 264 of file AdornedRulerPanel.h.
|
private |
Definition at line 262 of file AdornedRulerPanel.h.
|
private |
Definition at line 261 of file AdornedRulerPanel.h.
|
private |
Definition at line 265 of file AdornedRulerPanel.h.
|
private |
Definition at line 263 of file AdornedRulerPanel.h.
Referenced by DoDrawOverlap(), DoDrawPlayRegion(), and DoIdle().
|
private |
Definition at line 202 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 201 of file AdornedRulerPanel.h.
|
private |
Definition at line 154 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), Pos2Time(), SetLeftOffset(), and Time2Pos().
|
private |
Definition at line 200 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), and SetPlayRegion().
|
private |
Definition at line 208 of file AdornedRulerPanel.h.
Referenced by UpdatePrefs().
|
private |
Definition at line 164 of file AdornedRulerPanel.h.
Referenced by SetNumGuides(), and UpdateQuickPlayPos().
|
private |
Definition at line 166 of file AdornedRulerPanel.h.
|
private |
Definition at line 150 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), DoDrawEdge(), OnSize(), and UpdateRects().
|
private |
Definition at line 232 of file AdornedRulerPanel.h.
Referenced by CreateOverlays().
|
private |
Definition at line 189 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), AdornedRulerPanel::PlayRegionAdjustingHandle::Drag(), HandleSnapping(), OnSyncSelToQuickPlay(), and ShowMenu().
|
private |
Definition at line 254 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 147 of file AdornedRulerPanel.h.
Referenced by CreateOverlays(), DoDrawPlayRegion(), DoIdle(), AdornedRulerPanel::TrackPanelGuidelineOverlay::Draw(), GetProject(), HandleSnapping(), OnClearPlayRegion(), OnSetPlayRegionToSelection(), OnTogglePlayRegion(), PlayRegionRectangle(), SelectedRegionRectangle(), ShowScrubMenu(), StartQPPlay(), TogglePinnedHead(), AdornedRulerPanel::TrackPanelGuidelineOverlay::Update(), UpdateButtonStates(), and UpdateQuickPlayPos().
|
private |
Definition at line 248 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), AdornedRulerPanel::Subgroup::Children(), AdornedRulerPanel::QPCell::ContextMenuDelegate(), and GetFocusedCell().
|
private |
Definition at line 160 of file AdornedRulerPanel.h.
Referenced by SetNumGuides(), and UpdateQuickPlayPos().
|
private |
Definition at line 162 of file AdornedRulerPanel.h.
Referenced by HandleSnapping(), SetNumGuides(), and UpdateQuickPlayPos().
|
private |
Definition at line 161 of file AdornedRulerPanel.h.
Referenced by SetNumGuides(), and UpdateQuickPlayPos().
|
private |
Definition at line 145 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), DoDrawMarks(), GetMaxSize(), InvalidateRuler(), OnTimelineFormatChange(), RefreshTimelineFormat(), SetLeftOffset(), UpdatePrefs(), and UpdateRects().
|
private |
Definition at line 278 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), DoDrawMarks(), OnTimelineFormatChange(), RefreshTimelineFormat(), and ShowMenu().
|
private |
Definition at line 251 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), AdornedRulerPanel::Subgroup::Children(), and AdornedRulerPanel::ScrubbingCell::ContextMenuDelegate().
|
private |
Definition at line 151 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel::Subgroup::Children(), DoDrawBackground(), DoDrawScrubIndicator(), and UpdateRects().
|
private |
Definition at line 255 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 190 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), and UpdatePrefs().
|
private |
Definition at line 148 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), HandleSnapping(), and StartQPPlay().
|
private |
Definition at line 142 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), and SetLeftOffset().
|
staticprivate |
Definition at line 119 of file AdornedRulerPanel.h.