Commit Graph

121 Commits

Author SHA1 Message Date
Klaus Schmidinger 4e46d2bb3b The width and height of the OSD are now limited to the actual maximum dimensions of the output device 2015-09-10 14:18:38 +02:00
Klaus Schmidinger 909e6c6249 Fixed a crash in cOsd::SetAreas() in case CreatePixmap() returns NULL 2015-03-25 08:57:05 +01:00
Klaus Schmidinger 735fb20ac6 Added cOsd::MaxPixmapSize() 2015-03-08 16:40:01 +01:00
Klaus Schmidinger 22106f6dd3 cOsd::RenderPixmaps() now returns a pointer to cPixmap instead of cPixmapMemory; a cPixmap with a negative layer no longer marks any portion of the OSD's view port as "dirty"; Added a missing initialization of "panning" to the constructor of cPixmapMemory 2015-02-11 09:48:02 +01:00
Klaus Schmidinger 66c65beea7 Added cOsdProvider::OsdSizeChanged() 2015-01-15 11:33:58 +01:00
Klaus Schmidinger fc0094231d Added cOsd::DrawScaledBitmap() 2015-01-04 15:53:47 +01:00
Klaus Schmidinger e8fb500819 Fixed displaying DVB subtitles (cont'd) 2013-09-06 12:37:27 +02:00
Klaus Schmidinger cc6c05fcf2 Fixed an endless loop in the DrawEllipse() functions for very small ellipses 2013-05-18 12:39:59 +02:00
Klaus Schmidinger 410968304c Fixed the return value of cOsdProvider::StoreImage() in case there is no OSD provider 2013-02-14 15:52:54 +01:00
Klaus Schmidinger b6b9a148c6 Now deleting any previously allocated pixmaps in cOsd::SetAreas() 2013-02-13 12:55:26 +01:00
Klaus Schmidinger 8ef71dbbdf Made cOsd::DestroyPixmap() "NULL proof" 2013-02-13 12:55:06 +01:00
Klaus Schmidinger 245ae52d36 There is no more fixed limit to the maximum number of cPixmap objects an OSD can create 2013-02-08 10:29:32 +01:00
Klaus Schmidinger cfb62845ec Fixed upscaling bitmaps 2013-01-24 11:42:15 +01:00
Klaus Schmidinger 40bfe40368 Fixed cOsd::GetBitmap() to always return NULL if a non-exising area is requested 2012-12-15 11:57:16 +01:00
Klaus Schmidinger c020b708a5 Fixed several spelling errors 2012-06-09 14:40:26 +02:00
Klaus Schmidinger 2de28295fc Now making sure that the "small font" is never larger than the "osd font" 2012-06-02 13:35:54 +02:00
Klaus Schmidinger 41b1160f01 The new function RgbShade() (include osd.h) can be used to generate a brighter or darker version of a given color 2012-06-02 10:44:24 +02:00
Klaus Schmidinger c1ddc63fda Implemented taBorder alignment flag 2012-05-17 16:38:50 +02:00
Klaus Schmidinger 1f5cf1db58 Fixed cPixmapMemory::DrawEllipse() for quadrants -1 and -4 2012-03-28 10:43:15 +02:00
Klaus Schmidinger 55f0978c32 Added some missing member initializations in cBitmap 2012-03-05 10:34:49 +01:00
Klaus Schmidinger 78c1fee7f8 Now checking for NULL in cOsd::AddPixmap() 2012-03-03 13:25:22 +01:00
Klaus Schmidinger 1e3f6d6da2 Replaced min(max()) calls with the new function constrain() 2012-03-02 10:51:46 +01:00
Klaus Schmidinger a3d37dfc71 Fixed upscaling cBitmaps with anti-aliasing 2012-02-22 17:15:31 +01:00
Klaus Schmidinger fc4bed511d Added a mutex to protect cOsd::Osds from simultaneous access from different threads 2011-08-15 09:37:54 +02:00
Klaus Schmidinger 40278ec121 Added some missing braces 2011-05-22 15:18:59 +02:00
Klaus Schmidinger 914b04c1d2 Fixed handling the bitmap color depth for scaled subtitles 2011-04-17 14:40:58 +02:00
Klaus Schmidinger 08d5ad047a Renamed cBitmap::Scale() to Scaled() 2011-03-27 11:54:07 +02:00
Klaus Schmidinger 8768a9c321 Added anti-aliasing when upscaling bitmaps 2011-03-27 11:50:17 +02:00
Klaus Schmidinger 06a16e7fba Added a missing 'default' case in cPixmapMemory::DrawEllipse() 2011-03-13 13:53:08 +01:00
Klaus Schmidinger 2bd17596a0 The original display size of subtitles is now used to scale them properly when displaying them on an HD OSD 2011-03-12 16:08:08 +01:00
Klaus Schmidinger cd3c26b815 Fixed rendering pixmaps in case there is more than one dirty rectangle 2011-02-27 11:57:37 +01:00
Klaus Schmidinger 8253754cc3 Improved alpha blending 2011-02-27 10:14:43 +01:00
Klaus Schmidinger 0b8356aa92 Improved and cleaned up transparent text drawing 2011-02-26 12:13:59 +01:00
Klaus Schmidinger e145ee45e2 Optimization in AlphaBlend() 2011-02-20 21:35:48 +01:00
Klaus Schmidinger 6c7089afd2 Implemented support for TrueColor OSD 2011-02-20 15:12:56 +01:00
Klaus Schmidinger c8cc3a6e36 Fixed inclusion of <stdarg.h> 2010-12-24 11:34:11 +01:00
Klaus Schmidinger c19c63530e Fixed handling "none" color entries in XPM files 2010-05-02 13:59:11 +02:00
Klaus Schmidinger eb394c68f1 cPalette::ClosestColor() now treats fully transparent colors as "equal"; improved cDvbSpuBitmap::getMinBpp() (cont'd) 2010-01-22 15:58:39 +01:00
Klaus Schmidinger 40bb2f21e0 cPalette::ClosestColor() now treats fully transparent colors as "equal"; improved cDvbSpuBitmap::getMinBpp() 2010-01-17 13:48:44 +01:00
Klaus Schmidinger 27939266f1 Added plain text error messages to log entries from cOsd::SetAreas() 2010-01-17 13:32:12 +01:00
Klaus Schmidinger 6a208294be Several code modifications to avoid compiler warnings 2009-12-06 12:57:45 +01:00
Klaus Schmidinger bf543736b6 Implemented cSetup::OSDAspect 2009-05-09 10:42:35 +02:00
Klaus Schmidinger f936db2ac6 Implemented cDevice::GetOsdSize(); fixed the way the OSD size is determined on full featured DVB cards 2009-05-09 10:11:16 +02:00
Klaus Schmidinger f161d1b2fe OSD sizes in percent; automatic update of OSD size 2009-05-03 14:15:21 +02:00
Klaus Schmidinger 9ff445dce4 Added missing virtual destructor to cPalette 2009-04-05 10:20:58 +02:00
Klaus Schmidinger 329d7da4ec Added some missing 'const' statements to cBitmap 2009-01-16 14:39:27 +01:00
Klaus Schmidinger 0c8cda9bd0 Implemented handling DVB subtitles 2007-10-12 14:52:30 +02:00
Klaus Schmidinger a80915ff22 There can now be more than one OSD at the same time 2007-08-26 09:58:10 +02:00
Klaus Schmidinger 48da9ba9c8 Changed cBitmap::DrawText() to always draw the background unless ColorBg is clrTransparent 2007-08-17 15:31:18 +02:00
Klaus Schmidinger dbcc517354 cBitmap::SetXpm() now checks whether the given Xpm pointer is not NULL 2007-08-12 11:36:14 +02:00