Hex Artifact Content Вы: nobody
Вход

Artifact 23808e4333aa564aea827f27a94f15a36b3883f1:


0000: 2f 2a 0d 0a 70 72 6f 70 70 61 67 65 2e 68 70 70  /*..proppage.hpp
0010: 0d 0a ca eb e0 f1 f1 20 e4 eb ff 20 f1 ee e7 e4  ....... ... ....
0020: e0 ed e8 ff 20 f1 f2 f0 e0 ed e8 f6 fb 20 f1 e2  .... ........ ..
0030: ee e9 f1 f2 e2 20 c2 ca 2c 20 e7 e0 e3 f0 f3 e6  ..... .., ......
0040: e0 e5 ec ee e9 20 ed e5 20 ef ee 20 f1 f2 e0 ed  ..... .. .. ....
0050: e4 e0 f0 f2 f3 2e 0d 0a c8 f1 ef ee eb fc e7 ee  ................
0060: e2 e0 ed e8 e5 3a 0d 0a 20 31 2e 20 c2 20 f0 e5  .....:.. 1. . ..
0070: e4 e0 ea f2 ee f0 e5 20 f0 e5 f1 f3 f0 f1 ee e2  ....... ........
0080: 20 f1 ee e7 e4 e0 e9 f2 e5 20 e4 e8 e0 eb ee e3   ........ ......
0090: 2e 0d 0a 09 53 74 79 6c 65 20 2d 20 63 68 69 6c  ....Style - chil
00a0: 64 0d 0a 09 42 6f 72 64 65 72 20 2d 20 6e 6f 6e  d...Border - non
00b0: 65 0d 0a 09 56 69 73 69 62 6c 65 20 2d 20 66 61  e...Visible - fa
00c0: 6c 73 65 0d 0a 20 32 2e 20 c7 e0 ef f3 f1 f2 e8  lse.. 2. .......
00d0: f2 e5 20 43 6c 61 73 73 57 69 7a 61 72 64 2c 20  .. ClassWizard, 
00e0: e2 fb e1 e5 f0 e8 f2 e5 20 22 f1 ee e7 e4 e0 f2  ........ "......
00f0: fc 20 ed ee e2 fb e9 20 ea eb e0 f1 f1 22 20 e4  . ..... ....." .
0100: eb ff 20 e4 e8 e0 eb ee e3 e0 0d 0a 20 33 2e 20  .. ......... 3. 
0110: c2 20 f1 ee e7 e4 e0 ed ed ee ec 20 ea eb e0 f1  . ......... ....
0120: f1 e5 20 f0 e5 e0 eb e8 e7 f3 e9 f2 e5 20 f4 f3  .. .......... ..
0130: ed ea f6 e8 e8 3a 0d 0a 09 42 4f 4f 4c 20 49 73  .....:...BOOL Is
0140: 44 69 72 74 79 28 29 3b 20 2f 2f 20 c4 ee eb e6  Dirty(); // ....
0150: ed e0 20 e2 ee e7 e2 f0 e0 f9 e0 f2 fc 20 54 52  .. .......... TR
0160: 55 45 2c 20 e5 f1 eb e8 20 f1 e2 ee e9 f1 f2 e2  UE, .... .......
0170: e0 20 e8 e7 ec e5 ed e5 ed fb 0d 0a 09 42 4f 4f  . ...........BOO
0180: 4c 20 4f 6e 41 70 70 6c 79 28 29 3b 20 2f 2f 20  L OnApply(); // 
0190: c2 fb e7 fb e2 e0 e5 f2 f1 ff 20 ef f0 e8 20 ed  .......... ... .
01a0: e0 e6 e0 f2 e8 e8 20 41 70 70 6c 79 20 e8 eb e8  ...... Apply ...
01b0: 20 4f 6b 2e 20 c4 ee eb e6 ed e0 20 e2 e5 f0 ed   Ok. ...... ....
01c0: f3 f2 fc 20 54 52 55 45 2c 20 e5 f1 eb e8 20 f1  ... TRUE, .... .
01d0: e2 ee e9 f1 f2 e2 e0 20 f1 ee f5 f0 e0 ed e5 ed  ....... ........
01e0: fb 0d 0a 09 73 74 61 74 69 63 20 4c 50 43 53 54  ....static LPCST
01f0: 52 20 47 65 74 54 69 74 6c 65 28 29 7b 72 65 74  R GetTitle(){ret
0200: 75 72 6e 20 22 c7 e0 e3 ee eb ee e2 ee ea 20 e2  urn "......... .
0210: ea eb e0 e4 ea e8 22 3b 7d 0d 0a 20 34 2e 20 cf  ......";}.. 4. .
0220: f0 e8 20 e7 e0 e3 f0 f3 e7 ea e5 20 ea ee ec ef  .. ........ ....
0230: ee ed e5 ed f2 fb 20 e2 fb e7 ee e2 e8 f2 e5 20  ...... ........ 
0240: f4 f3 ed ea f6 e8 fe 20 43 50 72 6f 70 50 61 67  ....... CPropPag
0250: 65 43 72 65 61 74 6f 72 3c c2 e0 f8 ca eb e0 f1  eCreator<.......
0260: f1 c4 e8 e0 eb ee e3 e0 3e 3a 3a 49 6e 69 74 28  ........>::Init(
0270: 29 0d 0a 0d 0a 20 20 cf f0 e8 20 f0 e0 e1 ee f2  )....  ... .....
0280: e5 20 f1 f2 f0 e0 ed e8 f6 fb 20 f1 e2 ee e9 f1  . ........ .....
0290: f2 e2 2c 20 ef f0 e8 20 e8 e7 ec e5 ed e5 ed e8  .., ... ........
02a0: e8 20 f1 e2 ee e9 f1 f2 e2 20 e4 eb ff 20 e0 ea  . ....... ... ..
02b0: f2 e8 e2 e0 f6 e8 e8 20 ea ed ee ef ea e8 20 22  ....... ...... "
02c0: cf f0 e8 ec e5 ed e8 f2 fc 22 2c 0d 0a 20 20 e2  .........",..  .
02d0: fb e7 ee e2 e8 f2 e5 20 f4 f3 ed ea f6 e8 fe 20  ....... ....... 
02e0: 09 43 50 72 6f 70 50 61 67 65 43 72 65 61 74 6f  .CPropPageCreato
02f0: 72 3c c2 e0 f8 ca eb e0 f1 f1 c4 e8 e0 eb ee e3  r<..............
0300: e0 3e 3a 3a 4d 61 6b 65 44 69 72 74 79 28 29 3b  .>::MakeDirty();
0310: 0d 0a 2a 2f 0d 0a 0d 0a 23 70 72 61 67 6d 61 20  ..*/....#pragma 
0320: 6f 6e 63 65 0d 0a 0d 0a 23 69 6e 63 6c 75 64 65  once....#include
0330: 20 22 74 72 61 70 73 2e 68 70 70 22 0d 0a 0d 0a   "traps.hpp"....
0340: 74 65 6d 70 6c 61 74 65 3c 74 79 70 65 6e 61 6d  template<typenam
0350: 65 20 54 3e 0d 0a 63 6c 61 73 73 20 43 50 72 6f  e T>..class CPro
0360: 70 50 61 67 65 43 72 65 61 74 6f 72 0d 0a 7b 0d  pPageCreator..{.
0370: 0a 70 75 62 6c 69 63 3a 0d 0a 0d 0a 09 2f 2f 20  .public:.....// 
0380: d2 f3 f2 20 e1 f3 e4 e5 f2 20 f5 f0 e0 ed e8 f2  ... ..... ......
0390: f1 ff 20 f3 ea e0 e7 e0 f2 e5 eb fc 20 ed e0 20  .. ......... .. 
03a0: 43 4f 6c 65 50 72 6f 70 65 72 74 79 50 61 67 65  COlePropertyPage
03b0: 53 69 74 65 0d 0a 09 73 74 61 74 69 63 20 43 4f  Site...static CO
03c0: 6c 65 50 72 6f 70 65 72 74 79 50 61 67 65 53 69  lePropertyPageSi
03d0: 74 65 2a 26 20 47 65 74 50 61 67 65 53 69 74 65  te*& GetPageSite
03e0: 28 29 7b 73 74 61 74 69 63 20 43 4f 6c 65 50 72  (){static COlePr
03f0: 6f 70 65 72 74 79 50 61 67 65 53 69 74 65 2a 20  opertyPageSite* 
0400: 70 53 69 74 65 3b 72 65 74 75 72 6e 20 70 53 69  pSite;return pSi
0410: 74 65 3b 7d 0d 0a 09 0d 0a 09 73 74 61 74 69 63  te;}......static
0420: 20 76 6f 69 64 20 4d 61 6b 65 44 69 72 74 79 28   void MakeDirty(
0430: 29 0d 0a 09 7b 0d 0a 09 09 69 66 28 43 4f 6c 65  )...{....if(COle
0440: 50 72 6f 70 65 72 74 79 50 61 67 65 53 69 74 65  PropertyPageSite
0450: 2a 20 70 53 69 74 65 3d 47 65 74 50 61 67 65 53  * pSite=GetPageS
0460: 69 74 65 28 29 29 0d 0a 09 09 09 70 53 69 74 65  ite()).....pSite
0470: 2d 3e 6d 5f 70 61 67 65 53 69 74 65 2e 4f 6e 53  ->m_pageSite.OnS
0480: 74 61 74 75 73 43 68 61 6e 67 65 28 50 52 4f 50  tatusChange(PROP
0490: 50 41 47 45 53 54 41 54 55 53 5f 44 49 52 54 59  PAGESTATUS_DIRTY
04a0: 29 3b 0d 0a 09 7d 0d 0a 0d 0a 09 63 6c 61 73 73  );...}.....class
04b0: 20 43 50 72 6f 70 50 61 67 65 44 6f 63 0d 0a 09   CPropPageDoc...
04c0: 7b 0d 0a 09 70 75 62 6c 69 63 3a 0d 0a 09 09 54  {...public:....T
04d0: 2a 20 6d 5f 70 44 6c 67 3b 0d 0a 09 09 44 57 4f  * m_pDlg;....DWO
04e0: 52 44 20 6d 5f 62 75 66 5b 31 30 5d 3b 0d 0a 0d  RD m_buf[10];...
04f0: 0a 09 09 43 50 72 6f 70 50 61 67 65 44 6f 63 28  ...CPropPageDoc(
0500: 29 20 3a 20 6d 5f 70 44 6c 67 28 4e 55 4c 4c 29  ) : m_pDlg(NULL)
0510: 0d 0a 09 09 7b 0d 0a 09 09 09 6d 65 6d 73 65 74  ....{.....memset
0520: 28 6d 5f 62 75 66 2c 20 30 2c 20 73 69 7a 65 6f  (m_buf, 0, sizeo
0530: 66 28 6d 5f 62 75 66 29 29 3b 0d 0a 09 09 7d 0d  f(m_buf));....}.
0540: 0a 0d 0a 09 09 76 6f 69 64 20 6f 70 65 72 61 74  .....void operat
0550: 6f 72 20 3d 20 28 63 6c 61 73 73 20 43 50 72 6f  or = (class CPro
0560: 70 50 61 67 65 44 6f 63 20 63 6f 6e 73 74 20 26  pPageDoc const &
0570: 20 44 65 73 74 29 0d 0a 09 09 7b 0d 0a 09 09 09   Dest)....{.....
0580: 6d 5f 70 44 6c 67 20 3d 20 4e 55 4c 4c 3b 0d 0a  m_pDlg = NULL;..
0590: 09 09 09 6d 65 6d 63 70 79 28 6d 5f 62 75 66 2c  ...memcpy(m_buf,
05a0: 20 44 65 73 74 2e 6d 5f 62 75 66 2c 20 73 69 7a   Dest.m_buf, siz
05b0: 65 6f 66 28 6d 5f 62 75 66 29 29 3b 0d 0a 09 09  eof(m_buf));....
05c0: 7d 3b 0d 0a 0d 0a 09 09 76 69 72 74 75 61 6c 20  };......virtual 
05d0: 76 6f 69 64 20 5f 5f 73 74 64 63 61 6c 6c 20 76  void __stdcall v
05e0: 50 72 6f 63 30 30 28 76 6f 69 64 29 7b 7d 0d 0a  Proc00(void){}..
05f0: 09 09 76 69 72 74 75 61 6c 20 76 6f 69 64 20 5f  ..virtual void _
0600: 5f 73 74 64 63 61 6c 6c 20 76 50 72 6f 63 30 34  _stdcall vProc04
0610: 28 76 6f 69 64 29 7b 7d 0d 0a 09 09 76 69 72 74  (void){}....virt
0620: 75 61 6c 20 76 6f 69 64 20 5f 5f 73 74 64 63 61  ual void __stdca
0630: 6c 6c 20 43 6c 6f 73 65 50 72 6f 70 44 6c 67 28  ll ClosePropDlg(
0640: 76 6f 69 64 29 0d 0a 09 09 7b 0d 0a 09 09 09 64  void)....{.....d
0650: 65 6c 65 74 65 20 6d 5f 70 44 6c 67 3b 0d 0a 09  elete m_pDlg;...
0660: 09 09 47 65 74 50 61 67 65 53 69 74 65 28 29 3d  ..GetPageSite()=
0670: 4e 55 4c 4c 3b 0d 0a 09 09 09 64 65 6c 65 74 65  NULL;.....delete
0680: 20 74 68 69 73 3b 0d 0a 09 09 7d 0d 0a 09 09 76   this;....}....v
0690: 69 72 74 75 61 6c 20 76 6f 69 64 20 5f 5f 73 74  irtual void __st
06a0: 64 63 61 6c 6c 20 76 50 72 6f 63 30 43 28 76 6f  dcall vProc0C(vo
06b0: 69 64 29 7b 7d 0d 0a 09 09 76 69 72 74 75 61 6c  id){}....virtual
06c0: 20 76 6f 69 64 20 5f 5f 73 74 64 63 61 6c 6c 20   void __stdcall 
06d0: 43 72 65 61 74 65 50 72 6f 70 44 6c 67 28 48 57  CreatePropDlg(HW
06e0: 4e 44 20 68 4d 61 69 6e 57 6e 64 2c 20 43 52 65  ND hMainWnd, CRe
06f0: 63 74 2a 20 72 65 63 74 2c 20 42 4f 4f 4c 20 62  ct* rect, BOOL b
0700: 4d 6f 64 61 6c 29 0d 0a 09 09 7b 0d 0a 09 09 09  Modal)....{.....
0710: 6d 5f 70 44 6c 67 20 3d 20 6e 65 77 20 54 28 4e  m_pDlg = new T(N
0720: 55 4c 4c 29 3b 0d 0a 09 09 09 41 66 78 53 65 74  ULL);.....AfxSet
0730: 52 65 73 6f 75 72 63 65 48 61 6e 64 6c 65 28 68  ResourceHandle(h
0740: 4d 79 49 6e 73 74 29 3b 0d 0a 09 09 09 6d 5f 70  MyInst);.....m_p
0750: 44 6c 67 2d 3e 43 72 65 61 74 65 28 54 3a 3a 49  Dlg->Create(T::I
0760: 44 44 2c 20 43 57 6e 64 3a 3a 46 72 6f 6d 48 61  DD, CWnd::FromHa
0770: 6e 64 6c 65 28 68 4d 61 69 6e 57 6e 64 29 29 3b  ndle(hMainWnd));
0780: 0d 0a 09 09 09 41 66 78 53 65 74 52 65 73 6f 75  .....AfxSetResou
0790: 72 63 65 48 61 6e 64 6c 65 28 68 31 43 52 65 73  rceHandle(h1CRes
07a0: 6f 75 72 63 65 29 3b 0d 0a 09 09 09 6d 5f 70 44  ource);.....m_pD
07b0: 6c 67 2d 3e 4d 6f 76 65 57 69 6e 64 6f 77 28 72  lg->MoveWindow(r
07c0: 65 63 74 29 3b 0d 0a 09 09 7d 0d 0a 09 09 76 69  ect);....}....vi
07d0: 72 74 75 61 6c 20 76 6f 69 64 20 5f 5f 73 74 64  rtual void __std
07e0: 63 61 6c 6c 20 76 50 72 6f 63 31 34 28 76 6f 69  call vProc14(voi
07f0: 64 29 7b 7d 0d 0a 09 09 76 69 72 74 75 61 6c 20  d){}....virtual 
0800: 76 6f 69 64 20 5f 5f 73 74 64 63 61 6c 6c 20 76  void __stdcall v
0810: 50 72 6f 63 31 38 28 76 6f 69 64 29 7b 7d 0d 0a  Proc18(void){}..
0820: 09 09 76 69 72 74 75 61 6c 20 76 6f 69 64 20 5f  ..virtual void _
0830: 5f 73 74 64 63 61 6c 6c 20 76 50 72 6f 63 31 43  _stdcall vProc1C
0840: 28 44 57 4f 52 44 20 64 77 50 61 72 61 6d 31 2c  (DWORD dwParam1,
0850: 20 44 57 4f 52 44 20 64 77 50 61 72 61 6d 32 29   DWORD dwParam2)
0860: 7b 7d 0d 0a 09 09 76 69 72 74 75 61 6c 20 76 6f  {}....virtual vo
0870: 69 64 20 5f 5f 73 74 64 63 61 6c 6c 20 41 63 74  id __stdcall Act
0880: 69 76 61 74 65 50 72 6f 70 44 6c 67 28 44 57 4f  ivatePropDlg(DWO
0890: 52 44 20 64 77 46 6c 61 67 29 0d 0a 09 09 7b 0d  RD dwFlag)....{.
08a0: 0a 09 09 09 69 66 28 6d 5f 70 44 6c 67 29 0d 0a  ....if(m_pDlg)..
08b0: 09 09 09 09 6d 5f 70 44 6c 67 2d 3e 53 68 6f 77  ....m_pDlg->Show
08c0: 57 69 6e 64 6f 77 28 64 77 46 6c 61 67 29 3b 0d  Window(dwFlag);.
08d0: 0a 09 09 7d 0d 0a 09 09 76 69 72 74 75 61 6c 20  ...}....virtual 
08e0: 76 6f 69 64 20 5f 5f 73 74 64 63 61 6c 6c 20 76  void __stdcall v
08f0: 50 72 6f 63 32 34 28 76 6f 69 64 29 7b 7d 0d 0a  Proc24(void){}..
0900: 09 09 76 69 72 74 75 61 6c 20 42 4f 4f 4c 20 5f  ..virtual BOOL _
0910: 5f 73 74 64 63 61 6c 6c 20 49 73 53 61 76 65 64  _stdcall IsSaved
0920: 28 76 6f 69 64 29 0d 0a 09 09 7b 0d 0a 09 09 09  (void)....{.....
0930: 69 66 28 6d 5f 70 44 6c 67 20 26 26 20 6d 5f 70  if(m_pDlg && m_p
0940: 44 6c 67 2d 3e 49 73 44 69 72 74 79 28 29 29 0d  Dlg->IsDirty()).
0950: 0a 09 09 09 09 72 65 74 75 72 6e 20 46 41 4c 53  .....return FALS
0960: 45 3b 0d 0a 09 09 09 72 65 74 75 72 6e 20 54 52  E;.....return TR
0970: 55 45 3b 0d 0a 09 09 7d 0d 0a 09 09 76 69 72 74  UE;....}....virt
0980: 75 61 6c 20 48 52 45 53 55 4c 54 20 5f 5f 73 74  ual HRESULT __st
0990: 64 63 61 6c 6c 20 53 61 76 65 28 76 6f 69 64 29  dcall Save(void)
09a0: 0d 0a 09 09 7b 0d 0a 09 09 09 69 66 28 6d 5f 70  ....{.....if(m_p
09b0: 44 6c 67 29 0d 0a 09 09 09 09 72 65 74 75 72 6e  Dlg)......return
09c0: 20 6d 5f 70 44 6c 67 2d 3e 4f 6e 41 70 70 6c 79   m_pDlg->OnApply
09d0: 28 29 20 3f 20 53 5f 4f 4b 20 3a 20 45 5f 46 41  () ? S_OK : E_FA
09e0: 49 4c 3b 0d 0a 09 09 09 72 65 74 75 72 6e 20 53  IL;.....return S
09f0: 5f 4f 4b 3b 0d 0a 09 09 7d 0d 0a 09 7d 3b 0d 0a  _OK;....}...};..
0a00: 0d 0a 09 73 74 72 75 63 74 20 53 50 72 6f 70 50  ...struct SPropP
0a10: 61 67 65 0d 0a 09 7b 0d 0a 09 70 75 62 6c 69 63  age...{...public
0a20: 3a 0d 0a 09 09 42 4f 4f 4c 20 6d 5f 62 48 61 73  :....BOOL m_bHas
0a30: 44 69 61 6c 6f 67 3b 0d 0a 09 09 44 57 4f 52 44  Dialog;....DWORD
0a40: 20 6d 5f 31 3b 0d 0a 09 09 44 57 4f 52 44 20 6d   m_1;....DWORD m
0a50: 5f 32 3b 0d 0a 09 09 44 57 4f 52 44 20 6d 5f 33  _2;....DWORD m_3
0a60: 3b 0d 0a 09 09 44 57 4f 52 44 20 6d 5f 34 3b 0d  ;....DWORD m_4;.
0a70: 0a 09 09 44 57 4f 52 44 20 6d 5f 35 3b 0d 0a 09  ...DWORD m_5;...
0a80: 09 44 57 4f 52 44 20 6d 5f 36 3b 0d 0a 09 09 44  .DWORD m_6;....D
0a90: 57 4f 52 44 20 6d 5f 44 6c 67 57 3b 0d 0a 09 09  WORD m_DlgW;....
0aa0: 44 57 4f 52 44 20 6d 5f 44 6c 67 48 3b 0d 0a 09  DWORD m_DlgH;...
0ab0: 09 44 57 4f 52 44 20 6d 5f 39 3b 0d 0a 09 09 44  .DWORD m_9;....D
0ac0: 57 4f 52 44 20 6d 5f 31 30 3b 0d 0a 09 09 57 4f  WORD m_10;....WO
0ad0: 52 44 20 6d 5f 52 65 73 4e 75 6d 3b 0d 0a 09 09  RD m_ResNum;....
0ae0: 57 4f 52 44 20 6d 5f 52 65 73 54 79 70 65 3b 0d  WORD m_ResType;.
0af0: 0a 09 09 43 50 72 6f 70 50 61 67 65 44 6f 63 2a  ...CPropPageDoc*
0b00: 20 6d 5f 44 6c 67 44 6f 63 3b 0d 0a 09 09 43 53   m_DlgDoc;....CS
0b10: 74 72 69 6e 67 20 6d 5f 50 61 74 68 3b 0d 0a 09  tring m_Path;...
0b20: 09 44 57 4f 52 44 20 6d 5f 31 34 3b 0d 0a 09 09  .DWORD m_14;....
0b30: 44 57 4f 52 44 20 6d 5f 31 35 3b 0d 0a 09 09 44  DWORD m_15;....D
0b40: 57 4f 52 44 20 6d 5f 31 36 3b 0d 0a 09 09 44 57  WORD m_16;....DW
0b50: 4f 52 44 20 6d 5f 31 37 3b 0d 0a 09 09 44 57 4f  ORD m_17;....DWO
0b60: 52 44 20 6d 5f 31 38 3b 0d 0a 0d 0a 09 09 53 50  RD m_18;......SP
0b70: 72 6f 70 50 61 67 65 28 29 20 3a 20 6d 5f 44 6c  ropPage() : m_Dl
0b80: 67 44 6f 63 28 6e 65 77 20 43 50 72 6f 70 50 61  gDoc(new CPropPa
0b90: 67 65 44 6f 63 29 7b 7d 0d 0a 09 09 7e 53 50 72  geDoc){}....~SPr
0ba0: 6f 70 50 61 67 65 28 29 7b 64 65 6c 65 74 65 20  opPage(){delete 
0bb0: 6d 5f 44 6c 67 44 6f 63 3b 7d 0d 0a 0d 0a 09 09  m_DlgDoc;}......
0bc0: 76 6f 69 64 20 6f 70 65 72 61 74 6f 72 20 3d 20  void operator = 
0bd0: 28 53 50 72 6f 70 50 61 67 65 20 63 6f 6e 73 74  (SPropPage const
0be0: 20 26 20 44 65 73 74 29 0d 0a 09 09 7b 0d 0a 09   & Dest)....{...
0bf0: 09 09 6d 65 6d 63 70 79 28 74 68 69 73 2c 20 26  ..memcpy(this, &
0c00: 44 65 73 74 2c 20 73 69 7a 65 6f 66 28 2a 74 68  Dest, sizeof(*th
0c10: 69 73 29 29 3b 0d 0a 09 09 09 6d 5f 44 6c 67 44  is));.....m_DlgD
0c20: 6f 63 20 3d 20 6e 65 77 20 43 50 72 6f 70 50 61  oc = new CPropPa
0c30: 67 65 44 6f 63 3b 0d 0a 09 09 09 2a 6d 5f 44 6c  geDoc;.....*m_Dl
0c40: 67 44 6f 63 20 3d 20 2a 44 65 73 74 2e 6d 5f 44  gDoc = *Dest.m_D
0c50: 6c 67 44 6f 63 3b 0d 0a 09 09 7d 3b 0d 0a 0d 0a  lgDoc;....};....
0c60: 09 09 53 50 72 6f 70 50 61 67 65 28 73 74 72 75  ..SPropPage(stru
0c70: 63 74 20 53 50 72 6f 70 50 61 67 65 20 63 6f 6e  ct SPropPage con
0c80: 73 74 20 26 20 44 65 73 74 29 0d 0a 09 09 7b 0d  st & Dest)....{.
0c90: 0a 09 09 09 2a 74 68 69 73 20 3d 20 44 65 73 74  ....*this = Dest
0ca0: 3b 0d 0a 09 09 7d 3b 0d 0a 09 7d 3b 0d 0a 09 0d  ;....};...};....
0cb0: 0a 09 74 79 70 65 64 65 66 20 43 41 72 72 61 79  ..typedef CArray
0cc0: 3c 73 74 72 75 63 74 20 53 50 72 6f 70 50 61 67  <struct SPropPag
0cd0: 65 2c 20 73 74 72 75 63 74 20 53 50 72 6f 70 50  e, struct SPropP
0ce0: 61 67 65 3e 20 43 41 72 72 61 79 53 50 72 6f 70  age> CArraySProp
0cf0: 50 61 67 65 3b 0d 0a 0d 0a 09 73 74 61 74 69 63  Page;.....static
0d00: 20 43 54 72 61 70 53 77 61 70 2a 26 20 47 65 74   CTrapSwap*& Get
0d10: 54 72 61 70 28 29 7b 73 74 61 74 69 63 20 43 54  Trap(){static CT
0d20: 72 61 70 53 77 61 70 2a 20 70 54 72 61 70 3b 20  rapSwap* pTrap; 
0d30: 72 65 74 75 72 6e 20 70 54 72 61 70 3b 7d 0d 0a  return pTrap;}..
0d40: 0d 0a 09 73 74 72 75 63 74 20 43 4f 6c 65 50 72  ...struct COlePr
0d50: 6f 70 65 72 74 79 50 61 67 65 53 69 74 65 57 72  opertyPageSiteWr
0d60: 61 70 20 3a 20 43 4f 6c 65 50 72 6f 70 65 72 74  ap : COlePropert
0d70: 79 50 61 67 65 53 69 74 65 0d 0a 09 7b 0d 0a 09  yPageSite...{...
0d80: 09 69 6e 74 20 4f 6e 49 6e 69 74 44 69 61 6c 6f  .int OnInitDialo
0d90: 67 57 72 61 70 28 76 6f 69 64 29 0d 0a 09 09 7b  gWrap(void)....{
0da0: 0d 0a 09 09 09 74 72 61 70 73 77 61 70 65 72 20  .....trapswaper 
0db0: 74 72 28 2a 47 65 74 54 72 61 70 28 29 29 3b 0d  tr(*GetTrap());.
0dc0: 0a 09 09 09 0d 0a 09 09 09 69 6e 74 20 72 65 74  .........int ret
0dd0: 3d 43 4f 6c 65 50 72 6f 70 65 72 74 79 50 61 67  =COlePropertyPag
0de0: 65 53 69 74 65 3a 3a 4f 6e 49 6e 69 74 44 69 61  eSite::OnInitDia
0df0: 6c 6f 67 28 29 3b 0d 0a 09 09 09 6d 5f 54 61 62  log();.....m_Tab
0e00: 43 74 72 6c 2e 49 6e 73 65 72 74 49 74 65 6d 28  Ctrl.InsertItem(
0e10: 6d 5f 54 61 62 43 74 72 6c 2e 47 65 74 49 74 65  m_TabCtrl.GetIte
0e20: 6d 43 6f 75 6e 74 28 29 2c 20 54 3a 3a 47 65 74  mCount(), T::Get
0e30: 54 69 74 6c 65 28 29 2c 20 30 29 3b 0d 0a 0d 0a  Title(), 0);....
0e40: 09 09 09 53 50 72 6f 70 50 61 67 65 20 6e 65 77  ...SPropPage new
0e50: 50 72 6f 70 50 61 67 65 3b 0d 0a 09 09 09 6e 65  PropPage;.....ne
0e60: 77 50 72 6f 70 50 61 67 65 2e 6d 5f 62 48 61 73  wPropPage.m_bHas
0e70: 44 69 61 6c 6f 67 20 3d 20 46 41 4c 53 45 3b 0d  Dialog = FALSE;.
0e80: 0a 0d 0a 09 09 09 43 41 72 72 61 79 53 50 72 6f  ......CArraySPro
0e90: 70 50 61 67 65 2a 20 50 72 6f 70 50 61 67 65 73  pPage* PropPages
0ea0: 20 3d 20 72 65 69 6e 74 65 72 70 72 65 74 5f 63   = reinterpret_c
0eb0: 61 73 74 3c 43 41 72 72 61 79 53 50 72 6f 70 50  ast<CArraySPropP
0ec0: 61 67 65 2a 3e 28 26 6d 5f 50 72 6f 70 50 61 67  age*>(&m_PropPag
0ed0: 65 73 29 3b 0d 0a 09 09 09 50 72 6f 70 50 61 67  es);.....PropPag
0ee0: 65 73 2d 3e 41 64 64 28 6e 65 77 50 72 6f 70 50  es->Add(newPropP
0ef0: 61 67 65 29 3b 0d 0a 0d 0a 09 09 09 47 65 74 50  age);.......GetP
0f00: 61 67 65 53 69 74 65 28 29 3d 74 68 69 73 3b 0d  ageSite()=this;.
0f10: 0a 09 09 09 72 65 74 75 72 6e 20 72 65 74 3b 0d  ....return ret;.
0f20: 0a 09 09 7d 0d 0a 09 7d 3b 0d 0a 0d 0a 09 73 74  ...}...};.....st
0f30: 61 74 69 63 20 76 6f 69 64 20 49 6e 69 74 28 29  atic void Init()
0f40: 0d 0a 09 7b 0d 0a 09 09 43 54 72 61 70 53 77 61  ...{....CTrapSwa
0f50: 70 2a 26 20 74 72 3d 47 65 74 54 72 61 70 28 29  p*& tr=GetTrap()
0f60: 3b 0d 0a 09 09 74 72 3d 6e 65 77 20 43 54 72 61  ;....tr=new CTra
0f70: 70 53 77 61 70 3b 0d 0a 09 09 74 72 2d 3e 53 65  pSwap;....tr->Se
0f80: 74 54 72 61 70 42 79 4e 61 6d 65 28 22 66 72 61  tTrapByName("fra
0f90: 6d 65 2e 64 6c 6c 22 2c 20 22 3f 4f 6e 49 6e 69  me.dll", "?OnIni
0fa0: 74 44 69 61 6c 6f 67 40 43 4f 6c 65 50 72 6f 70  tDialog@COleProp
0fb0: 65 72 74 79 50 61 67 65 53 69 74 65 40 40 4d 41  ertyPageSite@@MA
0fc0: 45 48 58 5a 22 2c 0d 0a 09 09 09 26 43 4f 6c 65  EHXZ",.....&COle
0fd0: 50 72 6f 70 65 72 74 79 50 61 67 65 53 69 74 65  PropertyPageSite
0fe0: 57 72 61 70 3a 3a 4f 6e 49 6e 69 74 44 69 61 6c  Wrap::OnInitDial
0ff0: 6f 67 57 72 61 70 29 3b 0d 0a 09 7d 0d 0a 7d 3b  ogWrap);...}..};