//////////////////////////////////////////////////////////////////////////////// 
// 
// step4_2.cpp -    
// 
//////////////////////////////////////////////////////////////////////////////// 
#include "stdafx.h"
#include "resource.h"

#ifndef __LIBTOOL_H
#include <libtool.h>
#endif

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif


//////////////////////////////////////////////////////////////////////////////// 
// 
//   
// 
//     Bitmap c ID  
//      
//   
//     
//   
// 
//////////////////////////////////////////////////////////////////////////////// 
class TestShowDlg : public CDialog
{
public:
  TCHAR m_fileName[255];  //      
                         //    
  int  m_slideId;        //     Bitmap c ID  
  reference rGroup;
  TestShowDlg( CWnd* pParent = NULL );
  
  // {{AFX_DATA( TestShowDlg )
  enum { IDD = IDD_TESTDIALOG };
  CStatic m_StaticShow;
  // }}AFX_DATA

  // {{AFX_VIRTUAL( TestShowDlg )
protected:
  virtual void DoDataExchange( CDataExchange* pDX );
  // }}AFX_VIRTUAL

protected:
  // {{AFX_MSG( TestShowDlg )
  virtual BOOL OnInitDialog();
  afx_msg void OnPaint();
  // }}AFX_MSG

  DECLARE_MESSAGE_MAP()
};


//-------------------------------------------------------------------------------
// 
// ---
TestShowDlg::TestShowDlg( CWnd* pParent /*=NULL*/ )
  : CDialog( TestShowDlg::IDD, pParent ),
  m_slideId( 0 ),
  rGroup   ( 0 )
{ 
  m_fileName[0] = '\0';
  // {{AFX_DATA_INIT( TestShowDlg )
  // }}AFX_DATA_INIT
}


//-------------------------------------------------------------------------------
//    
// ---
void TestShowDlg::DoDataExchange( CDataExchange* pDX )
{
  CDialog::DoDataExchange( pDX );
  // {{AFX_DATA_MAP( TestShowDlg )
  DDX_Control( pDX, IDC_SHOW_STATIC, m_StaticShow );
  // }}AFX_DATA_MAP
}


//-------------------------------------------------------------------------------
//  
// ---
BEGIN_MESSAGE_MAP( TestShowDlg, CDialog )
  // {{AFX_MSG_MAP( TestShowDlg )
  ON_WM_PAINT()
  // }}AFX_MSG_MAP
END_MESSAGE_MAP()


//-------------------------------------------------------------------------------
//    
// ---
BOOL TestShowDlg::OnInitDialog()
{
  CDialog::OnInitDialog();

  //     Bitmap c ID  
  m_slideId = 100;
 
  /*
  //     
  strcpy( m_fileName, "c:\\Example.frw" );
  ReadString( "  *.frw ", m_fileName, 255 );
  */

  /*
  //      
  strcpy( m_fileName, "c:\\Example.rc" );
  ReadString( "  *.rc ", m_fileName, 255 );
  */
  
 /*
  //   
  if ( ksGetCurrentDocument( 1 ) )
  {
    //   , type -   ( 0 -  , 1 -  )
    rGroup = NewGroup( 1 );
      Mtr( 20, 15, 45, 1 ); //    ( 20   OX, 15   OY,   45  )
        LineSeg( -10, 0,   10, 0,  1 );
        LineSeg(  10, 0,   10, 20, 1 );
        LineSeg(  10, 20, -10, 20, 1 );
        LineSeg( -10, 20, -10, 0,  1 );
      DeleteMtr(); //    
    EndGroup(); //    
  }
  else
    MessageT( _T("   \n  /") );  
  */
  return TRUE;
}


//-------------------------------------------------------------------------------
//  
// ---
void TestShowDlg::OnPaint()
{
  CPaintDC dc( this );

  //     
  if ( m_slideId != 0 )
    DrawSlide( ( void* )( long )m_StaticShow.m_hWnd, //  
               m_slideId );                          //      

  /*
  //   Bitmap  
  if ( m_slideId != 0 )
    DrawBitmap( ( void* )( long )m_StaticShow.m_hWnd, //  
                m_slideId );                          //  BMP    
  */

  /*
  //      
  //    .rc    
  if ( m_fileName[0] != '\0' )
    ksDrawSlideFromFileT( ( void* )( long )m_StaticShow.m_hWnd, //  
                          m_fileName );     //   
  */

  /*
  //   
  reference doc = ksGetCurrentDocument( 1 );
  if ( doc )
    ksDrawKompasDocumentByReference( ( void* )( long )m_StaticShow.m_hWnd, //  
                                     doc );                                //   
  */

  /*
  //     
  if ( m_fileName[0] != '\0' )
    ksDrawKompasDocumentT( ( void* )( long )m_StaticShow.m_hWnd, //  
                           m_fileName );     //    
  */

  /*
  //   
  if ( ksGetCurrentDocument( 1 ) )
  {
    ksDrawKompasGroup( ( void* )( long )m_StaticShow.m_hWnd, //  
                       rGroup );                             // 
  }
  */
}


//-------------------------------------------------------------------------------
//    
// ---
void TestShowDialog()
{
  TestShowDlg* dlg = new TestShowDlg();
  if ( dlg )
  {
    EnableTaskAccess( 0 ); //    
    dlg->DoModal();        //  
    EnableTaskAccess( 1 ); //    
    delete dlg;
  }
}

