Example #1
0
/*-----------------------------------------------------------------------------*/
void PopulateCOMSettings(HWND hDlg) {
	char szBuffer[MAXLEN_TEMPSTR];
	WORD wCount, wPosition;

	// Fill baud combo box and make initial selection
	FillComboBox(GetDlgItem(hDlg, IDC_BPS_COMBO),
		szBaud, BaudTable, 
		sizeof(BaudTable) / sizeof(BaudTable[0]),
		BAUDRATE(TTYInfo));

	// Fill data bits combo box and make initial selection
	for (wCount = 5; wCount < 9; wCount++) {
		wsprintf(szBuffer, "%d", wCount);
		wPosition = LOWORD(SendDlgItemMessage(hDlg,
			IDC_DATABITS_COMBO, CB_ADDSTRING, 0, (LPARAM)(LPSTR)szBuffer));
	
		if (wCount == BYTESIZE(TTYInfo)) {
			SendDlgItemMessage(hDlg,
				IDC_DATABITS_COMBO, CB_SETCURSEL, (WPARAM)wPosition, 0L);
		}
	}

	// Fill parity combo box and make initial selection
	FillComboBox(GetDlgItem(hDlg, IDC_PARITY_COMBO),
		szParity, ParityTable, 
		sizeof(ParityTable) / sizeof(ParityTable[0]),
		PARITY(TTYInfo));

	// Fill stop bits combo box and make initial selection
	FillComboBox(GetDlgItem(hDlg, IDC_STOPBITS_COMBO),
		szStopBits, StopBitsTable, 
		sizeof(StopBitsTable) / sizeof(StopBitsTable[0]),
		STOPBITS(TTYInfo));
}
/**
 * Function name    CObjPropFunctDecl::OnInitDialog
 * Description      message handler for the WM_INITDIALOG message
 * @return          BOOL
 * @exception       -
 * @see             -
*/
BOOL CObjPropFunctDecl::OnInitDialog()
{
    CObjPropDeclBase::OnInitDialog();

    if(m_DialogType == IVIEWPROP)
    {
        GetDlgItem(IDC_FUNCTTYPE)->EnableWindow(FALSE);
    }

    const TCHAR* const *Types = GetSupportedBaseTypes();
    if(m_DialogType == CVIEWINSERT)
    {
        FillComboBox(IDC_FUNCTTYPE, Types, 0); // Return types
    }
    else
    {
        FillComboBox(IDC_FUNCTTYPE, Types); // Return types

        // Call after the combobox is filled with items, to display the value of m_FbmemberType!
        UpdateData(FALSE);
    }

	return TRUE;  // return TRUE unless you set the focus to a control
				  // EXCEPTION: OCX Property Pages should return FALSE
}
Example #3
0
static void InitCanSetupDlg(HWND hdlg, struct TMhsCanCfg* cfg)
{
    SetDlgItemText(hdlg, IDC_SNR_EDIT, cfg->CanSnrStr);
    SetDlgItemHex(hdlg, IDC_BTR_EDIT, HEX_WORD, cfg->CanBtrValue);
    FillComboBox(hdlg, IDC_CAN_SPEED, CanSpeedTabStr, CanSpeedTab,
                 CanSpeedTabSize, cfg->CanSpeed);
}
Example #4
0
LRESULT CUnitsOfMeasureDlg::OnInitDialog(HWND hWnd, LPARAM lParam) 
{
	m_cbUnitsOfArea.Attach(GetDlgItem(IDC_UNIT_OF_AREA));
	m_cbUnitsOfLength.Attach(GetDlgItem(IDC_UNIT_OF_LENGTH));
	m_ftStaticArea.Attach(GetDlgItem(IDC_STATIC_AREA));
	m_ftStaticLength.Attach(GetDlgItem(IDC_STATIC_LENGTH));
	m_cbAppendUnits.Attach(GetDlgItem(IDC_APPENDUNITS));

	m_StaticOptions.SubclassWindow(GetDlgItem(IDC_STATIC_OPTIONS));
	m_StaticLength.SubclassWindow(GetDlgItem(IDC_STATIC_UNITS));
	m_StaticDesc.SubclassWindow(GetDlgItem(IDC_STATIC_DESC));

// ComboBoxen füllen
	FillComboBox (IDS_UNIT_OF_LENGTH, m_cbUnitsOfLength);
	FillComboBox (IDS_UNIT_OF_AREA, m_cbUnitsOfArea);
	
// Controls initialisieren
	if (-1 == m_iUnitOfArea) {
		_ASSERTE(-1 == m_iUnitOfLength);
		CButton(GetDlgItem(IDC_AUTO_SELECT)).SetCheck(1);
		CButton(GetDlgItem(IDC_SELECT_UNITS)).SetCheck(0);

		m_cbUnitsOfArea.EnableWindow(FALSE);
		m_cbUnitsOfLength.EnableWindow(FALSE);
		m_ftStaticArea.EnableWindow(FALSE);
		m_ftStaticLength.EnableWindow(FALSE);

		m_cbAppendUnits.SetCheck(1);
		m_cbAppendUnits.EnableWindow(FALSE);
	} 
	else {
		_ASSERTE(-1 != m_iUnitOfLength);
		CButton(GetDlgItem(IDC_AUTO_SELECT)).SetCheck(0);
		CButton(GetDlgItem(IDC_SELECT_UNITS)).SetCheck(1);

		_ASSERTE(0 <= m_iUnitOfArea && m_iUnitOfArea < MAX_UNIT_OF_AREA);
		_ASSERTE(0 <= m_iUnitOfLength && m_iUnitOfLength < MAX_UNIT_OF_LENGTH);
		m_cbUnitsOfArea.SetCurSel(m_iUnitOfArea);
		m_cbUnitsOfLength.SetCurSel(m_iUnitOfLength);

		m_cbAppendUnits.SetCheck(m_fAppendUnits ? 1 : 0);
	}
	return TRUE; 
}
Example #5
0
BOOL CAddFunctionDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();

	SetButtons(false);
	FillComboBox();

	return false;  // return FALSE if you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}
