Add rayman2 source files
This commit is contained in:
1158
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/EventsHistoryPage.cpp
Normal file
1158
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/EventsHistoryPage.cpp
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,119 @@
|
||||
#if !defined(AFX_EVENTSHISTORYPAGE_H__FB8CCD4B_DD7D_11D2_9F40_00104B6833D0__INCLUDED_)
|
||||
#define AFX_EVENTSHISTORYPAGE_H__FB8CCD4B_DD7D_11D2_9F40_00104B6833D0__INCLUDED_
|
||||
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
// EventsHistoryPage.h : header file
|
||||
//
|
||||
#include "SNDinc.h"
|
||||
#include "sndevent.h"
|
||||
#include "MyListCtrl.h"
|
||||
|
||||
|
||||
|
||||
typedef struct EventsHistElement{
|
||||
SYSTEMTIME time;
|
||||
SND_tdstBlockEvent *evt_pstPtr;
|
||||
tdxId evt_Id;
|
||||
tdeTypeEvent evt_eType;
|
||||
tdstBlockResourceMem *res_pstPtr;
|
||||
long asso;
|
||||
CString cEvtName;
|
||||
CString cEvtBankName;
|
||||
CString cInfo;
|
||||
|
||||
}EventsHistElement;
|
||||
|
||||
|
||||
//Ressource structure use by the Supervisater
|
||||
typedef struct RegKeyEventPage{
|
||||
int iCheckBankId;
|
||||
int iCheckEventId;
|
||||
BOOL bCheckFirstOccur;
|
||||
int iColTime;
|
||||
int iColEvtName;
|
||||
int iColEvtId;
|
||||
int iColBankName;
|
||||
int iColBankId;
|
||||
int iColEvtType;
|
||||
int iColInfo;
|
||||
}RegKeyEventPage;
|
||||
|
||||
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CEventsHistoryPage dialog
|
||||
|
||||
class CEventsHistoryPage : public CPropertyPage
|
||||
{
|
||||
DECLARE_DYNCREATE(CEventsHistoryPage)
|
||||
|
||||
// Construction
|
||||
public:
|
||||
void SetFirstOccurEventsName(long lIndex);
|
||||
void SetEventsName(long lIndex);
|
||||
CRect m_arInitWindowSize[25];
|
||||
void SetWindowSize(int iDeltaX, int iDeltaY) ;
|
||||
void GetInitWindowSize();
|
||||
BOOL m_bPauseProcess;
|
||||
void SendEventInWatchList();
|
||||
long AddToFirstEvtOccurArray(EventsHistElement* evt);
|
||||
void FilterAndDisplayEvent(long lIndex);
|
||||
void FilterAndDisplayFirstOccurEvent(long lIndex);
|
||||
void RefreshEventsHistoList();
|
||||
CEventsHistoryPage();
|
||||
~CEventsHistoryPage();
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CEventsHistoryPage)
|
||||
enum { IDD = IDD_EVENTS_HISTORY_PAGE };
|
||||
CListBox m_WatchList;
|
||||
CMyListCtrl m_EventsList;
|
||||
BOOL m_bShowBankWithId;
|
||||
BOOL m_bShowEventWithId;
|
||||
long m_lBankId;
|
||||
long m_lEventId;
|
||||
BOOL m_bDebugBreak;
|
||||
BOOL m_bFirstOccurence;
|
||||
BOOL m_bWatchMode;
|
||||
CString m_LCBPath;
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generate virtual function overrides
|
||||
//{{AFX_VIRTUAL(CEventsHistoryPage)
|
||||
public:
|
||||
virtual BOOL PreTranslateMessage(MSG* pMsg);
|
||||
virtual BOOL OnSetActive();
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CEventsHistoryPage)
|
||||
virtual BOOL OnInitDialog();
|
||||
afx_msg void OnResetButton();
|
||||
afx_msg void OnCheckFirstOccur();
|
||||
afx_msg void OnCheckBank();
|
||||
afx_msg void OnCheckEvent();
|
||||
afx_msg void OnChangeEditBankId();
|
||||
afx_msg void OnChangeEditEventId();
|
||||
afx_msg void OnHelpWatch();
|
||||
afx_msg void OnCheckWatch();
|
||||
afx_msg void OnEmptyWatch();
|
||||
afx_msg void OnPauseButton();
|
||||
afx_msg void OnDestroy();
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_EVENTSHISTORYPAGE_H__FB8CCD4B_DD7D_11D2_9F40_00104B6833D0__INCLUDED_)
|
@@ -0,0 +1,523 @@
|
||||
// MicroAndObjectsPage.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "supervis.h"
|
||||
#include "MicroAndObjectsPage.h"
|
||||
|
||||
#include "snddbg.h"
|
||||
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CMicroAndObjectsPage property page
|
||||
|
||||
IMPLEMENT_DYNCREATE(CMicroAndObjectsPage, CPropertyPage)
|
||||
|
||||
CMicroAndObjectsPage::CMicroAndObjectsPage() : CPropertyPage(CMicroAndObjectsPage::IDD)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CMicroAndObjectsPage)
|
||||
m_dDopplerFactor = 0.0;
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
CMicroAndObjectsPage::~CMicroAndObjectsPage()
|
||||
{
|
||||
}
|
||||
|
||||
void CMicroAndObjectsPage::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CPropertyPage::DoDataExchange(pDX);
|
||||
//{{AFX_DATA_MAP(CMicroAndObjectsPage)
|
||||
DDX_Control(pDX, IDC_ASSO_MIC_LIST, m_MicroAssoList);
|
||||
DDX_Control(pDX, IDC_OBJECT_LIST, m_ObjectList);
|
||||
DDX_Control(pDX, IDC_MICRO_LIST, m_MicroList);
|
||||
DDX_Text(pDX, IDC_DOPPLER_EFFECT, m_dDopplerFactor);
|
||||
//}}AFX_DATA_MAP
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CMicroAndObjectsPage, CPropertyPage)
|
||||
//{{AFX_MSG_MAP(CMicroAndObjectsPage)
|
||||
ON_WM_DESTROY()
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CMicroAndObjectsPage message handlers
|
||||
|
||||
BOOL CMicroAndObjectsPage::OnInitDialog()
|
||||
{
|
||||
CPropertyPage::OnInitDialog();
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
//Initialise the ClistCtrl containing ressources descriptions
|
||||
LV_COLUMN* lvc;
|
||||
|
||||
lvc = (LV_COLUMN*)malloc(sizeof(LV_COLUMN));
|
||||
//
|
||||
//Fill Micro list....
|
||||
//
|
||||
|
||||
lvc->mask = LVCF_FMT |LVCF_SUBITEM
|
||||
| LVCF_TEXT | LVCF_WIDTH; // members contain valid information
|
||||
lvc->fmt = LVCFMT_LEFT; // Alignment of the column
|
||||
lvc->cx = pSuperVisApp->m_RegKeyMicPage.iColMicId; // width of the column, in pixels
|
||||
lvc->pszText = "Micro Id"; // column heading
|
||||
lvc->iSubItem = 0; // index of subitem associated with column
|
||||
m_MicroList.InsertColumn(0, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "X"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyMicPage.iColX; // width of the column, in pixels
|
||||
lvc->iSubItem = 1; // index of subitem associated with column
|
||||
m_MicroList.InsertColumn(1, lvc);
|
||||
|
||||
lvc->pszText = "Y"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyMicPage.iColY; // width of the column, in pixels
|
||||
lvc->iSubItem = 2; // index of subitem associated with column
|
||||
m_MicroList.InsertColumn(2, lvc);
|
||||
|
||||
lvc->pszText = "Z"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyMicPage.iColZ; // width of the column, in pixels
|
||||
lvc->iSubItem = 3; // index of subitem associated with column
|
||||
m_MicroList.InsertColumn(3, lvc);
|
||||
|
||||
lvc->pszText = "Nx"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyMicPage.iColNx; // width of the column, in pixels
|
||||
lvc->iSubItem = 4; // index of subitem associated with column
|
||||
m_MicroList.InsertColumn(4, lvc);
|
||||
|
||||
|
||||
lvc->cx = pSuperVisApp->m_RegKeyMicPage.iColNy; // width of the column, in pixels
|
||||
lvc->pszText = "Ny"; // column heading
|
||||
lvc->iSubItem = 5; // index of subitem associated with column
|
||||
m_MicroList.InsertColumn(5, lvc);
|
||||
|
||||
|
||||
lvc->cx = pSuperVisApp->m_RegKeyMicPage.iColNz; // width of the column, in pixels
|
||||
lvc->pszText = "Nz"; // column heading
|
||||
lvc->iSubItem = 6; // index of subitem associated with column
|
||||
m_MicroList.InsertColumn(6, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "Tx"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyMicPage.iColTx; // width of the column, in pixels
|
||||
lvc->iSubItem = 7; // index of subitem associated with column
|
||||
m_MicroList.InsertColumn(7, lvc);
|
||||
|
||||
|
||||
lvc->cx = pSuperVisApp->m_RegKeyMicPage.iColTy; // width of the column, in pixels
|
||||
lvc->pszText = "Ty"; // column heading
|
||||
lvc->iSubItem = 8; // index of subitem associated with column
|
||||
m_MicroList.InsertColumn(8, lvc);
|
||||
|
||||
|
||||
lvc->cx = pSuperVisApp->m_RegKeyMicPage.iColTz; // width of the column, in pixels
|
||||
lvc->pszText = "Tz"; // column heading
|
||||
lvc->iSubItem = 9; // index of subitem associated with column
|
||||
m_MicroList.InsertColumn(9, lvc);
|
||||
|
||||
//
|
||||
//Fill Object list....
|
||||
//
|
||||
|
||||
lvc->mask = LVCF_FMT |LVCF_SUBITEM
|
||||
| LVCF_TEXT | LVCF_WIDTH; // members contain valid information
|
||||
lvc->fmt = LVCFMT_LEFT; // Alignment of the column
|
||||
lvc->cx = pSuperVisApp->m_RegKeyObjPage.iColObjId; // width of the column, in pixels
|
||||
lvc->pszText = "Object Id"; // column heading
|
||||
lvc->iSubItem = 0; // index of subitem associated with column
|
||||
m_ObjectList.InsertColumn(0, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "X"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyObjPage.iColX; // width of the column, in pixels
|
||||
lvc->iSubItem = 1; // index of subitem associated with column
|
||||
m_ObjectList.InsertColumn(1, lvc);
|
||||
|
||||
lvc->pszText = "Y"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyObjPage.iColY; // width of the column, in pixels
|
||||
lvc->iSubItem = 2; // index of subitem associated with column
|
||||
m_ObjectList.InsertColumn(2, lvc);
|
||||
|
||||
lvc->pszText = "Z"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyObjPage.iColZ; // width of the column, in pixels
|
||||
lvc->iSubItem = 3; // index of subitem associated with column
|
||||
m_ObjectList.InsertColumn(3, lvc);
|
||||
|
||||
lvc->pszText = "Frequence"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyObjPage.iColFreq; // width of the column, in pixels
|
||||
lvc->iSubItem = 4; // index of subitem associated with column
|
||||
m_ObjectList.InsertColumn(4, lvc);
|
||||
|
||||
|
||||
lvc->cx = pSuperVisApp->m_RegKeyObjPage.iColVol; // width of the column, in pixels
|
||||
lvc->pszText = "Volume"; // column heading
|
||||
lvc->iSubItem = 5; // index of subitem associated with column
|
||||
m_ObjectList.InsertColumn(5, lvc);
|
||||
|
||||
|
||||
lvc->cx = pSuperVisApp->m_RegKeyObjPage.iColAsso; // width of the column, in pixels
|
||||
lvc->pszText = "Evts:ptr(Id)->Asso"; // column heading
|
||||
lvc->iSubItem = 6; // index of subitem associated with column
|
||||
m_ObjectList.InsertColumn(6, lvc);
|
||||
|
||||
|
||||
|
||||
//
|
||||
//Fill Object micro association list....
|
||||
//
|
||||
|
||||
lvc->mask = LVCF_FMT |LVCF_SUBITEM
|
||||
| LVCF_TEXT | LVCF_WIDTH; // members contain valid information
|
||||
lvc->fmt = LVCFMT_LEFT; // Alignment of the column
|
||||
lvc->cx = 35; // width of the column, in pixels
|
||||
lvc->pszText = "No."; // column heading
|
||||
lvc->iSubItem = 0; // index of subitem associated with column
|
||||
m_MicroAssoList.InsertColumn(0, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "Micro Id"; // column heading
|
||||
lvc->cx = 75; // width of the column, in pixels
|
||||
lvc->iSubItem = 1; // index of subitem associated with column
|
||||
m_MicroAssoList.InsertColumn(1, lvc);
|
||||
|
||||
lvc->pszText = "Distance"; // column heading
|
||||
lvc->cx = 75; // width of the column, in pixels
|
||||
lvc->iSubItem = 2; // index of subitem associated with column
|
||||
m_MicroAssoList.InsertColumn(2, lvc);
|
||||
|
||||
|
||||
free( lvc );
|
||||
|
||||
//We update the listctrl with micro or oject that could
|
||||
//have been added before the PropertyPage has been loaded
|
||||
RefreshMicroList();
|
||||
|
||||
UpdateData(FALSE);
|
||||
|
||||
|
||||
|
||||
return TRUE; // return TRUE unless you set the focus to a control
|
||||
// EXCEPTION: OCX Property Pages should return FALSE
|
||||
}
|
||||
|
||||
|
||||
void CMicroAndObjectsPage::RefreshMicroList()
|
||||
{
|
||||
|
||||
long i;
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
|
||||
//we refresh the global Doppler factor
|
||||
m_dDopplerFactor = M_RealToDoubleSnd(dbgSND_fn_rGetDopplerFactor());
|
||||
|
||||
|
||||
//Clear the list
|
||||
m_MicroList.DeleteAllItems();
|
||||
|
||||
|
||||
long lNbMicros = pSuperVisApp->m_apMicros.GetSize();
|
||||
|
||||
//Cycle through the pointer Array to filter
|
||||
for (i = 0; i < lNbMicros; i ++ )
|
||||
{
|
||||
//Update the rsources list
|
||||
AddMicroToList(i);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
void CMicroAndObjectsPage::AddMicroToList(long lIndex)
|
||||
{
|
||||
|
||||
MicroArrayElement *pMic;
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
pMic = (MicroArrayElement *)(pSuperVisApp->m_apMicros.GetAt(lIndex));
|
||||
|
||||
//Retrieve data from the control
|
||||
PostMessage(WM_USER_UPDATE_DATA_TRUE, 0, 0);
|
||||
|
||||
char buffer[128];
|
||||
|
||||
//Display item
|
||||
sprintf(buffer,"0x%x", pMic->lId);
|
||||
m_MicroList.InsertItem( 0, buffer );
|
||||
|
||||
|
||||
//Set the item data with the Micro Array index, to be used later for drag&drop, pop-memnu, etc.
|
||||
m_MicroList.SetItemData( 0, (DWORD)lIndex );
|
||||
|
||||
|
||||
//Micro Position X
|
||||
sprintf(buffer, "%6.3f", pMic->dPosX);
|
||||
m_MicroList.SetItem(0, 1, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Micro Position Y
|
||||
sprintf(buffer, "%6.3f", pMic->dPosY);
|
||||
m_MicroList.SetItem(0, 2, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Micro Position Z
|
||||
sprintf(buffer, "%6.3f", pMic->dPosZ);
|
||||
m_MicroList.SetItem(0, 3, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Micro Normal X
|
||||
sprintf(buffer, "%6.3f", pMic->dNormX);
|
||||
m_MicroList.SetItem(0, 4, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Micro Normal Y
|
||||
sprintf(buffer, "%6.3f", pMic->dNormY);
|
||||
m_MicroList.SetItem(0, 5, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Micro Normal Z
|
||||
sprintf(buffer, "%6.3f", pMic->dNormZ);
|
||||
m_MicroList.SetItem(0, 6, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
//Micro Transversal X
|
||||
sprintf(buffer, "%6.3f", pMic->dTransX);
|
||||
m_MicroList.SetItem(0, 7, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
//Micro Transversal Y
|
||||
sprintf(buffer, "%6.3f", pMic->dTransY);
|
||||
m_MicroList.SetItem(0, 8, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
//Micro Transversal Z
|
||||
sprintf(buffer, "%6.3f", pMic->dTransZ);
|
||||
m_MicroList.SetItem(0, 9, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Refresh data from the control
|
||||
PostMessage(WM_USER_UPDATE_DATA_FALSE, 0, 0);
|
||||
|
||||
|
||||
}
|
||||
|
||||
BOOL CMicroAndObjectsPage::PreTranslateMessage(MSG* pMsg)
|
||||
{
|
||||
if(pMsg->message == WM_USER_UPDATE_DATA_TRUE)
|
||||
{
|
||||
//We send the updatedata(TRUE) here
|
||||
//We cannot pass the CWnd across thread and this cause problem while using updatedata
|
||||
UpdateData(TRUE);
|
||||
}
|
||||
|
||||
if(pMsg->message == WM_USER_UPDATE_DATA_FALSE)
|
||||
{
|
||||
//We send the updatedata(TRUE) here
|
||||
//We cannot pass the CWnd across thread and this cause problem while using updatedata
|
||||
UpdateData(FALSE);
|
||||
}
|
||||
|
||||
return CPropertyPage::PreTranslateMessage(pMsg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
void CMicroAndObjectsPage::RefreshObjectList()
|
||||
{
|
||||
|
||||
long i;
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
//Clear the list
|
||||
m_ObjectList.DeleteAllItems();
|
||||
|
||||
long lNbObjects = pSuperVisApp->m_apObjects.GetSize();
|
||||
|
||||
//Cycle through the pointer Array to filter
|
||||
for (i = 0; i < lNbObjects; i ++ )
|
||||
{
|
||||
//Update the rsources list
|
||||
AddObjectToList(i);
|
||||
|
||||
}
|
||||
|
||||
|
||||
//Set the asso mic with currently selected object
|
||||
if(lNbObjects > 0)
|
||||
SetObjectAssoMicroList(0);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
void CMicroAndObjectsPage::SetObjectAssoMicroList(long lIndexObject)
|
||||
{
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
long i;
|
||||
//Set the Associated Micro List
|
||||
MicroArrayElement* pMic;
|
||||
ObjectArrayElement *pObject;
|
||||
|
||||
SndVector Vector;
|
||||
char buffer[256];
|
||||
|
||||
|
||||
//Clear the list
|
||||
m_MicroAssoList.DeleteAllItems();
|
||||
|
||||
|
||||
|
||||
pObject = (ObjectArrayElement *)(pSuperVisApp->m_apObjects.GetAt(lIndexObject));
|
||||
|
||||
|
||||
long lNbMicros = pSuperVisApp->m_apMicros.GetSize();
|
||||
|
||||
for (i = 0; i < lNbMicros; i++){
|
||||
|
||||
pMic = (MicroArrayElement*)pSuperVisApp->m_apMicros.GetAt(i);
|
||||
|
||||
|
||||
//Mic #
|
||||
sprintf(buffer,"%d", i );
|
||||
m_MicroAssoList.InsertItem( 0, buffer );
|
||||
|
||||
//Mic Id
|
||||
sprintf(buffer,"0x%0x",pMic->lId );
|
||||
m_MicroAssoList.SetItem(0, 1, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Object distance from current Micro
|
||||
Vector.x = (long)(pObject->dPosX - pMic->dPosX);
|
||||
Vector.y = (long)(pObject->dPosY - pMic->dPosY);
|
||||
Vector.z = (long)(pObject->dPosZ - pMic->dPosZ);
|
||||
|
||||
sprintf(buffer,"%6.3f",M_RealToDoubleSnd(dbgSND_fn_rPseudoNormeVectorSnd(&Vector)));
|
||||
m_MicroAssoList.SetItem(0, 2, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
void CMicroAndObjectsPage::AddObjectToList(long lIndex)
|
||||
{
|
||||
|
||||
ObjectArrayElement *pObject;
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
pObject = (ObjectArrayElement *)(pSuperVisApp->m_apObjects.GetAt(lIndex));
|
||||
|
||||
//Retrieve data from the control
|
||||
PostMessage(WM_USER_UPDATE_DATA_TRUE, 0, 0);
|
||||
|
||||
char buffer[128];
|
||||
|
||||
//Display item
|
||||
if (pObject->lId == SND_C_OBJET_FANTOME)
|
||||
sprintf(buffer,"OBJET_FANTOME");
|
||||
else
|
||||
sprintf(buffer,"0x%x", pObject->lId);
|
||||
m_ObjectList.InsertItem( 0, buffer );
|
||||
|
||||
|
||||
//Set the item data with the Micro Array index, to be used later for drag&drop, pop-memnu, etc.
|
||||
m_ObjectList.SetItemData( 0, (DWORD)lIndex );
|
||||
|
||||
|
||||
//Object Position X
|
||||
sprintf(buffer, "%6.3f", pObject->dPosX);
|
||||
m_ObjectList.SetItem(0, 1, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Object Position Y
|
||||
sprintf(buffer, "%6.3f", pObject->dPosY);
|
||||
m_ObjectList.SetItem(0, 2, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Object Position Z
|
||||
sprintf(buffer, "%6.3f", pObject->dPosZ);
|
||||
m_ObjectList.SetItem(0, 3, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Object Frequency
|
||||
sprintf(buffer, "%6.3f", pObject->dFreq);
|
||||
m_ObjectList.SetItem(0, 4, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Object Volume
|
||||
sprintf(buffer, "%6.3f", pObject->ucVol);
|
||||
m_ObjectList.SetItem(0, 5, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
//Object Event pointer (the last one associated)
|
||||
sprintf(buffer, "0x%0x", pObject->evt_pstPtr);
|
||||
m_ObjectList.SetItem(0, 6, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
|
||||
//Refresh data from the control
|
||||
PostMessage(WM_USER_UPDATE_DATA_FALSE, 0, 0);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
void CMicroAndObjectsPage::OnDestroy()
|
||||
{
|
||||
CPropertyPage::OnDestroy();
|
||||
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
|
||||
int ColWidth = m_MicroList.GetColumnWidth(0);
|
||||
pSuperVisApp->m_RegKeyMicPage.iColMicId= ColWidth;
|
||||
ColWidth = m_MicroList.GetColumnWidth(1);
|
||||
pSuperVisApp->m_RegKeyMicPage.iColX= ColWidth;
|
||||
ColWidth = m_MicroList.GetColumnWidth(2);
|
||||
pSuperVisApp->m_RegKeyMicPage.iColY= ColWidth;
|
||||
ColWidth = m_MicroList.GetColumnWidth(3);
|
||||
pSuperVisApp->m_RegKeyMicPage.iColZ= ColWidth;
|
||||
ColWidth = m_MicroList.GetColumnWidth(4);
|
||||
pSuperVisApp->m_RegKeyMicPage.iColNx= ColWidth;
|
||||
ColWidth = m_MicroList.GetColumnWidth(5);
|
||||
pSuperVisApp->m_RegKeyMicPage.iColNy = ColWidth;
|
||||
ColWidth = m_MicroList.GetColumnWidth(6);
|
||||
pSuperVisApp->m_RegKeyMicPage.iColNz= ColWidth;
|
||||
ColWidth = m_MicroList.GetColumnWidth(7);
|
||||
pSuperVisApp->m_RegKeyMicPage.iColTx= ColWidth;
|
||||
ColWidth = m_MicroList.GetColumnWidth(8);
|
||||
pSuperVisApp->m_RegKeyMicPage.iColTy = ColWidth;
|
||||
ColWidth = m_MicroList.GetColumnWidth(9);
|
||||
pSuperVisApp->m_RegKeyMicPage.iColTz = ColWidth;
|
||||
|
||||
ColWidth = m_ObjectList.GetColumnWidth(0);
|
||||
pSuperVisApp->m_RegKeyObjPage.iColObjId= ColWidth;
|
||||
ColWidth = m_ObjectList.GetColumnWidth(1);
|
||||
pSuperVisApp->m_RegKeyObjPage.iColX= ColWidth;
|
||||
ColWidth = m_ObjectList.GetColumnWidth(2);
|
||||
pSuperVisApp->m_RegKeyObjPage.iColY= ColWidth;
|
||||
ColWidth = m_ObjectList.GetColumnWidth(3);
|
||||
pSuperVisApp->m_RegKeyObjPage.iColZ= ColWidth;
|
||||
ColWidth = m_ObjectList.GetColumnWidth(4);
|
||||
pSuperVisApp->m_RegKeyObjPage.iColFreq= ColWidth;
|
||||
ColWidth = m_ObjectList.GetColumnWidth(5);
|
||||
pSuperVisApp->m_RegKeyObjPage.iColVol = ColWidth;
|
||||
ColWidth = m_ObjectList.GetColumnWidth(6);
|
||||
pSuperVisApp->m_RegKeyObjPage.iColAsso= ColWidth;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,137 @@
|
||||
#if !defined(AFX_MICROANDOBJECTSPAGE_H__FA1253CF_DE04_11D2_9F40_00104B6833D0__INCLUDED_)
|
||||
#define AFX_MICROANDOBJECTSPAGE_H__FA1253CF_DE04_11D2_9F40_00104B6833D0__INCLUDED_
|
||||
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
// MicroAndObjectsPage.h : header file
|
||||
//
|
||||
|
||||
|
||||
//Micro Structure used by the Supervisater
|
||||
typedef struct MicroArrayElement{
|
||||
|
||||
long lId;
|
||||
double dPosX;
|
||||
double dPosY;
|
||||
double dPosZ;
|
||||
double dNormX;
|
||||
double dNormY;
|
||||
double dNormZ;
|
||||
double dTransX;
|
||||
double dTransY;
|
||||
double dTransZ;
|
||||
|
||||
}MicroArrayElement;
|
||||
|
||||
|
||||
typedef struct RegKeyMicPage{
|
||||
int iColMicId;
|
||||
int iColX;
|
||||
int iColY;
|
||||
int iColZ;
|
||||
int iColNx;
|
||||
int iColNy;
|
||||
int iColNz;
|
||||
int iColTx;
|
||||
int iColTy;
|
||||
int iColTz;
|
||||
}RegKeyMicPage;
|
||||
|
||||
|
||||
|
||||
typedef struct RegKeyObjPage{
|
||||
int iColObjId;
|
||||
int iColX;
|
||||
int iColY;
|
||||
int iColZ;
|
||||
int iColFreq;
|
||||
int iColVol;
|
||||
int iColAsso;
|
||||
|
||||
}RegKeyObjPage;
|
||||
|
||||
|
||||
|
||||
//Object Structure used by Supervisater
|
||||
typedef struct ObjectArrayElement{
|
||||
|
||||
long lId;
|
||||
unsigned char ucVol;
|
||||
double dPosX;
|
||||
double dPosY;
|
||||
double dPosZ;
|
||||
|
||||
double dFreq;
|
||||
long lDistToMicro;
|
||||
SND_tdstBlockEvent *evt_pstPtr;
|
||||
tdxId evt_Id;
|
||||
tdeTypeEvent evt_eType;
|
||||
long lAsso;
|
||||
|
||||
|
||||
/// SndReal Freq; /*frequence relative du sample <20> jouer */
|
||||
/// unsigned char ucPan; /*panoramique (0 gauche <20> 127 droite)*/
|
||||
/// unsigned char ucSpace; /*parametre de spatialisation (codage DOLBY= 0 tout <20> l<>avant, 127 tout <20> l<>arriere)*/
|
||||
/// unsigned char ucReverb; /*parametre de la reverberation (tunnels...)*/
|
||||
/// SndVector Pos; /*position de la source associee*/
|
||||
/// SndVector Vit; /*vitesse de la source associee*/
|
||||
/// int iFlags ; /*flags justifiant les champs (cf plus loin)*/
|
||||
/// int iNbLinks; /*nombre d'element du champ suivant*/
|
||||
/// MicroLink astMicro[NB_LINK]; /*liste statique des liens micros<->objet*/
|
||||
/// ExtraSoundParam xExtra; /*!!!!! this field should be never refered; it's only used to pre-size the struct SoundParam*/
|
||||
|
||||
}ObjectArrayElement;
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CMicroAndObjectsPage dialog
|
||||
|
||||
class CMicroAndObjectsPage : public CPropertyPage
|
||||
{
|
||||
DECLARE_DYNCREATE(CMicroAndObjectsPage)
|
||||
|
||||
// Construction
|
||||
public:
|
||||
void SetObjectAssoMicroList(long lIndexObject);
|
||||
void AddObjectToList(long lIndex);
|
||||
void RefreshObjectList();
|
||||
void RefreshMicroList();
|
||||
void AddMicroToList(long lIndex);
|
||||
CMicroAndObjectsPage();
|
||||
~CMicroAndObjectsPage();
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CMicroAndObjectsPage)
|
||||
enum { IDD = IDD_MICRO_OBJECTS_PAGE };
|
||||
CListCtrl m_MicroAssoList;
|
||||
CListCtrl m_ObjectList;
|
||||
CListCtrl m_MicroList;
|
||||
double m_dDopplerFactor;
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generate virtual function overrides
|
||||
//{{AFX_VIRTUAL(CMicroAndObjectsPage)
|
||||
public:
|
||||
virtual BOOL PreTranslateMessage(MSG* pMsg);
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CMicroAndObjectsPage)
|
||||
virtual BOOL OnInitDialog();
|
||||
afx_msg void OnDestroy();
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_MICROANDOBJECTSPAGE_H__FA1253CF_DE04_11D2_9F40_00104B6833D0__INCLUDED_)
|
1160
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/MixerPage.cpp
Normal file
1160
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/MixerPage.cpp
Normal file
File diff suppressed because it is too large
Load Diff
121
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/MixerPage.h
Normal file
121
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/MixerPage.h
Normal file
@@ -0,0 +1,121 @@
|
||||
#if !defined(AFX_MIXERPAGE_H__FA1253CE_DE04_11D2_9F40_00104B6833D0__INCLUDED_)
|
||||
#define AFX_MIXERPAGE_H__FA1253CE_DE04_11D2_9F40_00104B6833D0__INCLUDED_
|
||||
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
// MixerPage.h : header file
|
||||
//
|
||||
|
||||
#include "sndres.h"
|
||||
#include "MyResListCtrl.h"
|
||||
//#include "soundeditor.h" // Added by ClassView
|
||||
|
||||
//Ressource structure use by the Supervisater
|
||||
typedef struct RessourceElement{
|
||||
SYSTEMTIME time;
|
||||
unsigned long ulId;
|
||||
tdeTypeResource tdeType;
|
||||
unsigned char ucVolume;
|
||||
CString cResBankName;
|
||||
CString cResName;
|
||||
tdstBlockResourceMem *res;
|
||||
CString cInfo;
|
||||
SND_tduRefEvt evt;
|
||||
}ResourceElement;
|
||||
|
||||
|
||||
//Ressource structure use by the Supervisater
|
||||
typedef struct RegKeyMixerPage{
|
||||
int iCheckBankId;
|
||||
int iCheckResId;
|
||||
BOOL bCheckFirstOccur;
|
||||
int iColTime;
|
||||
int iColResName;
|
||||
int iColResId;
|
||||
int iColBankName;
|
||||
int iColBankId;
|
||||
int iColType;
|
||||
int iColVol;
|
||||
int iColInfo;
|
||||
}RegKeyMixerPage;
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CMixerPage dialog
|
||||
|
||||
class CMixerPage : public CPropertyPage
|
||||
{
|
||||
DECLARE_DYNCREATE(CMixerPage)
|
||||
|
||||
// Construction
|
||||
public:
|
||||
ResourceElement m_SelectedResElement;
|
||||
void ResetReslistButton();
|
||||
void SetResName(long lIndex);
|
||||
void SetFirstOccurResName(long lIndex);
|
||||
unsigned long m_ulSelectedResourceArrayIndex;
|
||||
void SetEditBoxVolume(unsigned long _ulIndex);
|
||||
long AddToFirstResOccurArray(ResourceElement* res);
|
||||
void FilterAndDisplayFirstOccurRes(long lIndex);
|
||||
void FilterAndDisplayRes(long lIndex);
|
||||
void RefreshResList();
|
||||
BOOL m_bPauseProcess;
|
||||
CMixerPage();
|
||||
~CMixerPage();
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CMixerPage)
|
||||
enum { IDD = IDD_MIXER_PAGE };
|
||||
CSliderCtrl m_VolumeSlider;
|
||||
CMyResListCtrl m_ResList;
|
||||
CString m_cSelectedRes;
|
||||
BOOL m_bDebugBreak;
|
||||
BOOL m_bFirstOccurence;
|
||||
BOOL m_bShowBankWithId;
|
||||
BOOL m_bShowResWithId;
|
||||
long m_lBankId;
|
||||
long m_lResId;
|
||||
long m_ulSelectedResVol;
|
||||
CString m_cSelectedResName;
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generate virtual function overrides
|
||||
//{{AFX_VIRTUAL(CMixerPage)
|
||||
public:
|
||||
virtual BOOL PreTranslateMessage(MSG* pMsg);
|
||||
virtual BOOL OnSetActive();
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CMixerPage)
|
||||
virtual BOOL OnInitDialog();
|
||||
afx_msg void OnSave();
|
||||
afx_msg void OnPauseResButton();
|
||||
afx_msg void OnResetReslistButton();
|
||||
afx_msg void OnCheckDebugOnRes();
|
||||
afx_msg void OnCheckFirstResOccur();
|
||||
afx_msg void OnCheckRes();
|
||||
afx_msg void OnCheckResBank();
|
||||
afx_msg void OnChangeEditResBankId();
|
||||
afx_msg void OnChangeEditResId();
|
||||
afx_msg void OnVolMoins();
|
||||
afx_msg void OnVolPlus();
|
||||
afx_msg void OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
|
||||
afx_msg void OnDestroy();
|
||||
afx_msg void OnPlay();
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_MIXERPAGE_H__FA1253CE_DE04_11D2_9F40_00104B6833D0__INCLUDED_)
|
287
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/MyListCtrl.cpp
Normal file
287
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/MyListCtrl.cpp
Normal file
@@ -0,0 +1,287 @@
|
||||
// MyListCtrl.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "supervis.h"
|
||||
#include "MyListCtrl.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CMyListCtrl
|
||||
|
||||
CMyListCtrl::CMyListCtrl()
|
||||
{
|
||||
nSortedCol = -1;
|
||||
bSortAscending = TRUE;
|
||||
}
|
||||
|
||||
CMyListCtrl::~CMyListCtrl()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CMyListCtrl, CListCtrl)
|
||||
//{{AFX_MSG_MAP(CMyListCtrl)
|
||||
ON_NOTIFY_REFLECT(NM_CLICK, OnClick)
|
||||
ON_NOTIFY_REFLECT(NM_RCLICK, OnRclick)
|
||||
ON_NOTIFY(HDN_ITEMCLICKA, 0, OnHeaderClicked)
|
||||
ON_NOTIFY(HDN_ITEMCLICKW, 0, OnHeaderClicked)
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CMyListCtrl message handlers
|
||||
|
||||
void CMyListCtrl::OnClick(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
{
|
||||
// Get the current mouse location and convert it to client
|
||||
// coordinates.
|
||||
DWORD pos = GetMessagePos();
|
||||
|
||||
CPoint pt(LOWORD(pos), HIWORD(pos));
|
||||
ScreenToClient(&pt);
|
||||
|
||||
// Get indexes of the first and last visible items in listview
|
||||
// control.
|
||||
int index = GetTopIndex();
|
||||
|
||||
int last_visible_index = index + GetCountPerPage();
|
||||
|
||||
if (last_visible_index > GetItemCount())
|
||||
last_visible_index = GetItemCount();
|
||||
|
||||
// Loop until number visible items has been reached.
|
||||
|
||||
while (index <= last_visible_index)
|
||||
{
|
||||
|
||||
// Get the bounding rectangle of an item. If the mouse
|
||||
|
||||
// location is within the bounding rectangle of the item,
|
||||
|
||||
// you know you have found the item that was being clicked.
|
||||
|
||||
CRect r;
|
||||
GetItemRect(index, &r, LVIR_BOUNDS);
|
||||
|
||||
|
||||
if (r.PtInRect(pt))
|
||||
{
|
||||
UINT flag = LVIS_SELECTED | LVIS_FOCUSED;
|
||||
|
||||
SetItemState(index, flag, flag);
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
// Get the next item in listview control.
|
||||
index++;
|
||||
}
|
||||
|
||||
|
||||
*pResult = 0;
|
||||
}
|
||||
|
||||
void CMyListCtrl::OnRclick(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
{
|
||||
|
||||
// Get the current mouse location and convert it to client
|
||||
// coordinates.
|
||||
DWORD pos = GetMessagePos();
|
||||
|
||||
CPoint pt(LOWORD(pos), HIWORD(pos));
|
||||
ScreenToClient(&pt);
|
||||
|
||||
// Get indexes of the first and last visible items in listview
|
||||
// control.
|
||||
int index = GetTopIndex();
|
||||
|
||||
int last_visible_index = index + GetCountPerPage();
|
||||
|
||||
if (last_visible_index > GetItemCount())
|
||||
last_visible_index = GetItemCount();
|
||||
|
||||
// Loop until number visible items has been reached.
|
||||
|
||||
while (index <= last_visible_index)
|
||||
{
|
||||
|
||||
// Get the bounding rectangle of an item. If the mouse
|
||||
|
||||
// location is within the bounding rectangle of the item,
|
||||
|
||||
// you know you have found the item that was being clicked.
|
||||
|
||||
CRect r;
|
||||
GetItemRect(index, &r, LVIR_BOUNDS);
|
||||
|
||||
|
||||
if (r.PtInRect(pt))
|
||||
{
|
||||
|
||||
//Select item
|
||||
UINT flag = LVIS_SELECTED | LVIS_FOCUSED;
|
||||
|
||||
SetItemState(index, flag, flag);
|
||||
|
||||
|
||||
//Show PopUp Menu
|
||||
CMenu menu;
|
||||
VERIFY(menu.LoadMenu(IDR_MENU1));
|
||||
CMenu* pPopup = menu.GetSubMenu(0);
|
||||
|
||||
//Modify the menu with the ressource name. The Command is handled in CPropertySheet::OnCmdMsg.
|
||||
//pPopup->ModifyMenu( 0, MF_BYPOSITION | MF_STRING, ID_WATCH, "Voila, ca marche!!" );
|
||||
|
||||
ASSERT(pPopup != NULL);
|
||||
pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON,
|
||||
LOWORD(pos),
|
||||
HIWORD(pos),
|
||||
AfxGetMainWnd());
|
||||
|
||||
|
||||
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
// Get the next item in listview control.
|
||||
index++;
|
||||
}
|
||||
|
||||
*pResult = 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void CMyListCtrl::OnHeaderClicked(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
{
|
||||
HD_NOTIFY *phdn = (HD_NOTIFY *) pNMHDR;
|
||||
|
||||
if( phdn->iButton == 0 )
|
||||
{
|
||||
// User clicked on header using left mouse button
|
||||
if( phdn->iItem == nSortedCol )
|
||||
bSortAscending = !bSortAscending;
|
||||
else
|
||||
bSortAscending = TRUE;
|
||||
|
||||
nSortedCol = phdn->iItem;
|
||||
SortTextItems( nSortedCol, bSortAscending , 0, -1);
|
||||
|
||||
}
|
||||
*pResult = 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// SortTextItems - Sort the list based on column text
|
||||
// Returns - Returns true for success
|
||||
// nCol - column that contains the text to be sorted
|
||||
// bAscending - indicate sort order
|
||||
// low - row to start scanning from - default row is 0
|
||||
// high - row to end scan. -1 indicates last row
|
||||
BOOL CMyListCtrl::SortTextItems( int nCol, BOOL bAscending, int low /*= 0*/, int high /*= -1*/ )
|
||||
{
|
||||
if( nCol >= ((CHeaderCtrl*)GetDlgItem(0))->GetItemCount() )
|
||||
return FALSE;
|
||||
|
||||
if( high == -1 ) high = GetItemCount() - 1;
|
||||
|
||||
int lo = low;
|
||||
int hi = high;
|
||||
CString midItem;
|
||||
|
||||
if( hi <= lo ) return FALSE;
|
||||
|
||||
midItem = GetItemText( (lo+hi)/2, nCol );
|
||||
|
||||
// loop through the list until indices cross
|
||||
while( lo <= hi )
|
||||
{
|
||||
// rowText will hold all column text for one row
|
||||
CStringArray rowText;
|
||||
|
||||
// find the first element that is greater than or equal to
|
||||
// the partition element starting from the left Index.
|
||||
if( bAscending )
|
||||
while( ( lo < high ) && ( GetItemText(lo, nCol) < midItem ) )
|
||||
++lo;
|
||||
else
|
||||
while( ( lo < high ) && ( GetItemText(lo, nCol) > midItem ) )
|
||||
++lo;
|
||||
|
||||
// find an element that is smaller than or equal to
|
||||
// the partition element starting from the right Index.
|
||||
if( bAscending )
|
||||
while( ( hi > low ) && ( GetItemText(hi, nCol) > midItem ) )
|
||||
--hi;
|
||||
else
|
||||
while( ( hi > low ) && ( GetItemText(hi, nCol) < midItem ) )
|
||||
--hi;
|
||||
|
||||
// if the indexes have not crossed, swap
|
||||
// and if the items are not equal
|
||||
if( lo <= hi )
|
||||
{
|
||||
// swap only if the items are not equal
|
||||
if( GetItemText(lo, nCol) != GetItemText(hi, nCol))
|
||||
{
|
||||
// swap the rows
|
||||
LV_ITEM lvitemlo, lvitemhi;
|
||||
int nColCount =
|
||||
((CHeaderCtrl*)GetDlgItem(0))->GetItemCount();
|
||||
rowText.SetSize( nColCount );
|
||||
int i;
|
||||
for( i=0; i<nColCount; i++)
|
||||
rowText[i] = GetItemText(lo, i);
|
||||
lvitemlo.mask = LVIF_IMAGE | LVIF_PARAM | LVIF_STATE;
|
||||
lvitemlo.iItem = lo;
|
||||
lvitemlo.iSubItem = 0;
|
||||
lvitemlo.stateMask = LVIS_CUT | LVIS_DROPHILITED |
|
||||
LVIS_FOCUSED | LVIS_SELECTED |
|
||||
LVIS_OVERLAYMASK | LVIS_STATEIMAGEMASK;
|
||||
|
||||
lvitemhi = lvitemlo;
|
||||
lvitemhi.iItem = hi;
|
||||
|
||||
GetItem( &lvitemlo );
|
||||
GetItem( &lvitemhi );
|
||||
|
||||
for( i=0; i<nColCount; i++)
|
||||
SetItemText(lo, i, GetItemText(hi, i));
|
||||
|
||||
lvitemhi.iItem = lo;
|
||||
SetItem( &lvitemhi );
|
||||
|
||||
for( i=0; i<nColCount; i++)
|
||||
SetItemText(hi, i, rowText[i]);
|
||||
|
||||
lvitemlo.iItem = hi;
|
||||
SetItem( &lvitemlo );
|
||||
}
|
||||
|
||||
++lo;
|
||||
--hi;
|
||||
}
|
||||
}
|
||||
|
||||
// If the right index has not reached the left side of array
|
||||
// must now sort the left partition.
|
||||
if( low < hi )
|
||||
SortTextItems( nCol, bAscending , low, hi);
|
||||
|
||||
// If the left index has not reached the right side of array
|
||||
// must now sort the right partition.
|
||||
if( lo < high )
|
||||
SortTextItems( nCol, bAscending , lo, high );
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
53
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/MyListCtrl.h
Normal file
53
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/MyListCtrl.h
Normal file
@@ -0,0 +1,53 @@
|
||||
#if !defined(AFX_MYLISTCTRL_H__C9F294B0_E16D_11D2_9F47_00104B6833D0__INCLUDED_)
|
||||
#define AFX_MYLISTCTRL_H__C9F294B0_E16D_11D2_9F47_00104B6833D0__INCLUDED_
|
||||
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
// MyListCtrl.h : header file
|
||||
//
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CMyListCtrl window
|
||||
|
||||
class CMyListCtrl : public CListCtrl
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CMyListCtrl();
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CMyListCtrl)
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
public:
|
||||
BOOL SortTextItems( int nCol, BOOL bAscending, int low, int high);
|
||||
int nSortedCol;
|
||||
BOOL bSortAscending;
|
||||
virtual ~CMyListCtrl();
|
||||
|
||||
// Generated message map functions
|
||||
protected:
|
||||
//{{AFX_MSG(CMyListCtrl)
|
||||
afx_msg void OnClick(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
afx_msg void OnRclick(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
afx_msg void OnHeaderClicked(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
//}}AFX_MSG
|
||||
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_MYLISTCTRL_H__C9F294B0_E16D_11D2_9F47_00104B6833D0__INCLUDED_)
|
223
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/MyResListCtrl.cpp
Normal file
223
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/MyResListCtrl.cpp
Normal file
@@ -0,0 +1,223 @@
|
||||
// MyResListCtrl.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "supervis.h"
|
||||
#include "MyResListCtrl.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CMyResListCtrl
|
||||
|
||||
CMyResListCtrl::CMyResListCtrl()
|
||||
{
|
||||
nSortedCol = -1;
|
||||
bSortAscending = TRUE;
|
||||
|
||||
}
|
||||
|
||||
CMyResListCtrl::~CMyResListCtrl()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CMyResListCtrl, CListCtrl)
|
||||
//{{AFX_MSG_MAP(CMyResListCtrl)
|
||||
ON_NOTIFY_REFLECT(NM_CLICK, OnClick)
|
||||
ON_NOTIFY(HDN_ITEMCLICKA, 0, OnHeaderClicked)
|
||||
ON_NOTIFY(HDN_ITEMCLICKW, 0, OnHeaderClicked)
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CMyResListCtrl message handlers
|
||||
|
||||
void CMyResListCtrl::OnClick(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
{
|
||||
|
||||
// Get the current mouse location and convert it to client
|
||||
// coordinates.
|
||||
DWORD pos = GetMessagePos();
|
||||
|
||||
CPoint pt(LOWORD(pos), HIWORD(pos));
|
||||
ScreenToClient(&pt);
|
||||
|
||||
// Get indexes of the first and last visible items in listview
|
||||
// control.
|
||||
int index = GetTopIndex();
|
||||
|
||||
int last_visible_index = index + GetCountPerPage();
|
||||
|
||||
if (last_visible_index > GetItemCount())
|
||||
last_visible_index = GetItemCount();
|
||||
|
||||
// Loop until number visible items has been reached.
|
||||
|
||||
while (index <= last_visible_index)
|
||||
{
|
||||
|
||||
// Get the bounding rectangle of an item. If the mouse
|
||||
|
||||
// location is within the bounding rectangle of the item,
|
||||
|
||||
// you know you have found the item that was being clicked.
|
||||
|
||||
CRect r;
|
||||
GetItemRect(index, &r, LVIR_BOUNDS);
|
||||
|
||||
|
||||
if (r.PtInRect(pt))
|
||||
{
|
||||
UINT flag = LVIS_SELECTED | LVIS_FOCUSED;
|
||||
|
||||
SetItemState(index, flag, flag);
|
||||
|
||||
//We add the new volume in the Volume EditBox
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
unsigned long UlData = (unsigned long)GetItemData(index);
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->m_MixerPage.SetEditBoxVolume(UlData);
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
// Get the next item in listview control.
|
||||
index++;
|
||||
}
|
||||
|
||||
|
||||
*pResult = 0;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
void CMyResListCtrl::OnHeaderClicked(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
{
|
||||
HD_NOTIFY *phdn = (HD_NOTIFY *) pNMHDR;
|
||||
|
||||
if( phdn->iButton == 0 )
|
||||
{
|
||||
// User clicked on header using left mouse button
|
||||
if( phdn->iItem == nSortedCol )
|
||||
bSortAscending = !bSortAscending;
|
||||
else
|
||||
bSortAscending = TRUE;
|
||||
|
||||
nSortedCol = phdn->iItem;
|
||||
SortTextItems( nSortedCol, bSortAscending , 0, -1);
|
||||
|
||||
}
|
||||
*pResult = 0;
|
||||
}
|
||||
|
||||
|
||||
// SortTextItems - Sort the list based on column text
|
||||
// Returns - Returns true for success
|
||||
// nCol - column that contains the text to be sorted
|
||||
// bAscending - indicate sort order
|
||||
// low - row to start scanning from - default row is 0
|
||||
// high - row to end scan. -1 indicates last row
|
||||
BOOL CMyResListCtrl::SortTextItems( int nCol, BOOL bAscending, int low /*= 0*/, int high /*= -1*/ )
|
||||
{
|
||||
if( nCol >= ((CHeaderCtrl*)GetDlgItem(0))->GetItemCount() )
|
||||
return FALSE;
|
||||
|
||||
if( high == -1 ) high = GetItemCount() - 1;
|
||||
|
||||
int lo = low;
|
||||
int hi = high;
|
||||
CString midItem;
|
||||
|
||||
if( hi <= lo ) return FALSE;
|
||||
|
||||
midItem = GetItemText( (lo+hi)/2, nCol );
|
||||
|
||||
// loop through the list until indices cross
|
||||
while( lo <= hi )
|
||||
{
|
||||
// rowText will hold all column text for one row
|
||||
CStringArray rowText;
|
||||
|
||||
// find the first element that is greater than or equal to
|
||||
// the partition element starting from the left Index.
|
||||
if( bAscending )
|
||||
while( ( lo < high ) && ( GetItemText(lo, nCol) < midItem ) )
|
||||
++lo;
|
||||
else
|
||||
while( ( lo < high ) && ( GetItemText(lo, nCol) > midItem ) )
|
||||
++lo;
|
||||
|
||||
// find an element that is smaller than or equal to
|
||||
// the partition element starting from the right Index.
|
||||
if( bAscending )
|
||||
while( ( hi > low ) && ( GetItemText(hi, nCol) > midItem ) )
|
||||
--hi;
|
||||
else
|
||||
while( ( hi > low ) && ( GetItemText(hi, nCol) < midItem ) )
|
||||
--hi;
|
||||
|
||||
// if the indexes have not crossed, swap
|
||||
// and if the items are not equal
|
||||
if( lo <= hi )
|
||||
{
|
||||
// swap only if the items are not equal
|
||||
if( GetItemText(lo, nCol) != GetItemText(hi, nCol))
|
||||
{
|
||||
// swap the rows
|
||||
LV_ITEM lvitemlo, lvitemhi;
|
||||
int nColCount =
|
||||
((CHeaderCtrl*)GetDlgItem(0))->GetItemCount();
|
||||
rowText.SetSize( nColCount );
|
||||
int i;
|
||||
for( i=0; i<nColCount; i++)
|
||||
rowText[i] = GetItemText(lo, i);
|
||||
lvitemlo.mask = LVIF_IMAGE | LVIF_PARAM | LVIF_STATE;
|
||||
lvitemlo.iItem = lo;
|
||||
lvitemlo.iSubItem = 0;
|
||||
lvitemlo.stateMask = LVIS_CUT | LVIS_DROPHILITED |
|
||||
LVIS_FOCUSED | LVIS_SELECTED |
|
||||
LVIS_OVERLAYMASK | LVIS_STATEIMAGEMASK;
|
||||
|
||||
lvitemhi = lvitemlo;
|
||||
lvitemhi.iItem = hi;
|
||||
|
||||
GetItem( &lvitemlo );
|
||||
GetItem( &lvitemhi );
|
||||
|
||||
for( i=0; i<nColCount; i++)
|
||||
SetItemText(lo, i, GetItemText(hi, i));
|
||||
|
||||
lvitemhi.iItem = lo;
|
||||
SetItem( &lvitemhi );
|
||||
|
||||
for( i=0; i<nColCount; i++)
|
||||
SetItemText(hi, i, rowText[i]);
|
||||
|
||||
lvitemlo.iItem = hi;
|
||||
SetItem( &lvitemlo );
|
||||
}
|
||||
|
||||
++lo;
|
||||
--hi;
|
||||
}
|
||||
}
|
||||
|
||||
// If the right index has not reached the left side of array
|
||||
// must now sort the left partition.
|
||||
if( low < hi )
|
||||
SortTextItems( nCol, bAscending , low, hi);
|
||||
|
||||
// If the left index has not reached the right side of array
|
||||
// must now sort the right partition.
|
||||
if( lo < high )
|
||||
SortTextItems( nCol, bAscending , lo, high );
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
@@ -0,0 +1,52 @@
|
||||
#if !defined(AFX_MYRESLISTCTRL_H__0C3228FA_F275_11D2_9F68_00104B6833D0__INCLUDED_)
|
||||
#define AFX_MYRESLISTCTRL_H__0C3228FA_F275_11D2_9F68_00104B6833D0__INCLUDED_
|
||||
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
// MyResListCtrl.h : header file
|
||||
//
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CMyResListCtrl window
|
||||
|
||||
class CMyResListCtrl : public CListCtrl
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CMyResListCtrl();
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CMyResListCtrl)
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
public:
|
||||
BOOL SortTextItems( int nCol, BOOL bAscending, int low, int high);
|
||||
int nSortedCol;
|
||||
BOOL bSortAscending;
|
||||
virtual ~CMyResListCtrl();
|
||||
|
||||
// Generated message map functions
|
||||
protected:
|
||||
//{{AFX_MSG(CMyResListCtrl)
|
||||
afx_msg void OnClick(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
afx_msg void OnHeaderClicked(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
//}}AFX_MSG
|
||||
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_MYRESLISTCTRL_H__0C3228FA_F275_11D2_9F68_00104B6833D0__INCLUDED_)
|
6
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/StdAfx.cpp
Normal file
6
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/StdAfx.cpp
Normal file
@@ -0,0 +1,6 @@
|
||||
// stdafx.cpp : source file that includes just the standard includes
|
||||
// supervis.pch will be the pre-compiled header
|
||||
// stdafx.obj will contain the pre-compiled type information
|
||||
|
||||
#include "stdafx.h"
|
||||
|
41
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/StdAfx.h
Normal file
41
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/StdAfx.h
Normal file
@@ -0,0 +1,41 @@
|
||||
// stdafx.h : include file for standard system include files,
|
||||
// or project specific include files that are used frequently, but
|
||||
// are changed infrequently
|
||||
//
|
||||
|
||||
#if !defined(AFX_STDAFX_H__2CEA4ECD_D8B0_11D2_9F3A_00104B6833D0__INCLUDED_)
|
||||
#define AFX_STDAFX_H__2CEA4ECD_D8B0_11D2_9F3A_00104B6833D0__INCLUDED_
|
||||
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
|
||||
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
|
||||
|
||||
#include <afxwin.h> // MFC core and standard components
|
||||
#include <afxext.h> // MFC extensions
|
||||
|
||||
#ifndef _AFX_NO_OLE_SUPPORT
|
||||
#include <afxole.h> // MFC OLE classes
|
||||
#include <afxodlgs.h> // MFC OLE dialog classes
|
||||
#include <afxdisp.h> // MFC OLE automation classes
|
||||
#endif // _AFX_NO_OLE_SUPPORT
|
||||
|
||||
|
||||
#ifndef _AFX_NO_DB_SUPPORT
|
||||
#include <afxdb.h> // MFC ODBC database classes
|
||||
#endif // _AFX_NO_DB_SUPPORT
|
||||
|
||||
#ifndef _AFX_NO_DAO_SUPPORT
|
||||
#include <afxdao.h> // MFC DAO database classes
|
||||
#endif // _AFX_NO_DAO_SUPPORT
|
||||
|
||||
#ifndef _AFX_NO_AFXCMN_SUPPORT
|
||||
#include <afxcmn.h> // MFC support for Windows Common Controls
|
||||
#endif // _AFX_NO_AFXCMN_SUPPORT
|
||||
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_STDAFX_H__2CEA4ECD_D8B0_11D2_9F3A_00104B6833D0__INCLUDED_)
|
@@ -0,0 +1,198 @@
|
||||
// SuperVisSettingsPage.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "supervis.h"
|
||||
#include "SuperVisSettingsPage.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSuperVisSettingsPage property page
|
||||
|
||||
IMPLEMENT_DYNCREATE(CSuperVisSettingsPage, CPropertyPage)
|
||||
|
||||
CSuperVisSettingsPage::CSuperVisSettingsPage() : CPropertyPage(CSuperVisSettingsPage::IDD)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CSuperVisSettingsPage)
|
||||
m_uiRefreshRate = 0;
|
||||
m_bSetWindowOnTop = FALSE;
|
||||
m_BinaryLCBPath = _T("");
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
CSuperVisSettingsPage::~CSuperVisSettingsPage()
|
||||
{
|
||||
}
|
||||
|
||||
void CSuperVisSettingsPage::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CPropertyPage::DoDataExchange(pDX);
|
||||
//{{AFX_DATA_MAP(CSuperVisSettingsPage)
|
||||
DDX_Text(pDX, IDC_REFRESH_RATE, m_uiRefreshRate);
|
||||
DDV_MinMaxUInt(pDX, m_uiRefreshRate, 250, 10000);
|
||||
DDX_Check(pDX, IDC_WINDOW_ON_TOP, m_bSetWindowOnTop);
|
||||
DDX_Text(pDX, IDC_EDIT_LCB_PATH, m_BinaryLCBPath);
|
||||
//}}AFX_DATA_MAP
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CSuperVisSettingsPage, CPropertyPage)
|
||||
//{{AFX_MSG_MAP(CSuperVisSettingsPage)
|
||||
ON_BN_CLICKED(IDC_PLUS, OnPlus)
|
||||
ON_BN_CLICKED(IDC_MOINS, OnMoins)
|
||||
ON_EN_SETFOCUS(IDC_REFRESH_RATE, OnSetfocusRefreshRate)
|
||||
ON_BN_CLICKED(IDC_WINDOW_ON_TOP, OnWindowOnTop)
|
||||
ON_WM_DESTROY()
|
||||
ON_BN_CLICKED(IDC_BROWSE_FOR_LCB, OnBrowseForLcb)
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSuperVisSettingsPage message handlers
|
||||
|
||||
BOOL CSuperVisSettingsPage::OnInitDialog()
|
||||
{
|
||||
CPropertyPage::OnInitDialog();
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
//Refresh rate default
|
||||
m_uiRefreshRate = (unsigned int)pSuperVisApp->m_iRefreshRate;
|
||||
|
||||
//Always on top check box
|
||||
m_bSetWindowOnTop = pSuperVisApp->m_bWindowOnTop;
|
||||
|
||||
//Set the selected
|
||||
((CEdit *)(GetDlgItem(IDC_REFRESH_RATE)))->LimitText(5);
|
||||
|
||||
//Set LCB Edit box
|
||||
((CEdit *)(GetDlgItem(IDC_EDIT_LCB_PATH)))->SetReadOnly( TRUE );
|
||||
|
||||
|
||||
m_BinaryLCBPath = pSuperVisApp->m_cBinaryLCBPath;
|
||||
|
||||
|
||||
UpdateData(FALSE);
|
||||
|
||||
return TRUE; // return TRUE unless you set the focus to a control
|
||||
// EXCEPTION: OCX Property Pages should return FALSE
|
||||
}
|
||||
|
||||
|
||||
|
||||
void CSuperVisSettingsPage::OnPlus()
|
||||
{
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
m_uiRefreshRate += 250;
|
||||
if(m_uiRefreshRate > 10000)
|
||||
m_uiRefreshRate = 10000;
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->SetTimer( WM_USER_TIMER, m_uiRefreshRate, NULL );
|
||||
UpdateData(FALSE);
|
||||
|
||||
}
|
||||
|
||||
void CSuperVisSettingsPage::OnMoins()
|
||||
{
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
m_uiRefreshRate -= 250;
|
||||
if(m_uiRefreshRate <= 250)
|
||||
m_uiRefreshRate = 250;
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->SetTimer( WM_USER_TIMER, m_uiRefreshRate, NULL );
|
||||
UpdateData(FALSE);
|
||||
|
||||
}
|
||||
|
||||
|
||||
void CSuperVisSettingsPage::OnSetfocusRefreshRate()
|
||||
{
|
||||
//Set the selected
|
||||
((CEdit *)(GetDlgItem(IDC_REFRESH_RATE)))->SetSel( 0, -1, FALSE );
|
||||
|
||||
}
|
||||
|
||||
void CSuperVisSettingsPage::OnWindowOnTop()
|
||||
{
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
//Update the variable
|
||||
UpdateData(TRUE);
|
||||
|
||||
if(m_bSetWindowOnTop)
|
||||
{
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->SetWindowPos(&wndTopMost ,0 ,0, 0, 0, SWP_NOREPOSITION | SWP_NOSIZE | SWP_NOMOVE);
|
||||
}
|
||||
else
|
||||
{
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->SetWindowPos(&wndNoTopMost ,0 ,0, 0, 0, SWP_NOREPOSITION | SWP_NOSIZE | SWP_NOMOVE);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
pSuperVisApp->m_bWindowOnTop = m_bSetWindowOnTop;
|
||||
|
||||
}
|
||||
|
||||
void CSuperVisSettingsPage::OnDestroy()
|
||||
{
|
||||
CPropertyPage::OnDestroy();
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
pSuperVisApp->m_iRefreshRate = (int)m_uiRefreshRate;
|
||||
}
|
||||
|
||||
|
||||
void CSuperVisSettingsPage::OnBrowseForLcb()
|
||||
{
|
||||
|
||||
CString strFileName;
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
|
||||
//Leave if we already had intiated SoundEditor Automation
|
||||
if(!pSuperVisApp->m_SuperVisThread->bAutomationActivated)
|
||||
{
|
||||
CFileDialog dlg( TRUE,"lcb","*.lcb",
|
||||
OFN_FILEMUSTEXIST | OFN_NOCHANGEDIR,
|
||||
_T("SoundEditor|LCB |"));
|
||||
|
||||
|
||||
|
||||
int nResponse = dlg.DoModal();
|
||||
|
||||
if (nResponse == IDOK)
|
||||
{
|
||||
|
||||
//We have to extract the path, GetpathName include the filename
|
||||
m_BinaryLCBPath = dlg.GetPathName();
|
||||
UpdateData(FALSE);
|
||||
|
||||
//Update for later registry saving
|
||||
pSuperVisApp->m_cBinaryLCBPath = m_BinaryLCBPath;
|
||||
|
||||
|
||||
pSuperVisApp->m_SuperVisThread->Automation(m_BinaryLCBPath);
|
||||
|
||||
|
||||
}
|
||||
else if (nResponse == IDCANCEL)
|
||||
{
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return;
|
||||
|
||||
}
|
@@ -0,0 +1,57 @@
|
||||
#if !defined(AFX_SUPERVISSETTINGSPAGE_H__FA1253D1_DE04_11D2_9F40_00104B6833D0__INCLUDED_)
|
||||
#define AFX_SUPERVISSETTINGSPAGE_H__FA1253D1_DE04_11D2_9F40_00104B6833D0__INCLUDED_
|
||||
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
// SuperVisSettingsPage.h : header file
|
||||
//
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSuperVisSettingsPage dialog
|
||||
|
||||
class CSuperVisSettingsPage : public CPropertyPage
|
||||
{
|
||||
DECLARE_DYNCREATE(CSuperVisSettingsPage)
|
||||
|
||||
// Construction
|
||||
public:
|
||||
CSuperVisSettingsPage();
|
||||
~CSuperVisSettingsPage();
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CSuperVisSettingsPage)
|
||||
enum { IDD = IDD_SUPERVIS_SETTINGS_PAGE };
|
||||
UINT m_uiRefreshRate;
|
||||
BOOL m_bSetWindowOnTop;
|
||||
CString m_BinaryLCBPath;
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generate virtual function overrides
|
||||
//{{AFX_VIRTUAL(CSuperVisSettingsPage)
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CSuperVisSettingsPage)
|
||||
virtual BOOL OnInitDialog();
|
||||
afx_msg void OnPlus();
|
||||
afx_msg void OnMoins();
|
||||
afx_msg void OnSetfocusRefreshRate();
|
||||
afx_msg void OnWindowOnTop();
|
||||
afx_msg void OnDestroy();
|
||||
afx_msg void OnBrowseForLcb();
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_SUPERVISSETTINGSPAGE_H__FA1253D1_DE04_11D2_9F40_00104B6833D0__INCLUDED_)
|
745
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/SuperVisSheet.cpp
Normal file
745
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/SuperVisSheet.cpp
Normal file
@@ -0,0 +1,745 @@
|
||||
// SuperVisSheet.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "supervis.h"
|
||||
#include "SuperVisSheet.h"
|
||||
|
||||
#include "SNDinc.h"
|
||||
|
||||
#include "snddll.h"
|
||||
|
||||
#include "snddbg.h"
|
||||
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSuperVisSheet
|
||||
|
||||
IMPLEMENT_DYNAMIC(CSuperVisSheet, CPropertySheet)
|
||||
|
||||
CSuperVisSheet::CSuperVisSheet(UINT nIDCaption, CWnd* pParentWnd, UINT iSelectPage)
|
||||
:CPropertySheet(nIDCaption, pParentWnd, iSelectPage)
|
||||
{
|
||||
//Read config in ini file...
|
||||
ReadIniFile();
|
||||
|
||||
AddControlPages();
|
||||
}
|
||||
|
||||
CSuperVisSheet::CSuperVisSheet(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage)
|
||||
:CPropertySheet(pszCaption, pParentWnd, iSelectPage)
|
||||
{
|
||||
|
||||
//Read config in ini file...
|
||||
ReadIniFile();
|
||||
|
||||
AddControlPages();
|
||||
}
|
||||
|
||||
|
||||
CSuperVisSheet::CSuperVisSheet()
|
||||
:CPropertySheet("SuperVisater99")
|
||||
{
|
||||
|
||||
//Read config in ini file...
|
||||
ReadIniFile();
|
||||
|
||||
AddControlPages();
|
||||
}
|
||||
|
||||
CSuperVisSheet::~CSuperVisSheet()
|
||||
{
|
||||
//Save config in ini file...
|
||||
WriteIniFile();
|
||||
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CSuperVisSheet, CPropertySheet)
|
||||
//{{AFX_MSG_MAP(CSuperVisSheet)
|
||||
ON_WM_DESTROY()
|
||||
//}}AFX_MSG_MAP
|
||||
ON_COMMAND(IDC_QUIT, OnQuit)
|
||||
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSuperVisSheet message handlers
|
||||
|
||||
void CSuperVisSheet::GetIniFilePath()
|
||||
{
|
||||
char szIniFile[256];
|
||||
char szDllDirectory[256]=".";
|
||||
|
||||
strncpy(szDllDirectory,SND_fn_szGetSoftDirectory(),sizeof(szDllDirectory)-1);
|
||||
|
||||
strncpy(szIniFile, szDllDirectory, sizeof(szIniFile) -1);
|
||||
strncat(szIniFile, "\\supervis.ini", sizeof(szIniFile) -1);
|
||||
|
||||
m_cIniFile = szIniFile;
|
||||
|
||||
}
|
||||
|
||||
void CSuperVisSheet::ReadIniFile()
|
||||
{
|
||||
|
||||
CSupervisApp* pApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
char buffer[256];
|
||||
|
||||
//Retrieve the .Ini path
|
||||
GetIniFilePath();
|
||||
|
||||
//
|
||||
//Get the registry configuration
|
||||
//
|
||||
|
||||
//Key for the application
|
||||
pApp->m_iActivePage = GetPrivateProfileInt("Settings", "ActivePage", 0, (LPCSTR)m_cIniFile);
|
||||
pApp->m_iWindowLeft = GetPrivateProfileInt("Settings", "WindowLeft", 232, (LPCSTR)m_cIniFile);
|
||||
pApp->m_iWindowTop = GetPrivateProfileInt("Settings", "WindowTop", 146, (LPCSTR)m_cIniFile);
|
||||
pApp->m_iWindowRight = GetPrivateProfileInt("Settings", "WindowRight", 1012, (LPCSTR)m_cIniFile);
|
||||
pApp->m_iWindowBottom = GetPrivateProfileInt("Settings", "WindowBottom", 855, (LPCSTR)m_cIniFile);
|
||||
|
||||
//SuperVisSetting key
|
||||
GetPrivateProfileString("SettingsPage", "BinaryLCBPath", "NoLCBPath", buffer, sizeof(buffer) - 1, (LPCSTR)m_cIniFile);
|
||||
pApp->m_cBinaryLCBPath = buffer;
|
||||
GetPrivateProfileString("SettingsPage", "BinaryLCBFileTitle", "NoLCBFileTitle", buffer, sizeof(buffer) - 1, (LPCSTR)m_cIniFile);
|
||||
pApp->m_cBinaryLCBFileTitle = buffer;
|
||||
pApp->m_bWindowOnTop = GetPrivateProfileInt("SettingsPage", "AlwaysOnTop", FALSE, (LPCSTR)m_cIniFile);
|
||||
pApp->m_iRefreshRate = GetPrivateProfileInt("SettingsPage", "RefreshRate", 500, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
//Key for the Mixer Page
|
||||
pApp->m_MixerPageRegKeys.iCheckBankId= GetPrivateProfileInt("MixerPage", "CheckBankId", 0, (LPCSTR)m_cIniFile);
|
||||
pApp->m_MixerPageRegKeys.iCheckResId= GetPrivateProfileInt("MixerPage", "CheckResId", 0, (LPCSTR)m_cIniFile);
|
||||
pApp->m_MixerPageRegKeys.bCheckFirstOccur= GetPrivateProfileInt("MixerPage", "CheckFirstOccur", 0, (LPCSTR)m_cIniFile);
|
||||
pApp->m_MixerPageRegKeys.iColTime= GetPrivateProfileInt("MixerPage", "ColTime", 77, (LPCSTR)m_cIniFile);
|
||||
pApp->m_MixerPageRegKeys.iColResName= GetPrivateProfileInt("MixerPage", "ColResName", 90, (LPCSTR)m_cIniFile);
|
||||
pApp->m_MixerPageRegKeys.iColResId= GetPrivateProfileInt("MixerPage", "ColResId", 35, (LPCSTR)m_cIniFile);
|
||||
pApp->m_MixerPageRegKeys.iColBankName= GetPrivateProfileInt("MixerPage", "ColBankName", 71, (LPCSTR)m_cIniFile);
|
||||
pApp->m_MixerPageRegKeys.iColBankId= GetPrivateProfileInt("MixerPage", "ColBankId", 54, (LPCSTR)m_cIniFile);
|
||||
pApp->m_MixerPageRegKeys.iColType = GetPrivateProfileInt("MixerPage", "ColType", 100, (LPCSTR)m_cIniFile);
|
||||
pApp->m_MixerPageRegKeys.iColVol= GetPrivateProfileInt("MixerPage", "ColVol", 50, (LPCSTR)m_cIniFile);
|
||||
pApp->m_MixerPageRegKeys.iColInfo= GetPrivateProfileInt("MixerPage", "ColInfo", 194, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
//Key for the EventsHistory Page
|
||||
pApp->m_EventPageRegKeys.iCheckBankId= GetPrivateProfileInt("EventHistoryPage", "CheckBankId", 0, (LPCSTR)m_cIniFile);
|
||||
pApp->m_EventPageRegKeys.iCheckEventId= GetPrivateProfileInt("EventHistoryPage", "CheckResId", 0, (LPCSTR)m_cIniFile);
|
||||
pApp->m_EventPageRegKeys.bCheckFirstOccur= GetPrivateProfileInt("EventHistoryPage", "CheckFirstOccur", 0, (LPCSTR)m_cIniFile);
|
||||
pApp->m_EventPageRegKeys.iColTime= GetPrivateProfileInt("EventHistoryPage", "ColTime", 75, (LPCSTR)m_cIniFile);
|
||||
pApp->m_EventPageRegKeys.iColEvtName= GetPrivateProfileInt("EventHistoryPage", "ColEvtName", 101, (LPCSTR)m_cIniFile);
|
||||
pApp->m_EventPageRegKeys.iColEvtId = GetPrivateProfileInt("EventHistoryPage", "ColEvtId", 52, (LPCSTR)m_cIniFile);
|
||||
pApp->m_EventPageRegKeys.iColBankName= GetPrivateProfileInt("EventHistoryPage", "ColBankName", 71, (LPCSTR)m_cIniFile);
|
||||
pApp->m_EventPageRegKeys.iColBankId= GetPrivateProfileInt("EventHistoryPage", "ColBankId", 51, (LPCSTR)m_cIniFile);
|
||||
pApp->m_EventPageRegKeys.iColEvtType = GetPrivateProfileInt("EventHistoryPage", "ColEvtType", 100, (LPCSTR)m_cIniFile);
|
||||
pApp->m_EventPageRegKeys.iColInfo = GetPrivateProfileInt("EventHistoryPage", "ColInfo", 212, (LPCSTR)m_cIniFile);
|
||||
|
||||
//Key for the Micro&Object Page
|
||||
pApp->m_RegKeyMicPage.iColMicId= GetPrivateProfileInt("MicroPage", "iColMicId", 75, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyMicPage.iColX= GetPrivateProfileInt("MicroPage", "iColX", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyMicPage.iColY= GetPrivateProfileInt("MicroPage", "iColY", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyMicPage.iColZ= GetPrivateProfileInt("MicroPage", "iColZ", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyMicPage.iColNx= GetPrivateProfileInt("MicroPage", "iColNx", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyMicPage.iColNy = GetPrivateProfileInt("MicroPage", "iColNy", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyMicPage.iColNz= GetPrivateProfileInt("MicroPage", "iColNz", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyMicPage.iColTx= GetPrivateProfileInt("MicroPage", "iColTx", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyMicPage.iColTy = GetPrivateProfileInt("MicroPage", "iColTy", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyMicPage.iColTz = GetPrivateProfileInt("MicroPage", "iColTz", 60, (LPCSTR)m_cIniFile);
|
||||
|
||||
pApp->m_RegKeyObjPage.iColObjId= GetPrivateProfileInt("ObjectPage", "iColObjId", 102, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyObjPage.iColX= GetPrivateProfileInt("ObjectPage", "iColX", 70, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyObjPage.iColY= GetPrivateProfileInt("ObjectPage", "iColY", 70, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyObjPage.iColZ= GetPrivateProfileInt("ObjectPage", "iColZ", 70, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyObjPage.iColFreq= GetPrivateProfileInt("ObjectPage", "iColFreq", 78, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyObjPage.iColVol = GetPrivateProfileInt("ObjectPage", "iColVol", 75, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyObjPage.iColAsso= GetPrivateProfileInt("ObjectPage", "iColAsso", 125, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
//Key for Volume Line & Theme Page
|
||||
pApp->m_RegKeyThemePage.iColVolId= GetPrivateProfileInt("ThemePage", "iColVolId", 200, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyThemePage.iColVol= GetPrivateProfileInt("ThemePage", "iColVol", 200, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
//Key for the Virtual Voices Page
|
||||
pApp->m_RegKeyVoicePage.iColVoiceId = GetPrivateProfileInt("VoicesPage", "iColVoiceId", 83, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyVoicePage.iColPaused = GetPrivateProfileInt("VoicesPage", "iColPaused", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyVoicePage.iColResPtr = GetPrivateProfileInt("VoicesPage", "iColResPtr", 75, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyVoicePage.iColResId = GetPrivateProfileInt("VoicesPage", "iColResId", 75, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyVoicePage.iColLoop= GetPrivateProfileInt("VoicesPage", "iColLoop", 45, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyVoicePage.iColNorm = GetPrivateProfileInt("VoicesPage", "iColNorm", 75, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyVoicePage.iColInstance = GetPrivateProfileInt("VoicesPage", "iColInstance", 68, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyVoicePage.iColAudibleV = GetPrivateProfileInt("VoicesPage", "iColAudibleV", 100, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyVoicePage.iColHardV = GetPrivateProfileInt("VoicesPage", "iColHardV", 100, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
//Key for the Wav Voices Page
|
||||
pApp->m_RegKeyWavVoicePage.iColWavVoiceId = GetPrivateProfileInt("WavVoicesPage", "iColWavVoiceId", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyWavVoicePage.iColResPtr = GetPrivateProfileInt("WavVoicesPage", "iColResPtr", 100, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyWavVoicePage.iColResId = GetPrivateProfileInt("WavVoicesPage", "iColResId", 75, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyWavVoicePage.iColPaused = GetPrivateProfileInt("WavVoicesPage", "iColPaused", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyWavVoicePage.iColVol = GetPrivateProfileInt("WavVoicesPage", "iColVol", 60, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyWavVoicePage.iColPan = GetPrivateProfileInt("WavVoicesPage", "iColPan", 75, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyWavVoicePage.iColSpace = GetPrivateProfileInt("WavVoicesPage", "iColSpace", 75, (LPCSTR)m_cIniFile);
|
||||
pApp->m_RegKeyWavVoicePage.iColFreq = GetPrivateProfileInt("WavVoicesPage", "iColFreq", 75, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
}
|
||||
|
||||
void CSuperVisSheet::WriteIniFile()
|
||||
{
|
||||
|
||||
char buffer[256];
|
||||
|
||||
CSupervisApp* pApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
//Key for the application
|
||||
sprintf(buffer, "%d", pApp->m_iActivePage);
|
||||
WritePrivateProfileString("Settings", "ActivePage", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_iWindowLeft);
|
||||
WritePrivateProfileString("Settings", "WindowLeft", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_iWindowTop);
|
||||
WritePrivateProfileString("Settings", "WindowTop", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_iWindowRight);
|
||||
WritePrivateProfileString("Settings", "WindowRight", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_iWindowBottom);
|
||||
WritePrivateProfileString("Settings", "WindowBottom", buffer, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
//SuperVisSetting key
|
||||
WritePrivateProfileString("SettingsPage", "LCBPath", (LPCSTR)(pApp->m_cBinaryLCBPath), (LPCSTR)m_cIniFile);
|
||||
WritePrivateProfileString("SettingsPage", "LCBFileTitle", (LPCSTR)(pApp->m_cBinaryLCBFileTitle), (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_bWindowOnTop);
|
||||
WritePrivateProfileString("SettingsPage", "AlwaysOnTop", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_iRefreshRate);
|
||||
WritePrivateProfileString("SettingsPage", "RefreshRate", buffer, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
|
||||
//Key for the Mixer Page
|
||||
sprintf(buffer, "%d", pApp->m_MixerPageRegKeys.iCheckBankId);
|
||||
WritePrivateProfileString("MixerPage", "RefreshRate", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_MixerPageRegKeys.iCheckResId);
|
||||
WritePrivateProfileString("MixerPage", "CheckResId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_MixerPageRegKeys.bCheckFirstOccur);
|
||||
WritePrivateProfileString("MixerPage", "CheckFirstOccur", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_MixerPageRegKeys.iColTime);
|
||||
WritePrivateProfileString("MixerPage", "ColTime", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_MixerPageRegKeys.iColResName);
|
||||
WritePrivateProfileString("MixerPage", "ColResName", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_MixerPageRegKeys.iColResId);
|
||||
WritePrivateProfileString("MixerPage", "ColResId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_MixerPageRegKeys.iColBankName);
|
||||
WritePrivateProfileString("MixerPage", "ColBankName", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_MixerPageRegKeys.iColBankId);
|
||||
WritePrivateProfileString("MixerPage", "ColBankId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_MixerPageRegKeys.iColVol);
|
||||
WritePrivateProfileString("MixerPage", "ColVol", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_MixerPageRegKeys.iColType);
|
||||
WritePrivateProfileString("MixerPage", "ColType", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_MixerPageRegKeys.iColInfo);
|
||||
WritePrivateProfileString("MixerPage", "ColInfo", buffer, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
//Key for the EventsHistory Page
|
||||
sprintf(buffer, "%d", pApp->m_EventPageRegKeys.iCheckBankId);
|
||||
WritePrivateProfileString("EventHistoryPage", "CheckBankId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_EventPageRegKeys.iCheckEventId);
|
||||
WritePrivateProfileString("EventHistoryPage", "CheckEventId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_EventPageRegKeys.bCheckFirstOccur);
|
||||
WritePrivateProfileString("EventHistoryPage", "CheckFirstOccur", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_EventPageRegKeys.iColTime);
|
||||
WritePrivateProfileString("EventHistoryPage", "ColTime", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_EventPageRegKeys.iColEvtName);
|
||||
WritePrivateProfileString("EventHistoryPage", "ColEvtName", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_EventPageRegKeys.iColEvtId);
|
||||
WritePrivateProfileString("EventHistoryPage", "ColEvtId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_EventPageRegKeys.iColBankName);
|
||||
WritePrivateProfileString("EventHistoryPage", "ColBankName", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_EventPageRegKeys.iColBankId);
|
||||
WritePrivateProfileString("EventHistoryPage", "ColBankId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_EventPageRegKeys.iColEvtType);
|
||||
WritePrivateProfileString("EventHistoryPage", "ColEvtType", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_EventPageRegKeys.iColInfo);
|
||||
WritePrivateProfileString("EventHistoryPage", "ColInfo", buffer, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
|
||||
//Key for the Micro&Object Page
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyMicPage.iColMicId);
|
||||
WritePrivateProfileString("MicroPage", "iColMicId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyMicPage.iColX);
|
||||
WritePrivateProfileString("MicroPage", "iColX", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyMicPage.iColY);
|
||||
WritePrivateProfileString("MicroPage", "iColY", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyMicPage.iColZ);
|
||||
WritePrivateProfileString("MicroPage", "iColZ", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyMicPage.iColNx);
|
||||
WritePrivateProfileString("MicroPage", "iColNx", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyMicPage.iColNy);
|
||||
WritePrivateProfileString("MicroPage", "iColNy", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyMicPage.iColNz);
|
||||
WritePrivateProfileString("MicroPage", "iColNz", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyMicPage.iColTx);
|
||||
WritePrivateProfileString("MicroPage", "iColTx", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyMicPage.iColTy);
|
||||
WritePrivateProfileString("MicroPage", "iColTy", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyMicPage.iColTz);
|
||||
WritePrivateProfileString("MicroPage", "iColTz", buffer, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyObjPage.iColObjId);
|
||||
WritePrivateProfileString("ObjectPage", "iColObjId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyObjPage.iColX);
|
||||
WritePrivateProfileString("ObjectPage", "iColX", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyObjPage.iColY);
|
||||
WritePrivateProfileString("ObjectPage", "iColY", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyObjPage.iColZ);
|
||||
WritePrivateProfileString("ObjectPage", "iColZ", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyObjPage.iColFreq);
|
||||
WritePrivateProfileString("ObjectPage", "iColFreq", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyObjPage.iColVol);
|
||||
WritePrivateProfileString("ObjectPage", "iColVol", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyObjPage.iColAsso);
|
||||
WritePrivateProfileString("ObjectPage", "iColAsso", buffer, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
//Key for Volume Line & Theme Page
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyThemePage.iColVolId);
|
||||
WritePrivateProfileString("ThemePage", "iColVolId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyThemePage.iColVol);
|
||||
WritePrivateProfileString("ThemePage", "iColVol", buffer, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
//Key for the Virtual Voices Page
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyVoicePage.iColVoiceId);
|
||||
WritePrivateProfileString("VoicesPage", "iColVoiceId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyVoicePage.iColPaused);
|
||||
WritePrivateProfileString("VoicesPage", "iColPaused", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyVoicePage.iColResPtr);
|
||||
WritePrivateProfileString("VoicesPage", "iColResPtr", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyVoicePage.iColResId);
|
||||
WritePrivateProfileString("VoicesPage", "iColResId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyVoicePage.iColLoop);
|
||||
WritePrivateProfileString("VoicesPage", "iColLoop", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyVoicePage.iColNorm);
|
||||
WritePrivateProfileString("VoicesPage", "iColNorm", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyVoicePage.iColInstance);
|
||||
WritePrivateProfileString("VoicesPage", "iColInstance", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyVoicePage.iColAudibleV);
|
||||
WritePrivateProfileString("VoicesPage", "iColAudibleV", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyVoicePage.iColHardV);
|
||||
WritePrivateProfileString("VoicesPage", "iColHardV", buffer, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
|
||||
//Key for the Wav Voices Page
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyWavVoicePage.iColWavVoiceId);
|
||||
WritePrivateProfileString("WavVoicesPage", "iColWavVoiceId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyWavVoicePage.iColResPtr);
|
||||
WritePrivateProfileString("WavVoicesPage", "iColResPtr", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyWavVoicePage.iColResId);
|
||||
WritePrivateProfileString("WavVoicesPage", "iColResId", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyWavVoicePage.iColPaused);
|
||||
WritePrivateProfileString("WavVoicesPage", "iColPaused", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyWavVoicePage.iColVol);
|
||||
WritePrivateProfileString("WavVoicesPage", "iColVol", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyWavVoicePage.iColPan);
|
||||
WritePrivateProfileString("WavVoicesPage", "iColPan", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyWavVoicePage.iColSpace);
|
||||
WritePrivateProfileString("WavVoicesPage", "iColSpace", buffer, (LPCSTR)m_cIniFile);
|
||||
sprintf(buffer, "%d", pApp->m_RegKeyWavVoicePage.iColFreq);
|
||||
WritePrivateProfileString("WavVoicesPage", "iColFreq", buffer, (LPCSTR)m_cIniFile);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
void CSuperVisSheet::AddControlPages()
|
||||
{
|
||||
|
||||
AddPage(&m_EventsHistoryPage);
|
||||
AddPage(&m_MixerPage);
|
||||
AddPage(&m_MicroAndObjectsPage);
|
||||
AddPage(&m_VoicesPage);
|
||||
AddPage(&m_WavVoicesPage);
|
||||
AddPage(&m_ThemesPage);
|
||||
AddPage(&m_SuperVisSettingPage);
|
||||
|
||||
|
||||
}
|
||||
|
||||
BOOL CSuperVisSheet::OnInitDialog()
|
||||
{
|
||||
|
||||
BOOL bResult = CPropertySheet::OnInitDialog();
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
pSuperVisApp->m_SuperVisThread->m_bIsPSheettActive = TRUE;
|
||||
|
||||
//
|
||||
//Little trick to add a button in a modeless CPropertySheet. A modeless
|
||||
//propertysheet doesnt have ok, cancel and apply buttons.
|
||||
//
|
||||
RECT rc;
|
||||
GetWindowRect (&rc);
|
||||
// Increase the height of the CPropertySheet by 30
|
||||
rc.bottom += 35;
|
||||
// Resize the CPropertySheet
|
||||
|
||||
MoveWindow (rc.left, rc.top, rc.right-rc.left, rc.bottom-rc.top);
|
||||
|
||||
// Convert to client coordinates
|
||||
ScreenToClient (&rc);
|
||||
// m_Button is of type CButton and is a member of CMySheet
|
||||
m_Button.Create ("&Quit", WS_CHILD | WS_VISIBLE | WS_TABSTOP,
|
||||
CRect (rc.right - 85, rc.bottom-35, rc.right - 10, rc.bottom-10),
|
||||
this, IDC_QUIT);
|
||||
|
||||
m_Button.SetFont( GetFont() );
|
||||
|
||||
//Set the always OnTop Key
|
||||
if(pSuperVisApp->m_bWindowOnTop)
|
||||
SetWindowPos(&wndTopMost ,0 ,0, 0, 0, SWP_NOREPOSITION | SWP_NOSIZE | SWP_NOMOVE);
|
||||
else
|
||||
SetWindowPos(&wndNoTopMost ,0 ,0, 0, 0, SWP_NOREPOSITION | SWP_NOSIZE | SWP_NOMOVE);
|
||||
|
||||
|
||||
//Move the window to where is was last time
|
||||
CRect Pos;
|
||||
Pos.left = pSuperVisApp->m_iWindowLeft;
|
||||
Pos.top= pSuperVisApp->m_iWindowTop;
|
||||
Pos.right = pSuperVisApp->m_iWindowRight;
|
||||
Pos.bottom = pSuperVisApp->m_iWindowBottom;
|
||||
|
||||
MoveWindow(Pos, FALSE);
|
||||
|
||||
|
||||
/*
|
||||
//Retrieve the Size of the Window
|
||||
m_bFirstSizing = TRUE;
|
||||
GetWindowRect(m_rOriginalSize);
|
||||
// ScreenToClient(&m_rOriginalSize);
|
||||
*/
|
||||
|
||||
return bResult;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
// Handler for button click of IDC_QUIT
|
||||
void CSuperVisSheet::OnQuit ()
|
||||
{
|
||||
|
||||
//Kill the propertysheet
|
||||
DestroyWindow();
|
||||
|
||||
//Desacitvate the Supervisater
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
pSuperVisApp->m_bSuperVisaterActive = FALSE;
|
||||
|
||||
|
||||
}
|
||||
|
||||
void CSuperVisSheet::PostNcDestroy()
|
||||
{
|
||||
|
||||
//Set the flag so we dont close the window a second time when the engine quit
|
||||
((CSupervisApp*)AfxGetApp())->m_SuperVisThread->m_bIsPSheettActive = FALSE;
|
||||
|
||||
//Set the flag for the engine know we are inactive
|
||||
((CSupervisApp*)AfxGetApp())->m_bSuperVisaterActive = FALSE;
|
||||
|
||||
//We erase everything
|
||||
delete this;
|
||||
|
||||
CPropertySheet::PostNcDestroy();
|
||||
}
|
||||
|
||||
BOOL CSuperVisSheet::OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo)
|
||||
{
|
||||
// If pHandlerInfo is NULL, then handle the message
|
||||
if (pHandlerInfo == NULL)
|
||||
{
|
||||
if (nID == ID_WATCH)
|
||||
{
|
||||
if (nCode == CN_COMMAND)
|
||||
{
|
||||
|
||||
m_EventsHistoryPage.SendEventInWatchList();
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return CPropertySheet::OnCmdMsg(nID, nCode, pExtra, pHandlerInfo);
|
||||
}
|
||||
|
||||
void CSuperVisSheet::SendDestroyMsg()
|
||||
{
|
||||
|
||||
PostMessage(WM_USER_DESTROY_WINDOW, 0, 0);
|
||||
|
||||
}
|
||||
|
||||
BOOL CSuperVisSheet::PreTranslateMessage(MSG* pMsg)
|
||||
{
|
||||
//We destroy the supervisheet here
|
||||
//We cannot pass the CWnd across thread and this cause problem while using updatedata
|
||||
if (pMsg->message == WM_USER_DESTROY_WINDOW){
|
||||
DestroyWindow();
|
||||
}
|
||||
|
||||
if (pMsg->message == WM_TIMER){
|
||||
|
||||
if(pMsg->wParam == WM_USER_TIMER){
|
||||
|
||||
//Process the timer message to refresh all the control
|
||||
RefreshSuperVisater();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return CPropertySheet::PreTranslateMessage(pMsg);
|
||||
}
|
||||
|
||||
void CSuperVisSheet::RefreshSuperVisater()
|
||||
{
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
CSingleLock sLock( pSuperVisApp->SuperVisMutex, FALSE );
|
||||
|
||||
//Wait for Mutex Object
|
||||
sLock.Lock( INFINITE );
|
||||
|
||||
//We look which page is active and we refresh it
|
||||
int iActivePageIndex = GetActiveIndex();
|
||||
|
||||
switch (iActivePageIndex)
|
||||
{
|
||||
|
||||
//EventsHistoryPage
|
||||
case 0:
|
||||
break;
|
||||
|
||||
//MixerPage
|
||||
case 1:
|
||||
break;
|
||||
|
||||
//MicroAndObjestsPage
|
||||
case 2:
|
||||
m_MicroAndObjectsPage.RefreshMicroList();
|
||||
m_MicroAndObjectsPage.RefreshObjectList();
|
||||
break;
|
||||
|
||||
//VoicesPage
|
||||
case 3:
|
||||
m_VoicesPage.RefreshVoiceList();
|
||||
break;
|
||||
|
||||
//WavVoicesPage
|
||||
case 4:
|
||||
m_WavVoicesPage.RefreshVoicesList();
|
||||
break;
|
||||
|
||||
//ThemePage
|
||||
case 5:
|
||||
m_ThemesPage.RefreshVolList();
|
||||
m_ThemesPage.RefreshTheme();
|
||||
break;
|
||||
|
||||
//SuperVisSettingPage
|
||||
case 6:
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
//Release Mutex Object
|
||||
sLock.Unlock();
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
void CSuperVisSheet::OnSizing(UINT fwSide, LPRECT pRect)
|
||||
{
|
||||
CPropertySheet::OnSizing(fwSide, pRect);
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
|
||||
if(m_bFirstSizing)
|
||||
{
|
||||
m_bFirstSizing = FALSE;
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->m_EventsHistoryPage.GetInitWindowSize();
|
||||
m_Button.GetWindowRect(m_ButtonInitSize);
|
||||
m_Button.ScreenToClient(&m_ButtonInitSize);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
CRect CurRect;
|
||||
GetWindowRect(&CurRect);
|
||||
int deltax = (pRect->right - pRect->left) - (m_rOriginalSize.right - m_rOriginalSize.left);
|
||||
int deltay = (pRect->bottom - pRect->top) - (m_rOriginalSize.bottom - m_rOriginalSize.top);
|
||||
|
||||
|
||||
//Move the Quit button
|
||||
CRect rect = m_ButtonInitSize;
|
||||
rect.right += deltax;
|
||||
rect.left = rect.right - (m_ButtonInitSize.right - m_ButtonInitSize.left);
|
||||
rect.bottom += deltay;
|
||||
m_Button.MoveWindow(rect);
|
||||
|
||||
//We look which page is active and we resize it
|
||||
int iActivePageIndex = GetActiveIndex();
|
||||
|
||||
switch (iActivePageIndex)
|
||||
{
|
||||
//VoicesPage
|
||||
case 0:
|
||||
|
||||
break;
|
||||
|
||||
//ThemePage
|
||||
case 1:
|
||||
|
||||
break;
|
||||
|
||||
//SuperVisSettingPage
|
||||
case 2:
|
||||
break;
|
||||
|
||||
//MixerPage
|
||||
case 3:
|
||||
break;
|
||||
|
||||
//MicroAndObjestsPage
|
||||
case 4:
|
||||
|
||||
break;
|
||||
|
||||
//EventsHistoryPage
|
||||
case 5:
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->m_EventsHistoryPage.SetWindowSize(deltax, deltay) ;
|
||||
break;
|
||||
|
||||
//WavVoicesPage
|
||||
case 6:
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
*/
|
||||
void CSuperVisSheet::OnDestroy()
|
||||
{
|
||||
CPropertySheet::OnDestroy();
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
pSuperVisApp->m_iActivePage = GetActiveIndex();
|
||||
|
||||
CRect Pos;
|
||||
GetWindowRect(Pos);
|
||||
|
||||
pSuperVisApp->m_iWindowLeft = Pos.left;
|
||||
pSuperVisApp->m_iWindowTop = Pos.top;
|
||||
pSuperVisApp->m_iWindowRight = Pos.right;
|
||||
pSuperVisApp->m_iWindowBottom = Pos.bottom;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
LRESULT CSuperVisSheet::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
|
||||
//The thread just received a message to do OLE automation with soundeditor
|
||||
//to get the bank name and the Event name
|
||||
//Wparam : index of the array to display
|
||||
//LParam : Event to synchronise the two thread
|
||||
if (message == WM_SETNAME_EVENT){
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->m_EventsHistoryPage.SetEventsName(long(wParam));
|
||||
|
||||
pSuperVisApp->AddHistoSyncEvent->SetEvent();
|
||||
}
|
||||
|
||||
//The thread just received a message to do OLE automation with soundeditor
|
||||
//to get the bank name and the first occurence Event name
|
||||
//Wparam : index of the array to display
|
||||
//LParam : Event to synchronise the two thread
|
||||
if (message == WM_SETNAME_FIRST_OCCUR_EVENT){
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->m_EventsHistoryPage.SetFirstOccurEventsName(long(wParam));
|
||||
|
||||
pSuperVisApp->AddHistoSyncEvent->SetEvent();
|
||||
|
||||
}
|
||||
|
||||
//The thread just received a message to do OLE automation with soundeditor
|
||||
//to get the bank name and the res name
|
||||
//Wparam : index of the array to display
|
||||
//LParam : Event to synchronise the two thread
|
||||
if (message == WM_SETNAME_RES){
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->m_MixerPage.SetResName(long(wParam));
|
||||
|
||||
pSuperVisApp->AddHistoSyncEvent->SetEvent();
|
||||
|
||||
}
|
||||
|
||||
//The thread just received a message to do OLE automation with soundeditor
|
||||
//to get the bank name and the first occurence res name
|
||||
//Wparam : index of the array to display
|
||||
//LParam : Event to synchronise the two thread
|
||||
if (message == WM_SETNAME_FIRST_OCCUR_RES){
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->m_MixerPage.SetFirstOccurResName(long(wParam));
|
||||
|
||||
pSuperVisApp->AddHistoSyncEvent->SetEvent();
|
||||
|
||||
}
|
||||
|
||||
//The thread just received a message to do OLE automation with soundeditor
|
||||
//to get the bank name and the first occurence res name
|
||||
//Wparam : index of the array to display
|
||||
//LParam : Event to synchronise the two thread
|
||||
if (message == WM_RESETLIST){
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
pSuperVisApp->m_SuperVisThread->SuperVisSheet->m_MixerPage.ResetReslistButton();
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
return CPropertySheet::DefWindowProc(message, wParam, lParam);
|
||||
}
|
@@ -0,0 +1,91 @@
|
||||
#if !defined(AFX_SUPERVISSHEET_H__FB8CCD4A_DD7D_11D2_9F40_00104B6833D0__INCLUDED_)
|
||||
#define AFX_SUPERVISSHEET_H__FB8CCD4A_DD7D_11D2_9F40_00104B6833D0__INCLUDED_
|
||||
|
||||
|
||||
#include "SuperVisSettingsPage.h" // Added by ClassView
|
||||
#include "EventsHistoryPage.h" // Added by ClassView
|
||||
#include "MicroAndObjectsPage.h" // Added by ClassView
|
||||
#include "MixerPage.h" // Added by ClassView
|
||||
#include "ThemesPage.h" // Added by ClassView
|
||||
#include "VoicesPage.h" // Added by ClassView
|
||||
#include "WavVoicesPage.h" // Added by ClassView
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
// SuperVisSheet.h : header file
|
||||
//
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSuperVisSheet
|
||||
|
||||
class CSuperVisSheet : public CPropertySheet
|
||||
{
|
||||
DECLARE_DYNAMIC(CSuperVisSheet)
|
||||
|
||||
// Construction
|
||||
public:
|
||||
CSuperVisSheet(UINT nIDCaption, CWnd* pParentWnd = NULL, UINT iSelectPage = 0);
|
||||
CSuperVisSheet(LPCTSTR pszCaption, CWnd* pParentWnd = NULL, UINT iSelectPage = 0);
|
||||
CSuperVisSheet();
|
||||
|
||||
|
||||
protected:
|
||||
void AddControlPages(void);
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CSuperVisSheet)
|
||||
public:
|
||||
virtual BOOL OnInitDialog();
|
||||
virtual BOOL OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo);
|
||||
virtual BOOL PreTranslateMessage(MSG* pMsg);
|
||||
protected:
|
||||
virtual void PostNcDestroy();
|
||||
virtual LRESULT DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam);
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
public:
|
||||
CString m_cIniFile;
|
||||
void WriteIniFile();
|
||||
void ReadIniFile();
|
||||
void GetIniFilePath();
|
||||
CRect m_ButtonInitSize;
|
||||
BOOL m_bFirstSizing;
|
||||
CRect m_rOriginalSize;
|
||||
void RefreshSuperVisater();
|
||||
CWavVoicesPage m_WavVoicesPage;
|
||||
void SendDestroyMsg();
|
||||
BOOL m_bIsPShtActive;
|
||||
CButton m_Button;
|
||||
CVoicesPage m_VoicesPage;
|
||||
CThemesPage m_ThemesPage;
|
||||
CSuperVisSettingsPage m_SuperVisSettingPage;
|
||||
CMixerPage m_MixerPage;
|
||||
CMicroAndObjectsPage m_MicroAndObjectsPage;
|
||||
CEventsHistoryPage m_EventsHistoryPage;
|
||||
|
||||
virtual ~CSuperVisSheet();
|
||||
|
||||
// Generated message map functions
|
||||
protected:
|
||||
//{{AFX_MSG(CSuperVisSheet)
|
||||
afx_msg void OnDestroy();
|
||||
afx_msg void OnQuit();
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
};
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_SUPERVISSHEET_H__FB8CCD4A_DD7D_11D2_9F40_00104B6833D0__INCLUDED_)
|
244
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/SuperVisThread.cpp
Normal file
244
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/SuperVisThread.cpp
Normal file
@@ -0,0 +1,244 @@
|
||||
// SuperVisThread.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "supervis.h"
|
||||
#include "SuperVisThread.h"
|
||||
|
||||
#include "SNDinc.h"
|
||||
|
||||
#include "snddll.h"
|
||||
|
||||
#include "snddbg.h"
|
||||
#include "sndplay.h"
|
||||
#include "sndvect.h"
|
||||
#include "sndres.h"
|
||||
#include "sndini.h"
|
||||
#include "sndtheme.h"
|
||||
#include "sndvirt.h"
|
||||
#include "sndevent.h"
|
||||
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSuperVisThread
|
||||
|
||||
IMPLEMENT_DYNCREATE(CSuperVisThread, CWinThread)
|
||||
|
||||
CSuperVisThread::CSuperVisThread()
|
||||
{
|
||||
}
|
||||
|
||||
CSuperVisThread::~CSuperVisThread()
|
||||
{
|
||||
}
|
||||
|
||||
BOOL CSuperVisThread::InitInstance()
|
||||
{
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
|
||||
bAutomationActivated = FALSE;
|
||||
|
||||
//Create the modeless PropertySheet. This is the main dialog
|
||||
SuperVisSheet = new CSuperVisSheet;
|
||||
SuperVisSheet->Create(NULL, WS_OVERLAPPEDWINDOW | WS_VISIBLE , 0 );
|
||||
|
||||
//Activate the CPropertyPage.
|
||||
SuperVisSheet->SetActivePage(0);
|
||||
SuperVisSheet->SetActivePage(1);
|
||||
SuperVisSheet->SetActivePage(2);
|
||||
SuperVisSheet->SetActivePage(3);
|
||||
SuperVisSheet->SetActivePage(4);
|
||||
SuperVisSheet->SetActivePage(5);
|
||||
SuperVisSheet->SetActivePage(6);
|
||||
|
||||
//Focus on page on startup
|
||||
SuperVisSheet->SetActivePage(pSuperVisApp->m_iActivePage);
|
||||
|
||||
|
||||
SuperVisSheet->ShowWindow(SW_SHOW);
|
||||
|
||||
|
||||
//Start the Timer...
|
||||
SuperVisSheet->m_SuperVisSettingPage.m_uiRefreshRate = pSuperVisApp->m_iRefreshRate;
|
||||
|
||||
UINT ret = SuperVisSheet->SetTimer( WM_USER_TIMER, SuperVisSheet->m_SuperVisSettingPage.m_uiRefreshRate, NULL );
|
||||
if (ret != WM_USER_TIMER)
|
||||
MessageBox(NULL, "SetTimer Failure", "Error!", MB_OK);
|
||||
|
||||
|
||||
//Signal the Other Thread that this Thread have finished loading
|
||||
pSuperVisApp->LaunchSuperVisEvent->SetEvent();
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
int CSuperVisThread::ExitInstance()
|
||||
{
|
||||
//UnInstall Automation objects
|
||||
ExitAutomation();
|
||||
|
||||
return CWinThread::ExitInstance();
|
||||
}
|
||||
|
||||
BEGIN_MESSAGE_MAP(CSuperVisThread, CWinThread)
|
||||
//{{AFX_MSG_MAP(CSuperVisThread)
|
||||
// NOTE - the ClassWizard will add and remove mapping macros here.
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSuperVisThread message handlers
|
||||
|
||||
BOOL CSuperVisThread::InitAutomation()
|
||||
{
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
if(pSuperVisApp->m_cLCBPath == "NoProjectTitle")
|
||||
{
|
||||
//The app didnt return ProjectTitle. We are in binary mode...
|
||||
if( pSuperVisApp->m_cBinaryLCBPath != "NoLCBPath")
|
||||
return Automation(pSuperVisApp->m_cBinaryLCBPath);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
//We use the projectitle returned by the app.
|
||||
return Automation(pSuperVisApp->m_cLCBPath);
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
BOOL CSuperVisThread::Automation(CString _cProfectFile)
|
||||
{
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
m_IEditor = new ISoundEditor;
|
||||
|
||||
|
||||
if(OleInitialize(NULL) == OLE_E_WRONGCOMPOBJ )
|
||||
{
|
||||
AfxMessageBox("The versions of COMPOBJ.DLL and OLE2.DLL on your machine are incompatible with each other.");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
COleObjectFactory::RegisterAll();
|
||||
|
||||
|
||||
// Sound editor init
|
||||
if (!m_IEditor->CreateDispatch(_T("SoundEditor.Document")))
|
||||
{
|
||||
AfxMessageBox("Could Not Load SoundEditor. Check if it is installed on your computer and be sure to have it started once before using Supervisater.\n This will let know Windows where to find it");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (!m_IEditor->OpenDocument(_cProfectFile))
|
||||
{
|
||||
AfxMessageBox("Could not open the SoundEditor file project:" + _cProfectFile + "\nBrowse for a valid on");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
//Get all groups
|
||||
m_IGroups = new IEventGroups;
|
||||
m_IGroups->AttachDispatch(m_IEditor->GetEventGroups());
|
||||
|
||||
|
||||
//Enable and disable controls
|
||||
InitAutomationControls();
|
||||
|
||||
bAutomationActivated = TRUE;
|
||||
|
||||
return TRUE;
|
||||
|
||||
}
|
||||
|
||||
void CSuperVisThread::ExitAutomation()
|
||||
{
|
||||
|
||||
if(bAutomationActivated)
|
||||
{
|
||||
|
||||
//Close The SoundEditor document
|
||||
m_IEditor->ReleaseDispatch();
|
||||
|
||||
|
||||
//delete soundeditor object
|
||||
/*delete m_IEditor;
|
||||
delete m_IGroups;
|
||||
*/
|
||||
|
||||
//Remove Ole object
|
||||
OleUninitialize();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
BOOL CSuperVisThread::PreTranslateMessage(MSG* pMsg)
|
||||
{
|
||||
|
||||
//The thread just received a message to Init OLE automation with soundeditor
|
||||
//Wparam : not used
|
||||
//LParam : Event to synchronise the two thread
|
||||
if (pMsg->message == WM_INIT_AUTOMATION){
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
InitAutomation();
|
||||
|
||||
|
||||
SetEvent((HANDLE)(pMsg->lParam));
|
||||
|
||||
}
|
||||
|
||||
//The thread just received a message to Exit OLE automation with soundeditor
|
||||
//Wparam : not used
|
||||
//LParam : Event to synchronise the two thread
|
||||
if (pMsg->message == WM_EXIT_AUTOMATION){
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
ExitAutomation();
|
||||
|
||||
SetEvent((HANDLE)(pMsg->lParam));
|
||||
|
||||
}
|
||||
|
||||
return CWinThread::PreTranslateMessage(pMsg);
|
||||
}
|
||||
|
||||
|
||||
void CSuperVisThread::InitAutomationControls()
|
||||
{
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
//
|
||||
//This function init all controls related to automation on all property page
|
||||
//
|
||||
|
||||
//Enable the save button on the Mixer Page
|
||||
((CButton *)(pSuperVisApp->m_SuperVisThread->SuperVisSheet->m_MixerPage.GetDlgItem(IDC_SAVE)))->EnableWindow( TRUE );
|
||||
|
||||
//Disable the browse for LCB button in the SuperVisetting page
|
||||
((CButton *)(pSuperVisApp->m_SuperVisThread->SuperVisSheet->m_SuperVisSettingPage.GetDlgItem(IDC_BROWSE_FOR_LCB)))->EnableWindow( FALSE );
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@@ -0,0 +1,64 @@
|
||||
#if !defined(AFX_SUPERVISTHREAD_H__E3CA3806_EC2C_11D2_9F5E_00104B6833D0__INCLUDED_)
|
||||
#define AFX_SUPERVISTHREAD_H__E3CA3806_EC2C_11D2_9F5E_00104B6833D0__INCLUDED_
|
||||
|
||||
#include "soundeditor.h" // Added by ClassView
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
// SuperVisThread.h : header file
|
||||
//
|
||||
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSuperVisThread thread
|
||||
|
||||
class CSuperVisThread : public CWinThread
|
||||
{
|
||||
DECLARE_DYNCREATE(CSuperVisThread)
|
||||
protected:
|
||||
CSuperVisThread(); // protected constructor used by dynamic creation
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
void InitAutomationControls();
|
||||
BOOL Automation(CString _cProfectFile);
|
||||
BOOL bAutomationActivated;
|
||||
IEventGroups *m_IGroups;
|
||||
void ExitAutomation();
|
||||
BOOL InitAutomation();
|
||||
ISoundEditor *m_IEditor;
|
||||
IResource m_Resource;
|
||||
BOOL m_bIsPSheettActive;
|
||||
CSuperVisSheet * SuperVisSheet;
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CSuperVisThread)
|
||||
public:
|
||||
virtual BOOL InitInstance();
|
||||
virtual int ExitInstance();
|
||||
virtual BOOL PreTranslateMessage(MSG* pMsg);
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
virtual ~CSuperVisThread();
|
||||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CSuperVisThread)
|
||||
// NOTE - the ClassWizard will add and remove member functions here.
|
||||
//}}AFX_MSG
|
||||
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_SUPERVISTHREAD_H__E3CA3806_EC2C_11D2_9F5E_00104B6833D0__INCLUDED_)
|
270
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/ThemesPage.cpp
Normal file
270
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/ThemesPage.cpp
Normal file
@@ -0,0 +1,270 @@
|
||||
// ThemesPage.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "supervis.h"
|
||||
#include "ThemesPage.h"
|
||||
|
||||
|
||||
//CPA
|
||||
#include "SNDinc.h"
|
||||
#include "snddll.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CThemesPage property page
|
||||
|
||||
IMPLEMENT_DYNCREATE(CThemesPage, CPropertyPage)
|
||||
|
||||
CThemesPage::CThemesPage() : CPropertyPage(CThemesPage::IDD)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CThemesPage)
|
||||
m_cAskedTheme = _T("");
|
||||
m_cCurrentBridge = _T("");
|
||||
m_cCurrentPart = _T("");
|
||||
m_cCurrentTheme = _T("");
|
||||
m_cState = _T("");
|
||||
m_cAskedThemeBank = _T("");
|
||||
m_cAskedThemeId = _T("");
|
||||
m_cAskedThemePointer = _T("");
|
||||
m_cAskedThemeResId = _T("");
|
||||
m_cCurrentThemeBank = _T("");
|
||||
m_cCurrentThemeId = _T("");
|
||||
m_cCurrentThemeResId = _T("");
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
CThemesPage::~CThemesPage()
|
||||
{
|
||||
}
|
||||
|
||||
void CThemesPage::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CPropertyPage::DoDataExchange(pDX);
|
||||
//{{AFX_DATA_MAP(CThemesPage)
|
||||
DDX_Control(pDX, IDC_VOLUME_LINE_LIST, m_VolListCtrl);
|
||||
DDX_Text(pDX, IDC_CURRENT_BRIDGE, m_cCurrentBridge);
|
||||
DDX_Text(pDX, IDC_CURRENT_PART, m_cCurrentPart);
|
||||
DDX_Text(pDX, IDC_CURRENT_THEME, m_cCurrentTheme);
|
||||
DDX_Text(pDX, IDC_STATE, m_cState);
|
||||
DDX_Text(pDX, IDC_ASKED_THEME_BANK, m_cAskedThemeBank);
|
||||
DDX_Text(pDX, IDC_ASKED_THEME_ID, m_cAskedThemeId);
|
||||
DDX_Text(pDX, IDC_ASKED_THEME_POINTER, m_cAskedThemePointer);
|
||||
DDX_Text(pDX, IDC_ASKED_THEME_RES_ID, m_cAskedThemeResId);
|
||||
DDX_Text(pDX, IDC_CURRENT_THEME_BANK_ID, m_cCurrentThemeBank);
|
||||
DDX_Text(pDX, IDC_CURRENT_THEME_ID, m_cCurrentThemeId);
|
||||
DDX_Text(pDX, IDC_CURRENT_THEME_RES_ID, m_cCurrentThemeResId);
|
||||
//}}AFX_DATA_MAP
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CThemesPage, CPropertyPage)
|
||||
//{{AFX_MSG_MAP(CThemesPage)
|
||||
ON_WM_DESTROY()
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CThemesPage message handlers
|
||||
|
||||
BOOL CThemesPage::OnInitDialog()
|
||||
{
|
||||
CPropertyPage::OnInitDialog();
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
//Initialise the ClistCtrl containing volume line descriptions
|
||||
LV_COLUMN* lvc;
|
||||
|
||||
lvc = (LV_COLUMN*)malloc(sizeof(LV_COLUMN));
|
||||
|
||||
|
||||
lvc->mask = LVCF_FMT |LVCF_SUBITEM
|
||||
| LVCF_TEXT | LVCF_WIDTH; // members contain valid information
|
||||
lvc->fmt = LVCFMT_LEFT; // Alignment of the column
|
||||
lvc->cx = pSuperVisApp->m_RegKeyThemePage.iColVolId; // width of the column, in pixels
|
||||
lvc->pszText = "Volume Line Id"; // column heading
|
||||
lvc->iSubItem = 0; // index of subitem associated with column
|
||||
m_VolListCtrl.InsertColumn(0, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "Volume"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyThemePage.iColVol; // width of the column, in pixels
|
||||
lvc->iSubItem = 1; // index of subitem associated with column
|
||||
m_VolListCtrl.InsertColumn(1, lvc);
|
||||
|
||||
free( lvc );
|
||||
|
||||
|
||||
//Init Theme edit box with nohing
|
||||
m_cAskedTheme = "None";
|
||||
m_cCurrentBridge = "0";
|
||||
m_cCurrentPart = "None";
|
||||
m_cCurrentTheme = "None";
|
||||
m_cState = "No State";
|
||||
|
||||
UpdateData(FALSE);
|
||||
|
||||
return TRUE; // return TRUE unless you set the focus to a control
|
||||
// EXCEPTION: OCX Property Pages should return FALSE
|
||||
}
|
||||
|
||||
void CThemesPage::RefreshVolList()
|
||||
{
|
||||
|
||||
long i;
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
|
||||
//Clear the list
|
||||
m_VolListCtrl.DeleteAllItems();
|
||||
|
||||
|
||||
//Cycle through the pointer Array to filter
|
||||
for (i = 0; i < pSuperVisApp->m_apVolumeLine.GetSize(); i ++ )
|
||||
{
|
||||
AddVolumeToList(i);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void CThemesPage::AddVolumeToList(long lIndex)
|
||||
{
|
||||
|
||||
VolumeArrayElement *pVol;
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
pVol = (VolumeArrayElement *)(pSuperVisApp->m_apVolumeLine.GetAt(lIndex));
|
||||
|
||||
//Retrieve data from the control
|
||||
PostMessage(WM_USER_UPDATE_DATA_TRUE, 0, 0);
|
||||
|
||||
char buffer[128];
|
||||
|
||||
//Display item
|
||||
sprintf(buffer,"0x%x", pVol->lId);
|
||||
m_VolListCtrl.InsertItem( 0, buffer );
|
||||
|
||||
|
||||
//Set the item data with the Micro Array index, to be used later for drag&drop, pop-memnu, etc.
|
||||
m_VolListCtrl.SetItemData( 0, (DWORD)lIndex );
|
||||
|
||||
|
||||
//Volume line volume....doh!
|
||||
sprintf(buffer, "%d", pVol->lVol);
|
||||
m_VolListCtrl.SetItem(0, 1, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
//Refresh data from the control
|
||||
PostMessage(WM_USER_UPDATE_DATA_FALSE, 0, 0);
|
||||
|
||||
}
|
||||
|
||||
void CThemesPage::RefreshTheme()
|
||||
{
|
||||
|
||||
tduRefRes CurrentTheme, AskedTheme;
|
||||
long lIdPart,lIdLoop;
|
||||
char buffer[256];
|
||||
SndBool bTransiting;
|
||||
|
||||
unsigned long ulBankId, ulEventId;
|
||||
|
||||
|
||||
if (dbgSND_fn_bGetThemePosition(&CurrentTheme, &lIdPart, &lIdLoop))
|
||||
{
|
||||
sprintf(buffer,"0x%x",CurrentTheme.pstPtr);
|
||||
m_cCurrentTheme = buffer;
|
||||
|
||||
sprintf(buffer,"0x%x",CurrentTheme.pstPtr->Id);
|
||||
m_cCurrentThemeId = buffer;
|
||||
|
||||
ulBankId = (0xFFFF0000 & CurrentTheme.pstPtr->Id) >> 16;
|
||||
sprintf(buffer,"%d",ulBankId);
|
||||
m_cCurrentThemeBank = buffer;
|
||||
|
||||
ulEventId= (0x0000FFFF & CurrentTheme.pstPtr->Id);
|
||||
sprintf(buffer,"%d",ulEventId);
|
||||
m_cCurrentThemeResId = buffer;
|
||||
|
||||
sprintf(buffer,"%x",lIdPart);
|
||||
m_cCurrentPart = buffer;
|
||||
|
||||
sprintf(buffer," %d",lIdLoop);
|
||||
m_cCurrentBridge = buffer;
|
||||
|
||||
|
||||
if (dbgSND_fn_bGetAskedTheme(&AskedTheme, &bTransiting))
|
||||
{
|
||||
|
||||
sprintf(buffer,"0x%x",AskedTheme.pstPtr);
|
||||
m_cAskedTheme = buffer;
|
||||
|
||||
sprintf(buffer,"0x%x",AskedTheme.pstPtr->Id);
|
||||
m_cAskedThemeId = buffer;
|
||||
|
||||
|
||||
ulBankId = (0xFFFF0000 & AskedTheme.pstPtr->Id) >> 16;
|
||||
sprintf(buffer,"%d",ulBankId);
|
||||
m_cAskedThemeBank = buffer;
|
||||
|
||||
ulEventId= (0x0000FFFF & AskedTheme.pstPtr->Id);
|
||||
sprintf(buffer,"%d",ulEventId);
|
||||
m_cAskedThemeResId = buffer;
|
||||
|
||||
if (bTransiting)
|
||||
sprintf(buffer,"Transiting...");
|
||||
else
|
||||
sprintf(buffer,"Waiting Before Transition...");
|
||||
m_cState = buffer;
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
sprintf(buffer,"None");
|
||||
|
||||
m_cCurrentPart = buffer;
|
||||
m_cCurrentTheme = buffer;
|
||||
m_cAskedTheme = buffer;
|
||||
|
||||
|
||||
sprintf(buffer,"");
|
||||
m_cCurrentThemeId = buffer;
|
||||
m_cCurrentThemeBank = buffer;
|
||||
m_cCurrentThemeResId = buffer;
|
||||
m_cCurrentBridge = buffer;
|
||||
m_cAskedThemeId = buffer;
|
||||
m_cAskedThemeBank = buffer;
|
||||
m_cAskedThemeResId = buffer;
|
||||
m_cState = buffer;
|
||||
|
||||
}
|
||||
|
||||
UpdateData(FALSE);
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
void CThemesPage::OnDestroy()
|
||||
{
|
||||
CPropertyPage::OnDestroy();
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
int ColWidth = m_VolListCtrl.GetColumnWidth(0);
|
||||
pSuperVisApp->m_RegKeyThemePage.iColVolId= ColWidth;
|
||||
ColWidth = m_VolListCtrl.GetColumnWidth(1);
|
||||
pSuperVisApp->m_RegKeyThemePage.iColVol= ColWidth;
|
||||
}
|
84
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/ThemesPage.h
Normal file
84
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/ThemesPage.h
Normal file
@@ -0,0 +1,84 @@
|
||||
#if !defined(AFX_THEMESPAGE_H__FA1253D2_DE04_11D2_9F40_00104B6833D0__INCLUDED_)
|
||||
#define AFX_THEMESPAGE_H__FA1253D2_DE04_11D2_9F40_00104B6833D0__INCLUDED_
|
||||
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
// ThemesPage.h : header file
|
||||
//
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CThemesPage dialog
|
||||
|
||||
|
||||
|
||||
//Micro Structure used by the Supervisater
|
||||
typedef struct VolumeArrayElement{
|
||||
|
||||
long lId;
|
||||
long lVol;
|
||||
|
||||
}VolumeArrayElement;
|
||||
|
||||
|
||||
typedef struct RegKeyThemePage{
|
||||
|
||||
int iColVolId;
|
||||
int iColVol;
|
||||
|
||||
}RegKeyThemePage;
|
||||
|
||||
|
||||
class CThemesPage : public CPropertyPage
|
||||
{
|
||||
DECLARE_DYNCREATE(CThemesPage)
|
||||
|
||||
// Construction
|
||||
public:
|
||||
void RefreshTheme();
|
||||
void AddVolumeToList(long lIndex);
|
||||
void RefreshVolList();
|
||||
CThemesPage();
|
||||
~CThemesPage();
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CThemesPage)
|
||||
enum { IDD = IDD_THEMES_PAGE };
|
||||
CListCtrl m_VolListCtrl;
|
||||
CString m_cAskedTheme;
|
||||
CString m_cCurrentBridge;
|
||||
CString m_cCurrentPart;
|
||||
CString m_cCurrentTheme;
|
||||
CString m_cState;
|
||||
CString m_cAskedThemeBank;
|
||||
CString m_cAskedThemeId;
|
||||
CString m_cAskedThemePointer;
|
||||
CString m_cAskedThemeResId;
|
||||
CString m_cCurrentThemeBank;
|
||||
CString m_cCurrentThemeId;
|
||||
CString m_cCurrentThemeResId;
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generate virtual function overrides
|
||||
//{{AFX_VIRTUAL(CThemesPage)
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CThemesPage)
|
||||
virtual BOOL OnInitDialog();
|
||||
afx_msg void OnDestroy();
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_THEMESPAGE_H__FA1253D2_DE04_11D2_9F40_00104B6833D0__INCLUDED_)
|
358
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/VoicesPage.cpp
Normal file
358
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/VoicesPage.cpp
Normal file
@@ -0,0 +1,358 @@
|
||||
// VoicesPage.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "supervis.h"
|
||||
#include "VoicesPage.h"
|
||||
|
||||
//ACP Virtual Voice
|
||||
#include "sndvirt.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CVoicesPage property page
|
||||
|
||||
IMPLEMENT_DYNCREATE(CVoicesPage, CPropertyPage)
|
||||
|
||||
CVoicesPage::CVoicesPage() : CPropertyPage(CVoicesPage::IDD)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CVoicesPage)
|
||||
m_iMaxVoices = 0;
|
||||
m_iUsedVoices = 0;
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
CVoicesPage::~CVoicesPage()
|
||||
{
|
||||
}
|
||||
|
||||
void CVoicesPage::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CPropertyPage::DoDataExchange(pDX);
|
||||
//{{AFX_DATA_MAP(CVoicesPage)
|
||||
DDX_Control(pDX, IDC_VOICES_COMBO, m_VoicesCombo);
|
||||
DDX_Control(pDX, IDC_VOICES_LIST, m_VoicesListCtrl);
|
||||
DDX_Text(pDX, IDC_MAX_VOICES, m_iMaxVoices);
|
||||
DDX_Text(pDX, IDC_USED_VOICES, m_iUsedVoices);
|
||||
//}}AFX_DATA_MAP
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CVoicesPage, CPropertyPage)
|
||||
//{{AFX_MSG_MAP(CVoicesPage)
|
||||
ON_WM_DESTROY()
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CVoicesPage message handlers
|
||||
|
||||
BOOL CVoicesPage::OnInitDialog()
|
||||
{
|
||||
CPropertyPage::OnInitDialog();
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
//Initialise the ClistCtrl containing virtual voices descriptions
|
||||
LV_COLUMN* lvc;
|
||||
|
||||
lvc = (LV_COLUMN*)malloc(sizeof(LV_COLUMN));
|
||||
|
||||
lvc->mask = LVCF_FMT |LVCF_SUBITEM
|
||||
| LVCF_TEXT | LVCF_WIDTH; // members contain valid information
|
||||
lvc->fmt = LVCFMT_LEFT; // Alignment of the column
|
||||
lvc->cx = pSuperVisApp->m_RegKeyVoicePage.iColVoiceId; // width of the column, in pixels
|
||||
lvc->pszText = "Voices Id"; // column heading
|
||||
lvc->iSubItem = 0; // index of subitem associated with column
|
||||
m_VoicesListCtrl.InsertColumn(0, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "Paused?"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyVoicePage.iColPaused; // width of the column, in pixels
|
||||
lvc->iSubItem = 1; // index of subitem associated with column
|
||||
m_VoicesListCtrl.InsertColumn(1, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "Res Ptr"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyVoicePage.iColResPtr; // width of the column, in pixels
|
||||
lvc->iSubItem = 2; // index of subitem associated with column
|
||||
m_VoicesListCtrl.InsertColumn(2, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "Res Id"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyVoicePage.iColResId; // width of the column, in pixels
|
||||
lvc->iSubItem = 3; // index of subitem associated with column
|
||||
m_VoicesListCtrl.InsertColumn(3, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "Loop"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyVoicePage.iColLoop; // width of the column, in pixels
|
||||
lvc->iSubItem = 4; // index of subitem associated with column
|
||||
m_VoicesListCtrl.InsertColumn(4, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "Norm"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyVoicePage.iColNorm; // width of the column, in pixels
|
||||
lvc->iSubItem = 5; // index of subitem associated with column
|
||||
m_VoicesListCtrl.InsertColumn(5, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "Instance"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyVoicePage.iColInstance; // width of the column, in pixels
|
||||
lvc->iSubItem = 6; // index of subitem associated with column
|
||||
m_VoicesListCtrl.InsertColumn(6, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "Audible Voice"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyVoicePage.iColAudibleV; // width of the column, in pixels
|
||||
lvc->iSubItem = 7; // index of subitem associated with column
|
||||
m_VoicesListCtrl.InsertColumn(7, lvc);
|
||||
|
||||
lvc->pszText = "Hard Voice"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyVoicePage.iColHardV; // width of the column, in pixels
|
||||
lvc->iSubItem = 8; // index of subitem associated with column
|
||||
m_VoicesListCtrl.InsertColumn(8, lvc);
|
||||
|
||||
free( lvc );
|
||||
|
||||
//init module ComboBox so GetCurSel() wont return a CB_ERR
|
||||
m_VoicesCombo.SetCurSel(0);
|
||||
|
||||
|
||||
UpdateData(FALSE);
|
||||
|
||||
|
||||
return TRUE; // return TRUE unless you set the focus to a control
|
||||
// EXCEPTION: OCX Property Pages should return FALSE
|
||||
}
|
||||
|
||||
void CVoicesPage::RefreshVoiceList()
|
||||
{
|
||||
|
||||
int i;
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
|
||||
//Get the module currently selected...
|
||||
int iSelectedModule = m_VoicesCombo.GetCurSel();
|
||||
|
||||
//Clear the list
|
||||
m_VoicesListCtrl.DeleteAllItems();
|
||||
|
||||
//Clear the comboBox
|
||||
m_VoicesCombo.ResetContent();
|
||||
|
||||
|
||||
//If there is nothing in the array we leave
|
||||
int iNbModule = pSuperVisApp->m_apVirtualVoiceModule.GetSize();
|
||||
if (iNbModule == 0)
|
||||
return;
|
||||
|
||||
|
||||
VirtualVoiceModule *pModule;
|
||||
|
||||
//Add module desciption in the ComboBox
|
||||
for (i = 0; i < iNbModule; i++ )
|
||||
{
|
||||
pModule = (VirtualVoiceModule *)pSuperVisApp->m_apVirtualVoiceModule.GetAt(i);
|
||||
m_VoicesCombo.AddString(pModule->cDescription);
|
||||
}
|
||||
|
||||
|
||||
//Set to the module currently
|
||||
//No item is selected
|
||||
if (iSelectedModule == CB_ERR)
|
||||
iSelectedModule = 0;
|
||||
|
||||
//Set the combobox to the selected module
|
||||
m_VoicesCombo.SetCurSel(iSelectedModule);
|
||||
|
||||
pModule = (VirtualVoiceModule *)pSuperVisApp->m_apVirtualVoiceModule.GetAt(iSelectedModule);
|
||||
|
||||
|
||||
//Clean the virtual voices array
|
||||
int iArraySize = pModule->apVirtualVoicesArray.GetSize();
|
||||
VirtualVoice *pVoice;
|
||||
for (i = 0; i < iArraySize; i ++ )
|
||||
{
|
||||
//Retrieve the current Voice
|
||||
pVoice = (VirtualVoice *)(pModule->apVirtualVoicesArray.GetAt(i));
|
||||
|
||||
//Is the voice still active
|
||||
if(!pVoice->bStillActive){
|
||||
|
||||
//Erase
|
||||
pModule->apVirtualVoicesArray.RemoveAt(i);
|
||||
delete pVoice;
|
||||
i --;
|
||||
iArraySize--;
|
||||
}
|
||||
}
|
||||
|
||||
//Cycle through the Current Virtual voices module.
|
||||
iArraySize = pModule->apVirtualVoicesArray.GetSize();
|
||||
for (i = 0; i < iArraySize; i ++ )
|
||||
{
|
||||
//We have to pass the index to the current module
|
||||
AddVoiceToList(i, iSelectedModule);
|
||||
|
||||
}
|
||||
|
||||
|
||||
//We display here the number of voices
|
||||
SND_tdhVirtualModule pVirtualModule = (SND_tdhVirtualModule)pModule->lIdModule;
|
||||
// m_iUsedVoices = SNDLST2_M_DynamicGetNumberOfElements(&pVirtualModule->virtual_voices.pList);
|
||||
m_iUsedVoices = pModule->apVirtualVoicesArray.GetSize();
|
||||
m_iMaxVoices = pVirtualModule->g_lNbSxdAudible;
|
||||
|
||||
UpdateData(FALSE);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
void CVoicesPage::AddVoiceToList(long lVoiceIndex, long lModuleIndex)
|
||||
{
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
//Retrieve the current module
|
||||
VirtualVoiceModule *pModule;
|
||||
pModule = (VirtualVoiceModule *)pSuperVisApp->m_apVirtualVoiceModule.GetAt(lModuleIndex);
|
||||
|
||||
|
||||
//Retrieve the current Voice
|
||||
VirtualVoice *pVoice;
|
||||
pVoice = (VirtualVoice *)(pModule->apVirtualVoicesArray.GetAt(lVoiceIndex));
|
||||
|
||||
|
||||
|
||||
//Retrieve data from the control
|
||||
PostMessage(WM_USER_UPDATE_DATA_TRUE, 0, 0);
|
||||
|
||||
char buffer[128];
|
||||
|
||||
|
||||
|
||||
//Display item, Voice Id
|
||||
sprintf(buffer,"0x%08x", pVoice->lId);
|
||||
m_VoicesListCtrl.InsertItem( 0, buffer );
|
||||
|
||||
|
||||
//Set the item data with the Micro Array index, to be used later for drag&drop, pop-memnu, etc.
|
||||
m_VoicesListCtrl.SetItemData( 0, (DWORD)lVoiceIndex );
|
||||
|
||||
//Paused?
|
||||
if(pVoice->bPaused)
|
||||
sprintf(buffer, "Yes");
|
||||
else
|
||||
sprintf(buffer, "No");
|
||||
m_VoicesListCtrl.SetItem(0, 1, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
//Resource pointer
|
||||
sprintf(buffer,"0x%08x", pVoice->lResRef);
|
||||
m_VoicesListCtrl.SetItem(0, 2, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Resource ID
|
||||
sprintf(buffer,"0x%08x", pVoice->lResId);
|
||||
m_VoicesListCtrl.SetItem(0, 3, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//loop?
|
||||
if(pVoice->bLoop)
|
||||
sprintf(buffer, "Yes");
|
||||
else
|
||||
sprintf(buffer, "No");
|
||||
m_VoicesListCtrl.SetItem(0, 4, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Norm
|
||||
sprintf(buffer, "%6.3f", pVoice->dNorme);
|
||||
m_VoicesListCtrl.SetItem(0, 5, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Instance
|
||||
sprintf(buffer, "%d", pVoice->lInstance);
|
||||
m_VoicesListCtrl.SetItem(0, 6, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
if (pVoice->lAudible)
|
||||
{
|
||||
//Audible voice
|
||||
sprintf(buffer, "0x%08x", pVoice->lAudible);
|
||||
m_VoicesListCtrl.SetItem(0, 7, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
//Hard voice
|
||||
sprintf(buffer, "0x%08x", pVoice->lVoice);
|
||||
m_VoicesListCtrl.SetItem(0, 8, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
//Audible voice
|
||||
sprintf(buffer, "");
|
||||
m_VoicesListCtrl.SetItem(0, 7, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
//Hard voice
|
||||
sprintf(buffer, "");
|
||||
m_VoicesListCtrl.SetItem(0, 8, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
}
|
||||
|
||||
//Refresh data from the control
|
||||
// PostMessage(WM_USER_UPDATE_DATA_FALSE, 0, 0);
|
||||
|
||||
}
|
||||
|
||||
BOOL CVoicesPage::PreTranslateMessage(MSG* pMsg)
|
||||
{
|
||||
if(pMsg->message == WM_USER_UPDATE_DATA_TRUE)
|
||||
{
|
||||
//We send the updatedata(TRUE) here
|
||||
//We cannot pass the CWnd across thread and this cause problem while using updatedata
|
||||
UpdateData(TRUE);
|
||||
}
|
||||
|
||||
if(pMsg->message == WM_USER_UPDATE_DATA_FALSE)
|
||||
{
|
||||
//We send the updatedata(TRUE) here
|
||||
//We cannot pass the CWnd across thread and this cause problem while using updatedata
|
||||
UpdateData(FALSE);
|
||||
}
|
||||
|
||||
return CPropertyPage::PreTranslateMessage(pMsg);
|
||||
}
|
||||
|
||||
void CVoicesPage::OnDestroy()
|
||||
{
|
||||
CPropertyPage::OnDestroy();
|
||||
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
int ColWidth = m_VoicesListCtrl.GetColumnWidth(0);
|
||||
pSuperVisApp->m_RegKeyVoicePage.iColVoiceId = ColWidth;
|
||||
ColWidth = m_VoicesListCtrl.GetColumnWidth(1);
|
||||
pSuperVisApp->m_RegKeyVoicePage.iColPaused = ColWidth;
|
||||
ColWidth = m_VoicesListCtrl.GetColumnWidth(2);
|
||||
pSuperVisApp->m_RegKeyVoicePage.iColResPtr = ColWidth;
|
||||
ColWidth = m_VoicesListCtrl.GetColumnWidth(3);
|
||||
pSuperVisApp->m_RegKeyVoicePage.iColResId = ColWidth;
|
||||
ColWidth = m_VoicesListCtrl.GetColumnWidth(4);
|
||||
pSuperVisApp->m_RegKeyVoicePage.iColLoop= ColWidth;
|
||||
ColWidth = m_VoicesListCtrl.GetColumnWidth(5);
|
||||
pSuperVisApp->m_RegKeyVoicePage.iColNorm = ColWidth;
|
||||
ColWidth = m_VoicesListCtrl.GetColumnWidth(6);
|
||||
pSuperVisApp->m_RegKeyVoicePage.iColInstance = ColWidth;
|
||||
ColWidth = m_VoicesListCtrl.GetColumnWidth(7);
|
||||
pSuperVisApp->m_RegKeyVoicePage.iColAudibleV = ColWidth;
|
||||
ColWidth = m_VoicesListCtrl.GetColumnWidth(8);
|
||||
pSuperVisApp->m_RegKeyVoicePage.iColHardV = ColWidth;
|
||||
}
|
100
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/VoicesPage.h
Normal file
100
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/VoicesPage.h
Normal file
@@ -0,0 +1,100 @@
|
||||
#if !defined(AFX_VOICESPAGE_H__FA1253D3_DE04_11D2_9F40_00104B6833D0__INCLUDED_)
|
||||
#define AFX_VOICESPAGE_H__FA1253D3_DE04_11D2_9F40_00104B6833D0__INCLUDED_
|
||||
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
// VoicesPage.h : header file
|
||||
//
|
||||
|
||||
//Module Structure :
|
||||
//
|
||||
//id :
|
||||
//cDescription :ex: "ADPCM Virtual voice module", etc..
|
||||
//apVirtualVoicesArray : array of Vitual voices descriptors
|
||||
typedef struct VirtualVoiceModule{
|
||||
|
||||
long lIdModule;
|
||||
CString cDescription;
|
||||
CPtrArray apVirtualVoicesArray;
|
||||
}VirtualVoiceModule;
|
||||
|
||||
|
||||
|
||||
//Virtual Voices Structure
|
||||
typedef struct VirtualVoice{
|
||||
|
||||
long lId;
|
||||
BOOL bStillActive;
|
||||
BOOL bDisplayed;
|
||||
double dNorme;
|
||||
BOOL bPaused;
|
||||
long lResId;
|
||||
long lResRef;
|
||||
BOOL bLoop;
|
||||
long lInstance;
|
||||
long lAudible;
|
||||
long lVoice;
|
||||
|
||||
}VirtualVoice;
|
||||
|
||||
typedef struct RegKeyVoicePage{
|
||||
int iColVoiceId;
|
||||
int iColPaused;
|
||||
int iColResPtr;
|
||||
int iColResId;
|
||||
int iColLoop;
|
||||
int iColNorm;
|
||||
int iColInstance;
|
||||
int iColAudibleV;
|
||||
int iColHardV;
|
||||
}RegKeyVoicePage;
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CVoicesPage dialog
|
||||
|
||||
class CVoicesPage : public CPropertyPage
|
||||
{
|
||||
DECLARE_DYNCREATE(CVoicesPage)
|
||||
|
||||
// Construction
|
||||
public:
|
||||
void AddVoiceToList(long lIndex, long lModuleIndex);
|
||||
void RefreshVoiceList();
|
||||
CVoicesPage();
|
||||
~CVoicesPage();
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CVoicesPage)
|
||||
enum { IDD = IDD_VOICES_PAGE };
|
||||
CComboBox m_VoicesCombo;
|
||||
CListCtrl m_VoicesListCtrl;
|
||||
int m_iMaxVoices;
|
||||
int m_iUsedVoices;
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generate virtual function overrides
|
||||
//{{AFX_VIRTUAL(CVoicesPage)
|
||||
public:
|
||||
virtual BOOL PreTranslateMessage(MSG* pMsg);
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CVoicesPage)
|
||||
virtual BOOL OnInitDialog();
|
||||
afx_msg void OnDestroy();
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_VOICESPAGE_H__FA1253D3_DE04_11D2_9F40_00104B6833D0__INCLUDED_)
|
251
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/WavVoicesPage.cpp
Normal file
251
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/WavVoicesPage.cpp
Normal file
@@ -0,0 +1,251 @@
|
||||
// WavVoicesPage.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "supervis.h"
|
||||
#include "WavVoicesPage.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CWavVoicesPage property page
|
||||
|
||||
IMPLEMENT_DYNCREATE(CWavVoicesPage, CPropertyPage)
|
||||
|
||||
CWavVoicesPage::CWavVoicesPage() : CPropertyPage(CWavVoicesPage::IDD)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CWavVoicesPage)
|
||||
m_lProcessTime = 0;
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
CWavVoicesPage::~CWavVoicesPage()
|
||||
{
|
||||
}
|
||||
|
||||
void CWavVoicesPage::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CPropertyPage::DoDataExchange(pDX);
|
||||
//{{AFX_DATA_MAP(CWavVoicesPage)
|
||||
DDX_Control(pDX, IDC_WAV_VOICES_LIST, m_WavVoicesListCtrl);
|
||||
DDX_Text(pDX, IDC_PROCESS_TIME, m_lProcessTime);
|
||||
//}}AFX_DATA_MAP
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CWavVoicesPage, CPropertyPage)
|
||||
//{{AFX_MSG_MAP(CWavVoicesPage)
|
||||
ON_WM_DESTROY()
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CWavVoicesPage message handlers
|
||||
|
||||
BOOL CWavVoicesPage::OnInitDialog()
|
||||
{
|
||||
CPropertyPage::OnInitDialog();
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
//Initialise the ClistCtrl containing Events descriptions
|
||||
LV_COLUMN* lvc;
|
||||
|
||||
lvc = (LV_COLUMN*)malloc(sizeof(LV_COLUMN));
|
||||
|
||||
lvc->mask = LVCF_FMT |LVCF_SUBITEM
|
||||
| LVCF_TEXT | LVCF_WIDTH; // members contain valid information
|
||||
lvc->fmt = LVCFMT_LEFT; // Alignment of the column
|
||||
lvc->cx = pSuperVisApp->m_RegKeyWavVoicePage.iColWavVoiceId; // width of the column, in pixels
|
||||
lvc->pszText = "Id"; // column heading
|
||||
lvc->iSubItem = 0; // index of subitem associated with column
|
||||
m_WavVoicesListCtrl.InsertColumn(0, lvc);
|
||||
|
||||
|
||||
lvc->pszText = "Resource Pointer"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyWavVoicePage.iColResPtr; // width of the column, in pixels
|
||||
lvc->iSubItem = 1; // index of subitem associated with column
|
||||
m_WavVoicesListCtrl.InsertColumn(1, lvc);
|
||||
|
||||
lvc->pszText = "Resource Id"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyWavVoicePage.iColResId; // width of the column, in pixels
|
||||
lvc->iSubItem = 2; // index of subitem associated with column
|
||||
m_WavVoicesListCtrl.InsertColumn(2, lvc);
|
||||
|
||||
lvc->pszText = "Paused?"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyWavVoicePage.iColPaused; // width of the column, in pixels
|
||||
lvc->iSubItem = 3; // index of subitem associated with column
|
||||
m_WavVoicesListCtrl.InsertColumn(3, lvc);
|
||||
|
||||
lvc->pszText = "Volume"; // column heading
|
||||
lvc->cx = pSuperVisApp->m_RegKeyWavVoicePage.iColVol; // width of the column, in pixels
|
||||
lvc->iSubItem = 4; // index of subitem associated with column
|
||||
m_WavVoicesListCtrl.InsertColumn(4, lvc);
|
||||
|
||||
|
||||
lvc->cx = pSuperVisApp->m_RegKeyWavVoicePage.iColPan; // width of the column, in pixels
|
||||
lvc->pszText = "Pan"; // column heading
|
||||
lvc->iSubItem = 5; // index of subitem associated with column
|
||||
m_WavVoicesListCtrl.InsertColumn(5, lvc);
|
||||
|
||||
lvc->cx = pSuperVisApp->m_RegKeyWavVoicePage.iColSpace; // width of the column, in pixels
|
||||
lvc->pszText = "Space"; // column heading
|
||||
lvc->iSubItem = 6; // index of subitem associated with column
|
||||
m_WavVoicesListCtrl.InsertColumn(5, lvc);
|
||||
|
||||
|
||||
lvc->cx = pSuperVisApp->m_RegKeyWavVoicePage.iColFreq; // width of the column, in pixels
|
||||
lvc->pszText = "Frequency"; // column heading
|
||||
lvc->iSubItem = 7; // index of subitem associated with column
|
||||
m_WavVoicesListCtrl.InsertColumn(5, lvc);
|
||||
|
||||
|
||||
free( lvc );
|
||||
|
||||
//Init the process time control
|
||||
m_lProcessTime = 0;
|
||||
|
||||
UpdateData(FALSE);
|
||||
|
||||
return TRUE; // return TRUE unless you set the focus to a control
|
||||
// EXCEPTION: OCX Property Pages should return FALSE
|
||||
}
|
||||
|
||||
void CWavVoicesPage::RefreshVoicesList()
|
||||
{
|
||||
|
||||
long i;
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
|
||||
//Clear the list
|
||||
m_WavVoicesListCtrl.DeleteAllItems();
|
||||
|
||||
|
||||
//Cycle through the pointer Array to filter
|
||||
for (i = 0; i < pSuperVisApp->m_apWavVoices.GetSize(); i ++ )
|
||||
{
|
||||
AddWavVoices(i);
|
||||
|
||||
}
|
||||
|
||||
//Add processTime
|
||||
m_lProcessTime = pSuperVisApp->m_lProcessTime;
|
||||
UpdateData(FALSE);
|
||||
|
||||
}
|
||||
|
||||
|
||||
void CWavVoicesPage::AddWavVoices(long lIndex)
|
||||
{
|
||||
|
||||
WavVoiceArrayElement *pVoice;
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
pVoice = (WavVoiceArrayElement *)(pSuperVisApp->m_apWavVoices.GetAt(lIndex));
|
||||
|
||||
//Retrieve data from the control
|
||||
PostMessage(WM_USER_UPDATE_DATA_TRUE, 0, 0);
|
||||
|
||||
char buffer[128];
|
||||
|
||||
//Display item
|
||||
sprintf(buffer,"0x%x", pVoice->lId);
|
||||
m_WavVoicesListCtrl.InsertItem( 0, buffer );
|
||||
|
||||
|
||||
//Set the item data with the Micro Array index, to be used later for drag&drop, pop-memnu, etc.
|
||||
m_WavVoicesListCtrl.SetItemData( 0, (DWORD)lIndex );
|
||||
|
||||
|
||||
//Resource pointer
|
||||
sprintf(buffer,"0x%x", pVoice->res_pstPtr);
|
||||
m_WavVoicesListCtrl.SetItem(0, 1, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Resource ID
|
||||
sprintf(buffer,"0x%x", pVoice->res_Id);
|
||||
m_WavVoicesListCtrl.SetItem(0, 2, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Paused?
|
||||
if(pVoice->bPaused)
|
||||
sprintf(buffer, "YES");
|
||||
else
|
||||
sprintf(buffer, "NO");
|
||||
m_WavVoicesListCtrl.SetItem(0, 3, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Volume
|
||||
sprintf(buffer, "%d", pVoice->ucVolume);
|
||||
m_WavVoicesListCtrl.SetItem(0, 4, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Pan
|
||||
sprintf(buffer, "%d", pVoice->ucPan);
|
||||
m_WavVoicesListCtrl.SetItem(0, 5, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
//Space
|
||||
sprintf(buffer, "%d", pVoice->ucSpace);
|
||||
m_WavVoicesListCtrl.SetItem(0, 6, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
//Frequency
|
||||
sprintf(buffer, "%6.3f", pVoice->dFreq);
|
||||
m_WavVoicesListCtrl.SetItem(0, 7, LVIF_TEXT, buffer, 0, 0, 0, NULL );
|
||||
|
||||
|
||||
//Refresh data from the control
|
||||
PostMessage(WM_USER_UPDATE_DATA_FALSE, 0, 0);
|
||||
|
||||
|
||||
}
|
||||
|
||||
BOOL CWavVoicesPage::PreTranslateMessage(MSG* pMsg)
|
||||
{
|
||||
if(pMsg->message == WM_USER_UPDATE_DATA_TRUE)
|
||||
{
|
||||
//We send the updatedata(TRUE) here
|
||||
//We cannot pass the CWnd across thread and this cause problem while using updatedata
|
||||
UpdateData(TRUE);
|
||||
}
|
||||
|
||||
if(pMsg->message == WM_USER_UPDATE_DATA_FALSE)
|
||||
{
|
||||
//We send the updatedata(TRUE) here
|
||||
//We cannot pass the CWnd across thread and this cause problem while using updatedata
|
||||
UpdateData(FALSE);
|
||||
}
|
||||
|
||||
|
||||
return CPropertyPage::PreTranslateMessage(pMsg);
|
||||
}
|
||||
|
||||
void CWavVoicesPage::OnDestroy()
|
||||
{
|
||||
CPropertyPage::OnDestroy();
|
||||
|
||||
|
||||
CSupervisApp* pSuperVisApp = (CSupervisApp*)AfxGetApp();
|
||||
|
||||
int ColWidth = m_WavVoicesListCtrl.GetColumnWidth(0);
|
||||
pSuperVisApp->m_RegKeyWavVoicePage.iColWavVoiceId = ColWidth;
|
||||
ColWidth = m_WavVoicesListCtrl.GetColumnWidth(1);
|
||||
pSuperVisApp->m_RegKeyWavVoicePage.iColResPtr = ColWidth;
|
||||
ColWidth = m_WavVoicesListCtrl.GetColumnWidth(2);
|
||||
pSuperVisApp->m_RegKeyWavVoicePage.iColResId = ColWidth;
|
||||
ColWidth = m_WavVoicesListCtrl.GetColumnWidth(3);
|
||||
pSuperVisApp->m_RegKeyWavVoicePage.iColPaused = ColWidth;
|
||||
ColWidth = m_WavVoicesListCtrl.GetColumnWidth(4);
|
||||
pSuperVisApp->m_RegKeyWavVoicePage.iColVol = ColWidth;
|
||||
ColWidth = m_WavVoicesListCtrl.GetColumnWidth(5);
|
||||
pSuperVisApp->m_RegKeyWavVoicePage.iColPan = ColWidth;
|
||||
ColWidth = m_WavVoicesListCtrl.GetColumnWidth(6);
|
||||
pSuperVisApp->m_RegKeyWavVoicePage.iColSpace = ColWidth;
|
||||
ColWidth = m_WavVoicesListCtrl.GetColumnWidth(7);
|
||||
pSuperVisApp->m_RegKeyWavVoicePage.iColFreq = ColWidth;
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,85 @@
|
||||
#if !defined(AFX_WAVVOICESPAGE_H__6F53E3C9_F8C0_11D2_9F71_00104B6833D0__INCLUDED_)
|
||||
#define AFX_WAVVOICESPAGE_H__6F53E3C9_F8C0_11D2_9F71_00104B6833D0__INCLUDED_
|
||||
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
// WavVoicesPage.h : header file
|
||||
//
|
||||
|
||||
|
||||
//Wav Voices Structure used by the Supervisater
|
||||
typedef struct WavVoiceArrayElement{
|
||||
|
||||
long lId;
|
||||
tdstBlockResourceMem *res_pstPtr;
|
||||
tdxId res_Id;
|
||||
BOOL bPaused;
|
||||
unsigned char ucVolume;
|
||||
unsigned char ucPan;
|
||||
unsigned char ucSpace;
|
||||
double dFreq;
|
||||
|
||||
}WavVoiceArrayElement;
|
||||
|
||||
typedef struct RegKeyWavVoicePage{
|
||||
int iColWavVoiceId;
|
||||
int iColResPtr;
|
||||
int iColResId;
|
||||
int iColPaused;
|
||||
int iColVol;
|
||||
int iColPan;
|
||||
int iColSpace;
|
||||
int iColFreq;
|
||||
}RegKeyWavVoicePage;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CWavVoicesPage dialog
|
||||
|
||||
class CWavVoicesPage : public CPropertyPage
|
||||
{
|
||||
DECLARE_DYNCREATE(CWavVoicesPage)
|
||||
|
||||
// Construction
|
||||
public:
|
||||
void AddWavVoices(long lIndex);
|
||||
void RefreshVoicesList();
|
||||
CWavVoicesPage();
|
||||
~CWavVoicesPage();
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CWavVoicesPage)
|
||||
enum { IDD = IDD_WAV_VOICES_PAGE };
|
||||
CListCtrl m_WavVoicesListCtrl;
|
||||
long m_lProcessTime;
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generate virtual function overrides
|
||||
//{{AFX_VIRTUAL(CWavVoicesPage)
|
||||
public:
|
||||
virtual BOOL PreTranslateMessage(MSG* pMsg);
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CWavVoicesPage)
|
||||
virtual BOOL OnInitDialog();
|
||||
afx_msg void OnDestroy();
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_WAVVOICESPAGE_H__6F53E3C9_F8C0_11D2_9F71_00104B6833D0__INCLUDED_)
|
@@ -0,0 +1,13 @@
|
||||
//
|
||||
// SUPERVIS.RC2 - resources Microsoft Visual C++ does not edit directly
|
||||
//
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#error this file is not editable by Microsoft Visual C++
|
||||
#endif //APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Add manually edited resources here...
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
89
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/resource.h
Normal file
89
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/resource.h
Normal file
@@ -0,0 +1,89 @@
|
||||
//{{NO_DEPENDENCIES}}
|
||||
// Microsoft Developer Studio generated include file.
|
||||
// Used by supervis.rc
|
||||
//
|
||||
#define IDD_WAV_VOICES_PAGE 102
|
||||
#define IDD_EVENTS_HISTORY_PAGE 106
|
||||
#define IDD_RESSOURCES_HISTORIC 107
|
||||
#define IDD_MICRO_OBJECTS_PAGE 108
|
||||
#define IDD_SUPERVIS_SETTINGS_PAGE 109
|
||||
#define IDD_THEMES_PAGE 110
|
||||
#define IDD_VOICES_PAGE 111
|
||||
#define IDD_VIRTUAL_VOICES_PAGE 111
|
||||
#define IDD_MIXER_PAGE 112
|
||||
#define IDD_DIALOG1 132
|
||||
#define IDR_MENU1 136
|
||||
#define IDC_BUTTON1 1000
|
||||
#define IDC_RESET_BUTTON 1000
|
||||
#define IDC_SAVE 1000
|
||||
#define IDC_PLUS 1000
|
||||
#define IDC_EDIT1 1001
|
||||
#define IDC_EDIT_EVENT_ID 1001
|
||||
#define IDC_RESET_RESLIST_BUTTON 1001
|
||||
#define IDC_REFRESH_RATE 1001
|
||||
#define IDC_CURRENT_THEME 1001
|
||||
#define IDC_MAX_VOICES 1001
|
||||
#define IDC_PROCESS_TIME 1001
|
||||
#define IDC_DOPPLER_EFFECT 1001
|
||||
#define IDC_QUIT 1002
|
||||
#define IDC_EVENTS_HISTORY_LIST 1002
|
||||
#define IDC_EDIT_RES_ID 1002
|
||||
#define IDC_CHECK_EVENT 1003
|
||||
#define IDC_CHECK_DEBUG_ON_EVENT 1004
|
||||
#define IDC_CHECK_FIRST_OCCUR 1005
|
||||
#define IDC_CHECK_BANK 1006
|
||||
#define IDC_EDIT_BANK_ID 1007
|
||||
#define IDC_WATCH_LIST 1008
|
||||
#define IDC_EMPTY_WATCH 1009
|
||||
#define IDC_CHECK_WATCH 1011
|
||||
#define IDC_HELP_WATCH 1012
|
||||
#define IDC_EDIT_LCB_PATH 1013
|
||||
#define IDC_BROWSE_FOR_LCB 1014
|
||||
#define IDC_BUTTON2 1015
|
||||
#define IDC_PAUSE_BUTTON 1015
|
||||
#define IDC_MOINS 1015
|
||||
#define IDC_PLAY 1015
|
||||
#define IDC_RES_LIST 1016
|
||||
#define IDC_EDIT_RES_VOL 1017
|
||||
#define IDC_VOL_PLUS 1018
|
||||
#define IDC_VOL_MOINS 1019
|
||||
#define IDC_PAUSE_RES_BUTTON 1020
|
||||
#define IDC_CHECK_RES_BANK 1021
|
||||
#define IDC_CHECK_RES 1022
|
||||
#define IDC_CHECK_FIRST_RES_OCCUR 1023
|
||||
#define IDC_CHECK_DEBUG_ON_RES 1024
|
||||
#define IDC_EDIT_RES_BANK_ID 1025
|
||||
#define IDC_VOLUME_SLIDER 1026
|
||||
#define IDC_SEL_RES_NAME 1027
|
||||
#define IDC_MICRO_LIST 1028
|
||||
#define IDC_OBJECT_LIST 1029
|
||||
#define IDC_VOLUME_LINE_LIST 1035
|
||||
#define IDC_ASKED_THEME_POINTER 1036
|
||||
#define IDC_CURRENT_PART 1037
|
||||
#define IDC_STATE 1038
|
||||
#define IDC_CURRENT_BRIDGE 1039
|
||||
#define IDC_VOICES_LIST 1040
|
||||
#define IDC_USED_VOICES 1041
|
||||
#define IDC_VOICES_COMBO 1042
|
||||
#define IDC_WAV_VOICES_LIST 1043
|
||||
#define IDC_CURRENT_THEME_ID 1044
|
||||
#define IDC_CURRENT_THEME_BANK_ID 1045
|
||||
#define IDC_WINDOW_ON_TOP 1045
|
||||
#define IDC_CURRENT_THEME_RES_ID 1046
|
||||
#define IDC_ASKED_THEME_ID 1047
|
||||
#define IDC_ASKED_THEME_BANK 1048
|
||||
#define IDC_ASSO_MIC_LIST 1048
|
||||
#define IDC_ASKED_THEME_RES_ID 1049
|
||||
#define IDC_LANGUE_COMBO 1049
|
||||
#define ID_WATCH 32775
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 139
|
||||
#define _APS_NEXT_COMMAND_VALUE 32777
|
||||
#define _APS_NEXT_CONTROL_VALUE 1050
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
#endif
|
820
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/soundeditor.cpp
Normal file
820
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/soundeditor.cpp
Normal file
@@ -0,0 +1,820 @@
|
||||
// Machine generated IDispatch wrapper class(es) created with ClassWizard
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "soundeditor.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISoundEditor properties
|
||||
|
||||
LPDISPATCH ISoundEditor::GetEventGroups()
|
||||
{
|
||||
LPDISPATCH result;
|
||||
GetProperty(0x1, VT_DISPATCH, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void ISoundEditor::SetEventGroups(LPDISPATCH propVal)
|
||||
{
|
||||
SetProperty(0x1, VT_DISPATCH, propVal);
|
||||
}
|
||||
|
||||
long ISoundEditor::GetVersionNumber()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x2, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void ISoundEditor::SetVersionNumber(long propVal)
|
||||
{
|
||||
SetProperty(0x2, VT_I4, propVal);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISoundEditor operations
|
||||
|
||||
BOOL ISoundEditor::OpenDocument(LPCTSTR csFilename)
|
||||
{
|
||||
BOOL result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x3, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
|
||||
csFilename);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL ISoundEditor::SaveDocument(LPCTSTR csFilename)
|
||||
{
|
||||
BOOL result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x4, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
|
||||
csFilename);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL ISoundEditor::AddSoundDirectory(LPCTSTR csPath)
|
||||
{
|
||||
BOOL result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x5, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
|
||||
csPath);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL ISoundEditor::RebuildBanks()
|
||||
{
|
||||
BOOL result;
|
||||
InvokeHelper(0x6, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL ISoundEditor::SaveLocalizedBanks(LPCTSTR _csDocumentPath, LPCTSTR _csLanguage)
|
||||
{
|
||||
BOOL result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR VTS_BSTR;
|
||||
InvokeHelper(0x7, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
|
||||
_csDocumentPath, _csLanguage);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH ISoundEditor::FindResFromEditorId(long _iId)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_I4;
|
||||
InvokeHelper(0x8, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
_iId);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL ISoundEditor::SetSoundDriver(BOOL bSet)
|
||||
{
|
||||
BOOL result;
|
||||
static BYTE parms[] =
|
||||
VTS_BOOL;
|
||||
InvokeHelper(0x9, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
|
||||
bSet);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL ISoundEditor::UnloadAllEvents()
|
||||
{
|
||||
BOOL result;
|
||||
InvokeHelper(0xa, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
long ISoundEditor::GetPosSound(long Handle)
|
||||
{
|
||||
long result;
|
||||
static BYTE parms[] =
|
||||
VTS_I4;
|
||||
InvokeHelper(0xb, DISPATCH_METHOD, VT_I4, (void*)&result, parms,
|
||||
Handle);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL ISoundEditor::SetDriverActivation(BOOL bActivate)
|
||||
{
|
||||
BOOL result;
|
||||
static BYTE parms[] =
|
||||
VTS_BOOL;
|
||||
InvokeHelper(0xc, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
|
||||
bActivate);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEventGroup properties
|
||||
|
||||
long IEventGroup::GetId()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x1, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEventGroup::SetId(long propVal)
|
||||
{
|
||||
SetProperty(0x1, VT_I4, propVal);
|
||||
}
|
||||
|
||||
CString IEventGroup::GetName()
|
||||
{
|
||||
CString result;
|
||||
GetProperty(0x2, VT_BSTR, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEventGroup::SetName(LPCTSTR propVal)
|
||||
{
|
||||
SetProperty(0x2, VT_BSTR, propVal);
|
||||
}
|
||||
|
||||
LPDISPATCH IEventGroup::GetResources()
|
||||
{
|
||||
LPDISPATCH result;
|
||||
GetProperty(0x3, VT_DISPATCH, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEventGroup::SetResources(LPDISPATCH propVal)
|
||||
{
|
||||
SetProperty(0x3, VT_DISPATCH, propVal);
|
||||
}
|
||||
|
||||
LPDISPATCH IEventGroup::GetEvents()
|
||||
{
|
||||
LPDISPATCH result;
|
||||
GetProperty(0x4, VT_DISPATCH, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEventGroup::SetEvents(LPDISPATCH propVal)
|
||||
{
|
||||
SetProperty(0x4, VT_DISPATCH, propVal);
|
||||
}
|
||||
|
||||
CString IEventGroup::GetFilePath()
|
||||
{
|
||||
CString result;
|
||||
GetProperty(0x5, VT_BSTR, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEventGroup::SetFilePath(LPCTSTR propVal)
|
||||
{
|
||||
SetProperty(0x5, VT_BSTR, propVal);
|
||||
}
|
||||
|
||||
long IEventGroup::GetVersionNumber()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x6, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEventGroup::SetVersionNumber(long propVal)
|
||||
{
|
||||
SetProperty(0x6, VT_I4, propVal);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEventGroup operations
|
||||
|
||||
BOOL IEventGroup::RemoveAll()
|
||||
{
|
||||
BOOL result;
|
||||
InvokeHelper(0x7, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL IEventGroup::CompactIds()
|
||||
{
|
||||
BOOL result;
|
||||
InvokeHelper(0x8, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISND_EdiBank properties
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISND_EdiBank operations
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISND_EdiMap properties
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISND_EdiMap operations
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEventGroups properties
|
||||
|
||||
long IEventGroups::GetCount()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x1, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEventGroups::SetCount(long propVal)
|
||||
{
|
||||
SetProperty(0x1, VT_I4, propVal);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEventGroups operations
|
||||
|
||||
LPDISPATCH IEventGroups::Item(long Index)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_I4;
|
||||
InvokeHelper(0x2, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
Index);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IEventGroups::FindItem(LPCTSTR csName)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x3, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
csName);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IEventGroups::Add(LPCTSTR csName)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
csName);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL IEventGroups::Remove(LPCTSTR csEventGroupName)
|
||||
{
|
||||
BOOL result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x5, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
|
||||
csEventGroupName);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IEventGroups::FindItemByID(long ulBinID)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_I4;
|
||||
InvokeHelper(0x6, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
ulBinID);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPUNKNOWN IEventGroups::Get_NewEnum()
|
||||
{
|
||||
LPUNKNOWN result;
|
||||
InvokeHelper(0xfffffffc, DISPATCH_PROPERTYGET, VT_UNKNOWN, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IResource properties
|
||||
|
||||
CString IResource::GetName()
|
||||
{
|
||||
CString result;
|
||||
GetProperty(0x1, VT_BSTR, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IResource::SetName(LPCTSTR propVal)
|
||||
{
|
||||
SetProperty(0x1, VT_BSTR, propVal);
|
||||
}
|
||||
|
||||
long IResource::GetVolume()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x2, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IResource::SetVolume(long propVal)
|
||||
{
|
||||
SetProperty(0x2, VT_I4, propVal);
|
||||
}
|
||||
|
||||
LPDISPATCH IResource::GetSampleRes()
|
||||
{
|
||||
LPDISPATCH result;
|
||||
GetProperty(0x3, VT_DISPATCH, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IResource::SetSampleRes(LPDISPATCH propVal)
|
||||
{
|
||||
SetProperty(0x3, VT_DISPATCH, propVal);
|
||||
}
|
||||
|
||||
long IResource::GetType()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x4, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IResource::SetType(long propVal)
|
||||
{
|
||||
SetProperty(0x4, VT_I4, propVal);
|
||||
}
|
||||
|
||||
long IResource::GetDataOffset()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x5, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IResource::SetDataOffset(long propVal)
|
||||
{
|
||||
SetProperty(0x5, VT_I4, propVal);
|
||||
}
|
||||
|
||||
long IResource::GetDataSize()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x6, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IResource::SetDataSize(long propVal)
|
||||
{
|
||||
SetProperty(0x6, VT_I4, propVal);
|
||||
}
|
||||
|
||||
long IResource::GetId()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x7, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IResource::SetId(long propVal)
|
||||
{
|
||||
SetProperty(0x7, VT_I4, propVal);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IResource operations
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IResources properties
|
||||
|
||||
long IResources::GetCount()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x1, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IResources::SetCount(long propVal)
|
||||
{
|
||||
SetProperty(0x1, VT_I4, propVal);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IResources operations
|
||||
|
||||
LPDISPATCH IResources::Item(long Index)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_I4;
|
||||
InvokeHelper(0x2, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
Index);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IResources::FindItem(LPCTSTR csName)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x3, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
csName);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IResources::Add(LPCTSTR csName)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
csName);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IResources::AddSampleRes(LPCTSTR csName)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x5, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
csName);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL IResources::Remove(LPCTSTR csResName)
|
||||
{
|
||||
BOOL result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x6, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
|
||||
csResName);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IResources::FindItemByID(long EdiID)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_I4;
|
||||
InvokeHelper(0x7, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
EdiID);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPUNKNOWN IResources::Get_NewEnum()
|
||||
{
|
||||
LPUNKNOWN result;
|
||||
InvokeHelper(0xfffffffc, DISPATCH_PROPERTYGET, VT_UNKNOWN, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISampleResource properties
|
||||
|
||||
CString ISampleResource::GetFileName()
|
||||
{
|
||||
CString result;
|
||||
GetProperty(0x1, VT_BSTR, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void ISampleResource::SetFileName(LPCTSTR propVal)
|
||||
{
|
||||
SetProperty(0x1, VT_BSTR, propVal);
|
||||
}
|
||||
|
||||
long ISampleResource::GetZipType()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x2, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void ISampleResource::SetZipType(long propVal)
|
||||
{
|
||||
SetProperty(0x2, VT_I4, propVal);
|
||||
}
|
||||
|
||||
BOOL ISampleResource::GetLoop()
|
||||
{
|
||||
BOOL result;
|
||||
GetProperty(0x3, VT_BOOL, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void ISampleResource::SetLoop(BOOL propVal)
|
||||
{
|
||||
SetProperty(0x3, VT_BOOL, propVal);
|
||||
}
|
||||
|
||||
long ISampleResource::GetStartLoop()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x4, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void ISampleResource::SetStartLoop(long propVal)
|
||||
{
|
||||
SetProperty(0x4, VT_I4, propVal);
|
||||
}
|
||||
|
||||
long ISampleResource::GetLoopLength()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x5, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void ISampleResource::SetLoopLength(long propVal)
|
||||
{
|
||||
SetProperty(0x5, VT_I4, propVal);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISampleResource operations
|
||||
|
||||
BOOL ISampleResource::SetSampleData(LPCTSTR csFilename)
|
||||
{
|
||||
BOOL result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x6, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
|
||||
csFilename);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH ISampleResource::GetResource()
|
||||
{
|
||||
LPDISPATCH result;
|
||||
InvokeHelper(0x7, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEvents properties
|
||||
|
||||
long IEvents::GetCount()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x1, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEvents::SetCount(long propVal)
|
||||
{
|
||||
SetProperty(0x1, VT_I4, propVal);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEvents operations
|
||||
|
||||
LPDISPATCH IEvents::Item(long Index)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_I4;
|
||||
InvokeHelper(0x2, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
Index);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IEvents::FindItem(LPCTSTR csName)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x3, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
csName);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IEvents::Add(LPCTSTR csName)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
csName);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IEvents::AddPlayEvent(LPDISPATCH Resource)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_DISPATCH;
|
||||
InvokeHelper(0x5, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
Resource);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IEvents::AddStopEvent(LPDISPATCH lpEvent)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_DISPATCH;
|
||||
InvokeHelper(0x6, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
lpEvent);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL IEvents::Remove(LPCTSTR csEventName)
|
||||
{
|
||||
BOOL result;
|
||||
static BYTE parms[] =
|
||||
VTS_BSTR;
|
||||
InvokeHelper(0x7, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
|
||||
csEventName);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPDISPATCH IEvents::FindItemByID(long EdiID)
|
||||
{
|
||||
LPDISPATCH result;
|
||||
static BYTE parms[] =
|
||||
VTS_I4;
|
||||
InvokeHelper(0x8, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
|
||||
EdiID);
|
||||
return result;
|
||||
}
|
||||
|
||||
LPUNKNOWN IEvents::Get_NewEnum()
|
||||
{
|
||||
LPUNKNOWN result;
|
||||
InvokeHelper(0xfffffffc, DISPATCH_PROPERTYGET, VT_UNKNOWN, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEvent properties
|
||||
|
||||
long IEvent::GetId()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x1, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEvent::SetId(long propVal)
|
||||
{
|
||||
SetProperty(0x1, VT_I4, propVal);
|
||||
}
|
||||
|
||||
CString IEvent::GetName()
|
||||
{
|
||||
CString result;
|
||||
GetProperty(0x2, VT_BSTR, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEvent::SetName(LPCTSTR propVal)
|
||||
{
|
||||
SetProperty(0x2, VT_BSTR, propVal);
|
||||
}
|
||||
|
||||
BOOL IEvent::GetDynamic()
|
||||
{
|
||||
BOOL result;
|
||||
GetProperty(0x3, VT_BOOL, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEvent::SetDynamic(BOOL propVal)
|
||||
{
|
||||
SetProperty(0x3, VT_BOOL, propVal);
|
||||
}
|
||||
|
||||
BOOL IEvent::GetStopable()
|
||||
{
|
||||
BOOL result;
|
||||
GetProperty(0x4, VT_BOOL, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEvent::SetStopable(BOOL propVal)
|
||||
{
|
||||
SetProperty(0x4, VT_BOOL, propVal);
|
||||
}
|
||||
|
||||
long IEvent::GetType()
|
||||
{
|
||||
long result;
|
||||
GetProperty(0x5, VT_I4, (void*)&result);
|
||||
return result;
|
||||
}
|
||||
|
||||
void IEvent::SetType(long propVal)
|
||||
{
|
||||
SetProperty(0x5, VT_I4, propVal);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEvent operations
|
||||
|
||||
LPDISPATCH IEvent::GetResource()
|
||||
{
|
||||
LPDISPATCH result;
|
||||
InvokeHelper(0x6, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL IEvent::LoadData()
|
||||
{
|
||||
BOOL result;
|
||||
InvokeHelper(0x7, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL IEvent::UnloadData()
|
||||
{
|
||||
BOOL result;
|
||||
InvokeHelper(0x8, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
long IEvent::Play()
|
||||
{
|
||||
long result;
|
||||
InvokeHelper(0x9, DISPATCH_METHOD, VT_I4, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
BOOL IEvent::LoadPlayUnload()
|
||||
{
|
||||
BOOL result;
|
||||
InvokeHelper(0xa, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IOptionsSheet properties
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IOptionsSheet operations
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEventOptionsPage properties
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEventOptionsPage operations
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IResOptionsPage properties
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IResOptionsPage operations
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IPlugInOptionsPage properties
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IPlugInOptionsPage operations
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ILanguageOptionsPage properties
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ILanguageOptionsPage operations
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IViewSettingsOptions properties
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IViewSettingsOptions operations
|
353
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/soundeditor.h
Normal file
353
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/soundeditor.h
Normal file
@@ -0,0 +1,353 @@
|
||||
// Machine generated IDispatch wrapper class(es) created with ClassWizard
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISoundEditor wrapper class
|
||||
|
||||
class ISoundEditor : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
ISoundEditor() {} // Calls COleDispatchDriver default constructor
|
||||
ISoundEditor(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
ISoundEditor(const ISoundEditor& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
LPDISPATCH GetEventGroups();
|
||||
void SetEventGroups(LPDISPATCH);
|
||||
long GetVersionNumber();
|
||||
void SetVersionNumber(long);
|
||||
|
||||
// Operations
|
||||
public:
|
||||
BOOL OpenDocument(LPCTSTR csFilename);
|
||||
BOOL SaveDocument(LPCTSTR csFilename);
|
||||
BOOL AddSoundDirectory(LPCTSTR csPath);
|
||||
BOOL RebuildBanks();
|
||||
BOOL SaveLocalizedBanks(LPCTSTR _csDocumentPath, LPCTSTR _csLanguage);
|
||||
LPDISPATCH FindResFromEditorId(long _iId);
|
||||
BOOL SetSoundDriver(BOOL bSet);
|
||||
BOOL UnloadAllEvents();
|
||||
long GetPosSound(long Handle);
|
||||
BOOL SetDriverActivation(BOOL bActivate);
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEventGroup wrapper class
|
||||
|
||||
class IEventGroup : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
IEventGroup() {} // Calls COleDispatchDriver default constructor
|
||||
IEventGroup(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
IEventGroup(const IEventGroup& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
long GetId();
|
||||
void SetId(long);
|
||||
CString GetName();
|
||||
void SetName(LPCTSTR);
|
||||
LPDISPATCH GetResources();
|
||||
void SetResources(LPDISPATCH);
|
||||
LPDISPATCH GetEvents();
|
||||
void SetEvents(LPDISPATCH);
|
||||
CString GetFilePath();
|
||||
void SetFilePath(LPCTSTR);
|
||||
long GetVersionNumber();
|
||||
void SetVersionNumber(long);
|
||||
|
||||
// Operations
|
||||
public:
|
||||
BOOL RemoveAll();
|
||||
BOOL CompactIds();
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISND_EdiBank wrapper class
|
||||
|
||||
class ISND_EdiBank : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
ISND_EdiBank() {} // Calls COleDispatchDriver default constructor
|
||||
ISND_EdiBank(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
ISND_EdiBank(const ISND_EdiBank& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISND_EdiMap wrapper class
|
||||
|
||||
class ISND_EdiMap : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
ISND_EdiMap() {} // Calls COleDispatchDriver default constructor
|
||||
ISND_EdiMap(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
ISND_EdiMap(const ISND_EdiMap& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEventGroups wrapper class
|
||||
|
||||
class IEventGroups : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
IEventGroups() {} // Calls COleDispatchDriver default constructor
|
||||
IEventGroups(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
IEventGroups(const IEventGroups& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
long GetCount();
|
||||
void SetCount(long);
|
||||
|
||||
// Operations
|
||||
public:
|
||||
LPDISPATCH Item(long Index);
|
||||
LPDISPATCH FindItem(LPCTSTR csName);
|
||||
LPDISPATCH Add(LPCTSTR csName);
|
||||
BOOL Remove(LPCTSTR csEventGroupName);
|
||||
LPDISPATCH FindItemByID(long ulBinID);
|
||||
LPUNKNOWN Get_NewEnum();
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IResource wrapper class
|
||||
|
||||
class IResource : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
IResource() {} // Calls COleDispatchDriver default constructor
|
||||
IResource(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
IResource(const IResource& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
CString GetName();
|
||||
void SetName(LPCTSTR);
|
||||
long GetVolume();
|
||||
void SetVolume(long);
|
||||
LPDISPATCH GetSampleRes();
|
||||
void SetSampleRes(LPDISPATCH);
|
||||
long GetType();
|
||||
void SetType(long);
|
||||
long GetDataOffset();
|
||||
void SetDataOffset(long);
|
||||
long GetDataSize();
|
||||
void SetDataSize(long);
|
||||
long GetId();
|
||||
void SetId(long);
|
||||
|
||||
// Operations
|
||||
public:
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IResources wrapper class
|
||||
|
||||
class IResources : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
IResources() {} // Calls COleDispatchDriver default constructor
|
||||
IResources(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
IResources(const IResources& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
long GetCount();
|
||||
void SetCount(long);
|
||||
|
||||
// Operations
|
||||
public:
|
||||
LPDISPATCH Item(long Index);
|
||||
LPDISPATCH FindItem(LPCTSTR csName);
|
||||
LPDISPATCH Add(LPCTSTR csName);
|
||||
LPDISPATCH AddSampleRes(LPCTSTR csName);
|
||||
BOOL Remove(LPCTSTR csResName);
|
||||
LPDISPATCH FindItemByID(long EdiID);
|
||||
LPUNKNOWN Get_NewEnum();
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ISampleResource wrapper class
|
||||
|
||||
class ISampleResource : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
ISampleResource() {} // Calls COleDispatchDriver default constructor
|
||||
ISampleResource(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
ISampleResource(const ISampleResource& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
CString GetFileName();
|
||||
void SetFileName(LPCTSTR);
|
||||
long GetZipType();
|
||||
void SetZipType(long);
|
||||
BOOL GetLoop();
|
||||
void SetLoop(BOOL);
|
||||
long GetStartLoop();
|
||||
void SetStartLoop(long);
|
||||
long GetLoopLength();
|
||||
void SetLoopLength(long);
|
||||
|
||||
// Operations
|
||||
public:
|
||||
BOOL SetSampleData(LPCTSTR csFilename);
|
||||
LPDISPATCH GetResource();
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEvents wrapper class
|
||||
|
||||
class IEvents : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
IEvents() {} // Calls COleDispatchDriver default constructor
|
||||
IEvents(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
IEvents(const IEvents& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
long GetCount();
|
||||
void SetCount(long);
|
||||
|
||||
// Operations
|
||||
public:
|
||||
LPDISPATCH Item(long Index);
|
||||
LPDISPATCH FindItem(LPCTSTR csName);
|
||||
LPDISPATCH Add(LPCTSTR csName);
|
||||
LPDISPATCH AddPlayEvent(LPDISPATCH Resource);
|
||||
LPDISPATCH AddStopEvent(LPDISPATCH lpEvent);
|
||||
BOOL Remove(LPCTSTR csEventName);
|
||||
LPDISPATCH FindItemByID(long EdiID);
|
||||
LPUNKNOWN Get_NewEnum();
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEvent wrapper class
|
||||
|
||||
class IEvent : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
IEvent() {} // Calls COleDispatchDriver default constructor
|
||||
IEvent(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
IEvent(const IEvent& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
long GetId();
|
||||
void SetId(long);
|
||||
CString GetName();
|
||||
void SetName(LPCTSTR);
|
||||
BOOL GetDynamic();
|
||||
void SetDynamic(BOOL);
|
||||
BOOL GetStopable();
|
||||
void SetStopable(BOOL);
|
||||
long GetType();
|
||||
void SetType(long);
|
||||
|
||||
// Operations
|
||||
public:
|
||||
LPDISPATCH GetResource();
|
||||
BOOL LoadData();
|
||||
BOOL UnloadData();
|
||||
long Play();
|
||||
BOOL LoadPlayUnload();
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IOptionsSheet wrapper class
|
||||
|
||||
class IOptionsSheet : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
IOptionsSheet() {} // Calls COleDispatchDriver default constructor
|
||||
IOptionsSheet(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
IOptionsSheet(const IOptionsSheet& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IEventOptionsPage wrapper class
|
||||
|
||||
class IEventOptionsPage : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
IEventOptionsPage() {} // Calls COleDispatchDriver default constructor
|
||||
IEventOptionsPage(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
IEventOptionsPage(const IEventOptionsPage& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IResOptionsPage wrapper class
|
||||
|
||||
class IResOptionsPage : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
IResOptionsPage() {} // Calls COleDispatchDriver default constructor
|
||||
IResOptionsPage(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
IResOptionsPage(const IResOptionsPage& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IPlugInOptionsPage wrapper class
|
||||
|
||||
class IPlugInOptionsPage : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
IPlugInOptionsPage() {} // Calls COleDispatchDriver default constructor
|
||||
IPlugInOptionsPage(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
IPlugInOptionsPage(const IPlugInOptionsPage& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// ILanguageOptionsPage wrapper class
|
||||
|
||||
class ILanguageOptionsPage : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
ILanguageOptionsPage() {} // Calls COleDispatchDriver default constructor
|
||||
ILanguageOptionsPage(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
ILanguageOptionsPage(const ILanguageOptionsPage& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
};
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// IViewSettingsOptions wrapper class
|
||||
|
||||
class IViewSettingsOptions : public COleDispatchDriver
|
||||
{
|
||||
public:
|
||||
IViewSettingsOptions() {} // Calls COleDispatchDriver default constructor
|
||||
IViewSettingsOptions(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
||||
IViewSettingsOptions(const IViewSettingsOptions& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
};
|
2242
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/supervis.cpp
Normal file
2242
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/supervis.cpp
Normal file
File diff suppressed because it is too large
Load Diff
119
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/supervis.h
Normal file
119
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/supervis.h
Normal file
@@ -0,0 +1,119 @@
|
||||
// supervis.h : main header file for the SUPERVIS DLL
|
||||
//
|
||||
|
||||
#if !defined(AFX_SUPERVIS_H__2CEA4ECB_D8B0_11D2_9F3A_00104B6833D0__INCLUDED_)
|
||||
#define AFX_SUPERVIS_H__2CEA4ECB_D8B0_11D2_9F3A_00104B6833D0__INCLUDED_
|
||||
|
||||
#if _MSC_VER >= 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER >= 1000
|
||||
|
||||
#ifndef __AFXWIN_H__
|
||||
#error include 'stdafx.h' before including this file for PCH
|
||||
#endif
|
||||
|
||||
#include "resource.h" // main symbols
|
||||
#include "SuperVisSheet.h" // Added by ClassView
|
||||
#include "SuperVisThread.h"
|
||||
|
||||
//Mutex
|
||||
#include <afxmt.h>
|
||||
|
||||
//ACP
|
||||
#include "SCR.h"
|
||||
|
||||
|
||||
|
||||
//user defined window message
|
||||
#define WM_USER_UPDATE_DATA_TRUE 0x00008001
|
||||
#define WM_USER_UPDATE_DATA_FALSE 0x00008002
|
||||
#define WM_USER_DESTROY_WINDOW 0x00008003
|
||||
#define WM_USER_MIXERPAGE 0x00008004
|
||||
#define WM_USER_TIMER 0x00008005
|
||||
#define WM_SETNAME_EVENT 0x00008006
|
||||
#define WM_SETNAME_FIRST_OCCUR_EVENT 0x00008007
|
||||
#define WM_SETNAME_RES 0x00008010
|
||||
#define WM_SETNAME_FIRST_OCCUR_RES 0x00008009
|
||||
#define WM_INIT_AUTOMATION 0x00008008
|
||||
#define WM_EXIT_AUTOMATION 0x00008011
|
||||
#define WM_RESETLIST 0x00008012
|
||||
|
||||
|
||||
|
||||
|
||||
//Size used for all array
|
||||
#define ARRAY_SIZE 256
|
||||
#define VOICE_MODULE_ARRAY_SIZE 2
|
||||
#define MICROS_ARRAY_SIZE 5
|
||||
#define VOLUME_LINE_ARRAY_SIZE 5
|
||||
|
||||
SndReal dbg_calcul_pseudo_d(SndReal a,SndReal b);
|
||||
SndReal dbgSND_fn_rPseudoNormeVectorSnd(SndVector *v);
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CSupervisApp
|
||||
// See supervis.cpp for the implementation of this class
|
||||
//
|
||||
|
||||
class CSupervisApp : public CWinApp
|
||||
{
|
||||
public:
|
||||
CEvent* AddHistoSyncEvent;
|
||||
CEvent* LaunchSuperVisEvent;
|
||||
CMutex* SuperVisMutex;
|
||||
long m_lProcessTime;
|
||||
int m_iActivePage;
|
||||
int m_iRefreshRate;
|
||||
int m_iWindowLeft;
|
||||
int m_iWindowTop;
|
||||
int m_iWindowRight;
|
||||
int m_iWindowBottom;
|
||||
RegKeyVoicePage m_RegKeyVoicePage;
|
||||
RegKeyWavVoicePage m_RegKeyWavVoicePage;
|
||||
RegKeyThemePage m_RegKeyThemePage;
|
||||
RegKeyObjPage m_RegKeyObjPage;
|
||||
RegKeyMicPage m_RegKeyMicPage;
|
||||
RegKeyEventPage m_EventPageRegKeys;
|
||||
RegKeyMixerPage m_MixerPageRegKeys;
|
||||
BOOL m_bWindowOnTop;
|
||||
BOOL m_bWavVoicePageLoaded;
|
||||
CPtrArray m_apVirtualVoiceModule;
|
||||
CPtrArray m_apVolumeLine;
|
||||
CPtrArray m_apObjects;
|
||||
CPtrArray m_apEventHistoArray;
|
||||
CPtrArray m_apFirstOccurEventHistoArray;
|
||||
CPtrArray m_apResources;
|
||||
CPtrArray m_apFirstOccurResources;
|
||||
CPtrArray m_apMicros;
|
||||
CPtrArray m_apWavVoices;
|
||||
BOOL m_bSuperVisaterActive;
|
||||
CString m_cBinaryLCBFileTitle;
|
||||
CString m_cBinaryLCBPath;
|
||||
CString m_cLCBPath;
|
||||
CSuperVisThread * m_SuperVisThread;
|
||||
CSupervisApp();
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CSupervisApp)
|
||||
public:
|
||||
virtual BOOL InitInstance();
|
||||
virtual int ExitInstance();
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
//{{AFX_MSG(CSupervisApp)
|
||||
// NOTE - the ClassWizard will add and remove member functions here.
|
||||
// DO NOT EDIT what you see in these blocks of generated code !
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_SUPERVIS_H__2CEA4ECB_D8B0_11D2_9F3A_00104B6833D0__INCLUDED_)
|
418
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/supervis.rc
Normal file
418
Rayman_X/cpa/tempgrp/SND/src/Win95/Supervis99/supervis.rc
Normal file
@@ -0,0 +1,418 @@
|
||||
//Microsoft Developer Studio generated resource script.
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include "afxres.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// English (U.S.) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#include ""afxres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#define _AFX_NO_SPLITTER_RESOURCES\r\n"
|
||||
"#define _AFX_NO_OLE_RESOURCES\r\n"
|
||||
"#define _AFX_NO_TRACKER_RESOURCES\r\n"
|
||||
"#define _AFX_NO_PROPERTY_RESOURCES\r\n"
|
||||
"\r\n"
|
||||
"#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)\r\n"
|
||||
"#ifdef _WIN32\r\n"
|
||||
"LANGUAGE 9, 1\r\n"
|
||||
"#pragma code_page(1252)\r\n"
|
||||
"#endif\r\n"
|
||||
"#include ""res\\supervis.rc2"" // non-Microsoft Visual C++ edited resources\r\n"
|
||||
"#include ""afxres.rc"" // Standard components\r\n"
|
||||
"#endif\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
#ifndef _MAC
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Version
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 1,0,0,1
|
||||
PRODUCTVERSION 1,0,0,1
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS 0x4L
|
||||
FILETYPE 0x2L
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904B0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "\0"
|
||||
VALUE "FileDescription", "supervis DLL\0"
|
||||
VALUE "FileVersion", "1, 0, 0, 1\0"
|
||||
VALUE "InternalName", "supervis\0"
|
||||
VALUE "LegalCopyright", "Copyright (C) 1999\0"
|
||||
VALUE "LegalTrademarks", "\0"
|
||||
VALUE "OriginalFilename", "supervis.DLL\0"
|
||||
VALUE "ProductName", "supervis Dynamic Link Library\0"
|
||||
VALUE "ProductVersion", "1, 0, 0, 1\0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
END
|
||||
END
|
||||
|
||||
#endif // !_MAC
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Dialog
|
||||
//
|
||||
|
||||
IDD_EVENTS_HISTORY_PAGE DIALOG DISCARDABLE 0, 0, 500, 375
|
||||
STYLE WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Events Historic"
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
CONTROL "List1",IDC_EVENTS_HISTORY_LIST,"SysListView32",
|
||||
LVS_REPORT | LVS_SINGLESEL | WS_BORDER | WS_TABSTOP,21,
|
||||
55,457,187
|
||||
GROUPBOX "Events Historic List Settings",IDC_STATIC,7,263,228,103
|
||||
CONTROL "Only display events with Event Id = ",IDC_CHECK_EVENT,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,300,130,10
|
||||
CONTROL "Debug Break on Next Event (need Visual C++ installed)",
|
||||
IDC_CHECK_DEBUG_ON_EVENT,"Button",BS_AUTOCHECKBOX |
|
||||
WS_TABSTOP,13,340,190,9
|
||||
CONTROL "Display only first occurence of Events",
|
||||
IDC_CHECK_FIRST_OCCUR,"Button",BS_AUTOCHECKBOX |
|
||||
WS_TABSTOP,13,321,134,11
|
||||
EDITTEXT IDC_EDIT_EVENT_ID,147,298,22,12,ES_AUTOHSCROLL |
|
||||
ES_NUMBER
|
||||
CONTROL "Only display events with Bank Id = ",IDC_CHECK_BANK,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,279,126,12
|
||||
EDITTEXT IDC_EDIT_BANK_ID,147,279,22,12,ES_AUTOHSCROLL |
|
||||
ES_NUMBER
|
||||
PUSHBUTTON "&Reset List",IDC_RESET_BUTTON,408,34,70,15
|
||||
GROUPBOX "Events Historic List",IDC_STATIC,7,7,485,252
|
||||
LTEXT "Show all events that occured since the engine started. Press the ""Reset List"" button to empty the list",
|
||||
IDC_STATIC,19,21,457,11,SS_SUNKEN | WS_BORDER
|
||||
GROUPBOX "Events Watch List",IDC_STATIC,264,263,228,103
|
||||
LISTBOX IDC_WATCH_LIST,367,287,111,72,LBS_SORT |
|
||||
LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "Empty List",IDC_EMPTY_WATCH,277,295,48,14
|
||||
CONTROL "Only Show Events In Watch List",IDC_CHECK_WATCH,"Button",
|
||||
BS_AUTOCHECKBOX | WS_TABSTOP,277,277,130,8
|
||||
PUSHBUTTON "?",IDC_HELP_WATCH,459,271,19,12
|
||||
PUSHBUTTON "&Pause Process",IDC_PAUSE_BUTTON,317,34,70,15
|
||||
END
|
||||
|
||||
IDD_MICRO_OBJECTS_PAGE DIALOG DISCARDABLE 0, 0, 500, 374
|
||||
STYLE WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Micro and Objects"
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
CONTROL "List1",IDC_MICRO_LIST,"SysListView32",LVS_REPORT |
|
||||
LVS_SINGLESEL | WS_BORDER | WS_TABSTOP,19,21,461,113
|
||||
CONTROL "List2",IDC_OBJECT_LIST,"SysListView32",LVS_REPORT |
|
||||
LVS_SINGLESEL | WS_BORDER | WS_TABSTOP,19,147,461,113
|
||||
LTEXT "Nx, Ny, Nz = Micro Normal ",IDC_STATIC,356,326,104,10
|
||||
LTEXT "Tx, ty, Tz = Micro Tangent",IDC_STATIC,356,342,104,10
|
||||
GROUPBOX "Legend",IDC_STATIC,322,309,159,57
|
||||
GROUPBOX "Current Selected Object",IDC_STATIC,14,264,291,101,NOT
|
||||
WS_VISIBLE
|
||||
GROUPBOX "Associated Micro",IDC_STATIC,22,274,108,86,NOT
|
||||
WS_VISIBLE
|
||||
CONTROL "List3",IDC_ASSO_MIC_LIST,"SysListView32",LVS_REPORT |
|
||||
LVS_SINGLESEL | NOT WS_VISIBLE | WS_BORDER | WS_TABSTOP,
|
||||
30,285,91,70
|
||||
GROUPBOX "Global Doppler Effect",IDC_STATIC,321,264,159,36
|
||||
EDITTEXT IDC_DOPPLER_EFFECT,367,276,62,15,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
END
|
||||
|
||||
IDD_SUPERVIS_SETTINGS_PAGE DIALOG DISCARDABLE 0, 0, 500, 374
|
||||
STYLE WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "SuperVisater Settings"
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
GROUPBOX "Refresh Rate",IDC_STATIC,13,25,174,54
|
||||
EDITTEXT IDC_REFRESH_RATE,98,47,21,13,ES_AUTOHSCROLL
|
||||
LTEXT "Refresh every",IDC_STATIC,50,50,48,10
|
||||
LTEXT "msec",IDC_STATIC,124,50,24,10
|
||||
PUSHBUTTON "+",IDC_PLUS,29,42,14,11
|
||||
PUSHBUTTON "-",IDC_MOINS,29,55,14,11
|
||||
GROUPBOX "Window Management",IDC_STATIC,13,99,174,54
|
||||
CONTROL "Windows Always On Top",IDC_WINDOW_ON_TOP,"Button",
|
||||
BS_AUTOCHECKBOX | WS_TABSTOP,25,121,121,13
|
||||
EDITTEXT IDC_EDIT_LCB_PATH,17,177,276,12,ES_AUTOHSCROLL
|
||||
PUSHBUTTON "&Browse for LCB file....",IDC_BROWSE_FOR_LCB,301,177,80,
|
||||
15
|
||||
GROUPBOX "LCB filename:",IDC_STATIC,7,166,385,33
|
||||
END
|
||||
|
||||
IDD_THEMES_PAGE DIALOG DISCARDABLE 0, 0, 500, 374
|
||||
STYLE WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Themes"
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
GROUPBOX "Themes",IDC_STATIC,16,7,468,179
|
||||
GROUPBOX "Volume Lines",IDC_STATIC,16,197,468,131
|
||||
CONTROL "List1",IDC_VOLUME_LINE_LIST,"SysListView32",LVS_REPORT |
|
||||
LVS_SINGLESEL | WS_BORDER | WS_TABSTOP,27,213,446,107
|
||||
LTEXT "Pointer :",IDC_STATIC,37,109,45,11
|
||||
LTEXT "Current Part :",IDC_STATIC,165,33,56,11
|
||||
LTEXT "Current Bridge :",IDC_STATIC,37,157,60,11
|
||||
LTEXT "State :",IDC_STATIC,165,109,45,11
|
||||
EDITTEXT IDC_CURRENT_THEME,90,31,56,13,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
EDITTEXT IDC_ASKED_THEME_POINTER,90,107,56,13,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
EDITTEXT IDC_CURRENT_PART,222,31,56,13,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
EDITTEXT IDC_STATE,222,107,56,13,ES_AUTOHSCROLL | ES_READONLY
|
||||
EDITTEXT IDC_CURRENT_BRIDGE,106,155,38,13,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
LTEXT "loops left",IDC_STATIC,149,157,43,11
|
||||
EDITTEXT IDC_CURRENT_THEME_ID,90,60,56,13,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
GROUPBOX "Current Theme",IDC_STATIC,25,18,450,72
|
||||
LTEXT "Pointer :",IDC_STATIC,37,33,45,11
|
||||
LTEXT "ID (Hex) :",IDC_STATIC,35,62,45,11
|
||||
LTEXT "Bank Id :",IDC_STATIC,165,62,45,11
|
||||
LTEXT "Resource Id :",IDC_STATIC,294,62,45,11
|
||||
GROUPBOX "Asked Theme",IDC_STATIC,25,96,449,81
|
||||
LTEXT "ID (Hex)",IDC_STATIC,37,133,45,11
|
||||
LTEXT "Bank Id :",IDC_STATIC,165,133,45,11
|
||||
LTEXT "Resource Id :",IDC_STATIC,294,133,45,11
|
||||
EDITTEXT IDC_CURRENT_THEME_BANK_ID,222,60,56,13,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
EDITTEXT IDC_CURRENT_THEME_RES_ID,349,60,56,13,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
EDITTEXT IDC_ASKED_THEME_ID,90,131,56,13,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
EDITTEXT IDC_ASKED_THEME_BANK,222,131,56,13,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
EDITTEXT IDC_ASKED_THEME_RES_ID,349,131,56,13,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
END
|
||||
|
||||
IDD_VIRTUAL_VOICES_PAGE DIALOG DISCARDABLE 0, 0, 499, 374
|
||||
STYLE WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Voices"
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
CONTROL "List1",IDC_VOICES_LIST,"SysListView32",LVS_REPORT |
|
||||
LVS_SINGLESEL | WS_BORDER | WS_TABSTOP,18,76,465,272
|
||||
LTEXT "Maximum Available Virtual Voices :",IDC_STATIC,27,26,
|
||||
115,11
|
||||
LTEXT "Number of Virtual Voices used :",IDC_STATIC,287,26,115,
|
||||
11
|
||||
EDITTEXT IDC_MAX_VOICES,153,25,24,12,ES_AUTOHSCROLL | ES_READONLY
|
||||
EDITTEXT IDC_USED_VOICES,413,25,24,12,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
GROUPBOX "Stats",IDC_STATIC,15,13,468,31
|
||||
COMBOBOX IDC_VOICES_COMBO,18,55,199,17,CBS_DROPDOWN | CBS_SORT |
|
||||
WS_VSCROLL | WS_TABSTOP
|
||||
END
|
||||
|
||||
IDD_MIXER_PAGE DIALOG DISCARDABLE 0, 0, 500, 375
|
||||
STYLE WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Mixer"
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
CONTROL "List1",IDC_RES_LIST,"SysListView32",LVS_REPORT |
|
||||
LVS_SINGLESEL | WS_BORDER | WS_TABSTOP,18,54,466,195
|
||||
PUSHBUTTON "&Save Changes in LCB",IDC_SAVE,261,340,95,16
|
||||
LTEXT "Selected Ressource Volume :",IDC_STATIC,255,276,96,10
|
||||
EDITTEXT IDC_EDIT_RES_VOL,360,274,26,12,ES_AUTOHSCROLL
|
||||
PUSHBUTTON "+",IDC_VOL_PLUS,456,297,25,20
|
||||
PUSHBUTTON "-",IDC_VOL_MOINS,456,325,25,21
|
||||
GROUPBOX "Ressources list",IDC_STATIC,7,7,486,250
|
||||
LTEXT "Show all resources that occured since the engine started. Press the ""Reset List"" button to empty the list",
|
||||
IDC_STATIC,20,19,464,11,SS_SUNKEN | WS_BORDER
|
||||
GROUPBOX "Mixing center",IDC_STATIC,250,262,243,103
|
||||
GROUPBOX "Resources List Settings",IDC_STATIC,7,262,225,103
|
||||
CONTROL "Only display resources with Res Id = ",IDC_CHECK_RES,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,27,299,130,10
|
||||
CONTROL "Debug Break on Next Resource (need Visual C++ installed)",
|
||||
IDC_CHECK_DEBUG_ON_RES,"Button",BS_AUTOCHECKBOX |
|
||||
BS_MULTILINE | WS_TABSTOP,27,339,174,17
|
||||
CONTROL "Display only first occurence of Resourcess",
|
||||
IDC_CHECK_FIRST_RES_OCCUR,"Button",BS_AUTOCHECKBOX |
|
||||
WS_TABSTOP,27,320,151,11
|
||||
EDITTEXT IDC_EDIT_RES_ID,161,297,22,12,ES_AUTOHSCROLL | ES_NUMBER
|
||||
CONTROL "Only display resources with Bank Id = ",
|
||||
IDC_CHECK_RES_BANK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,
|
||||
27,278,126,12
|
||||
EDITTEXT IDC_EDIT_RES_BANK_ID,161,278,22,12,ES_AUTOHSCROLL |
|
||||
ES_NUMBER
|
||||
PUSHBUTTON "&Reset List",IDC_RESET_RESLIST_BUTTON,414,33,70,15
|
||||
PUSHBUTTON "&Pause Process",IDC_PAUSE_RES_BUTTON,329,33,70,15
|
||||
CONTROL "Slider1",IDC_VOLUME_SLIDER,"msctls_trackbar32",TBS_VERT |
|
||||
TBS_BOTH | TBS_NOTICKS | WS_TABSTOP,410,288,17,71
|
||||
LTEXT "Coarse tuning",IDC_STATIC,409,270,37,16
|
||||
LTEXT "Fine tuning",IDC_STATIC,462,270,23,16
|
||||
LTEXT "Name:",IDC_STATIC,255,295,26,9
|
||||
EDITTEXT IDC_SEL_RES_NAME,283,292,103,12,ES_AUTOHSCROLL
|
||||
PUSHBUTTON "&Replay Sound",IDC_PLAY,261,315,95,16
|
||||
END
|
||||
|
||||
IDD_WAV_VOICES_PAGE DIALOG DISCARDABLE 0, 0, 500, 375
|
||||
STYLE WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Wav Voices"
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
LTEXT "Process Time for all WAV Voices :",IDC_STATIC,74,27,
|
||||
116,10
|
||||
GROUPBOX "Stats",IDC_STATIC,14,15,472,29
|
||||
EDITTEXT IDC_PROCESS_TIME,215,25,33,12,ES_AUTOHSCROLL |
|
||||
ES_READONLY
|
||||
LTEXT "/ 1000",IDC_STATIC,249,27,27,10
|
||||
CONTROL "List1",IDC_WAV_VOICES_LIST,"SysListView32",LVS_REPORT |
|
||||
LVS_SINGLESEL | WS_BORDER | WS_TABSTOP,14,53,472,309
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// DESIGNINFO
|
||||
//
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
GUIDELINES DESIGNINFO DISCARDABLE
|
||||
BEGIN
|
||||
IDD_EVENTS_HISTORY_PAGE, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 492
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 368
|
||||
END
|
||||
|
||||
IDD_MICRO_OBJECTS_PAGE, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 493
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 367
|
||||
END
|
||||
|
||||
IDD_SUPERVIS_SETTINGS_PAGE, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 493
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 367
|
||||
END
|
||||
|
||||
IDD_THEMES_PAGE, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 493
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 367
|
||||
END
|
||||
|
||||
IDD_VIRTUAL_VOICES_PAGE, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 492
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 367
|
||||
END
|
||||
|
||||
IDD_MIXER_PAGE, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 493
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 368
|
||||
END
|
||||
|
||||
IDD_WAV_VOICES_PAGE, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 493
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 368
|
||||
END
|
||||
END
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Menu
|
||||
//
|
||||
|
||||
IDR_MENU1 MENU DISCARDABLE
|
||||
BEGIN
|
||||
POPUP ""
|
||||
BEGIN
|
||||
MENUITEM "Add Event to the Watch List", ID_WATCH
|
||||
END
|
||||
END
|
||||
|
||||
#endif // English (U.S.) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
#define _AFX_NO_SPLITTER_RESOURCES
|
||||
#define _AFX_NO_OLE_RESOURCES
|
||||
#define _AFX_NO_TRACKER_RESOURCES
|
||||
#define _AFX_NO_PROPERTY_RESOURCES
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE 9, 1
|
||||
#pragma code_page(1252)
|
||||
#endif
|
||||
#include "res\supervis.rc2" // non-Microsoft Visual C++ edited resources
|
||||
#include "afxres.rc" // Standard components
|
||||
#endif
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
|
Reference in New Issue
Block a user