home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 7 / 07.iso / c / c082_144 / 6.ddi / OWLDEMOS.ZIP / TRANTEST.CPP < prev    next >
Encoding:
C/C++ Source or Header  |  1992-06-10  |  3.5 KB  |  120 lines

  1. // ObjectWindows - (C) Copyright 1992 by Borland International
  2.  
  3. #include <owl.h>
  4. #include <radiobut.h>
  5. #include <edit.h>
  6. #include <string.h>
  7. #include "trantest.h"
  8.  
  9. const MAXNAMELEN    = 26;
  10. const MAXADDRLEN        = 47;
  11. const MAXCITYSTLEN      = 27;
  12. const MAXCOUNTRYLEN     = 27;
  13.  
  14. struct TTransferStruct {
  15.   BOOL MrTitle;
  16.   BOOL MsTitle;
  17.   BOOL DrTitle;
  18.   char NameEdit[MAXNAMELEN];
  19.   char Addr1Edit[MAXADDRLEN];
  20.   char Addr2Edit[MAXADDRLEN];
  21.   char CityStEdit[MAXCITYSTLEN];
  22.   char CountryEdit[MAXCOUNTRYLEN];
  23. };
  24.  
  25. class TTransferApp : public TApplication {
  26. public:
  27.   TTransferApp(LPSTR AName, HINSTANCE hInstance, HINSTANCE hPrevInstance,
  28.     LPSTR lpCmdLine, int nCmdShow)
  29.     : TApplication(AName, hInstance, hPrevInstance, lpCmdLine, nCmdShow) {};
  30.   virtual void InitMainWindow();
  31. };
  32.  
  33.  
  34. class TTransferWindow : public TWindow {
  35. public:
  36.   TTransferStruct TransferStruct;
  37.  
  38.   TTransferWindow(PTWindowsObject AParent, LPSTR ATitle);
  39.   virtual void CMTest(TMessage& Msg) = [CM_FIRST + CM_TEST];
  40. };
  41.  
  42. class TTransferDialog : public TDialog {
  43. public:
  44.   TTransferDialog(PTWindowsObject AParent, int ResourceId);
  45. };
  46.  
  47. TTransferWindow::TTransferWindow(PTWindowsObject AParent, LPSTR ATitle) :
  48.   TWindow(AParent, ATitle)
  49. {
  50.   AssignMenu(ID_MENU);
  51.   memset(&TransferStruct, 0x0, sizeof TransferStruct);
  52.   TransferStruct.MrTitle = TRUE;
  53.   TransferStruct.MsTitle = FALSE;
  54.   TransferStruct.DrTitle = FALSE;
  55. }
  56.  
  57. void TTransferWindow::CMTest(TMessage&)
  58. {
  59.   char ALabel[255];
  60.  
  61.   if ( GetModule()->ExecDialog(new TTransferDialog(this, ID_DIALOG)) == IDOK )
  62.   {
  63.     strcpy(ALabel, "Mailing Label Entered:\n\n");
  64.     if ( TransferStruct.MrTitle )
  65.       strcat(ALabel, "Mr. ");
  66.     else
  67.       if ( TransferStruct.MsTitle )
  68.         strcat(ALabel, "Ms. ");
  69.       else
  70.         strcat(ALabel, "Dr. ");
  71.     strcat(ALabel, TransferStruct.NameEdit);
  72.     strcat(ALabel, "\n");
  73.     strcat(ALabel, TransferStruct.Addr1Edit);
  74.     strcat(ALabel, "\n");
  75.     if ( strcmp(TransferStruct.Addr2Edit, "") != NULL )
  76.     {
  77.       strcat(ALabel, TransferStruct.Addr2Edit);
  78.       strcat(ALabel, "\n");
  79.     }
  80.     strcat(ALabel, TransferStruct.CityStEdit);
  81.     strcat(ALabel, "\n");
  82.     strcat(ALabel, TransferStruct.CountryEdit);
  83.     MessageBox(HWindow, ALabel, "Test Dialog Transfer", MB_OK);
  84.   }
  85. }
  86.  
  87. TTransferDialog::TTransferDialog(PTWindowsObject AParent, int ResourceId)
  88.                  : TDialog(AParent, ResourceId)
  89. {
  90.   new TRadioButton(this, ID_MRBUTTON, NULL);
  91.   new TRadioButton(this, ID_MSBUTTON, NULL);
  92.   new TRadioButton(this, ID_DRBUTTON, NULL);
  93.   new TEdit(this, ID_NAMEEDIT,
  94.             sizeof(((TTransferWindow *)Parent)->TransferStruct.NameEdit));
  95.   new TEdit(this, ID_ADDR1EDIT,
  96.             sizeof(((TTransferWindow *)Parent)->TransferStruct.Addr1Edit));
  97.   new TEdit(this, ID_ADDR2EDIT,
  98.             sizeof(((TTransferWindow *)Parent)->TransferStruct.Addr2Edit));
  99.   new TEdit(this, ID_CITYSTEDIT,
  100.             sizeof(((TTransferWindow *)Parent)->TransferStruct.CityStEdit));
  101.   new TEdit(this, ID_COUNTRYEDIT,
  102.             sizeof(((TTransferWindow *)Parent)->TransferStruct.CountryEdit));
  103.   TransferBuffer = (void far*)&(((TTransferWindow *)Parent)->TransferStruct);
  104. }
  105.  
  106. void TTransferApp::InitMainWindow()
  107. {
  108.   MainWindow = new TTransferWindow(NULL, "Test Dialog Transfer");
  109. }
  110.  
  111. // Main program
  112. int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
  113.   LPSTR lpCmdLine, int nCmdShow)
  114. {
  115.   TTransferApp TransferApp("TransferTest", hInstance, hPrevInstance,
  116.     lpCmdLine, nCmdShow);
  117.   TransferApp.Run();
  118.   return TransferApp.Status;
  119. }
  120.