Initial community commit
This commit is contained in:
parent
537bcbc862
commit
fc06254474
16440 changed files with 4239995 additions and 2 deletions
129
Src/Plugins/General/gen_ml/view_mb.h
Normal file
129
Src/Plugins/General/gen_ml/view_mb.h
Normal file
|
@ -0,0 +1,129 @@
|
|||
#ifndef _VIEW_MB_H_
|
||||
#define _VIEW_MB_H_
|
||||
|
||||
#include "main.h"
|
||||
#include "contnr.h"
|
||||
#include "evntsink.h"
|
||||
#include "childwnd.h"
|
||||
#include "resource.h"
|
||||
#include "..\winamp\wa_dlg.h"
|
||||
#include <shlobj.h>
|
||||
#include "mbutil.h"
|
||||
#include "config.h"
|
||||
extern void gracenoteCancelRequest();
|
||||
// ---------------------------------------------------------------
|
||||
// class viewMBHandler is a singleton class -
|
||||
// All public members are static, including
|
||||
// viewMBHandler :: DialogProc.
|
||||
// CTOR and DTOR are public (and not static)
|
||||
// the only instance of viewMBHandler is private,
|
||||
// theVmb;
|
||||
// ---------------------------------------------------------
|
||||
// ---------------------------------------------------------
|
||||
// this class has the basic responsibiliity of creating (and
|
||||
// handling the messages for) an IEControl window.
|
||||
// It is a prototype for the Advertising window,
|
||||
// which will be a similar class, but without the extraneous
|
||||
// stuff. ie There are currently navigation buttons for which
|
||||
// messages must be handled. These should disappear
|
||||
// in the final class, along with the gracenote stuff.
|
||||
//
|
||||
// Ben Pontius
|
||||
// ---------------------------------------------------------------
|
||||
class viewMBHandler
|
||||
{
|
||||
public:
|
||||
// ---------------------------------------------------------------
|
||||
friend BOOL view_mbDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
private:
|
||||
// ---------------------------------------------------------------
|
||||
// CTOR
|
||||
// ---------------------------------------------------------------
|
||||
viewMBHandler ()
|
||||
: m_hwnd (0),
|
||||
m_pweb (0),
|
||||
m_contnr (0),
|
||||
m_event (0),
|
||||
m_eventCookie (0),
|
||||
m_defurl (1),
|
||||
m_tmpurl (0),
|
||||
loc_oldWndProc (0)
|
||||
{
|
||||
}
|
||||
// ---------------------------------------------------------------
|
||||
// DTOR - public (because the compiler demanded it.)
|
||||
// ---------------------------------------------------------------
|
||||
~viewMBHandler ()
|
||||
{
|
||||
// ---------------------------------------------------------------
|
||||
gracenoteCancelRequest ();
|
||||
// ---------------------------------------------------------------
|
||||
if (m_contnr != 0)
|
||||
{
|
||||
destroyIEControl ();
|
||||
}
|
||||
if (m_tmpurl)
|
||||
{
|
||||
free (m_tmpurl);
|
||||
m_tmpurl = 0;
|
||||
}
|
||||
m_hwnd = 0;
|
||||
}
|
||||
public:
|
||||
// ---------------------------------------------------------------
|
||||
static void Refresh (int defurl);
|
||||
// ---------------------------------------------------------------
|
||||
static void SetDesc (char *desc);
|
||||
// ---------------------------------------------------------------
|
||||
static void Navigate (char *s);
|
||||
// ---------------------------------------------------------------
|
||||
static void navigateGracenoteTuid ();
|
||||
// ---------------------------------------------------------------
|
||||
// the central (CALLBACK) function
|
||||
// ---------------------------------------------------------------
|
||||
static BOOL CALLBACK DialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
// ---------------------------------------------------------------
|
||||
static BOOL CALLBACK newWndProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
// ---------------------------------------------------------------
|
||||
static void ContextMenu (HWND parent);
|
||||
// ---------------------------------------------------------------
|
||||
static viewMBHandler &getInstance ()
|
||||
{
|
||||
if (0 == pVmb)
|
||||
{
|
||||
pVmb = new viewMBHandler;
|
||||
}
|
||||
return *pVmb;
|
||||
}
|
||||
|
||||
protected:
|
||||
// ---------------------------------------------------------------
|
||||
IConnectionPoint *GetConnectionPoint(REFIID riid);
|
||||
// ---------------------------------------------------------------
|
||||
void ConnectEvents ();
|
||||
// ---------------------------------------------------------------
|
||||
// bp IEControl creation:
|
||||
// ---------------------------------------------------------------
|
||||
void createIEControl ();
|
||||
// ---------------------------------------------------------------
|
||||
// BP - IEControl destruction
|
||||
// ---------------------------------------------------------------
|
||||
void destroyIEControl ();
|
||||
// ---------------------------------------------------------------
|
||||
void NavigateToName (LPCTSTR pszUrl);
|
||||
|
||||
private:
|
||||
|
||||
IWebBrowser2 *m_pweb;
|
||||
HWND m_hwnd;
|
||||
CContainer *m_contnr;
|
||||
CEventSink *m_event;
|
||||
DWORD m_eventCookie;
|
||||
int m_defurl;
|
||||
char *m_tmpurl;
|
||||
WNDPROC loc_oldWndProc;
|
||||
static viewMBHandler *pVmb;
|
||||
|
||||
};
|
||||
|
||||
#endif // _VIEW_MB_H_
|
Loading…
Add table
Add a link
Reference in a new issue