mirror of
https://github.com/debauchee/barrier.git
synced 2024-12-25 12:06:26 +03:00
f15c9df85b
clipboard owner support (MS windows done, X windows partial) added key transfer on ms windows mutex fixes in CClient (had race conditions) faster debug output in ms windows changed temporary screen name to "secondary" network fixes on ms windows (poll returned wrong result) fixed transparent cursor on ms windows
50 lines
1.0 KiB
C++
50 lines
1.0 KiB
C++
#ifndef CCLIPBOARD_H
|
|
#define CCLIPBOARD_H
|
|
|
|
//
|
|
// CClipboard -- stores clipboard data in a memory buffer
|
|
//
|
|
|
|
#include "IClipboard.h"
|
|
#include "CString.h"
|
|
|
|
class CClipboard : public IClipboard {
|
|
public:
|
|
CClipboard();
|
|
virtual ~CClipboard();
|
|
|
|
// manipulators
|
|
|
|
// unmarshall clipboard data
|
|
void unmarshall(const CString& data);
|
|
|
|
// accessors
|
|
|
|
// marshall clipboard data
|
|
CString marshall() const;
|
|
|
|
// IClipboard overrides
|
|
virtual bool open();
|
|
virtual void close();
|
|
virtual void add(EFormat, const CString& data);
|
|
virtual bool has(EFormat) const;
|
|
virtual CString get(EFormat) const;
|
|
|
|
// accessors
|
|
|
|
// transfer all the data in one clipboard to another. the
|
|
// clipboards can be of any concrete clipboard type (and
|
|
// they don't have to be the same type).
|
|
static void copy(IClipboard* dst, const IClipboard* src);
|
|
|
|
private:
|
|
UInt32 readUInt32(const char*) const;
|
|
void writeUInt32(CString*, UInt32) const;
|
|
|
|
private:
|
|
bool m_added[kNumFormats];
|
|
CString m_data[kNumFormats];
|
|
};
|
|
|
|
#endif
|