MythTV  master
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Slots | List of all members
ProgFinder Class Reference

#include <progfind.h>

Inheritance diagram for ProgFinder:
Inheritance graph
[legend]
Collaboration diagram for ProgFinder:
Collaboration graph
[legend]

Public Member Functions

 ProgFinder (MythScreenStack *parentStack, bool allowEPG=true, TV *player=nullptr, bool embedVideo=false)
 
 ~ProgFinder () override
 
bool Create (void) override
 
bool keyPressEvent (QKeyEvent *event) override
 Key event handler. More...
 
- Public Member Functions inherited from MythScreenType
 MythScreenType (MythScreenStack *parent, const QString &name, bool fullscreen=true)
 
 ~MythScreenType () override
 
bool inputMethodEvent (QInputMethodEvent *event) override
 Input Method event handler. More...
 
bool gestureEvent (MythGestureEvent *event) override
 Mouse click/movement handler, receives mouse gesture events from the QCoreApplication event loop. More...
 
void doInit (void)
 
void LoadInForeground (void)
 
bool IsInitialized (void) const
 Has Init() been called on this screen? More...
 
bool IsFullscreen (void) const
 
void SetFullscreen (bool full)
 
MythUITypeGetFocusWidget (void) const
 
bool SetFocusWidget (MythUIType *widget=nullptr)
 
virtual bool NextPrevWidgetFocus (bool up_or_down)
 
void BuildFocusList (void)
 
MythScreenStackGetScreenStack () const
 
virtual void aboutToHide (void)
 
virtual void aboutToShow (void)
 
bool IsDeleting (void) const
 
void SetDeleting (bool deleting)
 
bool IsLoading (void) const
 
bool IsLoaded (void) const
 
MythPainterGetPainter (void) override
 
- Public Member Functions inherited from MythUIComposite
 MythUIComposite (QObject *parent, const QString &name)
 
 ~MythUIComposite () override=default
 
virtual void SetTextFromMap (const InfoMap &infoMap)
 
virtual void ResetMap (const InfoMap &infoMap)
 
- Public Member Functions inherited from MythUIType
 MythUIType (QObject *parent, const QString &name)
 
virtual void Reset (void)
 Reset the widget to it's original state, should not reset changes made by the theme. More...
 
void AddChild (MythUIType *child)
 Add a child UIType. More...
 
MythUITypeGetChild (const QString &name) const
 Get a named child of this UIType. More...
 
MythUITypeGetChildAt (QPoint p, bool recursive=true, bool focusable=true) const
 Return the first MythUIType at the given coordinates. More...
 
QList< MythUIType * > * GetAllChildren (void)
 Return a list of all child widgets. More...
 
QList< MythUIType * > GetAllDescendants (void)
 
void DeleteChild (const QString &name)
 Delete a named child of this UIType. More...
 
void DeleteChild (MythUIType *child)
 Delete the given UIType if it is a child of this UIType. More...
 
void DeleteAllChildren (void)
 Delete all child widgets. More...
 
bool NeedsRedraw (void) const
 
void ResetNeedsRedraw (void)
 
void SetRedraw (void)
 
void SetChildNeedsRedraw (MythUIType *child)
 
bool CanTakeFocus (void) const
 Return if this widget can accept input focus. More...
 
void SetCanTakeFocus (bool set=true)
 Set whether this widget can take focus. More...
 
void SetFocusOrder (int order)
 
bool IsEnabled (void) const
 
void SetEnabled (bool enable)
 
bool MoveToTop (void)
 
bool MoveChildToTop (MythUIType *child)
 
void ActivateAnimations (MythUIAnimation::Trigger trigger)
 
QList< MythUIAnimation * > * GetAnimations (void)
 
virtual void Pulse (void)
 Pulse is called 70 times a second to trigger a single frame of an animation. More...
 
void Draw (MythPainter *p, int xoffset, int yoffset, int alphaMod=255, QRect clipRect=QRect())
 
void SetPosition (int x, int y)
 Convenience method, calls SetPosition(const MythPoint&) Override that instead to change functionality. More...
 
void SetPosition (QPoint point)
 
virtual void SetPosition (const MythPoint &point)
 
