[vlc-commits] Win32: drop support for old versions of mingw that don't have Win7 APIs

Jean-Baptiste Kempf git at videolan.org
Fri Feb 5 19:24:57 CET 2016


vlc | branch: master | Jean-Baptiste Kempf <jb at videolan.org> | Fri Feb  5 19:22:45 2016 +0100| [22fb930e25f438c036fd6c45f456c612cd41ce6b] | committer: Jean-Baptiste Kempf

Win32: drop support for old versions of mingw that don't have Win7 APIs

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=22fb930e25f438c036fd6c45f456c612cd41ce6b
---

 include/vlc_windows_interfaces.h                  |  231 ---------------------
 modules/gui/qt4/components/simple_preferences.cpp |    2 +-
 modules/gui/qt4/main_interface.hpp                |    8 +-
 modules/gui/qt4/main_interface_win32.cpp          |    1 -
 modules/video_output/msw/common.c                 |    3 +-
 src/Makefile.am                                   |    1 -
 6 files changed, 6 insertions(+), 240 deletions(-)

diff --git a/include/vlc_windows_interfaces.h b/include/vlc_windows_interfaces.h
deleted file mode 100644
index af6a7f5..0000000
--- a/include/vlc_windows_interfaces.h
+++ /dev/null
@@ -1,231 +0,0 @@
-/*****************************************************************************
- * vlc_windows_interfaces.h : Replacement for incomplete MinGW headers
- ****************************************************************************
- *
- * Copyright (C) 2009-2010 VideoLAN
- *
- * Authors: Geoffroy Couprie <geal at videolan.org>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2.1 of the License, 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 Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
- *****************************************************************************/
-
-#ifndef MINGW_WORKAROUNDS_H
-#define MINGW_WORKAROUNDS_H
-
-#ifdef __MINGW32__
-# include <_mingw.h>
-
-#ifdef __MINGW64_VERSION_MAJOR /* mingw.org lacks this header */
-# include <shobjidl.h>
-#endif
-
-#include <commctrl.h>
-#include <basetyps.h>
-#include <objbase.h>
-
-/* rpcndr.h defines small not only for idl */
-#undef small
-
-/* mingw.org fails to define this */
-#ifndef __ITaskbarList3_INTERFACE_DEFINED__
-#define __ITaskbarList3_INTERFACE_DEFINED__
-const GUID CLSID_TaskbarList ={ 0x56FDF344,0xFD6D,0x11d0,{0x95,0x8A,0x00,0x60,0x97,0xC9,0xA0,0x90}};
-const GUID IID_ITaskbarList3 = { 0xea1afb91,0x9e28,0x4b86,{0x90,0xe9,0x9e,0x9f,0x8a,0x5e,0xef,0xaf}};
-
-
-typedef enum TBPFLAG
-{
-    TBPF_NOPROGRESS    = 0,
-    TBPF_INDETERMINATE = 0x1,
-    TBPF_NORMAL        = 0x2,
-    TBPF_ERROR         = 0x4,
-    TBPF_PAUSED        = 0x8
-} TBPFLAG;
-
-typedef struct tagTHUMBBUTTON
-{
-    DWORD dwMask;
-    UINT iId;
-    UINT iBitmap;
-    HICON hIcon;
-    //    WCHAR pszTip[ 260 ];
-    wchar_t pszTip[ 260 ];
-    DWORD dwFlags;
-} THUMBBUTTON;
-
-typedef struct tagTHUMBBUTTON *LPTHUMBBUTTON;
-
-typedef enum THUMBBUTTONMASK {
-    THB_BITMAP  = 0x1,
-    THB_ICON    = 0x2,
-    THB_TOOLTIP = 0x4,
-    THB_FLAGS   = 0x8
-} THUMBBUTTONMASK;
-
-typedef enum THUMBBUTTONFLAGS {
-    THBF_ENABLED        = 0x0,
-    THBF_DISABLED       = 0x1,
-    THBF_DISMISSONCLICK = 0x2,
-    THBF_NOBACKGROUND   = 0x4,
-    THBF_HIDDEN         = 0x8,
-    THBF_NONINTERACTIVE = 0x10
-} THUMBBUTTONFLAGS;
-
-#ifdef __cplusplus
-interface ITaskbarList : public IUnknown {
-public:
-    virtual HRESULT WINAPI HrInit(void) = 0;
-    virtual HRESULT WINAPI AddTab(HWND hwnd) = 0;
-    virtual HRESULT WINAPI DeleteTab(HWND hwnd) = 0;
-    virtual HRESULT WINAPI ActivateTab(HWND hwnd) = 0;
-    virtual HRESULT WINAPI SetActiveAlt(HWND hwnd) = 0;
-};
-
-interface ITaskbarList2 : public ITaskbarList {
-public:
-    virtual HRESULT WINAPI MarkFullscreenWindow(HWND hwnd,WINBOOL fFullscreen) = 0;
-};
-
-interface ITaskbarList3 : public ITaskbarList2
-{
-    virtual HRESULT STDMETHODCALLTYPE SetProgressValue(
-        HWND hwnd,
-        ULONGLONG ullCompleted,
-        ULONGLONG ullTotal) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE SetProgressState(
-        HWND hwnd,
-        TBPFLAG tbpFlags) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE RegisterTab(
-        HWND hwndTab,
-        HWND hwndMDI) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE UnregisterTab(
-        HWND hwndTab) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE SetTabOrder(
-        HWND hwndTab,
-        HWND hwndInsertBefore) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE SetTabActive(
-        HWND hwndTab,
-        HWND hwndMDI,
-        DWORD dwReserved) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE ThumbBarAddButtons(
-        HWND hwnd,
-        UINT cButtons,
-        LPTHUMBBUTTON pButton) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE ThumbBarUpdateButtons(
-        HWND hwnd,
-        UINT cButtons,
-        LPTHUMBBUTTON pButton) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE ThumbBarSetImageList(
-        HWND hwnd,
-        HIMAGELIST himl) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE SetOverlayIcon(
-        HWND hwnd,
-        HICON hIcon,
-        LPCWSTR pszDescription) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE SetThumbnailTooltip(
-        HWND hwnd,
-        LPCWSTR pszTip) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE SetThumbnailClip(
-        HWND hwnd,
-        RECT *prcClip) = 0;
-
-};
-
-#else /* !__cplusplus */
-
-struct ITaskbarList3Vtbl;
-struct ITaskbarList3 { struct ITaskbarList3Vtbl* lpVtbl; };
-typedef struct ITaskbarList3 ITaskbarList3;
-
-struct ITaskbarList3Vtbl
-{
-
-    long ( WINAPI *QueryInterface )(ITaskbarList3 * This, REFIID riid, void **ppvObject);
-
-    long ( WINAPI *AddRef )(ITaskbarList3 *This);
-
-    long ( WINAPI *Release )(ITaskbarList3 *This);
-
-    long ( WINAPI *HrInit )(ITaskbarList3 *This);
-
-    long ( WINAPI *AddTab )(ITaskbarList3 *This, HWND hwnd);
-
-    long ( WINAPI *DeleteTab )(ITaskbarList3 *This, HWND hwnd);
-
-    long ( WINAPI *ActivateTab )(ITaskbarList3 *This, HWND hwnd);
-
-    long ( WINAPI *SetActiveAlt )(ITaskbarList3 *This, HWND hwnd);
-
-    long ( WINAPI *MarkFullscreenWindow )(ITaskbarList3 *This, HWND hwnd,
-        BOOL fFullscreen);
-
-    long ( WINAPI *SetProgressValue )(ITaskbarList3 *This, HWND hwnd,
-        ULONGLONG ullCompleted, ULONGLONG ullTotal);
-
-    long ( WINAPI *SetProgressState )(ITaskbarList3 *This, HWND hwnd,
-        TBPFLAG tbpFlags);
-
-    long ( WINAPI *RegisterTab )( ITaskbarList3 *This, HWND hwndTab, HWND hwndMDI);
-
-    long ( WINAPI *UnregisterTab )(ITaskbarList3 *This, HWND hwndTab);
-
-    long ( WINAPI *SetTabOrder )(ITaskbarList3 *This, HWND hwndTab,
-        HWND hwndInsertBefore);
-
-    long ( WINAPI *SetTabActive )(ITaskbarList3 *This, HWND hwndTab,
-        HWND hwndMDI, DWORD dwReserved);
-
-    long ( WINAPI *ThumbBarAddButtons )(ITaskbarList3 *This, HWND hwnd,
-        UINT cButtons, LPTHUMBBUTTON pButton);
-
-    long ( WINAPI *ThumbBarUpdateButtons )(ITaskbarList3 *This, HWND hwnd,
-        UINT cButtons, LPTHUMBBUTTON pButton);
-
-    long ( WINAPI *ThumbBarSetImageList )(ITaskbarList3 *This, HWND hwnd,
-        HIMAGELIST himl);
-
-    long ( WINAPI *SetOverlayIcon )(ITaskbarList3 *This, HWND hwnd,
-        HICON hIcon, LPCWSTR pszDescription);
-
-    long ( WINAPI *SetThumbnailTooltip )(ITaskbarList3 *This, HWND hwnd,
-        LPCWSTR pszTip);
-
-    long ( WINAPI *SetThumbnailClip )(ITaskbarList3 *This, HWND hwnd,
-        RECT *prcClip);
-
-};
-
-#endif /* __cplusplus */
-#endif /* __ITaskbarList3_INTERFACE_DEFINED__ */
-
-/* mingw-w64 also fails to define these as of 2.0.1 */
-
-#ifndef THBN_CLICKED
-# define THBN_CLICKED        0x1800
-#endif
-
-#endif /* __MINGW32__ */
-#endif //MINGW_WORKAROUNDS_H
diff --git a/modules/gui/qt4/components/simple_preferences.cpp b/modules/gui/qt4/components/simple_preferences.cpp
index 6a6bedc..3f38e0e 100644
--- a/modules/gui/qt4/components/simple_preferences.cpp
+++ b/modules/gui/qt4/components/simple_preferences.cpp
@@ -50,8 +50,8 @@
 #define ICON_HEIGHT 48
 
 #ifdef _WIN32
