summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--HISTORY6
-rw-r--r--contrib/README-show-raw-digital-photo1
-rw-r--r--control-image.c19
-rw-r--r--control-image.h11
-rw-r--r--exif.c41
-rw-r--r--exif.h4
-rw-r--r--player-image.c1
7 files changed, 19 insertions, 64 deletions
diff --git a/HISTORY b/HISTORY
index cf18c2b..d1dc46d 100644
--- a/HISTORY
+++ b/HISTORY
@@ -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);
diff --git a/exif.c b/exif.c
index 1149e68..b326896 100644
--- a/exif.c
+++ b/exif.c
@@ -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;
}
//////////////////////////////////////////////////////////////////////////////
diff --git a/exif.h b/exif.h
index 868a320..1f494a6 100644
--- a/exif.h
+++ b/exif.h
@@ -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