home *** CD-ROM | disk | FTP | other *** search
/ Mastering Visual Basic 6 / mastvb6.iso / leadtools / ocx32.lt / COLORMER.CPP < prev    next >
Encoding:
C/C++ Source or Header  |  1996-07-10  |  4.9 KB  |  172 lines

  1. // colormer.cpp : implementation file
  2. // Copyright (C) 1996 LEAD Technologies, Inc.
  3. // All rights reserved.
  4.  
  5. #include "stdafx.h"
  6.  
  7. #include "mfcdemo.h"
  8. #include "colormer.h"
  9.  
  10. #ifdef _DEBUG
  11. #undef THIS_FILE
  12. static char BASED_CODE THIS_FILE[] = __FILE__;
  13. #endif
  14.  
  15. extern CMfcdemoApp theApp;
  16.  
  17. /////////////////////////////////////////////////////////////////////////////
  18. // CColorMergeDlg dialog
  19.  
  20.  
  21. CColorMergeDlg::CColorMergeDlg(CWnd* pParent /*=NULL*/, CDocument *pParentDoc)
  22.     : CDialog(CColorMergeDlg::IDD, pParent)
  23. {
  24.     //{{AFX_DATA_INIT(CColorMergeDlg)
  25.         m_pDocArray = NULL;
  26.         m_dwFlags = 0;
  27.     //}}AFX_DATA_INIT
  28.         m_pDocument[0] = NULL;
  29.         m_pDocument[1] = NULL;
  30.         m_pDocument[2] = NULL;
  31.         m_pDocument[3] = NULL;
  32.         pDoc = pParentDoc;
  33. }
  34.  
  35.  
  36. void CColorMergeDlg::DoDataExchange(CDataExchange* pDX)
  37. {
  38.     CDialog::DoDataExchange(pDX);
  39.     //{{AFX_DATA_MAP(CColorMergeDlg)
  40.     DDX_Control(pDX, IDC_STATIC4, m_Static4);
  41.     DDX_Control(pDX, IDC_STATIC3, m_Static3);
  42.     DDX_Control(pDX, IDC_STATIC2, m_Static2);
  43.     DDX_Control(pDX, IDC_STATIC1, m_Static1);
  44.     DDX_Control(pDX, IDC_COMBO4, m_Combo4);
  45.     DDX_Control(pDX, IDC_COMBO3, m_Combo3);
  46.     DDX_Control(pDX, IDC_COMBO2, m_Combo2);
  47.     DDX_Control(pDX, IDC_COMBO1, m_Combo1);
  48.     //}}AFX_DATA_MAP
  49. }
  50.  
  51.  
  52. BEGIN_MESSAGE_MAP(CColorMergeDlg, CDialog)
  53.     //{{AFX_MSG_MAP(CColorMergeDlg)
  54.     ON_WM_DESTROY()
  55.     ON_BN_CLICKED(IDC_RADIO1, OnRadio1)
  56.     ON_BN_CLICKED(IDC_RADIO2, OnRadio2)
  57.     ON_BN_CLICKED(IDC_RADIO3, OnRadio3)
  58.     ON_BN_CLICKED(IDC_RADIO4, OnRadio4)
  59.     ON_BN_CLICKED(IDC_RADIO5, OnRadio5)
  60.     //}}AFX_MSG_MAP
  61. END_MESSAGE_MAP()
  62.  
  63.  
  64. /////////////////////////////////////////////////////////////////////////////
  65. // CColorMergeDlg message handlers
  66.  
  67. BOOL CColorMergeDlg::OnInitDialog() 
  68. {
  69.  
  70.     CDialog::OnInitDialog();
  71.     
  72.     
  73.         m_pDocArray = theApp.EnumAllDocuments(pDoc);
  74.         for(int i = 0; i < m_pDocArray->GetSize(); i++)
  75.         {
  76.                 m_Combo1.AddString(((CDocument*) m_pDocArray->GetAt(i))->GetTitle());
  77.                 m_Combo2.AddString(((CDocument*) m_pDocArray->GetAt(i))->GetTitle());
  78.                 m_Combo3.AddString(((CDocument*) m_pDocArray->GetAt(i))->GetTitle());
  79.                 m_Combo4.AddString(((CDocument*) m_pDocArray->GetAt(i))->GetTitle());
  80.         }
  81.         m_Combo1.SetCurSel(0);
  82.         m_Combo2.SetCurSel(0);
  83.         m_Combo3.SetCurSel(0);
  84.         m_Combo4.SetCurSel(0);
  85.         CheckDlgButton(IDC_RADIO1, TRUE);
  86.         m_dwFlags = CLead::COLORSEP_RGB;
  87.         m_Static1.SetWindowText(_T("&Blue"));
  88.         m_Static2.SetWindowText(_T("&Green"));
  89.         m_Static3.SetWindowText(_T("&Red"));
  90.         m_Static4.ShowWindow(SW_HIDE);
  91.         m_Combo4.ShowWindow(SW_HIDE);
  92.     
  93.     return TRUE;  // return TRUE unless you set the focus to a control
  94.                   // EXCEPTION: OCX Property Pages should return FALSE
  95. }
  96.  
  97. void CColorMergeDlg::OnDestroy() 
  98. {
  99.     CDialog::OnDestroy();
  100.     
  101.         if(m_pDocArray)
  102.         {
  103.                 delete m_pDocArray;
  104.                 m_pDocArray = NULL;
  105.         }
  106.     
  107. }
  108.  
  109. void CColorMergeDlg::OnOK() 
  110. {
  111.         m_pDocument[0] = (CDocument*) m_pDocArray->GetAt(m_Combo1.GetCurSel());
  112.         m_pDocument[1] = (CDocument*) m_pDocArray->GetAt(m_Combo2.GetCurSel());
  113.         m_pDocument[2] = (CDocument*) m_pDocArray->GetAt(m_Combo3.GetCurSel());
  114.         m_pDocument[3] = (CDocument*) m_pDocArray->GetAt(m_Combo4.GetCurSel());
  115.     CDialog::OnOK();
  116. }
  117.  
  118. void CColorMergeDlg::OnRadio1() 
  119. {
  120.         m_dwFlags = CLead::COLORSEP_RGB;
  121.         m_Static1.SetWindowText(_T("&Blue"));
  122.         m_Static2.SetWindowText(_T("&Green"));
  123.         m_Static3.SetWindowText(_T("&Red"));
  124.         m_Static4.ShowWindow(SW_HIDE);
  125.         m_Combo4.ShowWindow(SW_HIDE);
  126. }
  127.  
  128. void CColorMergeDlg::OnRadio2() 
  129. {
  130.         m_dwFlags = CLead::COLORSEP_CMYK;
  131.         m_Static1.SetWindowText(_T("&Cyan"));
  132.         m_Static2.SetWindowText(_T("&Magenta"));
  133.         m_Static3.SetWindowText(_T("&Yellow"));
  134.         m_Static4.SetWindowText(_T("&Black"));
  135.         m_Static4.ShowWindow(SW_SHOW);
  136.         m_Combo4.ShowWindow(SW_SHOW);
  137.     
  138. }
  139.  
  140. void CColorMergeDlg::OnRadio3() 
  141. {
  142.         m_dwFlags = CLead::COLORSEP_HSV;
  143.         m_Static1.SetWindowText(_T("&Hue"));
  144.         m_Static2.SetWindowText(_T("&Saturation"));
  145.         m_Static3.SetWindowText(_T("&Value"));
  146.         m_Static4.ShowWindow(SW_HIDE);
  147.         m_Combo4.ShowWindow(SW_HIDE);
  148.     
  149. }
  150.  
  151. void CColorMergeDlg::OnRadio4() 
  152. {
  153.         m_dwFlags = CLead::COLORSEP_HLS;
  154.         m_Static1.SetWindowText(_T("&Hue"));
  155.         m_Static2.SetWindowText(_T("&Lightness"));
  156.         m_Static3.SetWindowText(_T("&Saturation"));
  157.         m_Static4.ShowWindow(SW_HIDE);
  158.         m_Combo4.ShowWindow(SW_HIDE);
  159.     
  160. }
  161.  
  162. void CColorMergeDlg::OnRadio5() 
  163. {
  164.         m_dwFlags = CLead::COLORSEP_CMY;
  165.         m_Static1.SetWindowText(_T("&Cyan"));
  166.         m_Static2.SetWindowText(_T("&Magenta"));
  167.         m_Static3.SetWindowText(_T("&Yellow"));
  168.         m_Static4.ShowWindow(SW_HIDE);
  169.         m_Combo4.ShowWindow(SW_HIDE);
  170.     
  171. }
  172.