diff options
-rw-r--r-- | HISTORY | 6 | ||||
-rw-r--r-- | contrib/README-show-raw-digital-photo | 1 | ||||
-rw-r--r-- | control-image.c | 19 | ||||
-rw-r--r-- | control-image.h | 11 | ||||
-rw-r--r-- | exif.c | 41 | ||||
-rw-r--r-- | exif.h | 4 | ||||
-rw-r--r-- | player-image.c | 1 |
7 files changed, 19 insertions, 64 deletions
@@ -1,6 +1,10 @@ VDR Plugin 'image' Revision History ----------------------------------- +2006-01-18 +- fix first image was'nt rotation depends founded exif data +- fix show vdr info screen via official vdr way + 2006-01-14 - now inital rotation depends founded exif data @@ -9,7 +13,7 @@ VDR Plugin 'image' Revision History 2006-01-12 - fix build failed without defined FFMDIR -- add exif support (required libexif) +- add exif support, show vdr info screen (required libexif) 2006-01-11 - fix wrong register_avcodec (Thanks to Peter Holik) diff --git a/contrib/README-show-raw-digital-photo b/contrib/README-show-raw-digital-photo index 08a8da7..9a75db5 100644 --- a/contrib/README-show-raw-digital-photo +++ b/contrib/README-show-raw-digital-photo @@ -3,3 +3,4 @@ This patch is use to show raw digital photo from many digital cameras. You will need build dcraw, from http://www.cybercom.net/~dcoffin/dcraw/ and patch for anytopnm with show-raw-digital-photo.patch +anytopnm comes from netpbm package. diff --git a/control-image.c b/control-image.c index aa11b4d..5f53a29 100644 --- a/control-image.c +++ b/control-image.c @@ -60,9 +60,6 @@ void cImageControl::SetSlideShow(cSlideShow * pNewSlideShow) cImageControl::cImageControl(cSlideShow * pNewSlideShow) : cControl(player = new cImagePlayer(pNewSlideShow)) , m_pCmdMenu(NULL) -#ifdef HAVE_LIBEXIF - , m_pExifMenu(NULL) -#endif , m_pDisplayReplay(NULL) { // Notity all cStatusMonitor @@ -82,6 +79,8 @@ cImageControl::cImageControl(cSlideShow * pNewSlideShow) m_nZoomFactor = 0; m_nRealImageWidth = 0; m_nRealImageHeight = 0; + + OriginalImage(false); } @@ -139,13 +138,6 @@ void cImageControl::HideOSD(void) m_pCmdMenu = NULL; } -#ifdef HAVE_LIBEXIF - if(m_pExifMenu) { - delete m_pExifMenu; - m_pExifMenu = NULL; - } -#endif - } ////////////////////////////////////////////////////////////////////////// /** Send Message if changed to any statusmonitor @@ -316,13 +308,6 @@ eOSState cImageControl::ProcessKey(eKeys nKey) { return ProcessKeyCommands(nKey); } -#ifdef HAVE_LIBEXIF - else if(m_pExifMenu - || (m_ePlayMode != ePlayModeJump && (nKey == kInfo))) - { - return ProcessKeyExif(nKey); - } -#endif else { switch(nKey) diff --git a/control-image.h b/control-image.h index 4e7d5bb..dd964b9 100644 --- a/control-image.h +++ b/control-image.h @@ -33,10 +33,6 @@ class cImagePlayer; class cImageMenuCommands; -#ifdef HAVE_LIBEXIF -class cImageMenuExif; -#endif - class cImageControl : public cControl { @@ -53,10 +49,7 @@ class cImageControl cImagePlayer *player; /** Interface to Menu with Usercommands*/ cImageMenuCommands *m_pCmdMenu; -#ifdef HAVE_LIBEXIF - /** Interface to Menu to show exif infomations*/ - cImageMenuExif *m_pExifMenu; -#endif + /** Current playing mode (Jump <-> Normal <-> Zoom) */ ePlayMode m_ePlayMode; /** Remember the active Slideshow mode before Jump or Zoom used */ @@ -144,7 +137,7 @@ private: eOSState ProcessKeyZoomMode(eKeys nKey); eOSState ProcessKeyCommands(eKeys nKey); #ifdef HAVE_LIBEXIF - eOSState ProcessKeyExif(eKeys nKey); + virtual cOsdObject *GetInfo(void); #endif void NextImage(int Step); @@ -105,11 +105,11 @@ cImageMenuExif::cImageMenuExif(const char *szFileName) } m_strText = o.str(); + SetHelp(NULL, NULL, NULL, tr("Back")); Display(); } - eOSState cImageMenuExif::ProcessKey(eKeys nKey) { switch (nKey) { @@ -146,40 +146,13 @@ void cImageMenuExif::Display(void) DisplayMenu()->SetText(m_strText.c_str(),true); } -////////////////////////////////////////////////////////////////////////////// -/** Handle a Key stroke on exifmenu -@return eOSState -@param eKeys Key - the processed Keycode -*/ -eOSState cImageControl::ProcessKeyExif(eKeys nKey) + +cOsdObject *cImageControl::GetInfo(void) { - if(m_pExifMenu) - { - eOSState eOSRet = m_pExifMenu->ProcessKey(nKey); - switch(eOSRet) - { - case osEnd: - case osBack: - delete m_pExifMenu; - m_pExifMenu = NULL; - return osContinue; - default: - return eOSRet; - } - } - else - { - if(!CheckAccess()) { - OSD_ErrorNumMsg(errno,tr("Operation failed")); - return osContinue; - } - - Hide(); - - m_pExifMenu = new cImageMenuExif(FileName()); - - return osContinue; - } + const char* szFile = FileName(); + if(szFile) + return new cImageMenuExif(szFile); + return NULL; } ////////////////////////////////////////////////////////////////////////////// @@ -34,8 +34,8 @@ class cImageMenuExif : public cOsdMenu protected: virtual void Display(void); public: - cImageMenuExif(const char *szFileName); - virtual eOSState ProcessKey(eKeys Key); + cImageMenuExif(const char *szFileName); + virtual eOSState ProcessKey(eKeys Key); }; enum ImageExifOrientation { diff --git a/player-image.c b/player-image.c index ebb2164..ae0c7f0 100644 --- a/player-image.c +++ b/player-image.c @@ -80,7 +80,6 @@ void cImagePlayer::Activate(bool bOn) if(theSlideShow.GetImage()) { cStillImagePlayer::Activate(bOn); - Convert(""); } } else |