nodeguy/src/lib/QtGui/QClipboard.ts
Atul R 22b28f8cd4
Adds pixmap support to clipboard (#445)
* adds pixmap setters and getters to qclipboard

* upgrade deps

* Adds  inlinestylesheet fix on objectname test
2020-03-14 19:29:26 +01:00

56 lines
1.4 KiB
TypeScript

import { Component, NativeElement } from '../core/Component';
import { checkIfNativeElement } from '../utils/helpers';
import { QPixmap } from './QPixmap';
/**
> The QClipboard class provides access to the window system clipboard.
* **This class is a JS wrapper around Qt's [QClipboard class](https://doc.qt.io/qt-5/QClipboard.html)**
### Example
```javascript
const {
QClipboard,
QClipboardMode,
QApplication
} = require("@nodegui/nodegui");
const clipboard = QApplication.clipboard();
const text = clipboard.text(QClipboardMode.Clipboard);
```
*/
export class QClipboard extends Component {
native: NativeElement;
constructor(native: NativeElement) {
super();
if (checkIfNativeElement(native)) {
this.native = native;
} else {
throw new Error('QClipboard cannot be initialised this way. Use QApplication::clipboard()');
}
}
clear(mode: QClipboardMode): void {
this.native.clear(mode);
}
setText(text: string, mode: QClipboardMode): void {
this.native.setText(text, mode);
}
text(mode: QClipboardMode): string {
return this.native.text(mode);
}
setPixmap(pixmap: QPixmap, mode: QClipboardMode): void {
this.native.setPixmap(pixmap.native, mode);
}
pixmap(mode: QClipboardMode): QPixmap {
return new QPixmap(this.native.pixmap(mode));
}
}
export enum QClipboardMode {
Clipboard,
Selection,
FindBuffer,
}