Fixing character conversion upon receiving text.
Adding our modified FrontView API sample allowing us to display every character supported by our VFD.
1.1 --- a/SoundGraphAccess.cpp Sat Apr 13 00:45:13 2013 +0200
1.2 +++ b/SoundGraphAccess.cpp Sun Apr 14 22:40:46 2013 +0200
1.3 @@ -193,12 +193,23 @@
1.4
1.5 //Convert first line
1.6 OutputDebugStringA(gTextFirstLine);
1.7 - int convertedChars = MultiByteToWideChar(CP_UTF8, 0, gTextFirstLine, -1, gTextFirstLine16, sizeof(gTextFirstLine16));
1.8 - OutputDebugString(gTextFirstLine16);
1.9 + //int convertedChars = MultiByteToWideChar(CP_UTF8, 0, gTextFirstLine, -1, gTextFirstLine16, sizeof(gTextFirstLine16));
1.10 + for (int i=0;i<=strlen(gTextFirstLine);i++)
1.11 + {
1.12 + unsigned char myChar=(unsigned char)gTextFirstLine[i];
1.13 + gTextFirstLine16[i]=myChar;
1.14 + }
1.15 + OutputDebugStringW(gTextFirstLine16);
1.16 //Convert second line
1.17 OutputDebugStringA(gTextSecondLine);
1.18 - convertedChars = MultiByteToWideChar(CP_UTF8, 0, gTextSecondLine, -1, gTextSecondLine16, sizeof(gTextSecondLine16));
1.19 - OutputDebugString(gTextSecondLine16);
1.20 + //convertedChars = MultiByteToWideChar(CP_UTF8, 0, gTextSecondLine, -1, gTextSecondLine16, sizeof(gTextSecondLine16));
1.21 + for (int i=0;i<=strlen(gTextSecondLine);i++)
1.22 + {
1.23 + unsigned char myChar=(unsigned char)gTextSecondLine[i];
1.24 + gTextSecondLine16[i]=myChar;
1.25 + }
1.26 +
1.27 + OutputDebugStringW(gTextSecondLine16);
1.28
1.29 //IMON API call need to be done from window thread for some reason
1.30 SendMessageToServer(KRspPending);
1.31 @@ -555,7 +566,11 @@
1.32 break;
1.33 //
1.34 case WM_IMON_DISPLAY_SET_VFD_TEXT:
1.35 +#ifdef _UNICODE
1.36 if (DSP_SUCCEEDED==IMON_Display_SetVfdText(gTextFirstLine16,gTextSecondLine16))
1.37 +#else
1.38 + if (DSP_SUCCEEDED==IMON_Display_SetVfdText(gTextFirstLine,gTextSecondLine))
1.39 +#endif
1.40 {
1.41 SendMessageToServer(KRspDone);
1.42 }
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
2.2 +++ b/iMONDisplayApiSample/DisplayTest.sln Sun Apr 14 22:40:46 2013 +0200
2.3 @@ -0,0 +1,20 @@
2.4 +
2.5 +Microsoft Visual Studio Solution File, Format Version 10.00
2.6 +# Visual Studio 2008
2.7 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DisplayTest", "DisplayTest\DisplayTest.vcproj", "{FE6179B9-6E3E-4157-BE52-C4A6B202306F}"
2.8 +EndProject
2.9 +Global
2.10 + GlobalSection(SolutionConfigurationPlatforms) = preSolution
2.11 + Debug|Win32 = Debug|Win32
2.12 + Release|Win32 = Release|Win32
2.13 + EndGlobalSection
2.14 + GlobalSection(ProjectConfigurationPlatforms) = postSolution
2.15 + {FE6179B9-6E3E-4157-BE52-C4A6B202306F}.Debug|Win32.ActiveCfg = Debug|Win32
2.16 + {FE6179B9-6E3E-4157-BE52-C4A6B202306F}.Debug|Win32.Build.0 = Debug|Win32
2.17 + {FE6179B9-6E3E-4157-BE52-C4A6B202306F}.Release|Win32.ActiveCfg = Release|Win32
2.18 + {FE6179B9-6E3E-4157-BE52-C4A6B202306F}.Release|Win32.Build.0 = Release|Win32
2.19 + EndGlobalSection
2.20 + GlobalSection(SolutionProperties) = preSolution
2.21 + HideSolutionNode = FALSE
2.22 + EndGlobalSection
2.23 +EndGlobal
3.1 Binary file iMONDisplayApiSample/DisplayTest.suo has changed
4.1 Binary file iMONDisplayApiSample/DisplayTest.v11.suo has changed
5.1 Binary file iMONDisplayApiSample/DisplayTest/DisplayTest.aps has changed
6.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
6.2 +++ b/iMONDisplayApiSample/DisplayTest/DisplayTest.cpp Sun Apr 14 22:40:46 2013 +0200
6.3 @@ -0,0 +1,78 @@
6.4 +// DisplayTest.cpp : Defines the class behaviors for the application.
6.5 +//
6.6 +
6.7 +#include "stdafx.h"
6.8 +#include "DisplayTest.h"
6.9 +#include "DisplayTestDlg.h"
6.10 +
6.11 +#ifdef _DEBUG
6.12 +#define new DEBUG_NEW
6.13 +#endif
6.14 +
6.15 +
6.16 +// CDisplayTestApp
6.17 +
6.18 +BEGIN_MESSAGE_MAP(CDisplayTestApp, CWinApp)
6.19 + ON_COMMAND(ID_HELP, &CWinApp::OnHelp)
6.20 +END_MESSAGE_MAP()
6.21 +
6.22 +
6.23 +// CDisplayTestApp construction
6.24 +
6.25 +CDisplayTestApp::CDisplayTestApp()
6.26 +{
6.27 + // TODO: add construction code here,
6.28 + // Place all significant initialization in InitInstance
6.29 +}
6.30 +
6.31 +
6.32 +// The one and only CDisplayTestApp object
6.33 +
6.34 +CDisplayTestApp theApp;
6.35 +
6.36 +
6.37 +// CDisplayTestApp initialization
6.38 +
6.39 +BOOL CDisplayTestApp::InitInstance()
6.40 +{
6.41 + // InitCommonControlsEx() is required on Windows XP if an application
6.42 + // manifest specifies use of ComCtl32.dll version 6 or later to enable
6.43 + // visual styles. Otherwise, any window creation will fail.
6.44 + INITCOMMONCONTROLSEX InitCtrls;
6.45 + InitCtrls.dwSize = sizeof(InitCtrls);
6.46 + // Set this to include all the common control classes you want to use
6.47 + // in your application.
6.48 + InitCtrls.dwICC = ICC_WIN95_CLASSES;
6.49 + InitCommonControlsEx(&InitCtrls);
6.50 +
6.51 + CWinApp::InitInstance();
6.52 +
6.53 + AfxEnableControlContainer();
6.54 +
6.55 + // Standard initialization
6.56 + // If you are not using these features and wish to reduce the size
6.57 + // of your final executable, you should remove from the following
6.58 + // the specific initialization routines you do not need
6.59 + // Change the registry key under which our settings are stored
6.60 + // TODO: You should modify this string to be something appropriate
6.61 + // such as the name of your company or organization
6.62 + SetRegistryKey(_T("Local AppWizard-Generated Applications"));
6.63 +
6.64 + CDisplayTestDlg dlg;
6.65 + m_pMainWnd = &dlg;
6.66 + INT_PTR nResponse = dlg.DoModal();
6.67 + if (nResponse == IDOK)
6.68 + {
6.69 + // TODO: Place code here to handle when the dialog is
6.70 + // dismissed with OK
6.71 + }
6.72 + else if (nResponse == IDCANCEL)
6.73 + {
6.74 + // TODO: Place code here to handle when the dialog is
6.75 + // dismissed with Cancel
6.76 + }
6.77 +
6.78 + // Since the dialog has been closed, return FALSE so that we exit the
6.79 + // application, rather than start the application's message pump.
6.80 + return FALSE;
6.81 +}
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
7.2 +++ b/iMONDisplayApiSample/DisplayTest/DisplayTest.h Sun Apr 14 22:40:46 2013 +0200
7.3 @@ -0,0 +1,31 @@
7.4 +// DisplayTest.h : main header file for the PROJECT_NAME application
7.5 +//
7.6 +
7.7 +#pragma once
7.8 +
7.9 +#ifndef __AFXWIN_H__
7.10 + #error "include 'stdafx.h' before including this file for PCH"
7.11 +#endif
7.12 +
7.13 +#include "resource.h" // main symbols
7.14 +
7.15 +
7.16 +// CDisplayTestApp:
7.17 +// See DisplayTest.cpp for the implementation of this class
7.18 +//
7.19 +
7.20 +class CDisplayTestApp : public CWinApp
7.21 +{
7.22 +public:
7.23 + CDisplayTestApp();
7.24 +
7.25 +// Overrides
7.26 + public:
7.27 + virtual BOOL InitInstance();
7.28 +
7.29 +// Implementation
7.30 +
7.31 + DECLARE_MESSAGE_MAP()
7.32 +};
7.33 +
7.34 +extern CDisplayTestApp theApp;
7.35 \ No newline at end of file
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
8.2 +++ b/iMONDisplayApiSample/DisplayTest/DisplayTest.rc Sun Apr 14 22:40:46 2013 +0200
8.3 @@ -0,0 +1,261 @@
8.4 +// Microsoft Visual C++ generated resource script.
8.5 +//
8.6 +#include "resource.h"
8.7 +
8.8 +#define APSTUDIO_READONLY_SYMBOLS
8.9 +/////////////////////////////////////////////////////////////////////////////
8.10 +//
8.11 +// Generated from the TEXTINCLUDE 2 resource.
8.12 +//
8.13 +#include "afxres.h"
8.14 +
8.15 +/////////////////////////////////////////////////////////////////////////////
8.16 +#undef APSTUDIO_READONLY_SYMBOLS
8.17 +
8.18 +/////////////////////////////////////////////////////////////////////////////
8.19 +// Korean resources
8.20 +
8.21 +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_KOR)
8.22 +#ifdef _WIN32
8.23 +LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
8.24 +#pragma code_page(949)
8.25 +#endif //_WIN32
8.26 +
8.27 +#ifdef APSTUDIO_INVOKED
8.28 +/////////////////////////////////////////////////////////////////////////////
8.29 +//
8.30 +// TEXTINCLUDE
8.31 +//
8.32 +
8.33 +1 TEXTINCLUDE
8.34 +BEGIN
8.35 + "resource.h\0"
8.36 +END
8.37 +
8.38 +2 TEXTINCLUDE
8.39 +BEGIN
8.40 + "#include ""afxres.h""\r\n"
8.41 + "\0"
8.42 +END
8.43 +
8.44 +3 TEXTINCLUDE
8.45 +BEGIN
8.46 + "#define _AFX_NO_SPLITTER_RESOURCES\r\n"
8.47 + "#define _AFX_NO_OLE_RESOURCES\r\n"
8.48 + "#define _AFX_NO_TRACKER_RESOURCES\r\n"
8.49 + "#define _AFX_NO_PROPERTY_RESOURCES\r\n"
8.50 + "\r\n"
8.51 + "#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_KOR)\r\n"
8.52 + "LANGUAGE 18, 1\r\n"
8.53 + "#pragma code_page(949)\r\n"
8.54 + "#include ""res\\DisplayTest.rc2"" // non-Microsoft Visual C++ edited resources\r\n"
8.55 + "#include ""afxres.rc"" // Standard components\r\n"
8.56 + "#endif\r\n"
8.57 + "\0"
8.58 +END
8.59 +
8.60 +#endif // APSTUDIO_INVOKED
8.61 +
8.62 +
8.63 +/////////////////////////////////////////////////////////////////////////////
8.64 +//
8.65 +// Icon
8.66 +//
8.67 +
8.68 +// Icon with lowest ID value placed first to ensure application icon
8.69 +// remains consistent on all systems.
8.70 +IDR_MAINFRAME ICON "res\\DisplayTest.ico"
8.71 +
8.72 +/////////////////////////////////////////////////////////////////////////////
8.73 +//
8.74 +// Dialog
8.75 +//
8.76 +
8.77 +IDD_ABOUTBOX DIALOGEX 0, 0, 235, 55
8.78 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
8.79 +CAPTION "About DisplayTest"
8.80 +FONT 8, "MS Shell Dlg", 0, 0, 0x1
8.81 +BEGIN
8.82 + ICON IDR_MAINFRAME,IDC_STATIC,11,17,20,20
8.83 + LTEXT "DisplayTest Version 1.0",IDC_STATIC,40,10,119,8,SS_NOPREFIX
8.84 + LTEXT "Copyright (C) 2010",IDC_STATIC,40,25,119,8
8.85 + DEFPUSHBUTTON "OK",IDOK,178,7,50,16,WS_GROUP
8.86 +END
8.87 +
8.88 +IDD_DISPLAYTEST_DIALOG DIALOGEX 0, 0, 403, 269
8.89 +STYLE DS_SETFONT | DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
8.90 +EXSTYLE WS_EX_APPWINDOW
8.91 +CAPTION "DisplayTest"
8.92 +FONT 9, "Tahoma", 400, 0, 0x0
8.93 +BEGIN
8.94 + PUSHBUTTON "Init Plug-in",IDC_BUTTON1,7,7,62,16
8.95 + GROUPBOX "VFD Display",IDC_STATIC,7,32,189,102
8.96 + GROUPBOX "LCD Display",IDC_STATIC,207,32,189,66
8.97 + EDITTEXT IDC_EDIT1,49,44,131,12,ES_AUTOHSCROLL
8.98 + EDITTEXT IDC_EDIT2,49,59,131,12,ES_AUTOHSCROLL
8.99 + LTEXT "1st Line",IDC_STATIC,15,46,28,8
8.100 + LTEXT "2nd Line",IDC_STATIC,15,61,28,8
8.101 + PUSHBUTTON "Send Text",IDC_BUTTON2,33,74,62,16
8.102 + PUSHBUTTON "Start Random EQ",IDC_BUTTON3,100,74,62,16
8.103 + LTEXT "Static",IDC_STATIC_INFO,78,11,318,10
8.104 + EDITTEXT IDC_EDIT3,217,51,165,12,ES_AUTOHSCROLL
8.105 + PUSHBUTTON "Send Text",IDC_BUTTON4,234,74,62,16
8.106 + PUSHBUTTON "Start Random EQ",IDC_BUTTON5,302,74,62,16
8.107 + CONTROL "1",IDC_ORANGE1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,41,154,20,10
8.108 + CONTROL "2",IDC_ORANGE2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,157,20,10
8.109 + CONTROL "3",IDC_ORANGE3,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,167,20,10
8.110 + CONTROL "4",IDC_ORANGE4,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,178,20,10
8.111 + CONTROL "5",IDC_ORANGE5,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,41,182,20,10
8.112 + CONTROL "6",IDC_ORANGE6,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,64,177,20,10
8.113 + CONTROL "7",IDC_ORANGE7,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,64,167,20,10
8.114 + CONTROL "8",IDC_ORANGE8,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,64,157,20,10
8.115 + CONTROL "0",IDC_ORANGE0,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,78,187,20,10
8.116 + CONTROL "MUSIC",IDC_MUSIC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,115,155,36,10
8.117 + CONTROL "MOVIE",IDC_MOVIE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,154,155,37,10
8.118 + CONTROL "PHOTO",IDC_PHOTO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,195,155,39,10
8.119 + CONTROL "CD/DVD",IDC_CD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,239,155,41,10
8.120 + CONTROL "TV",IDC_TV,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,115,165,25,10
8.121 + CONTROL "WEBCASTING",IDC_WEBCASTING,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,147,165,59,10
8.122 + CONTROL "NEWS/WEATHER",IDC_NEWS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,210,165,71,10
8.123 + CONTROL "L",IDC_SPK_L,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,299,156,19,10
8.124 + CONTROL "C",IDC_SPK_C,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,327,156,20,10
8.125 + CONTROL "R",IDC_SPK_R,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,363,156,20,10
8.126 + CONTROL "SL",IDC_SPK_SL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,299,166,23,10
8.127 + CONTROL "LFE",IDC_SPK_LFE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,327,166,27,10
8.128 + CONTROL "SR",IDC_SPK_SR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,363,166,24,10
8.129 + CONTROL "RL",IDC_SPK_RL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,299,176,23,10
8.130 + CONTROL "S/PDIF",IDC_SPK_SPDIF,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,327,176,34,10
8.131 + CONTROL "RR",IDC_SPK_RR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,363,176,24,10
8.132 + CONTROL "SRC",IDC_AR_SRC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,200,28,10
8.133 + CONTROL "FIT",IDC_AR_FIT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,343,200,26,10
8.134 + CONTROL "TV",IDC_AR_TV,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,210,25,10
8.135 + CONTROL "HDTV",IDC_AR_HDTV,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,343,210,34,10
8.136 + CONTROL "SCR1",IDC_AR_SCR1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,220,32,10
8.137 + CONTROL "SCR2",IDC_AR_SCR2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,343,220,32,10
8.138 + CONTROL "MPG",IDC_AV_MPG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,199,31,10
8.139 + CONTROL "DIVX",IDC_AV_DIVX,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,199,31,10
8.140 + CONTROL "XVID",IDC_AV_XVID,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,199,31,10
8.141 + CONTROL "WMV",IDC_AV_WMV,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,199,31,10
8.142 + CONTROL "MPG",IDC_AV_MPA,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,209,31,10
8.143 + CONTROL "AC3",IDC_AV_AC3,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,209,33,10
8.144 + CONTROL "DTS",IDC_AV_DTS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,209,33,10
8.145 + CONTROL "WMA",IDC_AV_WMA,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,209,33,10
8.146 + CONTROL "MP3",IDC_A_MP3,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,220,40,9
8.147 + CONTROL "OGG",IDC_A_OGG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,220,40,9
8.148 + CONTROL "WMA",IDC_A_WMA,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,220,40,9
8.149 + CONTROL "WAV",IDC_A_WAV,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,220,40,9
8.150 + CONTROL "REP",IDC_REPEAT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,200,35,9
8.151 + CONTROL "SFL",IDC_SHUFFLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,57,200,29,9
8.152 + CONTROL "ALARM",IDC_ALARM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,210,35,9
8.153 + CONTROL "REC",IDC_REC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,57,210,29,9
8.154 + CONTROL "TIME",IDC_TIME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,57,220,35,9
8.155 + CONTROL "VOL",IDC_VOL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,220,29,9
8.156 + GROUPBOX "LCD Icon & Progress",IDC_STATIC,7,141,389,121
8.157 + CONTROL "",IDC_SLIDER1,"msctls_trackbar32",TBS_BOTH | TBS_NOTICKS | WS_TABSTOP,88,235,227,18
8.158 + PUSHBUTTON "Start Char Scroll",IDC_BUTTON6,69,98,62,16
8.159 + PUSHBUTTON "Next Char",IDC_BUTTON7,138,98,47,16
8.160 + PUSHBUTTON "Previous Char",IDC_BUTTON8,16,98,47,16
8.161 +END
8.162 +
8.163 +
8.164 +/////////////////////////////////////////////////////////////////////////////
8.165 +//
8.166 +// Version
8.167 +//
8.168 +
8.169 +VS_VERSION_INFO VERSIONINFO
8.170 + FILEVERSION 1,0,0,1
8.171 + PRODUCTVERSION 1,0,0,1
8.172 + FILEFLAGSMASK 0x3fL
8.173 +#ifdef _DEBUG
8.174 + FILEFLAGS 0x1L
8.175 +#else
8.176 + FILEFLAGS 0x0L
8.177 +#endif
8.178 + FILEOS 0x4L
8.179 + FILETYPE 0x1L
8.180 + FILESUBTYPE 0x0L
8.181 +BEGIN
8.182 + BLOCK "StringFileInfo"
8.183 + BEGIN
8.184 + BLOCK "040904e4"
8.185 + BEGIN
8.186 + VALUE "CompanyName", "SoundGraph, Inc."
8.187 + VALUE "FileDescription", "iMON Display Plug-in Test Program"
8.188 + VALUE "FileVersion", "1.0.0.1"
8.189 + VALUE "InternalName", "DisplayTest.exe"
8.190 + VALUE "LegalCopyright", "Copyright (C) 2010 SoundGraph, Inc."
8.191 + VALUE "OriginalFilename", "DisplayTest.exe"
8.192 + VALUE "ProductName", "iMON Display Plug-in Test Program"
8.193 + VALUE "ProductVersion", "1.0.0.1"
8.194 + END
8.195 + END
8.196 + BLOCK "VarFileInfo"
8.197 + BEGIN
8.198 + VALUE "Translation", 0x409, 1252
8.199 + END
8.200 +END
8.201 +
8.202 +
8.203 +/////////////////////////////////////////////////////////////////////////////
8.204 +//
8.205 +// DESIGNINFO
8.206 +//
8.207 +
8.208 +#ifdef APSTUDIO_INVOKED
8.209 +GUIDELINES DESIGNINFO
8.210 +BEGIN
8.211 + IDD_ABOUTBOX, DIALOG
8.212 + BEGIN
8.213 + LEFTMARGIN, 7
8.214 + RIGHTMARGIN, 228
8.215 + TOPMARGIN, 7
8.216 + BOTTOMMARGIN, 48
8.217 + END
8.218 +
8.219 + IDD_DISPLAYTEST_DIALOG, DIALOG
8.220 + BEGIN
8.221 + LEFTMARGIN, 7
8.222 + RIGHTMARGIN, 396
8.223 + TOPMARGIN, 7
8.224 + BOTTOMMARGIN, 262
8.225 + END
8.226 +END
8.227 +#endif // APSTUDIO_INVOKED
8.228 +
8.229 +
8.230 +/////////////////////////////////////////////////////////////////////////////
8.231 +//
8.232 +// String Table
8.233 +//
8.234 +
8.235 +STRINGTABLE
8.236 +BEGIN
8.237 + IDS_ABOUTBOX "&About DisplayTest..."
8.238 +END
8.239 +
8.240 +#endif // Korean resources
8.241 +/////////////////////////////////////////////////////////////////////////////
8.242 +
8.243 +
8.244 +
8.245 +#ifndef APSTUDIO_INVOKED
8.246 +/////////////////////////////////////////////////////////////////////////////
8.247 +//
8.248 +// Generated from the TEXTINCLUDE 3 resource.
8.249 +//
8.250 +#define _AFX_NO_SPLITTER_RESOURCES
8.251 +#define _AFX_NO_OLE_RESOURCES
8.252 +#define _AFX_NO_TRACKER_RESOURCES
8.253 +#define _AFX_NO_PROPERTY_RESOURCES
8.254 +
8.255 +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_KOR)
8.256 +LANGUAGE 18, 1
8.257 +#pragma code_page(949)
8.258 +#include "res\DisplayTest.rc2" // non-Microsoft Visual C++ edited resources
8.259 +#include "afxres.rc" // Standard components
8.260 +#endif
8.261 +
8.262 +/////////////////////////////////////////////////////////////////////////////
8.263 +#endif // not APSTUDIO_INVOKED
8.264 +
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
9.2 +++ b/iMONDisplayApiSample/DisplayTest/DisplayTest.vcproj Sun Apr 14 22:40:46 2013 +0200
9.3 @@ -0,0 +1,272 @@
9.4 +<?xml version="1.0" encoding="ks_c_5601-1987"?>
9.5 +<VisualStudioProject
9.6 + ProjectType="Visual C++"
9.7 + Version="9.00"
9.8 + Name="DisplayTest"
9.9 + ProjectGUID="{FE6179B9-6E3E-4157-BE52-C4A6B202306F}"
9.10 + RootNamespace="DisplayTest"
9.11 + Keyword="MFCProj"
9.12 + TargetFrameworkVersion="131072"
9.13 + >
9.14 + <Platforms>
9.15 + <Platform
9.16 + Name="Win32"
9.17 + />
9.18 + </Platforms>
9.19 + <ToolFiles>
9.20 + </ToolFiles>
9.21 + <Configurations>
9.22 + <Configuration
9.23 + Name="Debug|Win32"
9.24 + OutputDirectory="$(SolutionDir)$(ConfigurationName)"
9.25 + IntermediateDirectory="$(ConfigurationName)"
9.26 + ConfigurationType="1"
9.27 + UseOfMFC="1"
9.28 + CharacterSet="1"
9.29 + >
9.30 + <Tool
9.31 + Name="VCPreBuildEventTool"
9.32 + />
9.33 + <Tool
9.34 + Name="VCCustomBuildTool"
9.35 + />
9.36 + <Tool
9.37 + Name="VCXMLDataGeneratorTool"
9.38 + />
9.39 + <Tool
9.40 + Name="VCWebServiceProxyGeneratorTool"
9.41 + />
9.42 + <Tool
9.43 + Name="VCMIDLTool"
9.44 + PreprocessorDefinitions="_DEBUG"
9.45 + MkTypLibCompatible="false"
9.46 + ValidateParameters="false"
9.47 + />
9.48 + <Tool
9.49 + Name="VCCLCompilerTool"
9.50 + Optimization="0"
9.51 + PreprocessorDefinitions="WIN32;_WINDOWS;_DEBUG"
9.52 + MinimalRebuild="true"
9.53 + BasicRuntimeChecks="3"
9.54 + RuntimeLibrary="1"
9.55 + UsePrecompiledHeader="2"
9.56 + WarningLevel="3"
9.57 + Detect64BitPortabilityProblems="true"
9.58 + DebugInformationFormat="4"
9.59 + />
9.60 + <Tool
9.61 + Name="VCManagedResourceCompilerTool"
9.62 + />
9.63 + <Tool
9.64 + Name="VCResourceCompilerTool"
9.65 + PreprocessorDefinitions="_DEBUG"
9.66 + Culture="1033"
9.67 + AdditionalIncludeDirectories="$(IntDir)"
9.68 + />
9.69 + <Tool
9.70 + Name="VCPreLinkEventTool"
9.71 + />
9.72 + <Tool
9.73 + Name="VCLinkerTool"
9.74 + LinkIncremental="2"
9.75 + GenerateDebugInformation="true"
9.76 + SubSystem="2"
9.77 + RandomizedBaseAddress="1"
9.78 + DataExecutionPrevention="0"
9.79 + TargetMachine="1"
9.80 + />
9.81 + <Tool
9.82 + Name="VCALinkTool"
9.83 + />
9.84 + <Tool
9.85 + Name="VCManifestTool"
9.86 + />
9.87 + <Tool
9.88 + Name="VCXDCMakeTool"
9.89 + />
9.90 + <Tool
9.91 + Name="VCBscMakeTool"
9.92 + />
9.93 + <Tool
9.94 + Name="VCFxCopTool"
9.95 + />
9.96 + <Tool
9.97 + Name="VCAppVerifierTool"
9.98 + />
9.99 + <Tool
9.100 + Name="VCPostBuildEventTool"
9.101 + />
9.102 + </Configuration>
9.103 + <Configuration
9.104 + Name="Release|Win32"
9.105 + OutputDirectory="$(SolutionDir)$(ConfigurationName)"
9.106 + IntermediateDirectory="$(ConfigurationName)"
9.107 + ConfigurationType="1"
9.108 + UseOfMFC="1"
9.109 + CharacterSet="1"
9.110 + WholeProgramOptimization="1"
9.111 + >
9.112 + <Tool
9.113 + Name="VCPreBuildEventTool"
9.114 + />
9.115 + <Tool
9.116 + Name="VCCustomBuildTool"
9.117 + />
9.118 + <Tool
9.119 + Name="VCXMLDataGeneratorTool"
9.120 + />
9.121 + <Tool
9.122 + Name="VCWebServiceProxyGeneratorTool"
9.123 + />
9.124 + <Tool
9.125 + Name="VCMIDLTool"
9.126 + PreprocessorDefinitions="NDEBUG"
9.127 + MkTypLibCompatible="false"
9.128 + ValidateParameters="false"
9.129 + />
9.130 + <Tool
9.131 + Name="VCCLCompilerTool"
9.132 + PreprocessorDefinitions="WIN32;_WINDOWS;NDEBUG"
9.133 + MinimalRebuild="false"
9.134 + RuntimeLibrary="0"
9.135 + UsePrecompiledHeader="2"
9.136 + WarningLevel="3"
9.137 + Detect64BitPortabilityProblems="true"
9.138 + DebugInformationFormat="3"
9.139 + />
9.140 + <Tool
9.141 + Name="VCManagedResourceCompilerTool"
9.142 + />
9.143 + <Tool
9.144 + Name="VCResourceCompilerTool"
9.145 + PreprocessorDefinitions="NDEBUG"
9.146 + Culture="1033"
9.147 + AdditionalIncludeDirectories="$(IntDir)"
9.148 + />
9.149 + <Tool
9.150 + Name="VCPreLinkEventTool"
9.151 + />
9.152 + <Tool
9.153 + Name="VCLinkerTool"
9.154 + LinkIncremental="1"
9.155 + IgnoreDefaultLibraryNames="msvcr80.lib"
9.156 + GenerateDebugInformation="true"
9.157 + SubSystem="2"
9.158 + OptimizeReferences="2"
9.159 + EnableCOMDATFolding="2"
9.160 + RandomizedBaseAddress="1"
9.161 + DataExecutionPrevention="0"
9.162 + TargetMachine="1"
9.163 + />
9.164 + <Tool
9.165 + Name="VCALinkTool"
9.166 + />
9.167 + <Tool
9.168 + Name="VCManifestTool"
9.169 + />
9.170 + <Tool
9.171 + Name="VCXDCMakeTool"
9.172 + />
9.173 + <Tool
9.174 + Name="VCBscMakeTool"
9.175 + />
9.176 + <Tool
9.177 + Name="VCFxCopTool"
9.178 + />
9.179 + <Tool
9.180 + Name="VCAppVerifierTool"
9.181 + />
9.182 + <Tool
9.183 + Name="VCPostBuildEventTool"
9.184 + />
9.185 + </Configuration>
9.186 + </Configurations>
9.187 + <References>
9.188 + </References>
9.189 + <Files>
9.190 + <Filter
9.191 + Name="¼Ò½º ÆÄÀÏ"
9.192 + Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
9.193 + UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
9.194 + >
9.195 + <File
9.196 + RelativePath=".\DisplayTest.cpp"
9.197 + >
9.198 + </File>
9.199 + <File
9.200 + RelativePath=".\DisplayTestDlg.cpp"
9.201 + >
9.202 + </File>
9.203 + <File
9.204 + RelativePath=".\stdafx.cpp"
9.205 + >
9.206 + <FileConfiguration
9.207 + Name="Debug|Win32"
9.208 + >
9.209 + <Tool
9.210 + Name="VCCLCompilerTool"
9.211 + UsePrecompiledHeader="1"
9.212 + />
9.213 + </FileConfiguration>
9.214 + <FileConfiguration
9.215 + Name="Release|Win32"
9.216 + >
9.217 + <Tool
9.218 + Name="VCCLCompilerTool"
9.219 + UsePrecompiledHeader="1"
9.220 + />
9.221 + </FileConfiguration>
9.222 + </File>
9.223 + </Filter>
9.224 + <Filter
9.225 + Name="Çì´õ ÆÄÀÏ"
9.226 + Filter="h;hpp;hxx;hm;inl;inc;xsd"
9.227 + UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
9.228 + >
9.229 + <File
9.230 + RelativePath=".\DisplayTest.h"
9.231 + >
9.232 + </File>
9.233 + <File
9.234 + RelativePath=".\DisplayTestDlg.h"
9.235 + >
9.236 + </File>
9.237 + <File
9.238 + RelativePath=".\Resource.h"
9.239 + >
9.240 + </File>
9.241 + <File
9.242 + RelativePath=".\stdafx.h"
9.243 + >
9.244 + </File>
9.245 + </Filter>
9.246 + <Filter
9.247 + Name="¸®¼Ò½º ÆÄÀÏ"
9.248 + Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
9.249 + UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
9.250 + >
9.251 + <File
9.252 + RelativePath=".\res\DisplayTest.ico"
9.253 + >
9.254 + </File>
9.255 + <File
9.256 + RelativePath=".\DisplayTest.rc"
9.257 + >
9.258 + </File>
9.259 + <File
9.260 + RelativePath=".\res\DisplayTest.rc2"
9.261 + >
9.262 + </File>
9.263 + </Filter>
9.264 + <File
9.265 + RelativePath=".\ReadMe.txt"
9.266 + >
9.267 + </File>
9.268 + </Files>
9.269 + <Globals>
9.270 + <Global
9.271 + Name="RESOURCE_FILE"
9.272 + Value="DisplayTest.rc"
9.273 + />
9.274 + </Globals>
9.275 +</VisualStudioProject>
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
10.2 +++ b/iMONDisplayApiSample/DisplayTest/DisplayTest.vcproj.SLION-HTPC.sl.user Sun Apr 14 22:40:46 2013 +0200
10.3 @@ -0,0 +1,65 @@
10.4 +<?xml version="1.0" encoding="ks_c_5601-1987"?>
10.5 +<VisualStudioUserFile
10.6 + ProjectType="Visual C++"
10.7 + Version="9.00"
10.8 + ShowAllFiles="false"
10.9 + >
10.10 + <Configurations>
10.11 + <Configuration
10.12 + Name="Debug|Win32"
10.13 + >
10.14 + <DebugSettings
10.15 + Command="$(TargetPath)"
10.16 + WorkingDirectory=""
10.17 + CommandArguments=""
10.18 + Attach="false"
10.19 + DebuggerType="3"
10.20 + Remote="1"
10.21 + RemoteMachine="SLION-HTPC"
10.22 + RemoteCommand=""
10.23 + HttpUrl=""
10.24 + PDBPath=""
10.25 + SQLDebugging=""
10.26 + Environment=""
10.27 + EnvironmentMerge="true"
10.28 + DebuggerFlavor=""
10.29 + MPIRunCommand=""
10.30 + MPIRunArguments=""
10.31 + MPIRunWorkingDirectory=""
10.32 + ApplicationCommand=""
10.33 + ApplicationArguments=""
10.34 + ShimCommand=""
10.35 + MPIAcceptMode=""
10.36 + MPIAcceptFilter=""
10.37 + />
10.38 + </Configuration>
10.39 + <Configuration
10.40 + Name="Release|Win32"
10.41 + >
10.42 + <DebugSettings
10.43 + Command="$(TargetPath)"
10.44 + WorkingDirectory=""
10.45 + CommandArguments=""
10.46 + Attach="false"
10.47 + DebuggerType="3"
10.48 + Remote="1"
10.49 + RemoteMachine="SLION-HTPC"
10.50 + RemoteCommand=""
10.51 + HttpUrl=""
10.52 + PDBPath=""
10.53 + SQLDebugging=""
10.54 + Environment=""
10.55 + EnvironmentMerge="true"
10.56 + DebuggerFlavor=""
10.57 + MPIRunCommand=""
10.58 + MPIRunArguments=""
10.59 + MPIRunWorkingDirectory=""
10.60 + ApplicationCommand=""
10.61 + ApplicationArguments=""
10.62 + ShimCommand=""
10.63 + MPIAcceptMode=""
10.64 + MPIAcceptFilter=""
10.65 + />
10.66 + </Configuration>
10.67 + </Configurations>
10.68 +</VisualStudioUserFile>
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
11.2 +++ b/iMONDisplayApiSample/DisplayTest/DisplayTestDlg.cpp Sun Apr 14 22:40:46 2013 +0200
11.3 @@ -0,0 +1,614 @@
11.4 +// DisplayTestDlg.cpp : implementation file
11.5 +//
11.6 +
11.7 +#include "stdafx.h"
11.8 +#include "DisplayTest.h"
11.9 +#include "DisplayTestDlg.h"
11.10 +
11.11 +#ifdef _DEBUG
11.12 +#define new DEBUG_NEW
11.13 +#endif
11.14 +
11.15 +static WCHAR staticCh=1;
11.16 +
11.17 +// CAboutDlg dialog used for App About
11.18 +
11.19 +class CAboutDlg : public CDialog
11.20 +{
11.21 +public:
11.22 + CAboutDlg();
11.23 +
11.24 +// Dialog Data
11.25 + enum { IDD = IDD_ABOUTBOX };
11.26 +
11.27 + protected:
11.28 + virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
11.29 +
11.30 +// Implementation
11.31 +protected:
11.32 + DECLARE_MESSAGE_MAP()
11.33 +};
11.34 +
11.35 +CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
11.36 +{
11.37 +}
11.38 +
11.39 +void CAboutDlg::DoDataExchange(CDataExchange* pDX)
11.40 +{
11.41 + CDialog::DoDataExchange(pDX);
11.42 +}
11.43 +
11.44 +BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
11.45 +END_MESSAGE_MAP()
11.46 +
11.47 +
11.48 +// CDisplayTestDlg dialog
11.49 +
11.50 +CDisplayTestDlg::CDisplayTestDlg(CWnd* pParent /*=NULL*/)
11.51 + : CDialog(CDisplayTestDlg::IDD, pParent)
11.52 +{
11.53 + m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
11.54 +
11.55 + m_strLine1 = _T("");
11.56 + m_strLine2 = _T("");
11.57 + m_strLine3 = _T("");
11.58 +
11.59 + m_uEqTimer = 0;
11.60 + m_uEqTimer2 = 0;
11.61 + m_bVfdConnected = FALSE;
11.62 + m_bLcdConnected = FALSE;
11.63 +}
11.64 +
11.65 +void CDisplayTestDlg::DoDataExchange(CDataExchange* pDX)
11.66 +{
11.67 + CDialog::DoDataExchange(pDX);
11.68 +
11.69 + DDX_Text(pDX, IDC_EDIT1, m_strLine1);
11.70 + DDX_Text(pDX, IDC_EDIT2, m_strLine2);
11.71 + DDX_Text(pDX, IDC_EDIT3, m_strLine3);
11.72 +}
11.73 +
11.74 +BEGIN_MESSAGE_MAP(CDisplayTestDlg, CDialog)
11.75 + ON_WM_SYSCOMMAND()
11.76 + ON_WM_PAINT()
11.77 + ON_WM_QUERYDRAGICON()
11.78 + ON_WM_DESTROY()
11.79 + ON_WM_TIMER()
11.80 + //}}AFX_MSG_MAP
11.81 + ON_BN_CLICKED(IDC_BUTTON1, OnBnClickedButtonInit)
11.82 + ON_BN_CLICKED(IDC_BUTTON2, OnBnClickedButtonVfdSendText)
11.83 + ON_BN_CLICKED(IDC_BUTTON3, OnBnClickedButtonVfdRandomEq)
11.84 + ON_BN_CLICKED(IDC_BUTTON4, OnBnClickedButtonLcdSendText)
11.85 + ON_BN_CLICKED(IDC_BUTTON5, OnBnClickedButtonLcdRandomEq)
11.86 +
11.87 + ON_BN_CLICKED(IDC_ORANGE1, OnLcdOrangeIcon)
11.88 + ON_BN_CLICKED(IDC_ORANGE2, OnLcdOrangeIcon)
11.89 + ON_BN_CLICKED(IDC_ORANGE3, OnLcdOrangeIcon)
11.90 + ON_BN_CLICKED(IDC_ORANGE4, OnLcdOrangeIcon)
11.91 + ON_BN_CLICKED(IDC_ORANGE5, OnLcdOrangeIcon)
11.92 + ON_BN_CLICKED(IDC_ORANGE6, OnLcdOrangeIcon)
11.93 + ON_BN_CLICKED(IDC_ORANGE7, OnLcdOrangeIcon)
11.94 + ON_BN_CLICKED(IDC_ORANGE8, OnLcdOrangeIcon)
11.95 + ON_BN_CLICKED(IDC_ORANGE0, OnLcdOrangeIcon)
11.96 + ON_BN_CLICKED(IDC_MUSIC, OnLcdMediaTypeIcon)
11.97 + ON_BN_CLICKED(IDC_MOVIE, OnLcdMediaTypeIcon)
11.98 + ON_BN_CLICKED(IDC_PHOTO, OnLcdMediaTypeIcon)
11.99 + ON_BN_CLICKED(IDC_CD, OnLcdMediaTypeIcon)
11.100 + ON_BN_CLICKED(IDC_TV, OnLcdMediaTypeIcon)
11.101 + ON_BN_CLICKED(IDC_WEBCASTING, OnLcdMediaTypeIcon)
11.102 + ON_BN_CLICKED(IDC_NEWS, OnLcdMediaTypeIcon)
11.103 + ON_BN_CLICKED(IDC_SPK_L, OnLcdSpeakerIcon)
11.104 + ON_BN_CLICKED(IDC_SPK_C, OnLcdSpeakerIcon)
11.105 + ON_BN_CLICKED(IDC_SPK_R, OnLcdSpeakerIcon)
11.106 + ON_BN_CLICKED(IDC_SPK_SL, OnLcdSpeakerIcon)
11.107 + ON_BN_CLICKED(IDC_SPK_LFE, OnLcdSpeakerIcon)
11.108 + ON_BN_CLICKED(IDC_SPK_SR, OnLcdSpeakerIcon)
11.109 + ON_BN_CLICKED(IDC_SPK_RL, OnLcdSpeakerIcon)
11.110 + ON_BN_CLICKED(IDC_SPK_SPDIF, OnLcdSpeakerIcon)
11.111 + ON_BN_CLICKED(IDC_SPK_RR, OnLcdSpeakerIcon)
11.112 + ON_BN_CLICKED(IDC_AV_MPG, OnLcdVideoCodecIcon)
11.113 + ON_BN_CLICKED(IDC_AV_DIVX, OnLcdVideoCodecIcon)
11.114 + ON_BN_CLICKED(IDC_AV_XVID, OnLcdVideoCodecIcon)
11.115 + ON_BN_CLICKED(IDC_AV_WMV, OnLcdVideoCodecIcon)
11.116 + ON_BN_CLICKED(IDC_AV_MPA, OnLcdVideoCodecIcon)
11.117 + ON_BN_CLICKED(IDC_AV_AC3, OnLcdVideoCodecIcon)
11.118 + ON_BN_CLICKED(IDC_AV_DTS, OnLcdVideoCodecIcon)
11.119 + ON_BN_CLICKED(IDC_AV_WMA, OnLcdVideoCodecIcon)
11.120 + ON_BN_CLICKED(IDC_A_MP3, OnLcdAudioCodecIcon)
11.121 + ON_BN_CLICKED(IDC_A_OGG, OnLcdAudioCodecIcon)
11.122 + ON_BN_CLICKED(IDC_A_WMA, OnLcdAudioCodecIcon)
11.123 + ON_BN_CLICKED(IDC_A_WAV, OnLcdAudioCodecIcon)
11.124 + ON_BN_CLICKED(IDC_AR_SRC, OnLcdAspectRatioIcon)
11.125 + ON_BN_CLICKED(IDC_AR_FIT, OnLcdAspectRatioIcon)
11.126 + ON_BN_CLICKED(IDC_AR_TV, OnLcdAspectRatioIcon)
11.127 + ON_BN_CLICKED(IDC_AR_HDTV, OnLcdAspectRatioIcon)
11.128 + ON_BN_CLICKED(IDC_AR_SCR1, OnLcdAspectRatioIcon)
11.129 + ON_BN_CLICKED(IDC_AR_SCR2, OnLcdAspectRatioIcon)
11.130 + ON_BN_CLICKED(IDC_REPEAT, OnLcdEtcIcon)
11.131 + ON_BN_CLICKED(IDC_SHUFFLE, OnLcdEtcIcon)
11.132 + ON_BN_CLICKED(IDC_ALARM, OnLcdEtcIcon)
11.133 + ON_BN_CLICKED(IDC_REC, OnLcdEtcIcon)
11.134 + ON_BN_CLICKED(IDC_VOL, OnLcdEtcIcon)
11.135 + ON_BN_CLICKED(IDC_TIME, OnLcdEtcIcon)
11.136 + ON_WM_HSCROLL()
11.137 +
11.138 + ON_MESSAGE(WM_DSP_PLUGIN_NOTIFY, OnDisplayPluginNotify)
11.139 + ON_BN_CLICKED(IDC_BUTTON6, &CDisplayTestDlg::OnBnClickedScrollChar)
11.140 + ON_BN_CLICKED(IDC_BUTTON7, &CDisplayTestDlg::OnBnClickedNextChar)
11.141 + ON_BN_CLICKED(IDC_BUTTON8, &CDisplayTestDlg::OnBnClickedPreviousChar)
11.142 +END_MESSAGE_MAP()
11.143 +
11.144 +
11.145 +
11.146 +
11.147 +// CDisplayTestDlg message handlers
11.148 +
11.149 +BOOL CDisplayTestDlg::OnInitDialog()
11.150 +{
11.151 + CDialog::OnInitDialog();
11.152 +
11.153 + // Add "About..." menu item to system menu.
11.154 +
11.155 + // IDM_ABOUTBOX must be in the system command range.
11.156 + ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
11.157 + ASSERT(IDM_ABOUTBOX < 0xF000);
11.158 +
11.159 + CMenu* pSysMenu = GetSystemMenu(FALSE);
11.160 + if (pSysMenu != NULL)
11.161 + {
11.162 + CString strAboutMenu;
11.163 + strAboutMenu.LoadString(IDS_ABOUTBOX);
11.164 + if (!strAboutMenu.IsEmpty())
11.165 + {
11.166 + pSysMenu->AppendMenu(MF_SEPARATOR);
11.167 + pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
11.168 + }
11.169 + }
11.170 +
11.171 + // Set the icon for this dialog. The framework does this automatically
11.172 + // when the application's main window is not a dialog
11.173 + SetIcon(m_hIcon, TRUE); // Set big icon
11.174 + SetIcon(m_hIcon, FALSE); // Set small icon
11.175 +
11.176 + // TODO: Add extra initialization here
11.177 + m_strLine1 = _T("SoundGraph, Inc.");
11.178 + m_strLine2 = _T("iMON Display API");
11.179 + m_strLine3 = _T("SoundGraph, Inc. iMON Display API");
11.180 +
11.181 + UpdateControlUI();
11.182 +
11.183 + CSliderCtrl* pSliderCtrl = (CSliderCtrl*)GetDlgItem(IDC_SLIDER1);
11.184 + if(pSliderCtrl)
11.185 + {
11.186 + pSliderCtrl->SetRange(0, 100);
11.187 + pSliderCtrl->SetPos(0);
11.188 + }
11.189 +
11.190 + UpdateData(FALSE);
11.191 +
11.192 + return TRUE; // return TRUE unless you set the focus to a control
11.193 +}
11.194 +
11.195 +void CDisplayTestDlg::OnSysCommand(UINT nID, LPARAM lParam)
11.196 +{
11.197 + if ((nID & 0xFFF0) == IDM_ABOUTBOX)
11.198 + {
11.199 + CAboutDlg dlgAbout;
11.200 + dlgAbout.DoModal();
11.201 + }
11.202 + else
11.203 + {
11.204 + CDialog::OnSysCommand(nID, lParam);
11.205 + }
11.206 +}
11.207 +
11.208 +// If you add a minimize button to your dialog, you will need the code below
11.209 +// to draw the icon. For MFC applications using the document/view model,
11.210 +// this is automatically done for you by the framework.
11.211 +
11.212 +void CDisplayTestDlg::OnPaint()
11.213 +{
11.214 + if (IsIconic())
11.215 + {
11.216 + CPaintDC dc(this); // device context for painting
11.217 +
11.218 + SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
11.219 +
11.220 + // Center icon in client rectangle
11.221 + int cxIcon = GetSystemMetrics(SM_CXICON);
11.222 + int cyIcon = GetSystemMetrics(SM_CYICON);
11.223 + CRect rect;
11.224 + GetClientRect(&rect);
11.225 + int x = (rect.Width() - cxIcon + 1) / 2;
11.226 + int y = (rect.Height() - cyIcon + 1) / 2;
11.227 +
11.228 + // Draw the icon
11.229 + dc.DrawIcon(x, y, m_hIcon);
11.230 + }
11.231 + else
11.232 + {
11.233 + CDialog::OnPaint();
11.234 + }
11.235 +}
11.236 +
11.237 +// The system calls this function to obtain the cursor to display while the user drags
11.238 +// the minimized window.
11.239 +HCURSOR CDisplayTestDlg::OnQueryDragIcon()
11.240 +{
11.241 + return static_cast<HCURSOR>(m_hIcon);
11.242 +}
11.243 +
11.244 +void CDisplayTestDlg::OnDestroy()
11.245 +{
11.246 + CDialog::OnDestroy();
11.247 +
11.248 + IMON_Display_Uninit();
11.249 +}
11.250 +
11.251 +void CDisplayTestDlg::OnTimer(UINT nIDEvent)
11.252 +{
11.253 + if(nIDEvent == 101)
11.254 + {
11.255 +
11.256 + DSPEQDATA eqData;
11.257 + for(int i=0; i<16;i++)
11.258 + {
11.259 + eqData.BandData[i] = rand()%100;
11.260 + }
11.261 + IMON_Display_SetVfdEqData(&eqData);
11.262 + }
11.263 + else if(nIDEvent == 102)
11.264 + {
11.265 + DSPEQDATA eqDataL;
11.266 + DSPEQDATA eqDataR;
11.267 + for(int i=0; i<16;i++)
11.268 + {
11.269 + eqDataL.BandData[i] = rand()%100;
11.270 + eqDataR.BandData[i] = rand()%100;
11.271 + }
11.272 + IMON_Display_SetLcdEqData(&eqDataL, &eqDataR);
11.273 + }
11.274 + else if (nIDEvent == 103)
11.275 + {
11.276 + //Char scroll
11.277 + WCHAR myStr[17];
11.278 +
11.279 + WCHAR myCh=staticCh;
11.280 +
11.281 + for (int i=0;i<16;i++)
11.282 + {
11.283 + myStr[i]=myCh;
11.284 + myCh++;
11.285 + }
11.286 +
11.287 + staticCh++;
11.288 + myStr[16]=0;
11.289 + //
11.290 + //myCh--;
11.291 +
11.292 + CString counter;
11.293 + counter.Format(TEXT("%d - %d"),myStr[0],myStr[15]);
11.294 +
11.295 + IMON_Display_SetVfdText(myStr, (LPCTSTR)counter);
11.296 +
11.297 + }
11.298 +
11.299 + CDialog::OnTimer(nIDEvent);
11.300 +}
11.301 +
11.302 +
11.303 +void CDisplayTestDlg::OnBnClickedButtonInit()
11.304 +{
11.305 + if(IMON_Display_IsInited() != DSP_S_INITED) Init();
11.306 + else Uninit();
11.307 +}
11.308 +
11.309 +void CDisplayTestDlg::OnBnClickedButtonVfdSendText()
11.310 +{
11.311 + UpdateData(TRUE);
11.312 + IMON_Display_SetVfdText((LPCTSTR)m_strLine1, (LPCTSTR)m_strLine2);
11.313 +}
11.314 +
11.315 +void CDisplayTestDlg::OnBnClickedButtonVfdRandomEq()
11.316 +{
11.317 + if(m_uEqTimer)
11.318 + {
11.319 + KillTimer(101); m_uEqTimer = 0;
11.320 + GetDlgItem(IDC_BUTTON3)->SetWindowText(_T("Start Random EQ"));
11.321 + }
11.322 + else
11.323 + {
11.324 + m_uEqTimer = SetTimer(101, 100, NULL);
11.325 + GetDlgItem(IDC_BUTTON3)->SetWindowText(_T("Stop Random EQ"));
11.326 + }
11.327 +}
11.328 +
11.329 +void CDisplayTestDlg::OnBnClickedScrollChar()
11.330 +{
11.331 + if(m_uEqTimer)
11.332 + {
11.333 + KillTimer(103); m_uEqTimer = 0;
11.334 + GetDlgItem(IDC_BUTTON6)->SetWindowText(_T("Start Scroll Char"));
11.335 + }
11.336 + else
11.337 + {
11.338 + m_uEqTimer = SetTimer(103, 500, NULL);
11.339 + GetDlgItem(IDC_BUTTON6)->SetWindowText(_T("Stop Scroll Char"));
11.340 + }
11.341 +}
11.342 +
11.343 +void CDisplayTestDlg::OnBnClickedNextChar()
11.344 +{
11.345 + //staticCh++;
11.346 + OnTimer(103);
11.347 +}
11.348 +
11.349 +void CDisplayTestDlg::OnBnClickedPreviousChar()
11.350 +{
11.351 + staticCh-=2;
11.352 + OnTimer(103);
11.353 +}
11.354 +
11.355 +
11.356 +
11.357 +void CDisplayTestDlg::OnBnClickedButtonLcdSendText()
11.358 +{
11.359 + UpdateData(TRUE);
11.360 + IMON_Display_SetLcdText((LPCTSTR)m_strLine3);
11.361 +}
11.362 +
11.363 +void CDisplayTestDlg::OnBnClickedButtonLcdRandomEq()
11.364 +{
11.365 + if(m_uEqTimer2)
11.366 + {
11.367 + KillTimer(102); m_uEqTimer2 = 0;
11.368 + GetDlgItem(IDC_BUTTON5)->SetWindowText(_T("Start Random EQ"));
11.369 + }
11.370 + else
11.371 + {
11.372 + m_uEqTimer2 = SetTimer(102, 40, NULL);
11.373 + GetDlgItem(IDC_BUTTON5)->SetWindowText(_T("Stop Random EQ"));
11.374 + }
11.375 +}
11.376 +
11.377 +void CDisplayTestDlg::OnLcdOrangeIcon()
11.378 +{
11.379 + BYTE data[2];
11.380 + memset(data, 0, sizeof(BYTE)*2);
11.381 +
11.382 + if(((CButton*)GetDlgItem(IDC_ORANGE1))->GetCheck()) data[0] |= 0x80;
11.383 + if(((CButton*)GetDlgItem(IDC_ORANGE2))->GetCheck()) data[0] |= 0x40;
11.384 + if(((CButton*)GetDlgItem(IDC_ORANGE3))->GetCheck()) data[0] |= 0x20;
11.385 + if(((CButton*)GetDlgItem(IDC_ORANGE4))->GetCheck()) data[0] |= 0x10;
11.386 + if(((CButton*)GetDlgItem(IDC_ORANGE5))->GetCheck()) data[0] |= 0x08;
11.387 + if(((CButton*)GetDlgItem(IDC_ORANGE6))->GetCheck()) data[0] |= 0x04;
11.388 + if(((CButton*)GetDlgItem(IDC_ORANGE7))->GetCheck()) data[0] |= 0x02;
11.389 + if(((CButton*)GetDlgItem(IDC_ORANGE8))->GetCheck()) data[0] |= 0x01;
11.390 + if(((CButton*)GetDlgItem(IDC_ORANGE0))->GetCheck()) data[1] |= 0x80;
11.391 +
11.392 + IMON_Display_SetLcdOrangeIcon(data[0], data[1]);
11.393 +}
11.394 +
11.395 +void CDisplayTestDlg::OnLcdMediaTypeIcon()
11.396 +{
11.397 + BYTE data = 0;
11.398 +
11.399 + if(((CButton*)GetDlgItem(IDC_MUSIC))->GetCheck()) data |= 0x80;
11.400 + if(((CButton*)GetDlgItem(IDC_MOVIE))->GetCheck()) data |= 0x40;
11.401 + if(((CButton*)GetDlgItem(IDC_PHOTO))->GetCheck()) data |= 0x20;
11.402 + if(((CButton*)GetDlgItem(IDC_CD))->GetCheck()) data |= 0x10;
11.403 + if(((CButton*)GetDlgItem(IDC_TV))->GetCheck()) data |= 0x08;
11.404 + if(((CButton*)GetDlgItem(IDC_WEBCASTING))->GetCheck()) data |= 0x04;
11.405 + if(((CButton*)GetDlgItem(IDC_NEWS))->GetCheck()) data |= 0x02;
11.406 +
11.407 + IMON_Display_SetLcdMediaTypeIcon(data);
11.408 +}
11.409 +
11.410 +void CDisplayTestDlg::OnLcdSpeakerIcon()
11.411 +{
11.412 + BYTE data[2];
11.413 + memset(data, 0, sizeof(BYTE)*2);
11.414 +
11.415 + if(((CButton*)GetDlgItem(IDC_SPK_L))->GetCheck()) data[0] |= 0x80;
11.416 + if(((CButton*)GetDlgItem(IDC_SPK_C))->GetCheck()) data[0] |= 0x40;
11.417 + if(((CButton*)GetDlgItem(IDC_SPK_R))->GetCheck()) data[0] |= 0x20;
11.418 + if(((CButton*)GetDlgItem(IDC_SPK_SL))->GetCheck()) data[0] |= 0x10;
11.419 + if(((CButton*)GetDlgItem(IDC_SPK_LFE))->GetCheck()) data[0] |= 0x08;
11.420 + if(((CButton*)GetDlgItem(IDC_SPK_SR))->GetCheck()) data[0] |= 0x04;
11.421 + if(((CButton*)GetDlgItem(IDC_SPK_RL))->GetCheck()) data[0] |= 0x02;
11.422 + if(((CButton*)GetDlgItem(IDC_SPK_SPDIF))->GetCheck()) data[0] |= 0x01;
11.423 + if(((CButton*)GetDlgItem(IDC_SPK_RR))->GetCheck()) data[1] |= 0x80;
11.424 +
11.425 + IMON_Display_SetLcdSpeakerIcon(data[0], data[1]);
11.426 +}
11.427 +
11.428 +void CDisplayTestDlg::OnLcdVideoCodecIcon()
11.429 +{
11.430 + BYTE data = 0;
11.431 +
11.432 + if(((CButton*)GetDlgItem(IDC_AV_MPG))->GetCheck()) data |= 0x80;
11.433 + if(((CButton*)GetDlgItem(IDC_AV_DIVX))->GetCheck()) data |= 0x40;
11.434 + if(((CButton*)GetDlgItem(IDC_AV_XVID))->GetCheck()) data |= 0x20;
11.435 + if(((CButton*)GetDlgItem(IDC_AV_WMV))->GetCheck()) data |= 0x10;
11.436 + if(((CButton*)GetDlgItem(IDC_AV_MPA))->GetCheck()) data |= 0x08;
11.437 + if(((CButton*)GetDlgItem(IDC_AV_AC3))->GetCheck()) data |= 0x04;
11.438 + if(((CButton*)GetDlgItem(IDC_AV_DTS))->GetCheck()) data |= 0x02;
11.439 + if(((CButton*)GetDlgItem(IDC_AV_WMA))->GetCheck()) data |= 0x01;
11.440 +
11.441 + IMON_Display_SetLcdVideoCodecIcon(data);
11.442 +}
11.443 +
11.444 +void CDisplayTestDlg::OnLcdAudioCodecIcon()
11.445 +{
11.446 + BYTE data = 0;
11.447 +
11.448 + if(((CButton*)GetDlgItem(IDC_A_MP3))->GetCheck()) data |= 0x80;
11.449 + if(((CButton*)GetDlgItem(IDC_A_OGG))->GetCheck()) data |= 0x40;
11.450 + if(((CButton*)GetDlgItem(IDC_A_WMA))->GetCheck()) data |= 0x20;
11.451 + if(((CButton*)GetDlgItem(IDC_A_WAV))->GetCheck()) data |= 0x10;
11.452 +
11.453 + IMON_Display_SetLcdAudioCodecIcon(data);
11.454 +}
11.455 +
11.456 +void CDisplayTestDlg::OnLcdAspectRatioIcon()
11.457 +{
11.458 + BYTE data = 0;
11.459 +
11.460 + if(((CButton*)GetDlgItem(IDC_AR_SRC))->GetCheck()) data |= 0x80;
11.461 + if(((CButton*)GetDlgItem(IDC_AR_FIT))->GetCheck()) data |= 0x40;
11.462 + if(((CButton*)GetDlgItem(IDC_AR_TV))->GetCheck()) data |= 0x20;
11.463 + if(((CButton*)GetDlgItem(IDC_AR_HDTV))->GetCheck()) data |= 0x10;
11.464 + if(((CButton*)GetDlgItem(IDC_AR_SCR1))->GetCheck()) data |= 0x08;
11.465 + if(((CButton*)GetDlgItem(IDC_AR_SCR2))->GetCheck()) data |= 0x04;
11.466 +
11.467 + IMON_Display_SetLcdAspectRatioIcon(data);
11.468 +}
11.469 +
11.470 +void CDisplayTestDlg::OnLcdEtcIcon()
11.471 +{
11.472 + BYTE data = 0;
11.473 +
11.474 + if(((CButton*)GetDlgItem(IDC_REPEAT))->GetCheck()) data |= 0x80;
11.475 + if(((CButton*)GetDlgItem(IDC_SHUFFLE))->GetCheck()) data |= 0x40;
11.476 + if(((CButton*)GetDlgItem(IDC_ALARM))->GetCheck()) data |= 0x20;
11.477 + if(((CButton*)GetDlgItem(IDC_REC))->GetCheck()) data |= 0x10;
11.478 + if(((CButton*)GetDlgItem(IDC_VOL))->GetCheck()) data |= 0x08;
11.479 + if(((CButton*)GetDlgItem(IDC_TIME))->GetCheck()) data |= 0x04;
11.480 +
11.481 + IMON_Display_SetLcdEtcIcon(data);
11.482 +}
11.483 +
11.484 +void CDisplayTestDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
11.485 +{
11.486 + CSliderCtrl* pSliderCtrl = (CSliderCtrl*)GetDlgItem(IDC_SLIDER1);
11.487 + if( pSliderCtrl && pSliderCtrl->GetSafeHwnd() &&
11.488 + pScrollBar && pScrollBar->GetSafeHwnd() == pSliderCtrl->GetSafeHwnd() )
11.489 + {
11.490 + IMON_Display_SetLcdProgress(pSliderCtrl->GetPos(), 100);
11.491 + }
11.492 + CDialog::OnHScroll(nSBCode, nPos, pScrollBar);
11.493 +}
11.494 +
11.495 +LRESULT CDisplayTestDlg::OnDisplayPluginNotify(WPARAM wParam, LPARAM lParam)
11.496 +{
11.497 + if(!GetSafeHwnd() || !IsWindow(GetSafeHwnd())) return 0;
11.498 +
11.499 + switch(wParam)
11.500 + {
11.501 + case DSPNM_PLUGIN_SUCCEED:
11.502 + case DSPNM_IMON_RESTARTED:
11.503 + case DSPNM_HW_CONNECTED:
11.504 + {
11.505 + GetDlgItem(IDC_BUTTON1)->EnableWindow(TRUE);
11.506 + m_bVfdConnected = FALSE;
11.507 + m_bLcdConnected = FALSE;
11.508 + if((lParam & DSPN_DSP_VFD) == DSPN_DSP_VFD) m_bVfdConnected = TRUE;
11.509 + if((lParam & DSPN_DSP_LCD) == DSPN_DSP_LCD) m_bLcdConnected = TRUE;
11.510 + UpdateControlUI();
11.511 +
11.512 + DisplayPluginMessage(wParam, FALSE);
11.513 + }
11.514 + break;
11.515 +
11.516 + case DSPNM_PLUGIN_FAILED:
11.517 + case DSPNM_HW_DISCONNECTED:
11.518 + case DSPNM_IMON_CLOSED:
11.519 + {
11.520 + GetDlgItem(IDC_BUTTON1)->EnableWindow(TRUE);
11.521 + m_bVfdConnected = FALSE;
11.522 + m_bLcdConnected = FALSE;
11.523 + UpdateControlUI();
11.524 +
11.525 + DisplayPluginMessage(lParam, TRUE);
11.526 + }
11.527 + break;
11.528 +
11.529 + case DSPNM_LCD_TEXT_SCROLL_DONE:
11.530 + {
11.531 + TRACE(_T("LCD Text Scroll Finished.\n"));
11.532 + }
11.533 + break;
11.534 + }
11.535 + return 0;
11.536 +}
11.537 +
11.538 +void CDisplayTestDlg::Init()
11.539 +{
11.540 + Uninit();
11.541 +
11.542 + IMON_Display_Init(this->GetSafeHwnd(), WM_DSP_PLUGIN_NOTIFY);
11.543 + GetDlgItem(IDC_BUTTON1)->EnableWindow(FALSE);
11.544 +}
11.545 +
11.546 +void CDisplayTestDlg::Uninit()
11.547 +{
11.548 + IMON_Display_Uninit();
11.549 +
11.550 + m_bVfdConnected = FALSE;
11.551 + m_bLcdConnected = FALSE;
11.552 +
11.553 + for(int i=IDC_ORANGE1;i<=IDC_AR_SCR2;i++)
11.554 + {
11.555 + if(GetDlgItem(i))
11.556 + ((CButton*)GetDlgItem(i))->SetCheck(FALSE);
11.557 + }
11.558 + CSliderCtrl* pSliderCtrl = (CSliderCtrl*)GetDlgItem(IDC_SLIDER1);
11.559 + if(pSliderCtrl) pSliderCtrl->SetPos(0);
11.560 +
11.561 + UpdateControlUI();
11.562 +}
11.563 +
11.564 +void CDisplayTestDlg::DisplayPluginMessage(UINT uErrCode, BOOL bError)
11.565 +{
11.566 + CString strErrMsg = _T("");
11.567 +
11.568 + if(bError)
11.569 + {
11.570 + switch(uErrCode)
11.571 + {
11.572 + case DSPN_ERR_IN_USED: strErrMsg = _T("Display Plug-in is Already Used by Other Application."); break;
11.573 + case DSPN_ERR_HW_DISCONNECTED: strErrMsg = _T("iMON HW is Not Connected."); break;
11.574 + case DSPN_ERR_NOT_SUPPORTED_HW: strErrMsg = _T("The Connected iMON HW doesn't Support Display Plug-in."); break;
11.575 + case DSPN_ERR_PLUGIN_DISABLED: strErrMsg = _T("Display Plug-in Mode Option is Disabled."); break;
11.576 + case DSPN_ERR_IMON_NO_REPLY: strErrMsg = _T("The Latest iMON is Not Installed or iMON Not Running."); break;
11.577 + case DSPN_ERR_UNKNOWN: strErrMsg = _T("Unknown Failure."); break;
11.578 + }
11.579 + }
11.580 + else
11.581 + {
11.582 + switch(uErrCode)
11.583 + {
11.584 + case DSPNM_PLUGIN_SUCCEED: strErrMsg = _T("Plug-in Mode Inited Successfully."); break;
11.585 + case DSPNM_IMON_RESTARTED: strErrMsg = _T("iMON Started and Plug-in Mode Inited."); break;
11.586 + case DSPNM_HW_CONNECTED: strErrMsg = _T("iMON HW Connected and Plug-in Mode Inited."); break;
11.587 + }
11.588 + }
11.589 + GetDlgItem(IDC_STATIC_INFO)->SetWindowText((LPCTSTR)strErrMsg);
11.590 +}
11.591 +
11.592 +void CDisplayTestDlg::UpdateControlUI()
11.593 +{
11.594 + GetDlgItem(IDC_STATIC_INFO)->SetWindowText(_T(""));
11.595 +
11.596 + if(IMON_Display_IsInited() != DSP_S_INITED) GetDlgItem(IDC_BUTTON1)->SetWindowText(_T("Init Plug-in"));
11.597 + else GetDlgItem(IDC_BUTTON1)->SetWindowText(_T("Uninit Plug-in"));
11.598 +
11.599 + for(int i=IDC_EDIT1;i<=IDC_BUTTON3;i++)
11.600 + {
11.601 + if(GetDlgItem(i))
11.602 + GetDlgItem(i)->EnableWindow(m_bVfdConnected);
11.603 + }
11.604 + for(int i=IDC_BUTTON6;i<=IDC_BUTTON8;i++)
11.605 + {
11.606 + if(GetDlgItem(i))
11.607 + GetDlgItem(i)->EnableWindow(m_bVfdConnected);
11.608 + }
11.609 + for(int i=IDC_EDIT3;i<=IDC_SLIDER1;i++)
11.610 + {
11.611 + if(GetDlgItem(i))
11.612 + GetDlgItem(i)->EnableWindow(m_bLcdConnected);
11.613 + }
11.614 +}
11.615 +
11.616 +
11.617 +
12.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
12.2 +++ b/iMONDisplayApiSample/DisplayTest/DisplayTestDlg.h Sun Apr 14 22:40:46 2013 +0200
12.3 @@ -0,0 +1,67 @@
12.4 +// DisplayTestDlg.h : header file
12.5 +//
12.6 +
12.7 +#pragma once
12.8 +
12.9 +#define WM_DSP_PLUGIN_NOTIFY WM_APP + 1001
12.10 +
12.11 +// CDisplayTestDlg dialog
12.12 +class CDisplayTestDlg : public CDialog
12.13 +{
12.14 +// Construction
12.15 +public:
12.16 + CDisplayTestDlg(CWnd* pParent = NULL); // standard constructor
12.17 +
12.18 +// Dialog Data
12.19 + enum { IDD = IDD_DISPLAYTEST_DIALOG };
12.20 + CString m_strLine1;
12.21 + CString m_strLine2;
12.22 + CString m_strLine3;
12.23 +
12.24 + protected:
12.25 + virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
12.26 +
12.27 +
12.28 +// Implementation
12.29 +protected:
12.30 + HICON m_hIcon;
12.31 +
12.32 + UINT m_uEqTimer;
12.33 + UINT m_uEqTimer2;
12.34 + BOOL m_bVfdConnected;
12.35 + BOOL m_bLcdConnected;
12.36 +
12.37 + void Init();
12.38 + void Uninit();
12.39 + void DisplayPluginMessage(UINT uErrCode, BOOL bError);
12.40 + void UpdateControlUI();
12.41 +
12.42 + // Generated message map functions
12.43 + virtual BOOL OnInitDialog();
12.44 + afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
12.45 + afx_msg void OnPaint();
12.46 + afx_msg HCURSOR OnQueryDragIcon();
12.47 + afx_msg void OnDestroy();
12.48 + afx_msg void OnTimer(UINT nIDEvent);
12.49 + DECLARE_MESSAGE_MAP()
12.50 +
12.51 + afx_msg void OnBnClickedButtonInit();
12.52 + afx_msg void OnBnClickedButtonVfdSendText();
12.53 + afx_msg void OnBnClickedButtonVfdRandomEq();
12.54 + afx_msg void OnBnClickedButtonLcdSendText();
12.55 + afx_msg void OnBnClickedButtonLcdRandomEq();
12.56 + afx_msg void OnLcdOrangeIcon();
12.57 + afx_msg void OnLcdMediaTypeIcon();
12.58 + afx_msg void OnLcdSpeakerIcon();
12.59 + afx_msg void OnLcdVideoCodecIcon();
12.60 + afx_msg void OnLcdAudioCodecIcon();
12.61 + afx_msg void OnLcdAspectRatioIcon();
12.62 + afx_msg void OnLcdEtcIcon();
12.63 + afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
12.64 +
12.65 + afx_msg LRESULT OnDisplayPluginNotify(WPARAM, LPARAM);
12.66 +public:
12.67 + afx_msg void OnBnClickedScrollChar();
12.68 + afx_msg void OnBnClickedNextChar();
12.69 + afx_msg void OnBnClickedPreviousChar();
12.70 +};
13.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
13.2 +++ b/iMONDisplayApiSample/DisplayTest/ReadMe.txt Sun Apr 14 22:40:46 2013 +0200
13.3 @@ -0,0 +1,93 @@
13.4 +================================================================================
13.5 + MICROSOFT FOUNDATION CLASS LIBRARY : DisplayTest Project Overview
13.6 +===============================================================================
13.7 +
13.8 +The application wizard has created this DisplayTest application for
13.9 +you. This application not only demonstrates the basics of using the Microsoft
13.10 +Foundation Classes but is also a starting point for writing your application.
13.11 +
13.12 +This file contains a summary of what you will find in each of the files that
13.13 +make up your DisplayTest application.
13.14 +
13.15 +DisplayTest.vcproj
13.16 + This is the main project file for VC++ projects generated using an application wizard.
13.17 + It contains information about the version of Visual C++ that generated the file, and
13.18 + information about the platforms, configurations, and project features selected with the
13.19 + application wizard.
13.20 +
13.21 +DisplayTest.h
13.22 + This is the main header file for the application. It includes other
13.23 + project specific headers (including Resource.h) and declares the
13.24 + CDisplayTestApp application class.
13.25 +
13.26 +DisplayTest.cpp
13.27 + This is the main application source file that contains the application
13.28 + class CDisplayTestApp.
13.29 +
13.30 +DisplayTest.rc
13.31 + This is a listing of all of the Microsoft Windows resources that the
13.32 + program uses. It includes the icons, bitmaps, and cursors that are stored
13.33 + in the RES subdirectory. This file can be directly edited in Microsoft
13.34 + Visual C++. Your project resources are in 1033.
13.35 +
13.36 +res\DisplayTest.ico
13.37 + This is an icon file, which is used as the application's icon. This
13.38 + icon is included by the main resource file DisplayTest.rc.
13.39 +
13.40 +res\DisplayTest.rc2
13.41 + This file contains resources that are not edited by Microsoft
13.42 + Visual C++. You should place all resources not editable by
13.43 + the resource editor in this file.
13.44 +
13.45 +
13.46 +/////////////////////////////////////////////////////////////////////////////
13.47 +
13.48 +The application wizard creates one dialog class:
13.49 +
13.50 +DisplayTestDlg.h, DisplayTestDlg.cpp - the dialog
13.51 + These files contain your CDisplayTestDlg class. This class defines
13.52 + the behavior of your application's main dialog. The dialog's template is
13.53 + in DisplayTest.rc, which can be edited in Microsoft Visual C++.
13.54 +
13.55 +
13.56 +/////////////////////////////////////////////////////////////////////////////
13.57 +
13.58 +Other Features:
13.59 +
13.60 +ActiveX Controls
13.61 + The application includes support to use ActiveX controls.
13.62 +
13.63 +/////////////////////////////////////////////////////////////////////////////
13.64 +
13.65 +Other standard files:
13.66 +
13.67 +StdAfx.h, StdAfx.cpp
13.68 + These files are used to build a precompiled header (PCH) file
13.69 + named DisplayTest.pch and a precompiled types file named StdAfx.obj.
13.70 +
13.71 +Resource.h
13.72 + This is the standard header file, which defines new resource IDs.
13.73 + Microsoft Visual C++ reads and updates this file.
13.74 +
13.75 +DisplayTest.manifest
13.76 + Application manifest files are used by Windows XP to describe an applications
13.77 + dependency on specific versions of Side-by-Side assemblies. The loader uses this
13.78 + information to load the appropriate assembly from the assembly cache or private
13.79 + from the application. The Application manifest maybe included for redistribution
13.80 + as an external .manifest file that is installed in the same folder as the application
13.81 + executable or it may be included in the executable in the form of a resource.
13.82 +/////////////////////////////////////////////////////////////////////////////
13.83 +
13.84 +Other notes:
13.85 +
13.86 +The application wizard uses "TODO:" to indicate parts of the source code you
13.87 +should add to or customize.
13.88 +
13.89 +If your application uses MFC in a shared DLL, you will need
13.90 +to redistribute the MFC DLLs. If your application is in a language
13.91 +other than the operating system's locale, you will also have to
13.92 +redistribute the corresponding localized resources MFC80XXX.DLL.
13.93 +For more information on both of these topics, please see the section on
13.94 +redistributing Visual C++ applications in MSDN documentation.
13.95 +
13.96 +/////////////////////////////////////////////////////////////////////////////
14.1 Binary file iMONDisplayApiSample/DisplayTest/iMONDisplay.dll has changed
15.1 Binary file iMONDisplayApiSample/DisplayTest/res/DisplayTest.ico has changed
16.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
16.2 +++ b/iMONDisplayApiSample/DisplayTest/res/DisplayTest.rc2 Sun Apr 14 22:40:46 2013 +0200
16.3 @@ -0,0 +1,13 @@
16.4 +//
16.5 +// DisplayTest.RC2 - resources Microsoft Visual C++ does not edit directly
16.6 +//
16.7 +
16.8 +#ifdef APSTUDIO_INVOKED
16.9 +#error this file is not editable by Microsoft Visual C++
16.10 +#endif //APSTUDIO_INVOKED
16.11 +
16.12 +
16.13 +/////////////////////////////////////////////////////////////////////////////
16.14 +// Add manually edited resources here...
16.15 +
16.16 +/////////////////////////////////////////////////////////////////////////////
17.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
17.2 +++ b/iMONDisplayApiSample/DisplayTest/resource.h Sun Apr 14 22:40:46 2013 +0200
17.3 @@ -0,0 +1,82 @@
17.4 +//{{NO_DEPENDENCIES}}
17.5 +// Microsoft Visual C++ generated include file.
17.6 +// Used by DisplayTest.rc
17.7 +//
17.8 +#define IDM_ABOUTBOX 0x0010
17.9 +#define IDD_ABOUTBOX 100
17.10 +#define IDS_ABOUTBOX 101
17.11 +#define IDD_DISPLAYTEST_DIALOG 102
17.12 +#define IDR_MAINFRAME 128
17.13 +#define IDC_BUTTON1 1000
17.14 +#define IDC_EDIT1 1001
17.15 +#define IDC_EDIT2 1002
17.16 +#define IDC_BUTTON2 1003
17.17 +#define IDC_BUTTON3 1004
17.18 +#define IDC_STATIC_INFO 1005
17.19 +#define IDC_EDIT3 1006
17.20 +#define IDC_BUTTON4 1007
17.21 +#define IDC_BUTTON5 1008
17.22 +#define IDC_ORANGE1 1009
17.23 +#define IDC_ORANGE2 1010
17.24 +#define IDC_ORANGE3 1011
17.25 +#define IDC_ORANGE4 1012
17.26 +#define IDC_ORANGE5 1013
17.27 +#define IDC_ORANGE6 1014
17.28 +#define IDC_ORANGE7 1015
17.29 +#define IDC_ORANGE8 1016
17.30 +#define IDC_ORANGE0 1017
17.31 +#define IDC_MUSIC 1018
17.32 +#define IDC_MOVIE 1019
17.33 +#define IDC_PHOTO 1020
17.34 +#define IDC_CD 1021
17.35 +#define IDC_TV 1022
17.36 +#define IDC_WEBCASTING 1023
17.37 +#define IDC_NEWS 1024
17.38 +#define IDC_SPK_L 1025
17.39 +#define IDC_SPK_C 1026
17.40 +#define IDC_SPK_R 1027
17.41 +#define IDC_SPK_SL 1028
17.42 +#define IDC_SPK_LFE 1029
17.43 +#define IDC_SPK_SR 1030
17.44 +#define IDC_SPK_RL 1031
17.45 +#define IDC_SPK_SPDIF 1032
17.46 +#define IDC_SPK_RR 1033
17.47 +#define IDC_REPEAT 1034
17.48 +#define IDC_SHUFFLE 1035
17.49 +#define IDC_ALARM 1036
17.50 +#define IDC_REC 1037
17.51 +#define IDC_VOL 1038
17.52 +#define IDC_TIME 1039
17.53 +#define IDC_AV_MPG 1040
17.54 +#define IDC_AV_DIVX 1041
17.55 +#define IDC_AV_XVID 1042
17.56 +#define IDC_AV_WMV 1043
17.57 +#define IDC_AV_MPA 1044
17.58 +#define IDC_AV_AC3 1045
17.59 +#define IDC_AV_DTS 1046
17.60 +#define IDC_AV_WMA 1047
17.61 +#define IDC_A_MP3 1048
17.62 +#define IDC_A_OGG 1049
17.63 +#define IDC_A_WMA 1050
17.64 +#define IDC_A_WAV 1051
17.65 +#define IDC_AR_SRC 1052
17.66 +#define IDC_AR_FIT 1053
17.67 +#define IDC_AR_TV 1054
17.68 +#define IDC_AR_HDTV 1055
17.69 +#define IDC_AR_SCR1 1056
17.70 +#define IDC_AR_SCR2 1057
17.71 +#define IDC_SLIDER1 1058
17.72 +#define IDC_BUTTON6 1059
17.73 +#define IDC_BUTTON7 1060
17.74 +#define IDC_BUTTON8 1062
17.75 +
17.76 +// Next default values for new objects
17.77 +//
17.78 +#ifdef APSTUDIO_INVOKED
17.79 +#ifndef APSTUDIO_READONLY_SYMBOLS
17.80 +#define _APS_NEXT_RESOURCE_VALUE 129
17.81 +#define _APS_NEXT_COMMAND_VALUE 32771
17.82 +#define _APS_NEXT_CONTROL_VALUE 1059
17.83 +#define _APS_NEXT_SYMED_VALUE 101
17.84 +#endif
17.85 +#endif
18.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
18.2 +++ b/iMONDisplayApiSample/DisplayTest/stdafx.cpp Sun Apr 14 22:40:46 2013 +0200
18.3 @@ -0,0 +1,7 @@
18.4 +// stdafx.cpp : source file that includes just the standard includes
18.5 +// DisplayTest.pch will be the pre-compiled header
18.6 +// stdafx.obj will contain the pre-compiled type information
18.7 +
18.8 +#include "stdafx.h"
18.9 +
18.10 +
19.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
19.2 +++ b/iMONDisplayApiSample/DisplayTest/stdafx.h Sun Apr 14 22:40:46 2013 +0200
19.3 @@ -0,0 +1,72 @@
19.4 +// stdafx.h : include file for standard system include files,
19.5 +// or project specific include files that are used frequently,
19.6 +// but are changed infrequently
19.7 +
19.8 +#pragma once
19.9 +
19.10 +#ifndef _SECURE_ATL
19.11 +#define _SECURE_ATL 1
19.12 +#endif
19.13 +
19.14 +#ifndef VC_EXTRALEAN
19.15 +#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
19.16 +#endif
19.17 +
19.18 +// Modify the following defines if you have to target a platform prior to the ones specified below.
19.19 +// Refer to MSDN for the latest info on corresponding values for different platforms.
19.20 +#ifndef WINVER // Allow use of features specific to Windows XP or later.
19.21 +#define WINVER 0x0501 // Change this to the appropriate value to target other versions of Windows.
19.22 +#endif
19.23 +
19.24 +#ifndef _WIN32_WINNT // Allow use of features specific to Windows XP or later.
19.25 +#define _WIN32_WINNT 0x0501 // Change this to the appropriate value to target other versions of Windows.
19.26 +#endif
19.27 +
19.28 +#ifndef _WIN32_WINDOWS // Allow use of features specific to Windows 98 or later.
19.29 +#define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later.
19.30 +#endif
19.31 +
19.32 +#ifndef _WIN32_IE // Allow use of features specific to IE 6.0 or later.
19.33 +#define _WIN32_IE 0x0600 // Change this to the appropriate value to target other versions of IE.
19.34 +#endif
19.35 +
19.36 +#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // some CString constructors will be explicit
19.37 +
19.38 +// turns off MFC's hiding of some common and often safely ignored warning messages
19.39 +#define _AFX_ALL_WARNINGS
19.40 +
19.41 +#include <afxwin.h> // MFC core and standard components
19.42 +#include <afxext.h> // MFC extensions
19.43 +
19.44 +
19.45 +#include <afxdisp.h> // MFC Automation classes
19.46 +
19.47 +
19.48 +
19.49 +#ifndef _AFX_NO_OLE_SUPPORT
19.50 +#include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls
19.51 +#endif
19.52 +#ifndef _AFX_NO_AFXCMN_SUPPORT
19.53 +#include <afxcmn.h> // MFC support for Windows Common Controls
19.54 +#endif // _AFX_NO_AFXCMN_SUPPORT
19.55 +
19.56 +#include "..\\..\\API\\iMONDisplayAPI.h"
19.57 +#pragma comment(lib, "..\\..\\API\\iMONDisplay.lib")
19.58 +
19.59 +
19.60 +
19.61 +
19.62 +
19.63 +#ifdef _UNICODE
19.64 +#if defined _M_IX86
19.65 +#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
19.66 +#elif defined _M_IA64
19.67 +#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
19.68 +#elif defined _M_X64
19.69 +#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
19.70 +#else
19.71 +#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
19.72 +#endif
19.73 +#endif
19.74 +
19.75 +