![]() |
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 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 |
TimeDisplayMode | GetTimeDisplayMode () const |
void | SetTimeDisplayMode (TimeDisplayMode rulerType) |
![]() | |
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 | 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 | |
![]() | |
using | SimpleCellVisitor = std::function< void(const wxRect &rect, TrackPanelCell &cell) > |
using | SimpleNodeVisitor = std::function< void(const wxRect &rect, TrackPanelNode &node) > |
![]() | |
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 186 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 1283 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, mRulerInvalidatedSubscription, mScrubbingCell, mThemeChangeSubscription, mTimeDisplayMode, mTimelineToolTip, mTracks, mUpdater, CellularPanel::mViewInfo, OnAudioStartStop(), OnSelectionChange(), OnThemeChange(), project, audacity::BasicSettings::Read(), EnumSetting< Enum >::ReadEnum(), Refresh(), ViewInfo::selectedRegion, LinearUpdater::SetData(), wxPanelWrapper::SetLabel(), Ruler::SetLabelEdges(), wxPanelWrapper::SetName(), Observer::Publisher< Message, NotifyAll >::Subscribe(), theTheme, TimeDisplayModePreference, UpdatePrefs(), wxT(), and XO().
AdornedRulerPanel::~AdornedRulerPanel | ( | ) |
Definition at line 1352 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 2740 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), ProjectAudioManager::Get(), GetProject(), Refresh(), and ProjectAudioManager::Stop().
|
private |
Definition at line 2860 of file AdornedRulerPanel.cpp.
References OverlayPanel::AddOverlay(), GetProject(), GetProjectPanel(), mOverlay, and mProject.
|
static |
Definition at line 1274 of file AdornedRulerPanel.cpp.
References ClientData::Site< Host, ClientData, ObjectCopyingPolicy, Pointer, ObjectLockingPolicy, RegistryLockingPolicy >::Assign(), ClientData::Site< Host, ClientData, ObjectCopyingPolicy, Pointer, ObjectLockingPolicy, RegistryLockingPolicy >::Find(), GetAttachedWindows(), project, and anonymous_namespace{AdornedRulerPanel.cpp}::sKey.
Referenced by ProjectManager::OnCloseWindow().
|
private |
Definition at line 2485 of file AdornedRulerPanel.cpp.
References mInner, mScrubZone, ShowingScrubRuler(), TimelineBackgroundColor(), TimelineTextColor(), and AColor::UseThemeColour().
Referenced by OnPaint().
|
private |
Definition at line 2501 of file AdornedRulerPanel.cpp.
References AColor::BevelTrackInfo(), BottomMargin, AColor::Line(), mOuter, and RightMargin.
Referenced by OnPaint().
|
private |
Definition at line 2516 of file AdornedRulerPanel.cpp.
References BeatsAndMeasures, ThemeBase::Colour(), Ruler::Draw(), min(), mInner, MinutesAndSeconds, mRuler, mTimeDisplayMode, Pos2Time(), Ruler::SetRange(), Ruler::SetTickColour(), Ruler::SetTickLengths(), theTheme, and TimelineTextColor().
Referenced by OnPaint().
|
private |
Definition at line 2631 of file AdornedRulerPanel.cpp.
References AlphaBlend(), mLastPlayRegionActive, SelectionOpacity, TimelineLimitsColor(), and TimelineLoopRegionColor().
Referenced by OnPaint().
|
private |
Definition at line 2573 of file AdornedRulerPanel.cpp.
References ThemeBase::Colour(), ViewInfo::Get(), mLastPlayRegionActive, mProject, theTheme, and TimelineLoopRegionColor().
Referenced by OnPaint().
|
private |
Definition at line 2592 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 2665 of file AdornedRulerPanel.cpp.
References IndicatorHeightForWidth(), IndicatorOffset, mInner, mScrubZone, and ShowingScrubRuler().
|
private |
Definition at line 2640 of file AdornedRulerPanel.cpp.
References AlphaBlend(), SelectionOpacity, TimelineBackgroundColor(), and TimelineLimitsColor().
Referenced by OnPaint().
|
private |
Definition at line 1543 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), mLastDrawnH, mLastDrawnPlayRegion, mLastDrawnSelectedRegion, mLastDrawnZoom, mLastPlayRegionActive, mProject, project, Refresh(), SetPanelSize(), and UpdateRects().
Referenced by OnIdle().
|
private |
Definition at line 1678 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 2336 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), and project.
Referenced by AdornedRulerPanel::PlayRegionAdjustingHandle::Drag().
void AdornedRulerPanel::DrawBothOverlays | ( | ) |
Definition at line 2193 of file AdornedRulerPanel.cpp.
References OverlayPanel::DrawOverlays(), GetProject(), and GetProjectPanel().
Referenced by OnLeave(), and ProcessUIHandleResult().
void AdornedRulerPanel::DrawSelection | ( | ) |
Definition at line 2536 of file AdornedRulerPanel.cpp.
References Refresh().
Referenced by TrackPanel::UpdateSelectionDisplay().
|
static |
Definition at line 1263 of file AdornedRulerPanel.cpp.
References ClientData::Site< Host, ClientData, ObjectCopyingPolicy, Pointer, ObjectLockingPolicy, RegistryLockingPolicy >::Get(), GetAttachedWindows(), project, 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(), anonymous_namespace{TimelineMenus.cpp}::GetTimeDisplayMode(), 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(), anonymous_namespace{TimelineMenus.cpp}::SetTimeDisplayMode(), AdornedRulerPanel::PlayRegionAdjustingHandle::SnappedTime(), AdornedRulerPanel::PlayRegionAdjustingHandle::SnappedTimes(), AdornedRulerPanel::CommonRulerHandle::StartPlay(), AdornedRulerPanel::PlayRegionAdjustingHandle::Unsnap(), and AdornedRulerPanel::TrackPanelGuidelineOverlay::Update().
|
static |
Definition at line 1268 of file AdornedRulerPanel.cpp.
References Get(), and project.
|
overrideprivatevirtual |
Implements CellularPanel.
Definition at line 2834 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 2751 of file AdornedRulerPanel.cpp.
References Ruler::GetMaxSize(), and mRuler.
|
overridevirtual |
Implements CellularPanel.
Definition at line 2828 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 2650 of file AdornedRulerPanel.cpp.
References ProperRulerHeight, and ScrubHeight.
TimeDisplayMode AdornedRulerPanel::GetTimeDisplayMode | ( | ) | const |
Definition at line 2891 of file AdornedRulerPanel.cpp.
References mTimeDisplayMode.
|
private |
|
private |
|
private |
|
private |
Definition at line 2345 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 1466 of file AdornedRulerPanel.cpp.
References Ruler::Invalidate(), and mRuler.
|
private |
Definition at line 1756 of file AdornedRulerPanel.cpp.
References SELECT_TOLERANCE_PIXEL, and Time2Pos().
|
private |
Definition at line 1567 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 2392 of file AdornedRulerPanel.cpp.
References PrefsListener::Broadcast(), ViewInfo::bUpdateTrackIndicator, audacity::BasicSettings::Flush(), gPrefs, CellularPanel::mViewInfo, ViewInfo::UpdateScrollPrefsID(), audacity::BasicSettings::Write(), and wxT().
|
private |
Definition at line 2410 of file AdornedRulerPanel.cpp.
References SelectUtilities::ClearPlayRegion(), and mProject.
|
private |
Definition at line 1537 of file AdornedRulerPanel.cpp.
References DoIdle().
|
private |
Definition at line 1657 of file AdornedRulerPanel.cpp.
References BasicUI::CallAfter(), and DrawBothOverlays().
|
private |
Definition at line 1591 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 2235 of file AdornedRulerPanel.cpp.
References QuickPlay, and ShowContextMenu().
|
private |
Definition at line 1672 of file AdornedRulerPanel.cpp.
References DoSelectionChange(), CellularPanel::mViewInfo, and ViewInfo::selectedRegion.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 2415 of file AdornedRulerPanel.cpp.
References mProject, and SelectUtilities::SetPlayRegionToSelection().
|
private |
Definition at line 1644 of file AdornedRulerPanel.cpp.
References mOuter, BackedPanel::OnSize(), and UpdateRects().
|
private |
Definition at line 2375 of file AdornedRulerPanel.cpp.
References audacity::BasicSettings::Flush(), gPrefs, mPlayRegionDragsSelection, audacity::BasicSettings::Write(), and wxT().
|
private |
Definition at line 1665 of file AdornedRulerPanel.cpp.
References ThemeChangeMessage::appearance, and ReCreateButtons().
Referenced by AdornedRulerPanel().
|
private |
Definition at line 2361 of file AdornedRulerPanel.cpp.
References BeatsAndMeasures, MinutesAndSeconds, mTimeDisplayMode, OnBeatsAndMeasuresID, OnMinutesAndSecondsID, Refresh(), TimeDisplayModePreference, and TimeDisplayModeSetting::WriteEnum().
|
private |
Definition at line 2240 of file AdornedRulerPanel.cpp.
References TogglePinnedHead(), and UpdateButtonStates().
|
private |
Definition at line 2405 of file AdornedRulerPanel.cpp.
References mProject, and SelectUtilities::TogglePlayRegion().
|
private |
Definition at line 2541 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), mProject, and RegionRectangle().
Referenced by OnPaint().
|
private |
Definition at line 1742 of file AdornedRulerPanel.cpp.
References mLeftOffset, CellularPanel::mViewInfo, and ZoomInfo::PositionToTime().
Referenced by DoDrawMarks(), and UpdateQuickPlayPos().
|
overrideprivatevirtual |
Implements CellularPanel.
Definition at line 2846 of file AdornedRulerPanel.cpp.
References DrawBothOverlays(), RefreshCode::DrawOverlays, Refresh(), and RefreshCode::RefreshAll.
void AdornedRulerPanel::ReCreateButtons | ( | ) |
Definition at line 1391 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 1356 of file AdornedRulerPanel.cpp.
References BasicUI::CallAfter(), and CellularPanel::HandleCursorForPresentMouseState().
Referenced by AdornedRulerPanel(), ClearPlayRegion(), DoIdle(), DrawSelection(), OnTimelineFormatChange(), ProcessUIHandleResult(), SetPlayRegion(), SetTimeDisplayMode(), UpdatePrefs(), and TrackPanel::UpdateVRulerSize().
|
private |
Definition at line 2558 of file AdornedRulerPanel.cpp.
References min(), mInner, and Time2Pos().
Referenced by PlayRegionRectangle(), and SelectedRegionRectangle().
|
overrideprivatevirtual |
Implements CellularPanel.
Definition at line 2822 of file AdornedRulerPanel.cpp.
|
private |
Definition at line 2550 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), mProject, and RegionRectangle().
Referenced by OnPaint().
|
overrideprivatevirtual |
|
override |
Definition at line 2776 of file AdornedRulerPanel.cpp.
References BasicUI::SetFocus(), and TemporarilyAllowFocus().
void AdornedRulerPanel::SetLeftOffset | ( | int | offset | ) |
Definition at line 2655 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 2763 of file AdornedRulerPanel.cpp.
References MAX_GUIDES, min(), mIsSnapped, mNumGuides, mQuickPlayOffset, mQuickPlayPos, and mQuickPlayPosUnsnapped.
bool AdornedRulerPanel::SetPanelSize | ( | ) |
Definition at line 2179 of file AdornedRulerPanel.cpp.
References GetRulerHeight(), ShowingScrubRuler(), and size.
Referenced by DoIdle().
void AdornedRulerPanel::SetPlayRegion | ( | double | playRegionStart, |
double | playRegionEnd | ||
) |
Definition at line 2724 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), GetProject(), mesNone, mMouseEventState, and Refresh().
Referenced by DoSelectionChange().
void AdornedRulerPanel::SetTimeDisplayMode | ( | TimeDisplayMode | rulerType | ) |
Definition at line 2896 of file AdornedRulerPanel.cpp.
References mTimeDisplayMode, Refresh(), TimeDisplayModePreference, and TimeDisplayModeSetting::WriteEnum().
|
private |
Definition at line 2421 of file AdornedRulerPanel.cpp.
References QuickPlay, Scrub, ShowMenu(), ShowScrubMenu(), and UpdateButtonStates().
Referenced by OnPinnedButton().
bool AdornedRulerPanel::ShowingScrubRuler | ( | ) | const |
Definition at line 2815 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 2268 of file AdornedRulerPanel.cpp.
References _, BeatsAndMeasures, ViewInfo::bUpdateTrackIndicator, ViewInfo::Get(), TracksPrefs::GetPinnedHeadPreference(), GetProject(), LoopToggleText, MinutesAndSeconds, mPlayRegionDragsSelection, mTimeDisplayMode, CellularPanel::mViewInfo, OnAutoScrollID, OnBeatsAndMeasuresID, OnClearPlayRegionID, OnMinutesAndSecondsID, OnSetPlayRegionToSelectionID, OnSyncQuickPlaySelID, OnTogglePinnedStateID, OnTogglePlayRegionID, BasicMenu::Handle::Popup(), TranslatableString::Stripped(), and TranslatableString::Translation().
Referenced by ShowContextMenu().
|
private |
Definition at line 2322 of file AdornedRulerPanel.cpp.
References Scrubber::Get(), mProject, and BasicMenu::Handle::Popup().
Referenced by ShowContextMenu().
|
private |
Definition at line 2097 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 2758 of file AdornedRulerPanel.cpp.
Referenced by SetFocusFromKbd().
|
private |
Definition at line 1749 of file AdornedRulerPanel.cpp.
References mLeftOffset, CellularPanel::mViewInfo, and ZoomInfo::TimeToPosition().
Referenced by IsWithinMarker(), and RegionRectangle().
void AdornedRulerPanel::TogglePinnedHead | ( | ) |
Definition at line 2876 of file AdornedRulerPanel.cpp.
References Scrubber::Get(), TracksPrefs::GetPinnedHeadPreference(), ToolManager::ModifyAllProjectToolbarMenus(), mProject, project, TracksPrefs::SetPinnedHeadPreference(), and UpdateButtonStates().
Referenced by anonymous_namespace{AdornedRulerPanel.cpp}::OnTogglePinnedHead(), and OnTogglePinnedState().
void AdornedRulerPanel::UpdateButtonStates | ( | ) |
Definition at line 2205 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 1362 of file AdornedRulerPanel.cpp.
References gPrefs, mNeedButtonUpdate, mRuler, mTimeDisplayMode, mTimelineToolTip, audacity::BasicSettings::Read(), Setting< T >::Read(), EnumSetting< Enum >::ReadEnum(), ReCreateButtons(), Refresh(), ScrollingPreference, Ruler::SetTwoTone(), TimeDisplayModePreference, UpdateButtonStates(), and wxT().
Referenced by AdornedRulerPanel().
void AdornedRulerPanel::UpdateQuickPlayPos | ( | wxCoord & | mousePosX | ) |
Definition at line 2246 of file AdornedRulerPanel.cpp.
References ViewInfo::Get(), HandleSnapping(), min(), mNumGuides, mProject, mQuickPlayOffset, mQuickPlayPos, mQuickPlayPosUnsnapped, and Pos2Time().
|
private |
Definition at line 1689 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 2855 of file AdornedRulerPanel.cpp.
References ProjectStatus::Get(), GetProject(), and ProjectStatus::Set().
|
private |
Definition at line 247 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
staticconstexprprivate |
Definition at line 154 of file AdornedRulerPanel.h.
Referenced by SetNumGuides().
|
private |
Definition at line 201 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), and ReCreateButtons().
|
private |
Definition at line 152 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 147 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel::Subgroup::Children(), AdornedRulerPanel::MainGroup::Children(), DoDrawBackground(), DoDrawMarks(), DoDrawScrubIndicator(), RegionRectangle(), and UpdateRects().
|
private |
Definition at line 197 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 163 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), and OnAudioStartStop().
|
private |
Definition at line 158 of file AdornedRulerPanel.h.
Referenced by HandleSnapping(), and SetNumGuides().
|
private |
Definition at line 259 of file AdornedRulerPanel.h.
|
private |
Definition at line 257 of file AdornedRulerPanel.h.
|
private |
Definition at line 256 of file AdornedRulerPanel.h.
|
private |
Definition at line 260 of file AdornedRulerPanel.h.
|
private |
Definition at line 258 of file AdornedRulerPanel.h.
Referenced by DoDrawOverlap(), DoDrawPlayRegion(), and DoIdle().
|
private |
Definition at line 196 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 195 of file AdornedRulerPanel.h.
|
private |
Definition at line 149 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), Pos2Time(), SetLeftOffset(), and Time2Pos().
|
private |
Definition at line 194 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), and SetPlayRegion().
|
private |
Definition at line 202 of file AdornedRulerPanel.h.
Referenced by UpdatePrefs().
|
private |
Definition at line 159 of file AdornedRulerPanel.h.
Referenced by SetNumGuides(), and UpdateQuickPlayPos().
|
private |
Definition at line 161 of file AdornedRulerPanel.h.
|
private |
Definition at line 145 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), DoDrawEdge(), OnSize(), and UpdateRects().
|
private |
Definition at line 226 of file AdornedRulerPanel.h.
Referenced by CreateOverlays().
|
private |
Definition at line 183 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), AdornedRulerPanel::PlayRegionAdjustingHandle::Drag(), HandleSnapping(), OnSyncSelToQuickPlay(), and ShowMenu().
|
private |
Definition at line 248 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 138 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 242 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), AdornedRulerPanel::Subgroup::Children(), AdornedRulerPanel::QPCell::ContextMenuDelegate(), and GetFocusedCell().
|
private |
Definition at line 155 of file AdornedRulerPanel.h.
Referenced by SetNumGuides(), and UpdateQuickPlayPos().
|
private |
Definition at line 157 of file AdornedRulerPanel.h.
Referenced by HandleSnapping(), SetNumGuides(), and UpdateQuickPlayPos().
|
private |
Definition at line 156 of file AdornedRulerPanel.h.
Referenced by SetNumGuides(), and UpdateQuickPlayPos().
|
private |
Definition at line 141 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), DoDrawMarks(), GetMaxSize(), InvalidateRuler(), SetLeftOffset(), UpdatePrefs(), and UpdateRects().
|
private |
Definition at line 250 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 245 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), AdornedRulerPanel::Subgroup::Children(), and AdornedRulerPanel::ScrubbingCell::ContextMenuDelegate().
|
private |
Definition at line 146 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel::Subgroup::Children(), DoDrawBackground(), DoDrawScrubIndicator(), and UpdateRects().
|
private |
Definition at line 249 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel().
|
private |
Definition at line 268 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), DoDrawMarks(), GetTimeDisplayMode(), OnTimelineFormatChange(), SetTimeDisplayMode(), ShowMenu(), and UpdatePrefs().
|
private |
Definition at line 184 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), and UpdatePrefs().
|
private |
Definition at line 143 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), HandleSnapping(), and StartQPPlay().
|
private |
Definition at line 140 of file AdornedRulerPanel.h.
Referenced by AdornedRulerPanel(), and SetLeftOffset().
|
staticprivate |
Definition at line 119 of file AdornedRulerPanel.h.