virtual MythPoint GetPosition (void) const
 
virtual void SetSize (QSize size)
 
virtual void SetMinSize (const MythPoint &size)
 Set the minimum size of this widget, for widgets which can be rescaled. More...
 
virtual QSize GetMinSize (void) const
 
virtual void SetArea (const MythRect &rect)
 
virtual void AdjustMinArea (int delta_x, int delta_y, int delta_w, int delta_h)
 Adjust the size of a sibling. More...
 
virtual void VanishSibling (void)
 
virtual void SetMinAreaParent (MythRect actual_area, MythRect allowed_area, MythUIType *child)
 Adjust the size of sibling objects within the button. More...
 
virtual void SetMinArea (const MythRect &rect)
 Set the minimum area based on the given size. More...
 
virtual MythRect GetArea (void) const
 If the object has a minimum area defined, return it, other wise return the default area. More...
 
virtual MythRect GetFullArea (void) const
 
virtual void RecalculateArea (bool recurse=true)
 
void ExpandArea (QRect rect)
 
virtual QRegion GetDirtyArea (void) const
 
bool IsVisible (bool recurse=false) const
 
virtual void SetVisible (bool visible)
 
void MoveTo (QPoint destXY, QPoint speedXY)
 
void AdjustAlpha (int mode, int alphachange, int minalpha=0, int maxalpha=255)
 
void SetAlpha (int newalpha)
 
int GetAlpha (void) const
 
virtual void mediaEvent (MythMediaEvent *event)
 Media/Device status event handler, received from MythMediaMonitor. More...
 
MythFontPropertiesGetFont (const QString &text) const
 
bool AddFont (const QString &text, MythFontProperties *fontProp)
 
void SetHelpText (const QString &text)
 
QString GetHelpText (void) const
 
void SetXMLLocation (const QString &filename, int where)
 
QString GetXMLLocation (void) const
 
void SetXMLName (const QString &name)
 
QString GetXMLName (void) const
 
bool IsDeferredLoading (bool recurse=false) const
 
void SetDeferLoad (bool defer)
 
virtual void LoadNow (void)
 Cause images in this and child widgets to be loaded. More...
 
bool ContainsPoint (QPoint point) const
 Check if the given point falls within this widgets area. More...
 
void SetPainter (MythPainter *painter)
 
void SetCentre (UIEffects::Centre centre)
 
void SetZoom (float zoom)
 
void SetHorizontalZoom (float zoom)
 
void SetVerticalZoom (float zoom)
 
void SetAngle (float angle)
 
void SetDependIsDefault (bool isDefault)
 
void SetReverseDependence (MythUIType *dependee, bool reverse)
 
void SetDependsMap (QMap< QString, QString > dependsMap)
 
QMap< QString, QString > GetDependsMap () const
 

Protected Types

using ShowName = QMap< QString, QString >
 

Protected Member Functions

void Init (void) override
 Used after calling Load() to assign data to widgets and other UI initilisation which is prohibited in Load() More...
 
virtual void initAlphabetList (void)
 
virtual bool formatSelectedData (QString &data)
 
virtual bool formatSelectedData (QString &data, int charNum)
 
virtual void restoreSelectedData (QString &data)
 
virtual void whereClauseGetSearchData (QString &where, MSqlBindings &bindings)
 
ProgramInfoGetCurrentProgram (void) const override
 
void ShowMenu (void) override
 
void getShowNames (void)
 
void updateShowList ()
 
void updateTimesList ()
 
void selectShowData (QString progTitle, int newCurShow)
 
- Protected Member Functions inherited from ScheduleCommon
 ScheduleCommon (MythScreenStack *parent, const QString &name)
 
 ~ScheduleCommon () override=default
 
void customEvent (QEvent *event) override
 
- Protected Member Functions inherited from MythScreenType
 MythScreenType (MythUIType *parent, const QString &name, bool fullscreen=true)
 
void CopyFrom (MythUIType *base) override
 Copy this widgets state from another. More...
 
void CreateCopy (MythUIType *parent) override
 Copy the state of this widget to the one given, it must be of the same type. More...
 
bool ParseElement (const QString &filename, QDomElement &element, bool showWarnings) override
 Parse the xml definition of this widget setting the state of the object accordingly. More...
 