-# include <vlc_windows_interfaces.h>
 # include <vlc_charset.h>
+# include <shobjidl.h>
 #endif
 #include <vlc_modules.h>
 
diff --git a/modules/gui/qt4/main_interface.hpp b/modules/gui/qt4/main_interface.hpp
index 6c6945b..502bb09 100644
--- a/modules/gui/qt4/main_interface.hpp
+++ b/modules/gui/qt4/main_interface.hpp
@@ -29,13 +29,13 @@
 
 #include "util/qvlcframe.hpp"
 
-#ifdef _WIN32
- #include <vlc_windows_interfaces.h>
-#endif
-
 #include <QSystemTrayIcon>
 #include <QStackedWidget>
 
+#ifdef _WIN32
+# include <shobjidl.h>
+#endif
+
 class QSettings;
 class QCloseEvent;
 class QKeyEvent;
diff --git a/modules/gui/qt4/main_interface_win32.cpp b/modules/gui/qt4/main_interface_win32.cpp
index 62dca68..7deb702 100644
--- a/modules/gui/qt4/main_interface_win32.cpp
+++ b/modules/gui/qt4/main_interface_win32.cpp
@@ -30,7 +30,6 @@
 #include "components/interface_widgets.hpp"
 
 #include <QBitmap>
-#include <vlc_windows_interfaces.h>
 
 #include <assert.h>
 
diff --git a/modules/video_output/msw/common.c b/modules/video_output/msw/common.c
index 71a79e7..d3bd117 100644
--- a/modules/video_output/msw/common.c
+++ b/modules/video_output/msw/common.c
@@ -39,11 +39,10 @@
 #include <assert.h>
 
 #define COBJMACROS
+#include <shobjidl.h>
 
 #include "common.h"
 
-#include <vlc_windows_interfaces.h>
-
 static void CommonChangeThumbnailClip(vout_display_t *, bool show);
 #if !VLC_WINSTORE_APP
 static int  CommonControlSetFullscreen(vout_display_t *, bool is_fullscreen);
diff --git a/src/Makefile.am b/src/Makefile.am
index 1ad6c7f..c21dd78 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -115,7 +115,6 @@ noinst_HEADERS = \
 	../include/vlc_update.h \
 	../include/vlc_vod.h \
 	../include/vlc_vout_wrapper.h \
-	../include/vlc_windows_interfaces.h \
 	$(NULL)
 
 ../include/vlc_about.h: Makefile.am $(top_srcdir)/COPYING $(top_srcdir)/THANKS $(top_srcdir)/AUTHORS



More information about the vlc-commits mailing list