コード例 #1
0
// Diese Funktion dient der Behandlung der MenuKommandos vom nutzereigenen
// Menu der Erweiterung
STDMETHODIMP_(bool) CTextExt :: MenuCommand (WPARAM MenuItemID, HWND hWnd)
{
m_hWnd = hWnd;
char cGeo;  

	switch (MenuItemID) 
	{	
	case IDM_CHOICE:		// (s. TEMPLATE.H)
		{
	        CTextDlg dlg (MWind (), m_pHelper);					  
			if (dlg.DoModal() == IDOK)// Aufruf des modalen Dialogfensters
				{
				DEX_RePaint();	
				return TRUE;
				}
		}
		break;
		
	case  IDM_OBRECH:	
		{
			CTxtReDlg redlg (MWind (), m_hWnd, m_hMenu, m_pHelper);
			if (redlg.DoModal() == IDOK)// Aufruf des Recherchefensters
				{
				DEX_RePaint();
				return TRUE;
				}
		}
		break;
		
	case IDM_OBABH:
		{
			CDlgAbh abdlg (MWind (), m_pHelper);
			if (abdlg.DoModal() == IDOK)
			{
				DEX_RePaint();
				return TRUE;
			}
		}
		break;       
		
	case IDM_OBREABH:
		{
			cGeo = '0';
			m_pHelper -> AbhaengTextObj ( m_hWnd, 0, FALSE, &cGeo);
			DEX_RePaint(); 
			return TRUE;
		}
		break;
	case IDM_ORLOESCH:
		{
			cGeo = '0';
			m_pHelper -> AbhaengTextObj ( m_hWnd, 0, TRUE, &cGeo);
			DEX_RePaint();
			return TRUE;
		}
		break;
	}
return FALSE;
}
コード例 #2
0
void CLogiTextGate::OnOpen(CLogiView* pView)
   {
   ASSERT_VALID(this);

   CTextDlg dlg;

   dlg.m_pTextText = m_pTextText;
   dlg.m_csFileName = m_csFileName;
   dlg.m_iStyle = m_iStyle;
   dlg.m_csPathName = pView->GetDocument()->GetPathName();

   if (dlg.DoModal() != IDOK) return;

   pView->GetDocument()->BeginManualEdit(this); // for undo system

   if (m_iStyle != dlg.m_iStyle)
      {
      for (int i=0;i<Contacts;i++)
         {
         if (Node[i] != m_pDocument->m_pAnodeNULL)
            {
            pView->MessageBox(L"Device cannot be connected when changing number of inputs", L"Error");
            return;
            }
         }

      for (int i=0;i<4;i++) Node[i] = m_pDocument->m_pAnodeNULL;
      }

   m_pTextText = dlg.m_pTextText;
   m_csFileName = dlg.m_csFileName;
   m_iStyle = dlg.m_iStyle;

   if (m_iStyle == 1)
      {
      Inputs = 4;
      }
   else
      {
      Inputs = 0;
      }

   Contacts = Outputs + Inputs;

   Invalidate();
   ResizeRect();
   Invalidate();

   SetContacts();
   m_pDocument->SetModifiedFlag();
   }