82 lines
1.7 KiB
C++
82 lines
1.7 KiB
C++
/* Copyright (c) Microsoft Corporation.
|
|
Licensed under the MIT License. */
|
|
|
|
/* Copyright (c) Microsoft Corporation.
|
|
Licensed under the MIT License. */
|
|
|
|
/***************************************************************************
|
|
Author: ShonK
|
|
Project: Kauai
|
|
Reviewed:
|
|
Copyright (c) Microsoft Corporation
|
|
|
|
Clipboard object declarations.
|
|
|
|
***************************************************************************/
|
|
#ifndef CLIP_H
|
|
#define CLIP_H
|
|
|
|
|
|
/***************************************************************************
|
|
Clipboard object.
|
|
***************************************************************************/
|
|
typedef class CLIP *PCLIP;
|
|
#define CLIP_PAR BASE
|
|
#define kclsCLIP 'CLIP'
|
|
class CLIP : public CLIP_PAR
|
|
{
|
|
RTCLASS_DEC
|
|
ASSERT
|
|
MARKMEM
|
|
|
|
protected:
|
|
PDOCB _pdocb;
|
|
|
|
bool _fDocCurrent: 1;
|
|
bool _fExporting: 1;
|
|
bool _fImporting: 1;
|
|
bool _fDelayImport: 1;
|
|
|
|
HN _hnExport;
|
|
long _clfmExport;
|
|
long _clfmImport;
|
|
|
|
void _EnsureDoc();
|
|
void _ExportCur(void);
|
|
void _ImportCur(void);
|
|
bool CLIP::_FImportFormat(long clfm, void *pv = pvNil, long cb = 0,
|
|
PDOCB *ppdocb = pvNil, bool *pfDelay = pvNil);
|
|
|
|
public:
|
|
CLIP(void);
|
|
|
|
bool FDocIsClip(PDOCB pdocb);
|
|
void Show(void);
|
|
|
|
void Set(PDOCB pdocb = pvNil, bool fExport = fTrue);
|
|
bool FGetFormat(long cls, PDOCB *pdocb = pvNil);
|
|
|
|
bool FInitExport(void);
|
|
void *PvExport(long cb, long clfm);
|
|
void EndExport(void);
|
|
|
|
void Import(void);
|
|
};
|
|
|
|
|
|
extern PCLIP vpclip;
|
|
|
|
const long clfmNil = 0;
|
|
//REVIEW shonk: Mac unicode
|
|
const long kclfmUniText = MacWin('WTXT', CF_UNICODETEXT);
|
|
const long kclfmSbText = MacWin('TEXT', CF_TEXT);
|
|
|
|
#ifdef UNICODE
|
|
const long kclfmText = kclfmUniText;
|
|
#else //!UNICODE
|
|
const long kclfmText = kclfmSbText;
|
|
#endif //!UNICODE
|
|
|
|
#endif //!CLIP_H
|
|
|