virtual void Load (void)
 Load data which will ultimately be displayed on-screen or used to determine what appears on-screen (See Warning) More...
 
void LoadInBackground (const QString &message="")
 
void ReloadInBackground (void)
 
void OpenBusyPopup (const QString &message="")
 
void CloseBusyPopup (void)
 
void SetBusyPopupMessage (const QString &message)
 
void ResetBusyPopup (void)
 
- Protected Member Functions inherited from MythUIType
 ~MythUIType () override
 
void customEvent (QEvent *event) override
 
virtual void DrawSelf (MythPainter *p, int xoffset, int yoffset, int alphaMod, QRect clipRect)
 
void AddFocusableChildrenToList (FocusInfoType &focusList)
 
void HandleAlphaPulse ()
 Handle one frame of an alpha (transparency) change animation. More...
 
void HandleMovementPulse ()
 Handle one frame of a movement animation. More...
 
int CalcAlpha (int alphamod) const
 
void ConnectDependants (bool recurse=false)
 
virtual void Finalize (void)
 Perform any post-xml parsing initialisation tasks. More...
 

Protected Attributes

ShowName m_showNames
 
QString m_searchStr
 
QString m_currentLetter
 
TVm_player {nullptr}
 
bool m_embedVideo {false}
 
bool m_allowEPG {true}
 
bool m_allowKeypress {true}
 
ProgramList m_showData
 
ProgramList m_schedList
 
InfoMap m_infoMap
 
MythUIButtonListm_alphabetList {nullptr}
 
MythUIButtonListm_showList {nullptr}
 
MythUIButtonListm_timesList {nullptr}
 
MythUITextm_searchText {nullptr}
 
MythUITextm_help1Text {nullptr}
 
MythUITextm_help2Text {nullptr}
 
- Protected Attributes inherited from MythScreenType
bool m_fullScreen {false}
 
bool m_isDeleting {false}
 
QSemaphore m_loadLock {1}
 
volatile bool m_isLoading {false}
 
volatile bool m_isLoaded {false}
 
bool m_isInitialized {false}
 
MythUITypem_currentFocusWidget {nullptr}
 
FocusInfoType m_focusWidgetList
 
MythScreenStackm_screenStack {nullptr}
 
MythUIBusyDialogm_busyPopup {nullptr}
 
QRegion m_savedMask
 
- Protected Attributes inherited from MythUIType
QList< MythUIType * > m_childrenList
 
QMap< QString, QString > m_dependsMap
 
QList< QPair< MythUIType *, bool > > m_dependsValue
 
QList< int > m_dependOperator
 
bool m_visible {true}
 
bool m_hasFocus {false}
 
bool m_canHaveFocus {false}
 
bool m_enabled {true}
 
bool m_enableInitiator {false}
 
bool m_initiator {false}
 
bool m_vanish {false}
 
bool m_vanished {false}
 
bool m_isDependDefault {false}
 
QMap< MythUIType *, boolm_reverseDepend
 
int m_focusOrder {0}
 
MythRect m_area {0,0,0,0}
 
MythRect m_minArea {0,0,0,0}
 
MythPoint m_minSize
 
QRegion m_dirtyRegion {0,0,0,0}
 
bool m_needsRedraw {false}
 
UIEffects m_effects
 
int m_alphaChangeMode {0}
 
int m_alphaChange {0}
 
int m_alphaMin {0}
 
int m_alphaMax {255}
 
bool m_moving {false}
 
QPoint m_xyDestination {0,0}
 
QPoint m_xySpeed {0,0}
 
FontMapm_fonts {nullptr}
 
MythUITypem_parent {nullptr}
 
MythPainterm_painter {nullptr}
 
QList< MythUIAnimation * > m_animations
 
QString m_helptext
 
QString m_xmlName
 
QString m_xmlLocation
 
bool m_deferload {false}
 
QColor m_borderColor {Qt::black}
 

Private Slots

void alphabetListItemSelected (MythUIButtonListItem *item)
 
void showListTakeFocus (void)
 
void timesListTakeFocus (void)
 
void timesListLosingFocus (void)
 