Example #6
0
static void InitCanSetupDlg(HWND hdlg, struct TMhsCanCfg *cfg)
{
	SetDlgItemText(hdlg, IDC_SNR_EDIT, cfg->CanSnrStr);
	SetDlgItemHex(hdlg, IDC_BTR_EDIT, HEX_WORD, cfg->CanBtrValue);

	FillComboBox(hdlg, IDC_CAN_SPEED, CanSpeedTabStr, CanSpeedTab,
				 CanSpeedTabSize, cfg->CanSpeed);

	// Set default value as bitrate
	CheckRadioButton(hDlg, IDC_RADIOBTN_BITRATE, IDC_RADIOBTN_BTR, IDC_RADIOBTN_BITRATE);
	EnableDisableControls(hDlg, IDC_RADIOBTN_BITRATE);
}
Example #7
0
BOOL CxDlgIceCommonCombo::OnInitDialog() 
{
	CDialog::OnInitDialog();

	SetWindowText(m_csTitle);
	FillComboBox();
	EnableDisableOK();
	PushHelpId (m_nHelpId);

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}
Example #8
0
///////////////////////////////////////////////////////////////////////////////////////////////
// EventHandler 
// Call-Back-Funktion für die Initialisierung der Controls
void CTopoRelRefDlg::WindowInit (Event)
{
ResourceFile RF (g_pDLLName);

    // explizite Initialisierung der Controls
    m_RBttnAllRefs.FInit();
	m_RBttnSomeRefs.FInit();
	m_RefTypeList.FInit();
	m_SpinCount.FInit();
	m_Descript.FInit();

	// Controls setzen
	FillComboBox();

	switch (m_iReferenceType)
	{
		case All:
			m_RBttnAllRefs.SetState (true);
			m_SpinCount.Disable();
			m_Descript.SetText (ResString (ResID (IDS_COMMALL, &RF), 250).Addr());
			break;

		case Least:
			m_RBttnSomeRefs.SetState (true);
			m_SpinCount.Enable();
			m_Descript.SetText (ResString (ResID (IDS_COMMLEAST, &RF), 250).Addr());
			break;

		case Most:
			m_RBttnSomeRefs.SetState (true);
			m_SpinCount.Enable();
			m_Descript.SetText (ResString (ResID (IDS_COMMMOST, &RF), 250).Addr());
			break;

		case Exact:
			m_RBttnSomeRefs.SetState (true);
			m_SpinCount.Enable();
			m_Descript.SetText (ResString (ResID (IDS_COMMEXACT, &RF), 250).Addr());
	}

	m_RefTypeList.ChangeCurrentIndex (m_iRefListIndex);
	m_RefTypeList.SetFocus();
	m_SpinCount.SetValue(m_lLimitCnt);

} // WindowInit
Example #9
0
static void InitCanSetupDlg(HWND hdlg, struct TMhsCanCfg* cfg)
{
    int nResIDRadioItem = 0;
    SetDlgItemText(hdlg, IDC_SNR_EDIT, cfg->CanSnrStr);
    SetDlgItemHex(hdlg, IDC_BTR_EDIT, HEX_WORD, cfg->CanBtrValue);

    FillComboBox(hdlg, IDC_CAN_SPEED, CanSpeedTabStr, CanSpeedTab,
                 CanSpeedTabSize, cfg->CanSpeed);

    // Set default value as bitrate
    if ( cfg->m_bBitRateSelected )
    {
        nResIDRadioItem = IDC_RADIOBTN_BITRATE;
    }
    else
    {
        nResIDRadioItem = IDC_RADIOBTN_BTR;
    }

    CheckRadioButton(hdlg, IDC_RADIOBTN_BITRATE, IDC_RADIOBTN_BTR, nResIDRadioItem);
    EnableDisableControls(hdlg, nResIDRadioItem);
}
Example #10
0
LRESULT CALLBACK MainDlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam) {
	int		i;
	char	s[64], s1[8];

	switch (msg) {
		case WM_COMMAND:
			switch (wParam) {
				case IDC_EXIT:
				case WM_DESTROY:
						close_port();
						EndDialog(hDlg, msg);
						PostQuitMessage(0);
						break;

				case IDC_ABOUT:
						DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUT), hDlg, AboutDlgProc);
						break;

				case IDC_TRANSMIT_KISS:
						memcpy(kiss_buf, kiss_sample, sizeof(kiss_sample));
						kiss_len = sizeof(kiss_sample);
						goto kiss_send;

				case IDC_SET_VALUES:
						/* Get current values */
						for (i = 1; i < 6; i++)
							SendMessage(hDlg, WM_USER_CHECK_CHANGES, 0, i);

						/* Reset buffer */
						memset(kiss_buf, 0x00, BUF_LEN);
						kiss_len = 0;

						/* Check which value is queued to send */
						for (i = 0; i < 4; i++)
							if (ax25[i + 1].ok && IsDlgButtonChecked(hDlg, IDC_SET_TXDELAY + i) == BST_CHECKED) {
									/* Add KISS packet to a buffer */
									add_kiss(i);
							}

						/* Check if need to store AX.25 L1 params in EEPROM */
						if (IsDlgButtonChecked(hDlg, IDC_SET_IN_EEPROM) == BST_CHECKED) {
							add_kiss(5); /* Add 'Set hardware' KISS command with address 0x90 (store L1) */
						}

						/* Check if need to store new UART rate in EEPROM */
						if (ax25[0].ok && IsDlgButtonChecked(hDlg, IDC_SET_NEW_RATE) == BST_CHECKED) {
							add_kiss(6); /* Add two 'Set hardware' KISS commands with addresses 0x80, 0x81 (store UART rate) */
						}

						if (kiss_len == 0) {
							MessageBox(hDlg, "Nothing to send", "Warning", MB_OK | MB_ICONINFORMATION); 
						} else {
							/* Send queued data from buffer */
kiss_send:
							/* Compose port name */
							GetDlgItemText(hDlg, IDC_PORT, (LPSTR)s1, sizeof(s1));
							strcpy(s, "\\\\.\\");
							strcat(s, s1);
							if (open_port(s) != 0) {
								strcpy(s, "Couldn't open port ");
								strcat(s, s1);
								MessageBox(hDlg, s, "Warning", MB_OK | MB_ICONSTOP); 
								break;
							}

							/* Send data */
							if (!WriteFile(hCom, kiss_buf, kiss_len, &n, NULL))
								MessageBox(hDlg, "WriteFile() failed", "Warning", MB_OK | MB_ICONSTOP);
							else MessageBox(hDlg, "OK", "Info", MB_OK | MB_ICONINFORMATION);
							close_port();

							/* Use new rate in IDC_RATE (if active) */
							if (IsDlgButtonChecked(hDlg, IDC_SET_NEW_RATE)) {
								GetDlgItemText(hDlg, IDC_NEW_RATE, (LPSTR)s, sizeof(s));
								SendDlgItemMessage(hDlg, IDC_RATE, CB_SELECTSTRING, 0, (LPARAM)(LPSTR)s);
								SettingsUpdate(hDlg, 0, 0);
							}
						}
						break;

				case IDC_GET_VALUES:
						MessageBox(hDlg, "Get Values", "Debug", MB_OK);

						/* TODO */

						break;

				/* Rate */
				case ((CBN_SELCHANGE << 16) | IDC_RATE):
				case ((CBN_EDITUPDATE << 16) | IDC_RATE):
						PostMessage(hDlg, WM_USER_CHECK_CHANGES, 0, 0);
						break;
				case ((CBN_KILLFOCUS << 16) | IDC_RATE):
						PostMessage(hDlg, WM_USER_CHECK_CHANGES, 1, 0);
						break;
				case ((CBN_SELCHANGE << 16) | IDC_NEW_RATE):
				case ((CBN_EDITUPDATE << 16) | IDC_NEW_RATE):
						PostMessage(hDlg, WM_USER_CHECK_CHANGES, 0, 1);
						break;

				/* New rate */
				case ((CBN_KILLFOCUS << 16) | IDC_NEW_RATE):
						PostMessage(hDlg, WM_USER_CHECK_CHANGES, 1, 1);
						break;
				case IDC_SET_NEW_RATE:
						if (IsDlgButtonChecked(hDlg, IDC_SET_NEW_RATE) == BST_CHECKED)
							EnableWindow(GetDlgItem(hDlg, IDC_NEW_RATE), TRUE);
						else EnableWindow(GetDlgItem(hDlg, IDC_NEW_RATE), FALSE);
						break;

				/* TX Delay */
				case ((EN_KILLFOCUS << 16) | IDC_TXDELAY):
						PostMessage(hDlg, WM_USER_CHECK_CHANGES, 1, 2);
						break;
				case IDC_SET_TXDELAY:
						if (IsDlgButtonChecked(hDlg, IDC_SET_TXDELAY) == BST_CHECKED)
							EnableWindow(GetDlgItem(hDlg, IDC_TXDELAY), TRUE);
						else EnableWindow(GetDlgItem(hDlg, IDC_TXDELAY), FALSE);
						break;


				/* TX Tail */
				case ((EN_KILLFOCUS << 16) | IDC_TXTAIL):
						PostMessage(hDlg, WM_USER_CHECK_CHANGES, 1, 5);
						break;
				case IDC_SET_TXTAIL:
						if (IsDlgButtonChecked(hDlg, IDC_SET_TXTAIL) == BST_CHECKED)
							EnableWindow(GetDlgItem(hDlg, IDC_TXTAIL), TRUE);
						else EnableWindow(GetDlgItem(hDlg, IDC_TXTAIL), FALSE);
						break;

				/* Persistence */
				case ((EN_KILLFOCUS << 16) | IDC_PERSIST):
						PostMessage(hDlg, WM_USER_CHECK_CHANGES, 1, 3);
						break;
				case IDC_SET_PERSIST:
						if (IsDlgButtonChecked(hDlg, IDC_SET_PERSIST) == BST_CHECKED)
							EnableWindow(GetDlgItem(hDlg, IDC_PERSIST), TRUE);
						else EnableWindow(GetDlgItem(hDlg, IDC_PERSIST), FALSE);
						break;

				/* Slot time */
				case ((EN_KILLFOCUS << 16) | IDC_SLOTTIME):
						PostMessage(hDlg, WM_USER_CHECK_CHANGES, 1, 4);
						break;
				case IDC_SET_SLOTTIME:
						if (IsDlgButtonChecked(hDlg, IDC_SET_SLOTTIME) == BST_CHECKED)
							EnableWindow(GetDlgItem(hDlg, IDC_SLOTTIME), TRUE);
						else EnableWindow(GetDlgItem(hDlg, IDC_SLOTTIME), FALSE);
						break;
			}
			break;

		case WM_USER_CHECK_CHANGES:
				SettingsUpdate(hDlg, wParam, lParam);
				break;

		case WM_INITDIALOG:
				/* Set default AX.25 channel access parameter values */
				SetDlgItemInt(hDlg, IDC_TXDELAY, DEF_TXDELAY, FALSE);
				SetDlgItemInt(hDlg, IDC_TXTAIL, DEF_TXTAIL, FALSE);
				SetDlgItemInt(hDlg, IDC_PERSIST, DEF_PERSIST, FALSE);
				SetDlgItemInt(hDlg, IDC_SLOTTIME, DEF_SLOTTIME, FALSE);
				CheckDlgButton(hDlg, IDC_SET_TXDELAY, 1);

				/* Set default communication parameters */
				FillComboBox(hDlg, IDC_PORT, Port, 4, 0);
				FillComboBox(hDlg, IDC_RATE, Rate, 8, 6);
				FillComboBox(hDlg, IDC_NEW_RATE, Rate, 8, 6);
				SettingsUpdate(hDlg, 0, 0);

				SetFocus(GetDlgItem(hDlg, IDC_PORT));

				hCom = NULL;
	}
	return 0;
}