//==========================================================================; // // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY // KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR // PURPOSE. // // Copyright (c) 1997 - 1998 Microsoft Corporation. All Rights Reserved. // //--------------------------------------------------------------------------; // Document.h: interface for the CDocument class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_DOCUMENT_H__26A093E9_DD1C_11D0_8FFE_00C04FD9189D__INCLUDED_) #define AFX_DOCUMENT_H__26A093E9_DD1C_11D0_8FFE_00C04FD9189D__INCLUDED_ #if _MSC_VER >= 1000 #pragma once #endif // _MSC_VER >= 1000 class CClip { public: CClip() : m_stStart(0), m_stEnd(0) {}; CComBSTR m_FileName; STREAM_TIME m_stStart; STREAM_TIME m_stEnd; BOOL WriteToStream(IStream *pStream); BOOL ReadFromStream(IStream *pStream); BOOL DoSettingsDialog(HWND hwndParent); void InitDialog(HWND); bool CleanUpDialog(HWND, bool); }; class CClipList { public: BOOL Initialize(HWND hwndParent); BOOL WriteToStream(IStream *pStream); BOOL ReadFromStream(IStream *pStream); void ResetContents(void); int NumClips(); int CurSelClipIndex(); CClip * GetClip(int i); BOOL AddClip(int i, CClip **ppClip); void DeleteClip(int i); void UpdateClipView(int i); void SetSize(int, int); private: void InsertCol(int iColNum, TCHAR * pszColHeader, int Width); public: HWND m_hLV; }; class CDocument { public: CDocument() : m_bDirty(false), m_Height(240), m_Width(320), m_PixelDepth(0) {}; BOOL Initialize(HWND hDocWindow); void MarkDirty() { m_bDirty = true; }; bool m_bModified; BOOL WriteToStream(IStream *pStream); BOOL ReadFromStream(IStream *pStream); void ResetContents(void); virtual ~CDocument(); BOOL OpenFile(); BOOL SaveAsFile(bool bShowDialog); BOOL NewClip(); BOOL DeleteClip(); BOOL EditClip(); public: HWND m_hWnd; CClipList m_ClipList; long m_PixelDepth; long m_Width; long m_Height; CComBSTR m_DocumentFileName; CComBSTR m_TargetFileName; CComBSTR m_VideoCodecDisplayName; CComBSTR m_AudioCodecDisplayName; bool m_bDirty; }; #endif // !defined(AFX_DOCUMENT_H__26A093E9_DD1C_11D0_8FFE_00C04FD9189D__INCLUDED_)