void ShowGuide () const override
 
void select ()
 
void customEvent (QEvent *e) override
 
void updateInfo (void)
 

Additional Inherited Members

- Public Slots inherited from ScheduleCommon
virtual void ShowDetails (void) const
 Show the Program Details screen. More...
 
- Public Slots inherited from MythScreenType
virtual void Close ()
 
- Public Slots inherited from MythUIType
void LoseFocus ()
 
bool TakeFocus ()
 
void Activate ()
 
void Hide (void)
 
void Show (void)
 
void Refresh (void)
 
void UpdateDependState (bool isDefault)
 
void UpdateDependState (MythUIType *dependee, bool isDefault)
 
- Signals inherited from MythScreenType
void Exiting ()
 
- Signals inherited from MythUIType
void RequestUpdate ()
 
void RequestRegionUpdate (const QRect &)
 
void TakingFocus ()
 
void LosingFocus ()
 
void VisibilityChanged (bool Visible)
 
void Showing ()
 
void Hiding ()
 
void Enabling ()
 
void Disabling ()
 
void FinishedMoving ()
 
void FinishedFading ()
 
void DependChanged (bool isDefault)
 
- Static Public Member Functions inherited from XMLParseBase
static QString getFirstText (QDomElement &element)
 
static bool parseBool (const QString &text)
 
static bool parseBool (QDomElement &element)
 
static MythPoint parsePoint (const QString &text, bool normalize=true)
 
static MythPoint parsePoint (QDomElement &element, bool normalize=true)
 
static QSize parseSize (const QString &text, bool normalize=true)
 
static QSize parseSize (QDomElement &element, bool normalize=true)
 
static MythRect parseRect (const QString &text, bool normalize=true)
 
static MythRect parseRect (QDomElement &element, bool normalize=true)
 
static int parseAlignment (const QString &text)
 
static int parseAlignment (QDomElement &element)
 
static QBrush parseGradient (const QDomElement &element)
 
static QString parseText (QDomElement &element)
 
static MythUITypeGetGlobalObjectStore (void)
 
static void ClearGlobalObjectStore (void)
 
static void ParseChildren (const QString &filename, QDomElement &element, MythUIType *parent, bool showWarnings)
 
static MythUITypeParseUIType (const QString &filename, QDomElement &element, const QString &type, MythUIType *parent, MythScreenType *screen, bool showWarnings, QMap< QString, QString > &parentDependsMap)
 
static bool WindowExists (const QString &xmlfile, const QString &windowname)
 
static bool LoadWindowFromXML (const QString &xmlfile, const QString &windowname, MythUIType *parent)
 
static bool LoadBaseTheme (void)
 
static bool LoadBaseTheme (const QString &baseTheme)
 
static bool CopyWindowFromBase (const QString &windowname, MythScreenType *win)
 
- Protected Slots inherited from ScheduleCommon
virtual void EditRecording (bool may_watch_now=false)
 Creates a dialog for editing the recording status, blocking until user leaves dialog. More...
 
virtual void EditRecording (MythUIButtonListItem *)
 
virtual void QuickRecord (void)
 Create a kSingleRecord or bring up recording dialog. More...
 
virtual void ShowPrevious (void) const
 Show the previous recordings for this recording rule. More...
 
virtual void ShowPrevious (uint ruleid, const QString &title) const
 Show the previous recordings for this recording rule. More...
 
virtual void ShowUpcoming (void) const
 Show the upcoming recordings for this title. More...
 
virtual void ShowUpcomingScheduled (void) const
 Show the upcoming recordings for this recording rule. More...
 
virtual void ShowChannelSearch (void) const
 Show the channel search. More...
 
virtual void ShowGuide (void) const
 Show the program guide. More...
 
virtual void EditScheduled (void)
 Creates a dialog for editing the recording schedule. More...
 
virtual void EditCustom (void)
 Creates a dialog for creating a custom recording rule. More...
 
- Static Protected Member Functions inherited from ScheduleCommon
static void ShowUpcoming (const QString &title, const QString &seriesid)
 Show the upcoming recordings for this title. More...
 
static void EditScheduled (ProgramInfo *pginfo)
 Creates a dialog for editing the recording schedule. More...
 
