aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Op den Kamp <lars@opdenkamp.eu>2011-01-10 19:35:18 +0100
committerLars Op den Kamp <lars@opdenkamp.eu>2011-01-10 19:35:18 +0100
commit84d889efa1a6d41c2c3c48569a83d846e3fcf014 (patch)
tree213636827ea5ee0f065d5d378437125246321ef7
parent7222d40f99bac414147c880be2f0aa3f0c9d7249 (diff)
parent4476b2df112bfa69abe6e142346c574016371b58 (diff)
Merge remote branch 'upstream/master'
Conflicts: .gitignore
-rw-r--r--.gitignore3
-rw-r--r--addons/skin.confluence/language/Chinese (Simple)/strings.xml4
-rw-r--r--guilib/Key.h2
-rw-r--r--language/English/strings.xml4
-rw-r--r--project/VS2010Express/guilib.vcxproj9
-rw-r--r--project/VS2010Express/update_git_rev.bat40
-rw-r--r--project/VS2010Express/update_svn_rev.bat46
-rw-r--r--project/Win32BuildSetup/GetSvnInfo.bat12
-rw-r--r--xbmc/ButtonTranslator.cpp2
-rw-r--r--xbmc/FileSystem/DllLibCMyth.h3
-rw-r--r--xbmc/FileSystem/MythSession.cpp17
-rw-r--r--xbmc/FileSystem/MythSession.h1
-rw-r--r--xbmc/GUIDialogVideoSettings.cpp6
-rw-r--r--xbmc/GUIWindowFullScreen.cpp29
-rw-r--r--xbmc/Settings.cpp2
-rw-r--r--xbmc/Settings.h1
-rw-r--r--xbmc/VideoDatabase.cpp17
-rw-r--r--xbmc/VideoDatabase.h2
-rw-r--r--xbmc/cores/VideoRenderers/BaseRenderer.cpp22
-rw-r--r--xbmc/cores/VideoRenderers/BaseRenderer.h2
-rw-r--r--xbmc/lib/cmyth/include/cmyth/cmyth.h6
-rw-r--r--xbmc/lib/cmyth/include/debug.h14
-rw-r--r--xbmc/lib/cmyth/libcmyth/debug.c6
-rw-r--r--xbmc/lib/cmyth/librefmem/debug_refmem.c1
-rw-r--r--xbmc/lib/libhdhomerun/hdhomerun/hdhomerun.vcxproj8
-rw-r--r--xbmc/settings/VideoSettings.cpp2
-rw-r--r--xbmc/settings/VideoSettings.h1
-rw-r--r--xbmc/utils/TextSearch.h58
-rw-r--r--xbmc/win32/PlatformInclude.h6
-rw-r--r--xbmc/win32/git_rev.tmpl (renamed from xbmc/win32/svn_rev_git.tmpl)9
-rw-r--r--xbmc/win32/svn_rev.tmpl29
31 files changed, 211 insertions, 153 deletions
diff --git a/.gitignore b/.gitignore
index 39e79e21ef..293da460fd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1243,5 +1243,4 @@ autom4te.cache
/xbmc/visualizations/XBMCProjectM/libprojectM/cmake_install.cmake
/xbmc/visualizations/XBMCProjectM/libprojectM/config.inp
-/xbmc/win32/svn_rev.h
-
+/xbmc/win32/git_rev.h
diff --git a/addons/skin.confluence/language/Chinese (Simple)/strings.xml b/addons/skin.confluence/language/Chinese (Simple)/strings.xml
index 6af86925a7..d2853f62a6 100644
--- a/addons/skin.confluence/language/Chinese (Simple)/strings.xml
+++ b/addons/skin.confluence/language/Chinese (Simple)/strings.xml
@@ -69,8 +69,8 @@
<string id="31115">自定义</string>
<string id="31116"></string>
<string id="31117">显示最新加入视频</string>
- <string id="31118">主页面程序子菜单</string>
- <string id="31119"></string>
+ <string id="31118">主界面程序子菜单</string>
+ <string id="31119">隐藏同人画背景</string>
<string id="31120">按钮标签</string>
<string id="31121"></string>
<string id="31122">天气页面</string>
diff --git a/guilib/Key.h b/guilib/Key.h
index c58f6e80d4..ffc7a7ccbc 100644
--- a/guilib/Key.h
+++ b/guilib/Key.h
@@ -287,6 +287,8 @@
#define ACTION_GESTURE_ROTATE 224
#define ACTION_GESTURE_PAN 225
#define ACTION_GESTURE_END 226
+#define ACTION_VSHIFT_UP 227 // shift up video image in DVDPlayer
+#define ACTION_VSHIFT_DOWN 228 // shift down video image in DVDPlayer
#define ACTION_PLAYER_PLAYPAUSE 227 // Play/pause. If playing it pauses, if paused it plays.
diff --git a/language/English/strings.xml b/language/English/strings.xml
index 0c8694af3b..e6930af9fd 100644
--- a/language/English/strings.xml
+++ b/language/English/strings.xml
@@ -193,7 +193,7 @@
<string id="221">Network is not connected</string>
<string id="222">Cancel</string>
<string id="224">Speed</string>
-
+ <string id="225">Vertical Shift</string>
<string id="226">Test patterns...</string>
<string id="227">Lookup audio CD track names from freedb.org</string>
<string id="228">Shuffle playlist on load</string>
@@ -213,7 +213,7 @@
<string id="242">Windowed</string>
<string id="243">Refresh Rate</string>
<string id="244">Full screen</string>
- <string id="245">Sizing: (%i,%i)->(%i,%i) (Zoom x%2.2f) AR:%2.2f:1 (Pixels: %2.2f:1)</string>
+ <string id="245">Sizing: (%i,%i)->(%i,%i) (Zoom x%2.2f) AR:%2.2f:1 (Pixels: %2.2f:1) (VShift: %2.2f)</string>
<string id="247">Scripts</string>
<string id="248">Language</string>
diff --git a/project/VS2010Express/guilib.vcxproj b/project/VS2010Express/guilib.vcxproj
index 586a9b9913..422457d6a9 100644
--- a/project/VS2010Express/guilib.vcxproj
+++ b/project/VS2010Express/guilib.vcxproj
@@ -409,10 +409,13 @@
<ClInclude Include="..\..\guilib\LocalizeStrings.h" />
<ClInclude Include="..\..\xbmc\win32\pch.h" />
<CustomBuild Include="..\..\xbmc\win32\PlatformInclude.h">
- <Command Condition="'$(Configuration)|$(Platform)'=='Release (DirectX)|Win32'">update_svn_rev.bat
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release (DirectX)|Win32'">update_git_rev.bat
</Command>
- <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release (DirectX)|Win32'">..\..\svn\entries;%(AdditionalInputs)</AdditionalInputs>
- <Outputs Condition="'$(Configuration)|$(Platform)'=='Release (DirectX)|Win32'">..\..\xbmc\win32\svn_rev.h;%(Outputs)</Outputs>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release (DirectX)|Win32'">..\..\.git\HEAD;..\..\xbmc\win32\git_rev.tmpl</AdditionalInputs>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release (DirectX)|Win32'">..\..\xbmc\win32\git_rev.h;%(Outputs)</Outputs>
+ <Command Condition="'$(Configuration)|$(Platform)'=='Release (OpenGL)|Win32'">update_git_rev.bat</Command>
+ <Outputs Condition="'$(Configuration)|$(Platform)'=='Release (OpenGL)|Win32'">..\..\xbmc\win32\git_rev.h;%(Outputs)</Outputs>
+ <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release (OpenGL)|Win32'">..\..\.git\HEAD;..\..\xbmc\win32\git_rev.tmpl</AdditionalInputs>
</CustomBuild>
<ClInclude Include="..\..\guilib\Shader.h" />
<ClInclude Include="..\..\guilib\StdString.h" />
diff --git a/project/VS2010Express/update_git_rev.bat b/project/VS2010Express/update_git_rev.bat
new file mode 100644
index 0000000000..869a15815f
--- /dev/null
+++ b/project/VS2010Express/update_git_rev.bat
@@ -0,0 +1,40 @@
+@echo off
+
+SET TEMPLATE=..\..\xbmc\win32\git_rev.tmpl
+SET REV_FILE=..\..\xbmc\win32\git_rev.h
+IF EXIST %REV_FILE% (
+ del %REV_FILE%
+)
+
+rem Use tgit.exe of TortoiseGit if available
+SET GITEXE="tgit.exe"
+%GITEXE% --version > NUL 2>&1
+if errorlevel 1 goto :notgit
+GOTO :extract
+
+:notgit
+
+rem Fallback on msysgit, which must have been added manually to the path.
+SET GITEXE="git.exe"
+%GITEXE% --help > NUL 2>&1
+if errorlevel 1 goto :nogit
+GOTO :extract
+
+:nogit
+
+rem Failure - no git tool to extract information.
+SET GIT_REV=Unknown
+GOTO :extracted
+
+:extract
+
+set oldCurrentDir=%CD%
+cd ..\..
+FOR /F "tokens=1 delims= " %%A IN ('%GITEXE% rev-parse --short HEAD') DO SET GIT_REV=%%A
+cd %oldCurrentDir%
+
+:extracted
+
+copy "%TEMPLATE%" "%REV_FILE%"
+
+echo #define GIT_REV "%GIT_REV%" >> %REV_FILE%
diff --git a/project/VS2010Express/update_svn_rev.bat b/project/VS2010Express/update_svn_rev.bat
deleted file mode 100644
index 707f9fef37..0000000000
--- a/project/VS2010Express/update_svn_rev.bat
+++ /dev/null
@@ -1,46 +0,0 @@
-@echo off
-rem subwcrev is included in the tortoise svn client: http://tortoisesvn.net/downloads
-SET REV_FILE=..\..\xbmc\win32\svn_rev.h
-IF EXIST %REV_FILE% (
- del %REV_FILE%
-)
-
-IF EXIST "..\..\.svn" (
- subwcrev ../.. ../../xbmc/win32/svn_rev.tmpl %REV_FILE%
- goto :eof
-)
-
-SetLocal EnableDelayedExpansion
-
-set oldCurrentDir=%CD%
-IF EXIST "..\..\.git" (
- cd ..\..
- FOR /F "delims=: skip=8 tokens=2*" %%a IN ('git svn info') DO (call :set_var %%a %%b)
-)
-chdir /d %oldCurrentDir%
-
-copy "..\..\xbmc\win32\svn_rev_git.tmpl" "%REV_FILE%"
-
-if "%REV%"=="" set REV=Unknown
-if "%REV_DATE%"=="" set REV_DATE=Unknown
-
-echo #define SVN_REV "%REV%" >> %REV_FILE%
-echo #define SVN_DATE "%REV_DATE%" >> %REV_FILE%
-
-echo #endif >> %REV_FILE%
-
-goto :eof
-
-:set_var
-IF "%REV%"=="" (
- SET REV=%1
-) ELSE IF "%REV_DATE%"=="" (
- call :set_var_2 %1 %2 %3 %4 %5 %6 %7 %8
-)
-goto :eof
-
-:set_var_2
-SET REV_DATE=%1 %2:%3 %4 %5, %6 %7 %8^)
-goto :eof
-
-:eof \ No newline at end of file
diff --git a/project/Win32BuildSetup/GetSvnInfo.bat b/project/Win32BuildSetup/GetSvnInfo.bat
deleted file mode 100644
index daf9935376..0000000000
--- a/project/Win32BuildSetup/GetSvnInfo.bat
+++ /dev/null
@@ -1,12 +0,0 @@
-@ECHO OFF
-SET target=none
-FOR %%b in (%1, %2) DO (
- IF %%b==revision SET target=revision
- IF %%b==branch SET target=branch
-)
-
-IF %target%==branch (
- FOR /f "tokens=2* delims=]" %%a in ('find /v /n "&_&_&_&" ".svn\entries" ^| FIND "[5]"') DO ECHO %%~NaXa
-) ELSE (
- IF %target%==revision (FOR /F "Tokens=2* Delims=]" %%R IN ('FIND /v /n "&_&_&_&" ".svn\entries" ^| FIND "[11]"') DO ECHO %%R)
-)
diff --git a/xbmc/ButtonTranslator.cpp b/xbmc/ButtonTranslator.cpp
index c2fcf857d2..95026a6238 100644
--- a/xbmc/ButtonTranslator.cpp
+++ b/xbmc/ButtonTranslator.cpp
@@ -95,6 +95,8 @@ static const ActionMapping actions[] =
{"audiodelay" , ACTION_AUDIO_DELAY},
{"audiodelayplus" , ACTION_AUDIO_DELAY_PLUS},
{"audionextlanguage" , ACTION_AUDIO_NEXT_LANGUAGE},
+ {"verticalshiftup" , ACTION_VSHIFT_UP},
+ {"verticalshiftdown" , ACTION_VSHIFT_DOWN},
{"nextresolution" , ACTION_CHANGE_RESOLUTION},
{"audiotoggledigital", ACTION_TOGGLE_DIGITAL_ANALOG},
{"number0" , REMOTE_0},
diff --git a/xbmc/FileSystem/DllLibCMyth.h b/xbmc/FileSystem/DllLibCMyth.h
index 5817aae543..940778a2a9 100644
--- a/xbmc/FileSystem/DllLibCMyth.h
+++ b/xbmc/FileSystem/DllLibCMyth.h
@@ -125,6 +125,7 @@ public:
virtual void ref_release (void* ptr)=0;
virtual void* ref_hold (void* ptr)=0;
virtual void dbg_level (int l)=0;
+ virtual void set_dbg_msgcallback (void (*msgcb)(int l, char *m))=0;
virtual time_t timestamp_to_unixtime (cmyth_timestamp_t ts)=0;
virtual int timestamp_compare (cmyth_timestamp_t ts1, cmyth_timestamp_t ts2)=0;
@@ -231,6 +232,7 @@ class DllLibCMyth : public DllDynamic, DllLibCMythInterface
DEFINE_METHOD1(void, ref_release, (void* p1))
DEFINE_METHOD1(void*, ref_hold, (void* p1))
DEFINE_METHOD1(void, dbg_level, (int p1))
+ DEFINE_METHOD1(void, set_dbg_msgcallback, (void (*p1)(int l, char *m)))
DEFINE_METHOD1(time_t, timestamp_to_unixtime, (cmyth_timestamp_t p1))
DEFINE_METHOD2(int, timestamp_compare, (cmyth_timestamp_t p1, cmyth_timestamp_t p2))
@@ -330,6 +332,7 @@ class DllLibCMyth : public DllDynamic, DllLibCMythInterface
RESOLVE_METHOD(ref_release)
RESOLVE_METHOD(ref_hold)
RESOLVE_METHOD_RENAME(cmyth_dbg_level, dbg_level)
+ RESOLVE_METHOD_RENAME(cmyth_set_dbg_msgcallback, set_dbg_msgcallback)
RESOLVE_METHOD_RENAME(cmyth_timestamp_to_unixtime, timestamp_to_unixtime)
RESOLVE_METHOD_RENAME(cmyth_timestamp_compare, timestamp_compare)
diff --git a/xbmc/FileSystem/MythSession.cpp b/xbmc/FileSystem/MythSession.cpp
index 00a6c8f778..a856744f46 100644
--- a/xbmc/FileSystem/MythSession.cpp
+++ b/xbmc/FileSystem/MythSession.cpp
@@ -372,6 +372,7 @@ CMythSession::CMythSession(const CURL& url)
m_dll->Load();
if (m_dll->IsLoaded())
{
+ m_dll->set_dbg_msgcallback(&CMythSession::LogCMyth);
if (g_advancedSettings.m_logLevel >= LOG_LEVEL_DEBUG_SAMBA)
m_dll->dbg_level(CMYTH_DBG_ALL);
else if (g_advancedSettings.m_logLevel >= LOG_LEVEL_DEBUG)
@@ -582,3 +583,19 @@ cmyth_proglist_t CMythSession::GetAllRecordedPrograms(bool force)
}
return m_all_recorded;
}
+
+void CMythSession::LogCMyth(int level, char *msg)
+{
+ int xbmc_lvl = -1;
+ switch (level)
+ {
+ case CMYTH_DBG_NONE: break;
+ case CMYTH_DBG_ERROR: xbmc_lvl = LOGERROR; break;
+ case CMYTH_DBG_WARN: xbmc_lvl = LOGWARNING; break;
+ case CMYTH_DBG_INFO: xbmc_lvl = LOGINFO; break;
+ default: xbmc_lvl = LOGDEBUG; break;
+ }
+ if (xbmc_lvl >= 0) {
+ CLog::Log(xbmc_lvl, "%s", msg);
+ }
+}
diff --git a/xbmc/FileSystem/MythSession.h b/xbmc/FileSystem/MythSession.h
index 0ccdeee83a..c6c7d0cf90 100644
--- a/xbmc/FileSystem/MythSession.h
+++ b/xbmc/FileSystem/MythSession.h
@@ -47,6 +47,7 @@ public:
static CMythSession* AquireSession(const CURL& url);
static void ReleaseSession(CMythSession*);
static void CheckIdle();
+ static void LogCMyth(int level, char *msg);
class IEventListener
{
diff --git a/xbmc/GUIDialogVideoSettings.cpp b/xbmc/GUIDialogVideoSettings.cpp
index f762fcb1a2..7a8843c059 100644
--- a/xbmc/GUIDialogVideoSettings.cpp
+++ b/xbmc/GUIDialogVideoSettings.cpp
@@ -65,6 +65,7 @@ CGUIDialogVideoSettings::~CGUIDialogVideoSettings(void)
#define VIDEO_SETTINGS_NONLIN_STRETCH 21
#define VIDEO_SETTINGS_POSTPROCESS 22
+#define VIDEO_SETTINGS_VERTICAL_SHIFT 23
void CGUIDialogVideoSettings::CreateSettings()
{
@@ -136,6 +137,7 @@ void CGUIDialogVideoSettings::CreateSettings()
AddSpin(VIDEO_SETTINGS_VIEW_MODE, 629, &g_settings.m_currentVideoSettings.m_ViewMode, 7, entries);
}
AddSlider(VIDEO_SETTINGS_ZOOM, 216, &g_settings.m_currentVideoSettings.m_CustomZoomAmount, 0.5f, 0.01f, 2.0f, FormatFloat);
+ AddSlider(VIDEO_SETTINGS_VERTICAL_SHIFT, 225, &g_settings.m_currentVideoSettings.m_CustomVerticalShift, -2.0f, 0.01f, 2.0f, FormatFloat);
AddSlider(VIDEO_SETTINGS_PIXEL_RATIO, 217, &g_settings.m_currentVideoSettings.m_CustomPixelRatio, 0.5f, 0.01f, 2.0f, FormatFloat);
AddBool(VIDEO_SETTINGS_POSTPROCESS, 16400, &g_settings.m_currentVideoSettings.m_PostProcess);
@@ -172,9 +174,11 @@ void CGUIDialogVideoSettings::OnSettingChanged(SettingInfo &setting)
UpdateSetting(VIDEO_SETTINGS_ZOOM);
UpdateSetting(VIDEO_SETTINGS_PIXEL_RATIO);
UpdateSetting(VIDEO_SETTINGS_NONLIN_STRETCH);
+ UpdateSetting(VIDEO_SETTINGS_VERTICAL_SHIFT);
}
else if (setting.id == VIDEO_SETTINGS_ZOOM || setting.id == VIDEO_SETTINGS_PIXEL_RATIO
- || setting.id == VIDEO_SETTINGS_NONLIN_STRETCH)
+ || setting.id == VIDEO_SETTINGS_NONLIN_STRETCH
+ || setting.id == VIDEO_SETTINGS_VERTICAL_SHIFT)
{
g_settings.m_currentVideoSettings.m_ViewMode = VIEW_MODE_CUSTOM;
g_renderManager.SetViewMode(VIEW_MODE_CUSTOM);
diff --git a/xbmc/GUIWindowFullScreen.cpp b/xbmc/GUIWindowFullScreen.cpp
index 9565ffc5d5..058911dc4c 100644
--- a/xbmc/GUIWindowFullScreen.cpp
+++ b/xbmc/GUIWindowFullScreen.cpp
@@ -533,6 +533,28 @@ bool CGUIWindowFullScreen::OnAction(const CAction &action)
}
return true;
break;
+ case ACTION_VSHIFT_UP:
+ {
+ g_settings.m_currentVideoSettings.m_CustomVerticalShift -= 0.01f;
+ if (g_settings.m_currentVideoSettings.m_CustomVerticalShift < -2.0f)
+ g_settings.m_currentVideoSettings.m_CustomVerticalShift = -2.0f;
+ g_settings.m_currentVideoSettings.m_ViewMode = VIEW_MODE_CUSTOM;
+ g_renderManager.SetViewMode(VIEW_MODE_CUSTOM);
+ ShowSlider(action.GetID(), 225, g_settings.m_currentVideoSettings.m_CustomVerticalShift, -2.0f, 0.1f, 2.0f);
+ }
+ return true;
+ break;
+ case ACTION_VSHIFT_DOWN:
+ {
+ g_settings.m_currentVideoSettings.m_CustomVerticalShift += 0.01f;
+ if (g_settings.m_currentVideoSettings.m_CustomVerticalShift > 2.0f)
+ g_settings.m_currentVideoSettings.m_CustomVerticalShift = 2.0f;
+ g_settings.m_currentVideoSettings.m_ViewMode = VIEW_MODE_CUSTOM;
+ g_renderManager.SetViewMode(VIEW_MODE_CUSTOM);
+ ShowSlider(action.GetID(), 225, g_settings.m_currentVideoSettings.m_CustomVerticalShift, -2.0f, 0.1f, 2.0f);
+ }
+ return true;
+ break;
default:
break;
}
@@ -849,7 +871,9 @@ void CGUIWindowFullScreen::FrameMove()
CStdString strSizing;
strSizing.Format(g_localizeStrings.Get(245),
(int)SrcRect.Width(), (int)SrcRect.Height(),
- (int)DestRect.Width(), (int)DestRect.Height(), g_settings.m_fZoomAmount, fAR*g_settings.m_fPixelRatio, g_settings.m_fPixelRatio);
+ (int)DestRect.Width(), (int)DestRect.Height(),
+ g_settings.m_fZoomAmount, fAR*g_settings.m_fPixelRatio,
+ g_settings.m_fPixelRatio, g_settings.m_fVerticalShift);
CGUIMessage msg(GUI_MSG_LABEL_SET, GetID(), LABEL_ROW2);
msg.SetLabel(strSizing);
OnMessage(msg);
@@ -1075,7 +1099,8 @@ void CGUIWindowFullScreen::OnSliderChange(void *data, CGUISliderControl *slider)
return;
if (m_sliderAction == ACTION_ZOOM_OUT || m_sliderAction == ACTION_ZOOM_IN ||
- m_sliderAction == ACTION_INCREASE_PAR || m_sliderAction == ACTION_DECREASE_PAR)
+ m_sliderAction == ACTION_INCREASE_PAR || m_sliderAction == ACTION_DECREASE_PAR ||
+ m_sliderAction == ACTION_VSHIFT_UP || m_sliderAction == ACTION_VSHIFT_DOWN)
{
CStdString strValue;
strValue.Format("%1.2f",slider->GetFloatValue());
diff --git a/xbmc/Settings.cpp b/xbmc/Settings.cpp
index 09a9c11ed7..b8469f51b0 100644
--- a/xbmc/Settings.cpp
+++ b/xbmc/Settings.cpp
@@ -700,6 +700,7 @@ bool CSettings::LoadSettings(const CStdString& strSettingsFile)
GetInteger(pElement, "viewmode", m_defaultVideoSettings.m_ViewMode, VIEW_MODE_NORMAL, VIEW_MODE_NORMAL, VIEW_MODE_CUSTOM);
GetFloat(pElement, "zoomamount", m_defaultVideoSettings.m_CustomZoomAmount, 1.0f, 0.5f, 2.0f);
GetFloat(pElement, "pixelratio", m_defaultVideoSettings.m_CustomPixelRatio, 1.0f, 0.5f, 2.0f);
+ GetFloat(pElement, "verticalshift", m_defaultVideoSettings.m_CustomVerticalShift, 0.0f, -2.0f, 2.0f);
GetFloat(pElement, "volumeamplification", m_defaultVideoSettings.m_VolumeAmplification, VOLUME_DRC_MINIMUM * 0.01f, VOLUME_DRC_MINIMUM * 0.01f, VOLUME_DRC_MAXIMUM * 0.01f);
GetFloat(pElement, "noisereduction", m_defaultVideoSettings.m_NoiseReduction, 0.0f, 0.0f, 1.0f);
XMLUtils::GetBoolean(pElement, "postprocess", m_defaultVideoSettings.m_PostProcess);
@@ -870,6 +871,7 @@ bool CSettings::SaveSettings(const CStdString& strSettingsFile, CGUISettings *lo
XMLUtils::SetInt(pNode, "viewmode", m_defaultVideoSettings.m_ViewMode);
XMLUtils::SetFloat(pNode, "zoomamount", m_defaultVideoSettings.m_CustomZoomAmount);
XMLUtils::SetFloat(pNode, "pixelratio", m_defaultVideoSettings.m_CustomPixelRatio);
+ XMLUtils::SetFloat(pNode, "verticalshift", m_defaultVideoSettings.m_CustomVerticalShift);
XMLUtils::SetFloat(pNode, "volumeamplification", m_defaultVideoSettings.m_VolumeAmplification);
XMLUtils::SetBoolean(pNode, "outputtoallspeakers", m_defaultVideoSettings.m_OutputToAllSpeakers);
XMLUtils::SetBoolean(pNode, "showsubtitles", m_defaultVideoSettings.m_SubtitleOn);
diff --git a/xbmc/Settings.h b/xbmc/Settings.h
index 0184d3ffda..017ff162d7 100644
--- a/xbmc/Settings.h
+++ b/xbmc/Settings.h
@@ -192,6 +192,7 @@ public:
float m_fZoomAmount; // current zoom amount
float m_fPixelRatio; // current pixel ratio
+ float m_fVerticalShift; // current vertical shift
bool m_bNonLinStretch; // current non-linear stretch
bool m_bMyVideoPlaylistRepeat;
diff --git a/xbmc/VideoDatabase.cpp b/xbmc/VideoDatabase.cpp
index aeb773d7c7..25c9a54141 100644
--- a/xbmc/VideoDatabase.cpp
+++ b/xbmc/VideoDatabase.cpp
@@ -107,7 +107,7 @@ bool CVideoDatabase::CreateTables()
CLog::Log(LOGINFO, "create settings table");
m_pDS->exec("CREATE TABLE settings ( idFile integer, Deinterlace bool,"
- "ViewMode integer,ZoomAmount float, PixelRatio float, AudioStream integer, SubtitleStream integer,"
+ "ViewMode integer,ZoomAmount float, PixelRatio float, VerticalShift float, AudioStream integer, SubtitleStream integer,"
"SubtitleDelay float, SubtitlesOn bool, Brightness float, Contrast float, Gamma float,"
"VolumeAmplification float, AudioDelay float, OutputToAllSpeakers bool, ResumeTime integer, Crop bool, CropLeft integer,"
"CropRight integer, CropTop integer, CropBottom integer, Sharpness float, NoiseReduction float, NonLinStretch bool, PostProcess bool)\n");
@@ -2925,6 +2925,7 @@ bool CVideoDatabase::GetVideoSettings(const CStdString &strFilenameAndPath, CVid
settings.m_PostProcess = m_pDS->fv("PostProcess").get_asBool();
settings.m_Sharpness = m_pDS->fv("Sharpness").get_asFloat();
settings.m_CustomZoomAmount = m_pDS->fv("ZoomAmount").get_asFloat();
+ settings.m_CustomVerticalShift = m_pDS->fv("VerticalShift").get_asFloat();
settings.m_Gamma = m_pDS->fv("Gamma").get_asFloat();
settings.m_SubtitleDelay = m_pDS->fv("SubtitleDelay").get_asFloat();
settings.m_SubtitleOn = m_pDS->fv("SubtitlesOn").get_asBool();
@@ -2969,10 +2970,10 @@ void CVideoDatabase::SetVideoSettings(const CStdString& strFilenameAndPath, cons
{
m_pDS->close();
// update the item
- strSQL=PrepareSQL("update settings set Deinterlace=%i,ViewMode=%i,ZoomAmount=%f,PixelRatio=%f,"
+ strSQL=PrepareSQL("update settings set Deinterlace=%i,ViewMode=%i,ZoomAmount=%f,PixelRatio=%f,VerticalShift=%f,"
"AudioStream=%i,SubtitleStream=%i,SubtitleDelay=%f,SubtitlesOn=%i,Brightness=%f,Contrast=%f,Gamma=%f,"
"VolumeAmplification=%f,AudioDelay=%f,OutputToAllSpeakers=%i,Sharpness=%f,NoiseReduction=%f,NonLinStretch=%i,PostProcess=%i,",
- setting.m_InterlaceMethod, setting.m_ViewMode, setting.m_CustomZoomAmount, setting.m_CustomPixelRatio,
+ setting.m_InterlaceMethod, setting.m_ViewMode, setting.m_CustomZoomAmount, setting.m_CustomPixelRatio, setting.m_CustomVerticalShift,
setting.m_AudioStream, setting.m_SubtitleStream, setting.m_SubtitleDelay, setting.m_SubtitleOn,
setting.m_Brightness, setting.m_Contrast, setting.m_Gamma, setting.m_VolumeAmplification, setting.m_AudioDelay,
setting.m_OutputToAllSpeakers,setting.m_Sharpness,setting.m_NoiseReduction,setting.m_CustomNonLinStretch,setting.m_PostProcess);
@@ -2985,14 +2986,14 @@ void CVideoDatabase::SetVideoSettings(const CStdString& strFilenameAndPath, cons
else
{ // add the items
m_pDS->close();
- strSQL= "INSERT INTO settings (idFile,Deinterlace,ViewMode,ZoomAmount,PixelRatio,"
+ strSQL= "INSERT INTO settings (idFile,Deinterlace,ViewMode,ZoomAmount,PixelRatio, VerticalShift, "
"AudioStream,SubtitleStream,SubtitleDelay,SubtitlesOn,Brightness,"
"Contrast,Gamma,VolumeAmplification,AudioDelay,OutputToAllSpeakers,"
"ResumeTime,Crop,CropLeft,CropRight,CropTop,CropBottom,"
"Sharpness,NoiseReduction,NonLinStretch,PostProcess) "
"VALUES ";
- strSQL += PrepareSQL("(%i,%i,%i,%f,%f,%i,%i,%f,%i,%f,%f,%f,%f,%f,%i,%i,%i,%i,%i,%i,%i,%f,%f,%i,%i)",
- idFile, setting.m_InterlaceMethod, setting.m_ViewMode, setting.m_CustomZoomAmount, setting.m_CustomPixelRatio,
+ strSQL += PrepareSQL("(%i,%i,%i,%f,%f,%f,%i,%i,%f,%i,%f,%f,%f,%f,%f,%i,%i,%i,%i,%i,%i,%i,%f,%f,%i,%i)",
+ idFile, setting.m_InterlaceMethod, setting.m_ViewMode, setting.m_CustomZoomAmount, setting.m_CustomPixelRatio, setting.m_CustomVerticalShift,
setting.m_AudioStream, setting.m_SubtitleStream, setting.m_SubtitleDelay, setting.m_SubtitleOn, setting.m_Brightness,
setting.m_Contrast, setting.m_Gamma, setting.m_VolumeAmplification, setting.m_AudioDelay, setting.m_OutputToAllSpeakers,
setting.m_ResumeTime, setting.m_Crop, setting.m_CropLeft, setting.m_CropRight, setting.m_CropTop, setting.m_CropBottom,
@@ -3331,6 +3332,10 @@ bool CVideoDatabase::UpdateOldVersion(int iVersion)
{
m_pDS->exec("DELETE FROM streamdetails"); //Roll the stream details as changed from minutes to seconds
}
+ if (iVersion < 43)
+ {
+ m_pDS->exec("ALTER table settings add VerticalShift float");
+ }
}
catch (...)
{
diff --git a/xbmc/VideoDatabase.h b/xbmc/VideoDatabase.h
index ccc6b034e0..1201548cc7 100644
--- a/xbmc/VideoDatabase.h
+++ b/xbmc/VideoDatabase.h
@@ -622,7 +622,7 @@ protected:
private:
virtual bool CreateTables();
virtual bool UpdateOldVersion(int version);
- virtual int GetMinVersion() const { return 42; };
+ virtual int GetMinVersion() const { return 43; };
const char *GetDefaultDBName() const { return "MyVideos34.db"; };
void ConstructPath(CStdString& strDest, const CStdString& strPath, const CStdString& strFileName);
diff --git a/xbmc/cores/VideoRenderers/BaseRenderer.cpp b/xbmc/cores/VideoRenderers/BaseRenderer.cpp
index 4082d257b2..087f1d1cf7 100644
--- a/xbmc/cores/VideoRenderers/BaseRenderer.cpp
+++ b/xbmc/cores/VideoRenderers/BaseRenderer.cpp
@@ -21,6 +21,7 @@
#include "system.h"
+#include <algorithm>
#include "BaseRenderer.h"
#include "Settings.h"
#include "GUISettings.h"
@@ -250,7 +251,7 @@ void CBaseRenderer::GetVideoRect(CRect &source, CRect &dest)
dest = m_destRect;
}
-void CBaseRenderer::CalcNormalDisplayRect(float offsetX, float offsetY, float screenWidth, float screenHeight, float inputFrameRatio, float zoomAmount)
+void CBaseRenderer::CalcNormalDisplayRect(float offsetX, float offsetY, float screenWidth, float screenHeight, float inputFrameRatio, float zoomAmount, float verticalShift)
{
// if view window is empty, set empty destination
if(screenHeight == 0 || screenWidth == 0)
@@ -292,6 +293,20 @@ void CBaseRenderer::CalcNormalDisplayRect(float offsetX, float offsetY, float sc
float posY = (screenHeight - newHeight) / 2;
float posX = (screenWidth - newWidth) / 2;
+ // vertical shift range -1 to 1 shifts within the top and bottom black bars
+ // if there are no top and bottom black bars, this range does nothing
+ float blackBarSize = std::max((screenHeight - newHeight) / 2.0f, 0.0f);
+ posY += blackBarSize * std::max(std::min(verticalShift, 1.0f), -1.0f);
+
+ // vertical shift ranges -2 to -1 and 1 to 2 will shift the image out of the screen
+ // if vertical shift is -2 it will be completely shifted out the top,
+ // if it's 2 it will be completely shifted out the bottom
+ float shiftRange = std::min(newHeight, newHeight - (newHeight - screenHeight) / 2.0f);
+ if (verticalShift > 1.0f)
+ posY += shiftRange * (verticalShift - 1.0f);
+ else if (verticalShift < -1.0f)
+ posY += shiftRange * (verticalShift + 1.0f);
+
m_destRect.x1 = (float)MathUtils::round_int(posX + offsetX);
m_destRect.x2 = m_destRect.x1 + MathUtils::round_int(newWidth);
m_destRect.y1 = (float)MathUtils::round_int(posY + offsetY);
@@ -390,7 +405,7 @@ void CBaseRenderer::ManageDisplay()
m_sourceRect.x2 = (float)m_sourceWidth - g_settings.m_currentVideoSettings.m_CropRight;
m_sourceRect.y2 = (float)m_sourceHeight - g_settings.m_currentVideoSettings.m_CropBottom;
- CalcNormalDisplayRect(view.x1, view.y1, view.Width(), view.Height(), GetAspectRatio() * g_settings.m_fPixelRatio, g_settings.m_fZoomAmount);
+ CalcNormalDisplayRect(view.x1, view.y1, view.Width(), view.Height(), GetAspectRatio() * g_settings.m_fPixelRatio, g_settings.m_fZoomAmount, g_settings.m_fVerticalShift);
}
void CBaseRenderer::SetViewMode(int viewMode)
@@ -410,6 +425,7 @@ void CBaseRenderer::SetViewMode(int viewMode)
bool is43 = (sourceFrameRatio < 8.f/(3.f*sqrt(3.f)) &&
g_settings.m_currentVideoSettings.m_ViewMode == VIEW_MODE_NORMAL);
+ g_settings.m_fVerticalShift = 0.0f;
g_settings.m_bNonLinStretch = false;
if ( g_settings.m_currentVideoSettings.m_ViewMode == VIEW_MODE_ZOOM ||
@@ -489,6 +505,7 @@ void CBaseRenderer::SetViewMode(int viewMode)
g_settings.m_fZoomAmount = g_settings.m_currentVideoSettings.m_CustomZoomAmount;
g_settings.m_fPixelRatio = g_settings.m_currentVideoSettings.m_CustomPixelRatio;
g_settings.m_bNonLinStretch = g_settings.m_currentVideoSettings.m_CustomNonLinStretch;
+ g_settings.m_fVerticalShift = g_settings.m_currentVideoSettings.m_CustomVerticalShift;
}
else // if (g_settings.m_currentVideoSettings.m_ViewMode == VIEW_MODE_NORMAL)
{
@@ -499,4 +516,5 @@ void CBaseRenderer::SetViewMode(int viewMode)
g_settings.m_currentVideoSettings.m_CustomZoomAmount = g_settings.m_fZoomAmount;
g_settings.m_currentVideoSettings.m_CustomPixelRatio = g_settings.m_fPixelRatio;
g_settings.m_currentVideoSettings.m_CustomNonLinStretch = g_settings.m_bNonLinStretch;
+ g_settings.m_currentVideoSettings.m_CustomVerticalShift = g_settings.m_fVerticalShift;
}
diff --git a/xbmc/cores/VideoRenderers/BaseRenderer.h b/xbmc/cores/VideoRenderers/BaseRenderer.h
index 5490238d25..8029242f46 100644
--- a/xbmc/cores/VideoRenderers/BaseRenderer.h
+++ b/xbmc/cores/VideoRenderers/BaseRenderer.h
@@ -67,7 +67,7 @@ protected:
void FindResolutionFromFpsMatch(float fps, float& weight);
RESOLUTION FindClosestResolution(float fps, float multiplier, RESOLUTION current, float& weight);
float RefreshWeight(float refresh, float fps);
- void CalcNormalDisplayRect(float offsetX, float offsetY, float screenWidth, float screenHeight, float inputFrameRatio, float zoomAmount);
+ void CalcNormalDisplayRect(float offsetX, float offsetY, float screenWidth, float screenHeight, float inputFrameRatio, float zoomAmount, float verticalShift);
void CalculateFrameAspectRatio(unsigned int desired_width, unsigned int desired_height);
void ManageDisplay();
diff --git a/xbmc/lib/cmyth/include/cmyth/cmyth.h b/xbmc/lib/cmyth/include/cmyth/cmyth.h
index 68ddf7494c..ca24853ac2 100644
--- a/xbmc/lib/cmyth/include/cmyth/cmyth.h
+++ b/xbmc/lib/cmyth/include/cmyth/cmyth.h
@@ -197,6 +197,12 @@ extern void cmyth_dbg_none(void);
*/
extern void cmyth_dbg(int level, char *fmt, ...);
+/**
+ * Define a callback to use to send messages rather than using stderr
+ * \param msgcb function pointer to pass a string to
+ */
+extern void cmyth_set_dbg_msgcallback(void (*msgcb)(char *));
+
/*
* -----------------------------------------------------------------
* Connection Operations
diff --git a/xbmc/lib/cmyth/include/debug.h b/xbmc/lib/cmyth/include/debug.h
index 5f3e9ca6cd..72c863a0cf 100644
--- a/xbmc/lib/cmyth/include/debug.h
+++ b/xbmc/lib/cmyth/include/debug.h
@@ -12,6 +12,7 @@ typedef struct {
char *name;
int cur_level;
int (*selector)(int plevel, int slevel);
+ void (*msg_callback)(int level, char *msg);
} mvp_debug_ctx_t;
/**
@@ -21,7 +22,7 @@ typedef struct {
* \param l initial debug level for the subsystem
* \param s custom selector function pointer (NULL is okay)
*/
-#define MVP_DEBUG_CTX_INIT(n,l,s) { n, l, s }
+#define MVP_DEBUG_CTX_INIT(n,l,s) { n, l, s, NULL }
/**
* Set the debug level to be used for the subsystem
@@ -47,13 +48,20 @@ mvp_dbg_setlevel(mvp_debug_ctx_t *ctx, int level)
static inline void
mvp_dbg(mvp_debug_ctx_t *ctx, int level, char *fmt, va_list ap)
{
+ char msg[4096];
+ int len;
if (!ctx) {
return;
}
if ((ctx->selector && ctx->selector(level, ctx->cur_level)) ||
(!ctx->selector && (level < ctx->cur_level))) {
- fprintf(stderr, "(%s)", ctx->name);
- vfprintf(stderr, fmt, ap);
+ len = snprintf(msg, sizeof(msg), "(%s)", ctx->name);
+ vsnprintf(msg + len, sizeof(msg)-len, fmt, ap);
+ if (ctx->msg_callback) {
+ ctx->msg_callback(level, msg);
+ } else {
+ fwrite(msg, strlen(msg), 1, stdout);
+ }
}
}
diff --git a/xbmc/lib/cmyth/libcmyth/debug.c b/xbmc/lib/cmyth/libcmyth/debug.c
index e8c8849e44..37bbfcc05c 100644
--- a/xbmc/lib/cmyth/libcmyth/debug.c
+++ b/xbmc/lib/cmyth/libcmyth/debug.c
@@ -114,3 +114,9 @@ cmyth_dbg(int level, char *fmt, ...)
mvp_dbg(&cmyth_debug_ctx, level, fmt, ap);
va_end(ap);
}
+
+void
+cmyth_set_dbg_msgcallback(void (*msgcb)(char *))
+{
+ cmyth_debug_ctx.msg_callback = msgcb;
+}
diff --git a/xbmc/lib/cmyth/librefmem/debug_refmem.c b/xbmc/lib/cmyth/librefmem/debug_refmem.c
index 8b7853e062..f7338fa51d 100644
--- a/xbmc/lib/cmyth/librefmem/debug_refmem.c
+++ b/xbmc/lib/cmyth/librefmem/debug_refmem.c
@@ -26,6 +26,7 @@
#include <stdlib.h>
#include <stdarg.h>
#include <refmem_local.h>
+#include <cmyth_local.h>
#include "debug.h"
diff --git a/xbmc/lib/libhdhomerun/hdhomerun/hdhomerun.vcxproj b/xbmc/lib/libhdhomerun/hdhomerun/hdhomerun.vcxproj
index 0562b5dee6..751b320a6c 100644
--- a/xbmc/lib/libhdhomerun/hdhomerun/hdhomerun.vcxproj
+++ b/xbmc/lib/libhdhomerun/hdhomerun/hdhomerun.vcxproj
@@ -43,8 +43,8 @@
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)libs\$(ProjectName)\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)objs\$(ProjectName)\$(Configuration)\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\</IntDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)libs\$(ProjectName)\$(Configuration)\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)objs\$(ProjectName)\$(Configuration)\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
@@ -111,13 +111,13 @@
<AdditionalDependencies>ws2_32.lib;Iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>Release\$(TargetName).pdb</ProgramDatabaseFile>
+ <ProgramDatabaseFile>$(OutDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ProfileGuidedDatabase>
</ProfileGuidedDatabase>
- <ImportLibrary>Release\$(TargetName).lib</ImportLibrary>
+ <ImportLibrary>$(OutDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
<CustomBuildStep>
diff --git a/xbmc/settings/VideoSettings.cpp b/xbmc/settings/VideoSettings.cpp
index 2f49f47c69..eae20168d7 100644
--- a/xbmc/settings/VideoSettings.cpp
+++ b/xbmc/settings/VideoSettings.cpp
@@ -37,6 +37,7 @@ CVideoSettings::CVideoSettings()
m_ViewMode = VIEW_MODE_NORMAL;
m_CustomZoomAmount = 1.0f;
m_CustomPixelRatio = 1.0f;
+ m_CustomVerticalShift = 0.0f;
m_CustomNonLinStretch = false;
m_AudioStream = -1;
m_SubtitleStream = -1;
@@ -67,6 +68,7 @@ bool CVideoSettings::operator!=(const CVideoSettings &right) const
if (m_ViewMode != right.m_ViewMode) return true;
if (m_CustomZoomAmount != right.m_CustomZoomAmount) return true;
if (m_CustomPixelRatio != right.m_CustomPixelRatio) return true;
+ if (m_CustomVerticalShift != right.m_CustomVerticalShift) return true;
if (m_CustomNonLinStretch != right.m_CustomNonLinStretch) return true;
if (m_AudioStream != right.m_AudioStream) return true;
if (m_SubtitleStream != right.m_SubtitleStream) return true;
diff --git a/xbmc/settings/VideoSettings.h b/xbmc/settings/VideoSettings.h
index 32cafc5efe..b1ef2152ff 100644
--- a/xbmc/settings/VideoSettings.h
+++ b/xbmc/settings/VideoSettings.h
@@ -88,6 +88,7 @@ public:
int m_ViewMode; // current view mode
float m_CustomZoomAmount; // custom setting zoom amount
float m_CustomPixelRatio; // custom setting pixel ratio
+ float m_CustomVerticalShift; // custom setting vertical shift
bool m_CustomNonLinStretch;
int m_AudioStream;
float m_VolumeAmplification;
diff --git a/xbmc/utils/TextSearch.h b/xbmc/utils/TextSearch.h
index 90bc639f5b..cfcade6feb 100644
--- a/xbmc/utils/TextSearch.h
+++ b/xbmc/utils/TextSearch.h
@@ -1,33 +1,33 @@
-#pragma once
-/*
- * Copyright (C) 2005-2009 Team XBMC
- * http://www.xbmc.org
- *
- * This Program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
- * any later version.
- *
- * This Program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with XBMC; see the file COPYING. If not, write to
- * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
- * http://www.gnu.org/copyleft/gpl.html
- *
- */
+#pragma once
+/*
+ * Copyright (C) 2005-2009 Team XBMC
+ * http://www.xbmc.org
+ *
+ * This Program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This Program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with XBMC; see the file COPYING. If not, write to
+ * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ */
#include <vector>
#include "StringUtils.h"
-
-class cTextSearch
-{
-public:
+
+class cTextSearch
+{
+public:
cTextSearch(void);
- cTextSearch(CStdString text, CStdString searchText, bool caseSensitive);
+ cTextSearch(CStdString text, CStdString searchText, bool caseSensitive);
virtual ~cTextSearch(void);
void SetText(CStdString text, CStdString searchText, bool caseSensitive);
@@ -43,6 +43,6 @@ private:
std::vector<CStdString> m_AND;
std::vector<CStdString> m_OR;
std::vector<CStdString> m_NOT;
- bool m_CaseSensitive;
-};
-
+ bool m_CaseSensitive;
+};
+
diff --git a/xbmc/win32/PlatformInclude.h b/xbmc/win32/PlatformInclude.h
index c61f23a68e..3c045509ee 100644
--- a/xbmc/win32/PlatformInclude.h
+++ b/xbmc/win32/PlatformInclude.h
@@ -22,9 +22,9 @@
*
*/
-//#if !defined(_DEBUG) && _MSC_VER >= 1500
-//#include "svn_rev.h" //generated file
-//#endif
+#if !defined(_DEBUG) && _MSC_VER >= 1500
+#include "git_rev.h" //generated file
+#endif
#include <errno.h> // for ENOENT and EINVAL
#include "PlatformDefs.h"
diff --git a/xbmc/win32/svn_rev_git.tmpl b/xbmc/win32/git_rev.tmpl
index 7b3feb8ffc..4d2c8aba3e 100644
--- a/xbmc/win32/svn_rev_git.tmpl
+++ b/xbmc/win32/git_rev.tmpl
@@ -1,8 +1,5 @@
-#ifndef __SVN_REV__H__
-#define __SVN_REV__H__
-
/*
- * Copyright (C) 2005-2008 Team XBMC
+ * Copyright (C) 2011 Team XBMC
* http://www.xbmc.org
*
* This Program is free software; you can redistribute it and/or modify
@@ -22,5 +19,7 @@
*
*/
-#undef SVN_REV
+#pragma once
+
+#undef GIT_REV
diff --git a/xbmc/win32/svn_rev.tmpl b/xbmc/win32/svn_rev.tmpl
deleted file mode 100644
index 46e9c704c8..0000000000
--- a/xbmc/win32/svn_rev.tmpl
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef __SVN_REV__H__
-#define __SVN_REV__H__
-
-/*
- * Copyright (C) 2005-2008 Team XBMC
- * http://www.xbmc.org
- *
- * This Program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
- * any later version.
- *
- * This Program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with XBMC; see the file COPYING. If not, write to
- * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
- * http://www.gnu.org/copyleft/gpl.html
- *
- */
-
-#undef SVN_REV
-#define SVN_REV "$WCREV$"
-#define SVN_DATE "$WCDATE$"
-
-#endif