#include <subtitlescreen.h>
Public Member Functions | |
| SubtitleScreen (MythPlayer *player, const char *name, int fontStretch) | |
| virtual | ~SubtitleScreen () |
| void | EnableSubtitles (int type, bool forced_only=false) |
| void | DisableForcedSubtitles (void) |
| int | EnabledSubtitleType (void) |
| void | ClearAllSubtitles (void) |
| void | ClearNonDisplayedSubtitles (void) |
| void | ClearDisplayedSubtitles (void) |
| void | ExpireSubtitles (void) |
| void | DisplayDVDButton (AVSubtitle *dvdButton, QRect &buttonPos) |
| void | SetZoom (int percent) |
| int | GetZoom (void) |
| QSize | CalcTextSize (const QString &text, const CC708CharacterAttribute &format, bool teletext, float layoutSpacing) const |
| int | CalcPadding (const CC708CharacterAttribute &format, bool teletext, bool isLeft) const |
| void | RegisterExpiration (MythUIType *shape, long long endTime) |
| virtual bool | Create (void) |
| virtual void | Pulse (void) |
| Pulse is called 70 times a second to trigger a single frame of an animation. | |
Static Public Member Functions | |
| static QString | GetTeletextFontName (void) |
Private Member Functions | |
| void | OptimiseDisplayedArea (void) |
| void | DisplayAVSubtitles (void) |
| int | DisplayScaledAVSubtitles (const AVSubtitleRect *rect, QRect &bbox, bool top, QRect &display, int forced, QString imagename, long long displayuntil, long long late) |
| void | DisplayTextSubtitles (void) |
| void | DisplayRawTextSubtitles (void) |
| void | DrawTextSubtitles (QStringList &wrappedsubs, uint64_t start, uint64_t duration) |
| void | DisplayCC608Subtitles (void) |
| void | DisplayCC708Subtitles (void) |
| void | AddScaledImage (QImage &img, QRect &pos) |
| void | Clear708Cache (int num) |
| void | InitializeFonts (bool wasResized) |
| MythFontProperties * | GetFont (CC708CharacterAttribute attr, bool teletext) const |
| void | SetFontSize (int pixelSize) |
| bool | InitialiseAssLibrary (void) |
| void | LoadAssFonts (void) |
| void | CleanupAssLibrary (void) |
| void | InitialiseAssTrack (int tracknum) |
| void | CleanupAssTrack (void) |
| void | AddAssEvent (char *event) |
| void | ResizeAssRenderer (void) |
| void | RenderAssTrack (uint64_t timecode) |
Private Attributes | |
| MythPlayer * | m_player |
| SubtitleReader * | m_subreader |
| CC608Reader * | m_608reader |
| CC708Reader * | m_708reader |
| QRect | m_safeArea |
| QRegExp | m_removeHTML |
| int | m_subtitleType |
| QHash< MythUIType *, long long > | m_expireTimes |
| QHash< MythUIType *, MythImage * > | m_avsubCache |
| int | m_fontSize |
| int | m_textFontZoom |
| int | m_textFontZoomPrev |
| bool | m_refreshArea |
| QHash< int, QList< MythUIType * > > | m_708imageCache |
| int | m_fontStretch |
| QString | m_family |
| class SubtitleFormat * | m_format |
| ASS_Library * | m_assLibrary |
| ASS_Renderer * | m_assRenderer |
| int | m_assTrackNum |
| ASS_Track * | m_assTrack |
| uint | m_assFontCount |
Friends | |
| class | FormattedTextSubtitle |
Definition at line 24 of file subtitlescreen.h.
| SubtitleScreen::SubtitleScreen | ( | MythPlayer * | player, | |
| const char * | name, | |||
| int | fontStretch | |||
| ) |
Definition at line 525 of file subtitlescreen.cpp.
| SubtitleScreen::~SubtitleScreen | ( | void | ) | [virtual] |
Definition at line 546 of file subtitlescreen.cpp.
| void SubtitleScreen::EnableSubtitles | ( | int | type, | |
| bool | forced_only = false | |||
| ) |
Definition at line 555 of file subtitlescreen.cpp.
Referenced by OSD::EnableSubtitles().
| void SubtitleScreen::DisableForcedSubtitles | ( | void | ) |
Definition at line 599 of file subtitlescreen.cpp.
Referenced by OSD::DisableForcedSubtitles().
| int SubtitleScreen::EnabledSubtitleType | ( | void | ) | [inline] |
Definition at line 34 of file subtitlescreen.h.
| void SubtitleScreen::ClearAllSubtitles | ( | void | ) |
Definition at line 647 of file subtitlescreen.cpp.
Referenced by OSD::ClearSubtitles(), DisableForcedSubtitles(), EnableSubtitles(), and ~SubtitleScreen().
| void SubtitleScreen::ClearNonDisplayedSubtitles | ( | void | ) |
Definition at line 657 of file subtitlescreen.cpp.
Referenced by ClearAllSubtitles().
| void SubtitleScreen::ClearDisplayedSubtitles | ( | void | ) |
Definition at line 669 of file subtitlescreen.cpp.
Referenced by ClearAllSubtitles(), and DisplayAVSubtitles().
| void SubtitleScreen::ExpireSubtitles | ( | void | ) |
Definition at line 679 of file subtitlescreen.cpp.
Referenced by Pulse().
| void SubtitleScreen::DisplayDVDButton | ( | AVSubtitle * | dvdButton, | |
| QRect & | buttonPos | |||
| ) |
Definition at line 1138 of file subtitlescreen.cpp.
Referenced by OSD::DisplayDVDButton().
| void SubtitleScreen::SetZoom | ( | int | percent | ) |
Definition at line 1417 of file subtitlescreen.cpp.
Referenced by TV::ChangeSubtitleZoom().
| int SubtitleScreen::GetZoom | ( | void | ) |
Definition at line 1426 of file subtitlescreen.cpp.
Referenced by TV::ChangeSubtitleZoom().
| QSize SubtitleScreen::CalcTextSize | ( | const QString & | text, | |
| const CC708CharacterAttribute & | format, | |||
| bool | teletext, | |||
| float | layoutSpacing | |||
| ) | const |
Definition at line 2043 of file subtitlescreen.cpp.
Referenced by FormattedTextChunk::CalcSize().
| int SubtitleScreen::CalcPadding | ( | const CC708CharacterAttribute & | format, | |
| bool | teletext, | |||
| bool | isLeft | |||
| ) | const |
Definition at line 2062 of file subtitlescreen.cpp.
Referenced by FormattedTextChunk::CalcPadding().
| void SubtitleScreen::RegisterExpiration | ( | MythUIType * | shape, | |
| long long | endTime | |||
| ) | [inline] |
Definition at line 52 of file subtitlescreen.h.
Referenced by FormattedTextSubtitle::Draw().
| QString SubtitleScreen::GetTeletextFontName | ( | void | ) | [static] |
Definition at line 2074 of file subtitlescreen.cpp.
Referenced by TeletextScreen::InitialiseFont().
| bool SubtitleScreen::Create | ( | void | ) | [virtual] |
Reimplemented from MythScreenType.
Definition at line 608 of file subtitlescreen.cpp.
Referenced by OSD::InitSubtitles().
| void SubtitleScreen::Pulse | ( | void | ) | [virtual] |
Pulse is called 70 times a second to trigger a single frame of an animation.
This changes the alpha value of the widget
Reimplemented from MythUIType.
Definition at line 626 of file subtitlescreen.cpp.
| void SubtitleScreen::OptimiseDisplayedArea | ( | void | ) | [private] |
Definition at line 698 of file subtitlescreen.cpp.
Referenced by Pulse().
| void SubtitleScreen::DisplayAVSubtitles | ( | void | ) | [private] |
Definition at line 729 of file subtitlescreen.cpp.
Referenced by Pulse().
| int SubtitleScreen::DisplayScaledAVSubtitles | ( | const AVSubtitleRect * | rect, | |
| QRect & | bbox, | |||
| bool | top, | |||
| QRect & | display, | |||
| int | forced, | |||
| QString | imagename, | |||
| long long | displayuntil, | |||
| long long | late | |||
| ) | [private] |
Definition at line 866 of file subtitlescreen.cpp.
Referenced by DisplayAVSubtitles().
| void SubtitleScreen::DisplayTextSubtitles | ( | void | ) | [private] |
Definition at line 1035 of file subtitlescreen.cpp.
Referenced by Pulse().
| void SubtitleScreen::DisplayRawTextSubtitles | ( | void | ) | [private] |
Definition at line 1103 of file subtitlescreen.cpp.
Referenced by Pulse().
| void SubtitleScreen::DrawTextSubtitles | ( | QStringList & | wrappedsubs, | |
| uint64_t | start, | |||
| uint64_t | duration | |||
| ) | [private] |
Definition at line 1128 of file subtitlescreen.cpp.
Referenced by DisplayRawTextSubtitles(), and DisplayTextSubtitles().
| void SubtitleScreen::DisplayCC608Subtitles | ( | void | ) | [private] |
Definition at line 1267 of file subtitlescreen.cpp.
Referenced by Pulse().
| void SubtitleScreen::DisplayCC708Subtitles | ( | void | ) | [private] |
Definition at line 1305 of file subtitlescreen.cpp.
Referenced by Pulse().
| void SubtitleScreen::AddScaledImage | ( | QImage & | img, | |
| QRect & | pos | |||
| ) | [private] |
Definition at line 1379 of file subtitlescreen.cpp.
Referenced by DisplayDVDButton().
| void SubtitleScreen::Clear708Cache | ( | int | num | ) | [private] |
Definition at line 1369 of file subtitlescreen.cpp.
Referenced by ClearDisplayedSubtitles(), and DisplayCC708Subtitles().
| void SubtitleScreen::InitializeFonts | ( | bool | wasResized | ) | [private] |
| MythFontProperties * SubtitleScreen::GetFont | ( | CC708CharacterAttribute | attr, | |
| bool | teletext | |||
| ) | const [private] |
Definition at line 1410 of file subtitlescreen.cpp.
Referenced by CalcPadding(), CalcTextSize(), FormattedTextSubtitle::Draw(), and FormattedTextSubtitle::InitFromCC608().
| void SubtitleScreen::SetFontSize | ( | int | pixelSize | ) | [inline, private] |
Definition at line 83 of file subtitlescreen.h.
Referenced by FormattedTextSubtitle::InitFromCC608(), FormattedTextSubtitle::InitFromCC708(), and FormattedTextSubtitle::InitFromSRT().
| bool SubtitleScreen::InitialiseAssLibrary | ( | void | ) | [private] |
Definition at line 2139 of file subtitlescreen.cpp.
Referenced by InitialiseAssTrack().
| void SubtitleScreen::LoadAssFonts | ( | void | ) | [private] |
Definition at line 2171 of file subtitlescreen.cpp.
Referenced by InitialiseAssLibrary(), and InitialiseAssTrack().
| void SubtitleScreen::CleanupAssLibrary | ( | void | ) | [private] |
Definition at line 2196 of file subtitlescreen.cpp.
Referenced by ~SubtitleScreen().
| void SubtitleScreen::InitialiseAssTrack | ( | int | tracknum | ) | [private] |
Definition at line 2213 of file subtitlescreen.cpp.
Referenced by DisplayAVSubtitles().
| void SubtitleScreen::CleanupAssTrack | ( | void | ) | [private] |
Definition at line 2234 of file subtitlescreen.cpp.
Referenced by CleanupAssLibrary(), and InitialiseAssTrack().
| void SubtitleScreen::AddAssEvent | ( | char * | event | ) | [private] |
Definition at line 2241 of file subtitlescreen.cpp.
Referenced by DisplayAVSubtitles().
| void SubtitleScreen::ResizeAssRenderer | ( | void | ) | [private] |
Definition at line 2247 of file subtitlescreen.cpp.
Referenced by InitialiseAssTrack(), and RenderAssTrack().
| void SubtitleScreen::RenderAssTrack | ( | uint64_t | timecode | ) | [private] |
Definition at line 2256 of file subtitlescreen.cpp.
Referenced by DisplayAVSubtitles().
friend class FormattedTextSubtitle [friend] |
Definition at line 26 of file subtitlescreen.h.
MythPlayer* SubtitleScreen::m_player [private] |
Definition at line 85 of file subtitlescreen.h.
Referenced by AddScaledImage(), Create(), DisplayAVSubtitles(), DisplayCC608Subtitles(), DisplayCC708Subtitles(), DisplayDVDButton(), DisplayRawTextSubtitles(), DisplayScaledAVSubtitles(), DisplayTextSubtitles(), ExpireSubtitles(), InitialiseAssTrack(), LoadAssFonts(), and RenderAssTrack().
SubtitleReader* SubtitleScreen::m_subreader [private] |
Definition at line 86 of file subtitlescreen.h.
Referenced by ClearNonDisplayedSubtitles(), Create(), DisplayAVSubtitles(), DisplayRawTextSubtitles(), DisplayTextSubtitles(), and EnableSubtitles().
CC608Reader* SubtitleScreen::m_608reader [private] |
Definition at line 87 of file subtitlescreen.h.
Referenced by ClearNonDisplayedSubtitles(), Create(), DisplayCC608Subtitles(), and EnableSubtitles().
CC708Reader* SubtitleScreen::m_708reader [private] |
Definition at line 88 of file subtitlescreen.h.
Referenced by ClearNonDisplayedSubtitles(), Create(), DisplayCC708Subtitles(), and EnableSubtitles().
QRect SubtitleScreen::m_safeArea [private] |
Definition at line 89 of file subtitlescreen.h.
Referenced by DisplayAVSubtitles(), DisplayCC608Subtitles(), DisplayCC708Subtitles(), DisplayDVDButton(), DisplayRawTextSubtitles(), DisplayScaledAVSubtitles(), DisplayTextSubtitles(), DrawTextSubtitles(), InitialiseAssTrack(), OptimiseDisplayedArea(), RenderAssTrack(), and ResizeAssRenderer().
QRegExp SubtitleScreen::m_removeHTML [private] |
Definition at line 90 of file subtitlescreen.h.
Referenced by SubtitleScreen().
int SubtitleScreen::m_subtitleType [private] |
Definition at line 91 of file subtitlescreen.h.
Referenced by ClearNonDisplayedSubtitles(), DisableForcedSubtitles(), DisplayAVSubtitles(), EnabledSubtitleType(), EnableSubtitles(), and Pulse().
QHash<MythUIType*, long long> SubtitleScreen::m_expireTimes [private] |
Definition at line 92 of file subtitlescreen.h.
Referenced by ClearDisplayedSubtitles(), DisplayScaledAVSubtitles(), ExpireSubtitles(), and RegisterExpiration().
QHash<MythUIType*, MythImage*> SubtitleScreen::m_avsubCache [private] |
Definition at line 93 of file subtitlescreen.h.
Referenced by ClearDisplayedSubtitles(), DisplayAVSubtitles(), DisplayScaledAVSubtitles(), and ExpireSubtitles().
int SubtitleScreen::m_fontSize [private] |
Definition at line 94 of file subtitlescreen.h.
Referenced by GetFont(), and SetFontSize().
int SubtitleScreen::m_textFontZoom [private] |
Definition at line 95 of file subtitlescreen.h.
Referenced by DisplayAVSubtitles(), DisplayCC608Subtitles(), DisplayCC708Subtitles(), DisplayScaledAVSubtitles(), DisplayTextSubtitles(), DrawTextSubtitles(), EnableSubtitles(), GetFont(), GetZoom(), Pulse(), and SetZoom().
int SubtitleScreen::m_textFontZoomPrev [private] |
Definition at line 96 of file subtitlescreen.h.
Referenced by DisplayAVSubtitles(), DisplayCC608Subtitles(), DisplayCC708Subtitles(), DisplayTextSubtitles(), EnableSubtitles(), and Pulse().
bool SubtitleScreen::m_refreshArea [private] |
Definition at line 97 of file subtitlescreen.h.
Referenced by AddScaledImage(), DisplayAVSubtitles(), DisplayCC608Subtitles(), DisplayCC708Subtitles(), DisplayScaledAVSubtitles(), DrawTextSubtitles(), OptimiseDisplayedArea(), Pulse(), and RenderAssTrack().
QHash<int,QList<MythUIType*> > SubtitleScreen::m_708imageCache [private] |
Definition at line 98 of file subtitlescreen.h.
Referenced by Clear708Cache(), and DisplayCC708Subtitles().
int SubtitleScreen::m_fontStretch [private] |
Definition at line 99 of file subtitlescreen.h.
Referenced by GetFont().
QString SubtitleScreen::m_family [private] |
Definition at line 100 of file subtitlescreen.h.
Referenced by DisplayCC608Subtitles(), DisplayCC708Subtitles(), DrawTextSubtitles(), EnableSubtitles(), GetFont(), and SetZoom().
class SubtitleFormat* SubtitleScreen::m_format [private] |
Definition at line 101 of file subtitlescreen.h.
Referenced by FormattedTextSubtitle::Draw(), GetFont(), and ~SubtitleScreen().
ASS_Library* SubtitleScreen::m_assLibrary [private] |
Definition at line 113 of file subtitlescreen.h.
Referenced by CleanupAssLibrary(), InitialiseAssLibrary(), InitialiseAssTrack(), LoadAssFonts(), and SubtitleScreen().
ASS_Renderer* SubtitleScreen::m_assRenderer [private] |
Definition at line 114 of file subtitlescreen.h.
Referenced by CleanupAssLibrary(), InitialiseAssLibrary(), RenderAssTrack(), ResizeAssRenderer(), and SubtitleScreen().
int SubtitleScreen::m_assTrackNum [private] |
Definition at line 115 of file subtitlescreen.h.
Referenced by InitialiseAssTrack(), and SubtitleScreen().
ASS_Track* SubtitleScreen::m_assTrack [private] |
Definition at line 116 of file subtitlescreen.h.
Referenced by AddAssEvent(), CleanupAssTrack(), ClearAllSubtitles(), InitialiseAssTrack(), RenderAssTrack(), and SubtitleScreen().
uint SubtitleScreen::m_assFontCount [private] |
Definition at line 117 of file subtitlescreen.h.
Referenced by CleanupAssLibrary(), LoadAssFonts(), and SubtitleScreen().
1.6.3