#include "input_manager.hpp"
#include "actions_manager.hpp"
+#include "dialogs_provider.hpp"
#include <QBitmap>
#include <vlc_windows_interfaces.h>
#define APPCOMMAND_MICROPHONE_VOLUME_MUTE 24
#define APPCOMMAND_MICROPHONE_VOLUME_DOWN 25
#define APPCOMMAND_MICROPHONE_VOLUME_UP 26
+#define APPCOMMAND_HELP 27
+#define APPCOMMAND_OPEN 30
#define APPCOMMAND_DICTATE_OR_COMMAND_CONTROL_TOGGLE 43
#define APPCOMMAND_MIC_ON_OFF_TOGGLE 44
#define APPCOMMAND_MEDIA_PLAY 46
void MainInterface::createTaskBarButtons()
{
- taskbar_wmsg = WM_NULL;
/*Here is the code for the taskbar thumb buttons
FIXME:We need pretty buttons in 16x16 px that are handled correctly by masks in Qt
FIXME:the play button's picture doesn't changed to pause when clicked
*/
- CoInitialize( 0 );
+ CoInitializeEx( NULL, COINIT_MULTITHREADED );
- if( S_OK == CoCreateInstance( &clsid_ITaskbarList,
+ if( S_OK == CoCreateInstance( CLSID_TaskbarList,
NULL, CLSCTX_INPROC_SERVER,
IID_ITaskbarList3,
(void **)&p_taskbl) )
{
- p_taskbl->vt->HrInit(p_taskbl);
+ p_taskbl->HrInit();
- if( (himl = ImageList_Create( 20, //cx
- 20, //cy
+ if( (himl = ImageList_Create( 16, //cx
+ 16, //cy
ILC_COLOR32,//flags
4,//initial nb of images
0//nb of images that can be added
QBitmap mask4 = img4.createMaskFromColor(Qt::transparent);
if(-1 == ImageList_Add(himl, img.toWinHBITMAP(QPixmap::PremultipliedAlpha),mask.toWinHBITMAP()))
- msg_Err( p_intf, "ImageList_Add failed" );
+ msg_Err( p_intf, "First ImageList_Add failed" );
if(-1 == ImageList_Add(himl, img2.toWinHBITMAP(QPixmap::PremultipliedAlpha),mask2.toWinHBITMAP()))
- msg_Err( p_intf, "ImageList_Add failed" );
+ msg_Err( p_intf, "Second ImageList_Add failed" );
if(-1 == ImageList_Add(himl, img3.toWinHBITMAP(QPixmap::PremultipliedAlpha),mask3.toWinHBITMAP()))
- msg_Err( p_intf, "ImageList_Add failed" );
+ msg_Err( p_intf, "Third ImageList_Add failed" );
if(-1 == ImageList_Add(himl, img4.toWinHBITMAP(QPixmap::PremultipliedAlpha),mask4.toWinHBITMAP()))
- msg_Err( p_intf, "ImageList_Add failed" );
+ msg_Err( p_intf, "Fourth ImageList_Add failed" );
}
// Define an array of two buttons. These buttons provide images through an
// image list and also provide tooltips.
- DWORD dwMask = THB_BITMAP | THB_FLAGS;
+ THUMBBUTTONMASK dwMask = THUMBBUTTONMASK(THB_BITMAP | THB_FLAGS);
THUMBBUTTON thbButtons[3];
thbButtons[0].dwMask = dwMask;
thbButtons[2].iBitmap = 3;
thbButtons[2].dwFlags = THBF_HIDDEN;
- HRESULT hr = p_taskbl->vt->ThumbBarSetImageList(p_taskbl, winId(), himl );
+ HRESULT hr = p_taskbl->ThumbBarSetImageList(winId(), himl );
if(S_OK != hr)
msg_Err( p_intf, "ThumbBarSetImageList failed with error %08lx", hr );
else
{
- hr = p_taskbl->vt->ThumbBarAddButtons(p_taskbl, winId(), 3, thbButtons);
+ hr = p_taskbl->ThumbBarAddButtons(winId(), 3, thbButtons);
if(S_OK != hr)
msg_Err( p_intf, "ThumbBarAddButtons failed with error %08lx", hr );
}
case APPCOMMAND_VOLUME_MUTE:
THEAM->toggleMuteAudio();
break;
+ case APPCOMMAND_MEDIA_FAST_FORWARD:
+ THEMIM->getIM()->faster();
+ break;
+ case APPCOMMAND_MEDIA_REWIND:
+ THEMIM->getIM()->slower();
+ break;
+ case APPCOMMAND_HELP:
+ THEDP->mediaInfoDialog();
+ break;
+ case APPCOMMAND_OPEN:
+ THEDP->simpleOpenDialog();
+ break;
default:
msg_Dbg( p_intf, "unknown APPCOMMAND = %d", cmd);
*result = FALSE;
// Define an array of three buttons. These buttons provide images through an
// image list and also provide tooltips.
- DWORD dwMask = THB_BITMAP | THB_FLAGS;
+ THUMBBUTTONMASK dwMask = THUMBBUTTONMASK(THB_BITMAP | THB_FLAGS);
THUMBBUTTON thbButtons[3];
//prev
default:
return;
}
- HRESULT hr = p_taskbl->vt->ThumbBarUpdateButtons(p_taskbl, this->winId(), 3, thbButtons);
+ HRESULT hr = p_taskbl->ThumbBarUpdateButtons(this->winId(), 3, thbButtons);
if(S_OK != hr)
msg_Err( p_intf, "ThumbBarUpdateButtons failed with error %08lx", hr );
}