static void EditScheduled (RecordingInfo *recinfo)
 Creates a dialog for editing the recording schedule. More...
 
static void MakeOverride (RecordingInfo *recinfo)
 Creates a dialog for editing an override recording schedule. More...
 
- Static Protected Member Functions inherited from MythUIType
static int NormX (int width)
 
static int NormY (int height)
 

Detailed Description

Definition at line 23 of file progfind.h.

Member Typedef Documentation

◆ ShowName

using ProgFinder::ShowName = QMap<QString,QString>
protected

Definition at line 47 of file progfind.h.

Constructor & Destructor Documentation

◆ ProgFinder()

ProgFinder::ProgFinder ( MythScreenStack parentStack,
bool  allowEPG = true,
TV player = nullptr,
bool  embedVideo = false 
)
explicit

Definition at line 51 of file progfind.cpp.

◆ ~ProgFinder()

ProgFinder::~ProgFinder ( )
override

Definition at line 122 of file progfind.cpp.

Member Function Documentation

◆ Create()

bool ProgFinder::Create ( void  )
overridevirtual

Reimplemented from MythScreenType.

Definition at line 62 of file progfind.cpp.

Referenced by RunProgramFinder().

◆ keyPressEvent()

bool ProgFinder::keyPressEvent ( QKeyEvent *  event)
overridevirtual

Key event handler.

Parameters
eventKeypress event

Reimplemented from MythScreenType.

Definition at line 163 of file progfind.cpp.

◆ alphabetListItemSelected

void ProgFinder::alphabetListItemSelected ( MythUIButtonListItem item)
privateslot

Definition at line 136 of file progfind.cpp.

Referenced by Init().

◆ showListTakeFocus

void ProgFinder::showListTakeFocus ( void  )
privateslot

Definition at line 152 of file progfind.cpp.

Referenced by Init().

◆ timesListTakeFocus

void ProgFinder::timesListTakeFocus ( void  )
privateslot

Definition at line 157 of file progfind.cpp.

Referenced by Init().

◆ timesListLosingFocus

void ProgFinder::timesListLosingFocus ( void  )
privateslot

Definition at line 147 of file progfind.cpp.

Referenced by Init().

◆ ShowGuide

void ProgFinder::ShowGuide ( ) const
overrideprivateslot

Definition at line 409 of file progfind.cpp.

Referenced by customEvent(), and keyPressEvent().

◆ select

void ProgFinder::select ( )
privateslot

Definition at line 432 of file progfind.cpp.

Referenced by Init().

◆ customEvent

void ProgFinder::customEvent ( QEvent *  e)
overrideprivateslot

Definition at line 253 of file progfind.cpp.

◆ updateInfo

void ProgFinder::updateInfo ( void  )
privateslot

◆ Init()

void ProgFinder::Init ( void  )
overrideprotectedvirtual

Used after calling Load() to assign data to widgets and other UI initilisation which is prohibited in Load()

Warning
Do NOT confuse this with Load(), they serve very different purposes and most often both should be used when creating a new screen.

Reimplemented from MythScreenType.

Definition at line 95 of file progfind.cpp.

◆ initAlphabetList()

void ProgFinder::initAlphabetList ( void  )
protectedvirtual

Reimplemented in RuProgFinder, HeProgFinder, and JaProgFinder.

Definition at line 538 of file progfind.cpp.

Referenced by Init().

◆ formatSelectedData() [1/2]

bool ProgFinder::formatSelectedData ( QString &  data)
protectedvirtual

Reimplemented in RuProgFinder, HeProgFinder, and JaProgFinder.

Definition at line 613 of file progfind.cpp.

Referenced by getShowNames().

◆ formatSelectedData() [2/2]

bool ProgFinder::formatSelectedData ( QString &  data,
int  charNum 
)
protectedvirtual

Reimplemented in RuProgFinder, HeProgFinder, and JaProgFinder.

Definition at line 665 of file progfind.cpp.

◆ restoreSelectedData()

void ProgFinder::restoreSelectedData ( QString &  data)
protectedvirtual

Reimplemented in RuProgFinder, HeProgFinder, and JaProgFinder.

Definition at line 702 of file progfind.cpp.

Referenced by updateShowList().

◆ whereClauseGetSearchData()

void ProgFinder::whereClauseGetSearchData ( QString &  where,
MSqlBindings bindings 
)
protectedvirtual

Reimplemented in RuProgFinder, HeProgFinder, and JaProgFinder.

Definition at line 551 of file progfind.cpp.

Referenced by getShowNames().

◆ GetCurrentProgram()

ProgramInfo * ProgFinder::GetCurrentProgram ( void  ) const
overrideprotectedvirtual

Reimplemented from ScheduleCommon.

Definition at line 1025 of file progfind.cpp.

◆ ShowMenu()

void ProgFinder::ShowMenu ( void  )
overrideprotectedvirtual

Reimplemented from MythScreenType.

Definition at line 220 of file progfind.cpp.

◆ getShowNames()

void ProgFinder::getShowNames ( void  )
protected

Definition at line 470 of file progfind.cpp.

Referenced by updateShowList().

◆ updateShowList()

void ProgFinder::updateShowList ( )
protected

Definition at line 498 of file progfind.cpp.

Referenced by alphabetListItemSelected(), and customEvent().

◆ updateTimesList()

void ProgFinder::updateTimesList ( )
protected

Definition at line 442 of file progfind.cpp.

Referenced by selectShowData().

◆ selectShowData()

void ProgFinder::selectShowData ( QString  progTitle,
int  newCurShow 
)
protected

Definition at line 516 of file progfind.cpp.

Referenced by customEvent(), and timesListTakeFocus().

Member Data Documentation

◆ m_showNames

ShowName ProgFinder::m_showNames
protected

Definition at line 64 of file progfind.h.

Referenced by getShowNames(), and updateShowList().

◆ m_searchStr

QString ProgFinder::m_searchStr
protected

◆ m_currentLetter

QString ProgFinder::m_currentLetter
protected

Definition at line 67 of file progfind.h.

Referenced by alphabetListItemSelected().

◆ m_player

TV* ProgFinder::m_player {nullptr}
protected

Definition at line 69 of file progfind.h.

Referenced by Create(), keyPressEvent(), ProgFinder(), ShowGuide(), and ~ProgFinder().

◆ m_embedVideo

bool ProgFinder::m_embedVideo {false}
protected

Definition at line 70 of file progfind.h.

Referenced by ShowGuide().

◆ m_allowEPG

bool ProgFinder::m_allowEPG {true}
protected

Definition at line 71 of file progfind.h.

Referenced by keyPressEvent(), ShowGuide(), and ~ProgFinder().

◆ m_allowKeypress

bool ProgFinder::m_allowKeypress {true}
protected

Definition at line 72 of file progfind.h.

Referenced by Init(), and keyPressEvent().

◆ m_showData

ProgramList ProgFinder::m_showData
protected

◆ m_schedList

ProgramList ProgFinder::m_schedList
protected

Definition at line 75 of file progfind.h.

Referenced by selectShowData().

◆ m_infoMap

InfoMap ProgFinder::m_infoMap
protected

Definition at line 77 of file progfind.h.

Referenced by updateInfo().

◆ m_alphabetList

MythUIButtonList* ProgFinder::m_alphabetList {nullptr}
protected

◆ m_showList

MythUIButtonList* ProgFinder::m_showList {nullptr}
protected

Definition at line 80 of file progfind.h.

Referenced by Create(), customEvent(), Init(), select(), selectShowData(), updateInfo(), and updateShowList().

◆ m_timesList

MythUIButtonList* ProgFinder::m_timesList {nullptr}
protected

◆ m_searchText

MythUIText* ProgFinder::m_searchText {nullptr}
protected

Definition at line 83 of file progfind.h.

Referenced by Create(), and customEvent().

◆ m_help1Text

MythUIText* ProgFinder::m_help1Text {nullptr}
protected

Definition at line 84 of file progfind.h.

Referenced by Create(), and updateInfo().

◆ m_help2Text

MythUIText* ProgFinder::m_help2Text {nullptr}
protected

Definition at line 85 of file progfind.h.

Referenced by Create(), and updateInfo().


The documentation for this class was generated from the following files: