Utils::PlainTextEdit Class
class Utils::PlainTextEditKlasa PlainTextEdit pruža kontrolu koja se koristi za uređivanje i prikazivanje običnog teksta. Više...
| Header: | #include <PlainTextEdit> |
Javne vrste
| enum | LineWrapMode { NoWrap, WidgetWidth } |
Svojstva
|
|
Javne funkcije
| PlainTextEdit(QWidget *parent = nullptr) | |
| PlainTextEdit(const QString &text, QWidget *parent = nullptr) | |
| virtual | ~PlainTextEdit() |
| QString | anchorAt(const QPoint &pos) const |
| bool | backgroundVisible() const |
| int | blockCount() const |
| bool | canPaste() const |
| bool | centerOnScroll() const |
| QMenu * | createStandardContextMenu() |
| QMenu * | createStandardContextMenu(const QPoint &position) |
| QTextCharFormat | currentCharFormat() const |
| QTextCursor | cursorForPosition(const QPoint &pos) const |
| QRect | cursorRect() const |
| QRect | cursorRect(const QTextCursor &cursor) const |
| int | cursorWidth() const |
| QTextDocument * | document() const |
| QString | documentTitle() const |
| void | ensureCursorVisible() |
| int | extraSelections() const |
| bool | isReadOnly() const |
| bool | isUndoRedoEnabled() const |
| Utils::PlainTextEdit::LineWrapMode | lineWrapMode() const |
| virtual QVariant | loadResource(int type, const QUrl &name) |
| int | maximumBlockCount() const |
| void | mergeCurrentCharFormat(const QTextCharFormat &modifier) |
| bool | overwriteMode() const |
| QString | placeholderText() const |
| void | setBackgroundVisible(bool visible) |
| void | setCenterOnScroll(bool enabled) |
| void | setCurrentCharFormat(const QTextCharFormat &format) |
| void | setCursorWidth(int width) |
| void | setDocument(QTextDocument *document) |
| void | setDocumentTitle(const QString &title) |
| void | setExtraSelections(const int &selections) |
| void | setLineWrapMode(Utils::PlainTextEdit::LineWrapMode mode) |
| void | setMaximumBlockCount(int maximum) |
| void | setOverwriteMode(bool overwrite) |
| void | setPlaceholderText(const QString &placeholderText) |
| void | setReadOnly(bool ro) |
| void | setTabChangesFocus(bool b) |
| void | setTabStopDistance(qreal distance) |
| void | setTextCursor(const QTextCursor &cursor) |
| void | setTextInteractionFlags(Qt::TextInteractionFlags flags) |
| void | setUndoRedoEnabled(bool enable) |
| void | setWordWrapMode(int policy) |
| bool | tabChangesFocus() const |
| qreal | tabStopDistance() const |
| QTextCursor | textCursor() const |
| Qt::TextInteractionFlags | textInteractionFlags() const |
| QString | toPlainText() const |
| int | wordWrapMode() const |
Javne utičnice
| void | appendHtml(const QString &html) |
| void | appendPlainText(const QString &text) |
| void | centerCursor() |
| void | clear() |
| void | copy() |
| void | cut() |
| void | insertPlainText(const QString &text) |
| void | paste() |
| void | redo() |
| void | selectAll() |
| void | setPlainText(const QString &text) |
| void | undo() |
| void | zoomIn(int range = 1) |
| void | zoomOut(int range = 1) |
Signali
| void | blockCountChanged(int newBlockCount) |
| void | copyAvailable(bool yes) |
| void | cursorPositionChanged() |
| void | modificationChanged(bool changed) |
| void | redoAvailable(bool available) |
| void | selectionChanged() |
| void | textChanged() |
| void | undoAvailable(bool available) |
| void | updateRequest(const QRect &rect, int dy) |
Zaštićene funkcije
| virtual bool | canInsertFromMimeData(const QMimeData *source) const |
| QPointF | contentOffset() const |
| virtual QMimeData * | createMimeDataFromSelection() const |
| int | firstVisibleBlock() const |
| virtual bool | focusNextPrevChild(bool next) override |
| int | getPaintContext() const |
| virtual void | insertFromMimeData(const QMimeData *source) |
| virtual void | keyPressEvent(QKeyEvent *e) override |
| virtual void | keyReleaseEvent(QKeyEvent *e) override |
| virtual void | mouseDoubleClickEvent(QMouseEvent *e) override |
| virtual void | mouseMoveEvent(QMouseEvent *e) override |
| virtual void | mousePressEvent(QMouseEvent *e) override |
| virtual void | mouseReleaseEvent(QMouseEvent *e) override |
| virtual void | paintEvent(QPaintEvent *e) override |
Detaljan opis
PlainTextEdit je napredni preglednik/uređivač koji podržava obični tekst. Optimiziran je za rad s velikim dokumentima i brzu reakciju na korisničke unose.
QPlainText koristi vrlo sličnu tehnologiju i koncepte kao i QTextEdit, ali je optimiziran za rad s običnim tekstom.
PlainTextEdit radi s odlomcima i znakovima. Odlomak je formatirani niz koji se prelama kako bi se uklopio u širinu komponente. Po zadanom, pri čitanju običnog teksta, jedan novi redak označava odlomak. Dokument se sastoji od nultog ili više odlomaka. Odlomci su odvojeni tvrdim prijelomima retka. Svaki znak unutar odlomka ima svoje atribute, na primjer, font i boju.
Oblik pokazivača miša na PlainTextEdit-u je prema zadanim postavkama Qt::IBeamCursor. Može se promijeniti putem svojstva pokazivača viewport().
Korištenje PlainTextEdit-a kao widgeta za prikaz
Tekst se postavlja ili zamjenjuje pomoću metode setPlainText() koja briše postojeći tekst i zamjenjuje ga tekstom proslijeđenim metodi setPlainText().
QTextCursor Tekst se može umetnuti pomoću klase insertPlainText ili pomoću praktičnih funkcija (), appendPlainText() ili paste().
Po zadanom, kontrolnik za unos teksta lomi riječi na razmacima kako bi se uklopio u okvir. Funkcija setLineWrapMode() služi za navođenje vrste prijeloma retka koji želite, WidgetWidth ili NoWrap ako ne želite nikakav prijelom. Ako koristite prijelom riječi prema širini kontrolnika WidgetWidth, možete odrediti hoće li se lomiti na razmacima ili bilo gdje pomoću setWordWrapMode().
Funkcija find() može se koristiti za pronalaženje i odabir zadane niske unutar teksta.
Ako želite ograničiti ukupan broj odlomaka u PlainTextEdit okviru, što je na primjer korisno u pregledniku dnevnika, možete koristiti svojstvo maximumBlockCount. Kombinacija setMaximumBlockCount() i appendPlainText() pretvara PlainTextEdit u učinkovit preglednik za tekst dnevnika. Pomicanje se može smanjiti svojstvom centerOnScroll(), čime se preglednik dnevnika čini još bržim. Tekst se može formatirati na ograničen način, bilo korištenjem isticanja sintakse (vidi dolje), bilo dodavanjem HTML-formatiranog teksta pomoću appendHtml(). Iako PlainTextEdit ne podržava složeno prikazivanje bogatog teksta s tablicama i plovcima, podržava ograničeno formatiranje temeljeno na odlomcima koje vam može zatrebati u pregledniku dnevnika.
Poveznice tipkovnice za samo čitanje
Kada se PlainTextEdit koristi samo za čitanje, prečaci na tipkovnici ograničeni su na navigaciju, a tekst se može odabrati samo mišem:
| Pritisci tipki | Akcija |
|---|---|
| Qt::UpArrow | Pomakne jedan redak gore. |
| Qt::DownArrow | Pomakne jedan redak dolje. |
| Qt::LeftArrow | Pomakne jedan znak ulijevo. |
| Qt::RightArrow | Pomakne jedan znak udesno. |
| Stranica gore | Pomakne jednu (viewport) stranicu gore. |
| Stranica dolje | Pomakne jednu (viewport) stranicu dolje. |
| Početak | Pomiče na početak teksta. |
| Kraj | Pomiče na kraj teksta. |
| Alt+kotačić miša | Pomiče stranicu vodoravno (Kotačić je kotačić miša). |
| Ctrl+Wheel | Povećava tekst. |
| Ctrl+A | Odabire sav tekst. |
Korištenje PlainTextEdit kao uređivača
Sve informacije o korištenju PlainTextEdit kao widgeta za prikaz također se primjenjuju ovdje.
Odabir teksta obrađuje klasa QTextCursor, koja pruža funkcionalnost za stvaranje odabira, dohvaćanje sadržaja teksta ili brisanje odabira. Objekt koji odgovara korisniku vidljivom pokazivaču možete dohvatiti pomoću metode textCursor(). Ako želite postaviti odabir u PlainTextEdit, jednostavno ga stvorite na objektu QTextCursor, a zatim taj pokazivač postavite kao vidljivi pokazivač pomoću metode setCursor()(). Odabir se može kopirati u međuspremnik pomoću metode copy() ili izrezati u međuspremnik pomoću metode cut(). Cijeli se tekst može odabrati pomoću metode selectAll().
PlainTextEdit sadrži objekt QTextDocument koji se može dohvatiti metodom document(). Također možete postaviti vlastiti objekt dokumenta pomoću setDocument(). QTextDocument emitira signal textChanged() ako se tekst promijeni, a također pruža funkciju isModified() koja vraća true ako je tekst izmijenjen od učitavanja ili od posljednjeg poziva setModified s argumentom false. Osim toga, pruža metode za poništavanje (undo) i ponavljanje (redo).
Isticanje sintakse
Baš kao i QTextEdit, PlainTextEdit radi zajedno s QSyntaxHighlighter.
Prilagodba tipkovničkih prečaca
Popis prečaca tipki koji su implementirani za uređivanje:
| Pritisci tipki | Akcija |
|---|---|
| Backspace | Brisanje znakova s lijeve strane kursora. |
| Brisanje | Brisanje briše znak s desne strane kursora. |
| Ctrl+C | Kopiraj odabrani tekst u međuspremnik. |
| Ctrl+Insert | Kopirajte odabrani tekst u međuspremnik. |
| Ctrl+K | Brisanje do kraja retka. |
| Ctrl+V | Umetne tekst iz međuspremnika u uređivač teksta. |
| Shift+Insert | Ulijepava tekst iz međuspremnika u uređivač teksta. |
| Ctrl+X | Brisanje odabranog teksta i kopiranje u međuspremnik. |
| Shift+Delete | Brije odabrani tekst i kopira ga u međuspremnik. |
| Ctrl+Z | Poništava posljednju operaciju. |
| Ctrl+Y | Ponavlja posljednju radnju. |
| Lijevi strelica | Pomakne kurzor za jedan znak ulijevo. |
| Ctrl+Strelica lijevo | Pomakne kursor za jedan riječ ulijevo. |
| Desna strelica | Pomakne kursor za jedan znak udesno. |
| Ctrl+desna strelica | Pomakne kursor za jednu riječ udesno. |
| Strelica gore | Pomakne kursor za jedan redak prema gore. |
| Ctrl+Strelica gore | Pomakne kurzor za jednu riječ prema gore. |
| Strelica dolje | Pomakne kursor za jedan redak dolje. |
| Ctrl+Strelica dolje | Pomakne kurzor za jednu riječ prema dolje. |
| Stranica gore | Pomakne kursor za jednu stranicu gore. |
| PageDown | Pomakne kurzor za jednu stranicu prema dolje. |
| Početak retka | Pomakne kurzor na početak retka. |
| Ctrl+Home | Pomakne kurzor na početak teksta. |
| End | Pomakne kursor na kraj retka. |
| Ctrl+End | Pomakne kursor na kraj teksta. |
| Alt+Wheel | Pomiče stranicu vodoravno (kotačić je kotačić miša). |
| Ctrl+Wheel | Povećava tekst. |
Za odabir (označavanje) teksta držite pritisnutu tipku Shift dok pritiskate neku od tipki za kretanje, na primjer, Shift+desna strelica odabire znak udesno, a Shift+Ctrl+desna strelica odabire riječ udesno itd.
Razlike u odnosu na QTextEdit
PlainTextEdit je tanka klasa, implementirana korištenjem većine tehnologije koja stoji iza QTextEdit i QTextDocument. Njezine prednosti u pogledu performansi nad QTextEdit uglavnom proizlaze iz korištenja drugačijeg i pojednostavljenog rasporeda teksta nazvanog PlainTextDocumentLayout na tekstualnom dokumentu (vidi QTextDocument::setDocumentLayout()). Raspored običnog tekstualnog dokumenta ne podržava tablice niti ugrađene okvire te zamjenjuje pikselski precizno izračunavanje visine pristupom listanja redak po redak odnosno odlomak po odlomak. To omogućuje rad s znatno većim dokumentima, a istovremeno omogućuje promjenu veličine uređivača s omogućenim prijelomom retka u stvarnom vremenu. Također omogućuje brz preglednik logova (vidi setMaximumBlockCount()).
Pogledajte također QTextDocument, QTextCursor, Primjer Syntax Highlightera i Obradu bogatog teksta.
Dokumentacija o vrsti člana
enum PlainTextEdit::LineWrapMode
Drži način omotavanja linije.
| Konstantno | Vrijednost |
|---|---|
Utils::PlainTextEdit::NoWrap | 0 |
Utils::PlainTextEdit::WidgetWidth | 1 |
Dokumentacija svojstva
backgroundVisible : bool
Ova svojina određuje je li pozadina palete vidljiva izvan područja dokumenta.
Ako je postavljeno na true, uređivač običnog teksta prikazuje pozadinu palete na području prikaza koje nije pokriveno tekstualnim dokumentom. Inače, ako je postavljeno na false, neće. Ta značajka omogućuje korisniku da vizualno razlikuje područje dokumenta, obojeno osnovnom bojom palete, od praznog područja koje nije pokriveno nijednim dokumentom.
Zadano je false.
Pristup funkcijama:
| bool | backgroundVisible() const |
| void | setBackgroundVisible(bool visible) |
[read-only] blockCount : const int
Ova svojstva sadrži broj tekstualnih blokova u dokumentu.
Po zadanom, u praznom dokumentu, ova svojstva sadrži vrijednost 1.
Funkcije pristupa:
| int | blockCount() const |
centerOnScroll : bool
Ova svojstva određuje treba li pokazivač biti centriran na zaslonu.
Ako je postavljeno na true, uređivač običnog teksta pomiče dokument okomito kako bi kursor bio vidljiv u središtu vidljivog područja. To također omogućuje da se uređivač pomakne ispod kraja dokumenta. Inače, ako je postavljeno na false, uređivač običnog teksta pomiče se najmanje moguće kako bi kursor bio vidljiv. Isti se algoritam primjenjuje na svaki novi redak dodan putem appendPlainText().
Zadano je false.
Pristup funkcijama:
| bool | centerOnScroll() const |
| void | setCenterOnScroll(bool enabled) |
Vidi također centerCursor() i ensureCursorVisible().
cursorWidth : int
Ova svojstva određuje širinu kursora u pikselsima. Zadana vrijednost je 1.
Pristup funkcijama:
| int | cursorWidth() const |
| void | setCursorWidth(int width) |
documentTitle : QString
Ova svojina sadrži naslov dokumenta analiziranog iz teksta.
Po zadanom, ova svojina sadrži prazan niz.
Pristup funkcijama:
| QString | documentTitle() const |
| void | setDocumentTitle(const QString &title) |
lineWrapMode : LineWrapMode
Ova svojstva određuje način prijeloma retka
Zadani način rada je WidgetWidth, koji omogućuje prelom riječi na desnom rubu polja za unos teksta. Prelom se događa na prazninama, pri čemu se cijele riječi zadržavaju netaknute. Ako želite prelom unutar riječi, upotrijebite setWordWrapMode().
Pristup funkcijama:
| Utils::PlainTextEdit::LineWrapMode | lineWrapMode() const |
| void | setLineWrapMode(Utils::PlainTextEdit::LineWrapMode mode) |
maximumBlockCount : int
Ova svojina sadrži ograničenje za blokove u dokumentu.
Određuje maksimalan broj blokova koje dokument može imati. Ako u dokumentu ima više blokova nego što je navedeno ovom svojstvom, blokovi se uklanjaju s početka dokumenta.
Negativna ili nulta vrijednost određuje da dokument može sadržavati neograničen broj blokova.
Zadana vrijednost je 0.
Imajte na umu da će postavljanje ove svojine odmah primijeniti ograničenje na sadržaj dokumenta. Postavljanje ove svojine također onemogućuje povijest poništavanja i ponavljanja.
Funkcije pristupa:
| int | maximumBlockCount() const |
| void | setMaximumBlockCount(int maximum) |
overwriteMode : bool
Ova svojstva određuje hoće li tekst koji korisnik unese prebrisati postojeći tekst
Kao i kod mnogih uređivača teksta, widget za uređivanje običnog teksta može se konfigurirati da umeće ili prepiše postojeći tekst novim tekstom koji je unio korisnik.
Ako je ova svojstva postavljena na true, postojeći se tekst prepiše novim tekstom, znak po znak; inače se tekst umeće na položaj kursora, istiskujući postojeći tekst.
Po zadanome, ova je svojstvo false (novi tekst ne prepiše postojeći).
Pristup funkcijama:
| bool | overwriteMode() const |
| void | setOverwriteMode(bool overwrite) |
placeholderText : QString
Ova svojstva sadrži tekst mjestačkog polja u uređivaču
documentPostavljanjem ove svojstva uređivač prikazuje zasivljeni tekst mjesta držača sve dok je polje za unos prazno.
Po zadanom, ova svojstva sadrži prazan niz.
Funkcije pristupa:
| QString | placeholderText() const |
| void | setPlaceholderText(const QString &placeholderText) |
Vidi također document().
plainText : QString
Ova svojstva dohvaća i postavlja sadržaj jednostavnog tekstualnog uređivača. Prethodni sadržaj se uklanja, a povijest poništavanja/ponovnog izvođenja se resetira kada se ovo svojstvo postavi. currentCharFormat() se također resetira, osim ako textCursor() već nije na početku dokumenta.
Po zadanom, za uređivač bez sadržaja, ova svojstva sadrži prazan niz.
Funkcije pristupa:
| QString | toPlainText() const |
| void | setPlainText(const QString &text) |
Signal obavještavača:
| void | textChanged() |
readOnly : bool
Ova svojstva određuje je li polje za unos teksta samo za čitanje
U tekstualnom uređivaču samo za čitanje korisnik može samo pregledavati tekst i odabrati ga; izmjena teksta nije moguća.
Zadana vrijednost ove svojstva je false.
Pristupne funkcije:
| bool | isReadOnly() const |
| void | setReadOnly(bool ro) |
tabChangesFocus : bool
Ova svojstva određuje hoće li Tab promijeniti fokus ili biti prihvaćeno kao unos
U nekim slučajevima uređivanje teksta ne bi trebalo dopustiti korisniku umetanje tabulatora ili promjenu uvlačenja pomoću tipke Tab, jer to prekida lanac fokusa. Zadano je false.
Pristup funkcijama:
| bool | tabChangesFocus() const |
| void | setTabChangesFocus(bool b) |
tabStopDistance : qreal
Ova svojina sadrži udaljenost zaustavljanja kartice u pikselsima
Po zadanom, ova svojstva sadrži vrijednost od 80 piksela.
Nemojte postavljati vrijednost manju od širine tab-stope ( horizontalAdvance()) znaka QChar::VisualTabCharacter, inače će se znak tab-stope iscrtati nepotpuno.
Pristup funkcijama:
| qreal | tabStopDistance() const |
| void | setTabStopDistance(qreal distance) |
Vidi također QTextOption::ShowTabsAndSpaces i QTextDocument::defaultTextOption.
textInteractionFlags : Qt::TextInteractionFlags
Određuje kako etiketa treba komunicirati s korisničkim unosom ako prikazuje tekst.
Ako zastavice sadrže bilo koji od parametara Qt::LinksAccessibleByKeyboard ili Qt::TextSelectableByKeyboard, pravilo fokusa se također automatski postavlja na Qt::ClickFocus.
Zadana vrijednost ovisi o tome je li PlainTextEdit samo za čitanje ili uređiv.
Funkcije pristupa:
| Qt::TextInteractionFlags | textInteractionFlags() const |
| void | setTextInteractionFlags(Qt::TextInteractionFlags flags) |
undoRedoEnabled : bool
Ova svojstva određuje jesu li poništavanje i ponavljanje omogućeni
Korisnici mogu poništiti ili ponoviti radnje samo ako je ova svojina postavljena na true i ako postoji radnja koja se može poništiti (ili ponoviti).
Po zadanome, ova svojstva imaju vrijednost true.
Funkcije pristupa:
| bool | isUndoRedoEnabled() const |
| void | setUndoRedoEnabled(bool enable) |
wordWrapMode : QTextOption::WrapMode
Ova svojina sadrži način na koji će se tekst obmotavati riječima u PlainTextEdit
Po zadanome, ova je svojina postavljena na QTextOption::WrapAtWordBoundaryOrAnywhere.
Pristup funkcijama:
| int | wordWrapMode() const |
| void | setWordWrapMode(int policy) |
Vidi također QTextOption::WrapMode.
Dokumentacija funkcija člana
[explicit] PlainTextEdit::PlainTextEdit(QWidget *parent = nullptr)
Konstruira prazan PlainTextEdit s roditeljem parent.
[explicit] PlainTextEdit::PlainTextEdit(const QString &text, QWidget *parent = nullptr)
Konstruira PlainTextEdit s roditeljem parent. Tekstualni uređivač će prikazati obični tekst text.
[virtual noexcept] PlainTextEdit::~PlainTextEdit()
Destruktor
QString PlainTextEdit::anchorAt(const QPoint &pos) const
Vraća referencu sidra na položaju pos, ili praznu nulu ako sidro na tom mjestu ne postoji.
[slot] void PlainTextEdit::appendHtml(const QString &html)
Dodaje novi odlomak s html na kraj uređivanja teksta.
[slot] void PlainTextEdit::appendPlainText(const QString &text)
Dodaje novi odlomak s text na kraj uređivanja teksta.
Vidi također appendHtml().
[signal] void PlainTextEdit::blockCountChanged(int newBlockCount)
Ovaj signal se emitira kad god se promijeni broj blokova. Novi broj blokova prosljeđuje se u newBlockCount.
[virtual protected] bool PlainTextEdit::canInsertFromMimeData(const QMimeData *source) const
Ova funkcija vraća true ako se sadržaj MIME objekta podataka, specificiran pomoću source, može dešifrirati i umetnuti u dokument. Poziva se, na primjer, tijekom povlačenja mišem kada miš uđe u ovaj widget i potrebno je utvrditi je li moguće prihvatiti povlačenje.
bool PlainTextEdit::canPaste() const
Vraća istinitu vrijednost ako se tekst može zalijepiti iz međuspremnika u polje za unos teksta.
[slot] void PlainTextEdit::centerCursor()
Pomakne dokument kako bi se kursor centrirao okomito.
Vidi također ensureCursorVisible() i centerOnScroll.
[slot] void PlainTextEdit::clear()
Brisanje cijelog teksta u uređivaču teksta.
Napomene:
- Povijest poništavanja/ponavljanja se također briše.
- currentCharFormat() se resetira, osim ako textCursor() već nije na početku dokumenta.
Vidi također cut() i setPlainText().
[protected] QPointF PlainTextEdit::contentOffset() const
Vraća podrijetlo sadržaja u koordinatama vidnog polja.
Polazište sadržaja običnog tekstualnog uređivača uvijek je gornji lijevi kut prvog vidljivog tekstualnog bloka. Pomak sadržaja razlikuje se od (0,0) kada je tekst pomaknut vodoravno, ili kada je prvi vidljivi blok djelomično pomaknut s ekrana, tj. vidljivi tekst ne počinje prvim retkom prvog vidljivog bloka, ili kada je prvi vidljivi blok prvi blok uopće i uređivač prikazuje marginu.
Vidi također firstVisibleBlock(), QAbstractScrollArea::horizontalScrollBar(), i QAbstractScrollArea::verticalScrollBar().
[slot] void PlainTextEdit::copy()
Kopira bilo koji odabrani tekst u međuspremnik.
Vidi također copyAvailable().
[signal] void PlainTextEdit::copyAvailable(bool yes)
Ovaj signal se emitira kada je tekst odabran ili deaktiviran u uređivaču teksta.
Kada je tekst odabran, ovaj signal će biti emitiran s yes postavljenim na true. Ako tekst nije odabran ili je odabrani tekst deaktiviran, ovaj signal se emitira s yes postavljenim na false.
Ako je yes true , tada se copy() može koristiti za kopiranje odabira u međuspremnik. Ako je yes false , tada copy() ne radi ništa.
Vidi također selectionChanged().
[virtual protected] QMimeData *PlainTextEdit::createMimeDataFromSelection() const
Ova funkcija vraća novi MIME objekt podataka koji predstavlja sadržaj trenutnog odabira u tekstualnom uređivaču. Poziva se kada je potrebno enkapsulirati odabir u novi QMimeData objekt; na primjer, kada se pokreće operacija povlačenja i ispuštanja ili kada se podaci kopiraju u međuspremnik.
QMimeData Ako ponovno implementirate ovu funkciju, imajte na umu da vlasništvo nad vraćenim objektom MIME podataka prelazi na pozivatelja. Odabir se može dohvatiti pomoću funkcije textCursor().
QMenu *PlainTextEdit::createStandardContextMenu()
Ova funkcija stvara standardni kontekstni izbornik koji se prikazuje kada korisnik desnom tipkom miša klikne na uređivač teksta. Poziva se iz zadane rukovateljske funkcije contextMenuEvent(). Vlasništvo nad skočnim izbornikom prenosi se na pozivatelja.
Preporučujemo da umjesto toga koristite verziju createStandardContextMenu(QPoint), koja omogućuje radnje osjetljive na mjesto na kojem je korisnik kliknuo.
QMenu *PlainTextEdit::createStandardContextMenu(const QPoint &position)
Stvara standardni kontekstni izbornik koji se prikazuje kada korisnik klikne desnom tipkom miša na uređivač teksta. Poziva se iz zadane rukovateljske funkcije contextMenuEvent() i prima position u dokumentnim koordinatama mjesta na kojem je kliknut miš. To omogućuje akcije osjetljive na položaj na kojem je korisnik kliknuo. Vlasništvo nad skočnim izbornikom prenosi se na pozivatelja.
QTextCharFormat PlainTextEdit::currentCharFormat() const
Vraća format karaktera koji se koristi pri umetanju novog teksta.
Vidi također setCurrentCharFormat().
QTextCursor PlainTextEdit::cursorForPosition(const QPoint &pos) const
Vraća QTextCursor na poziciji pos (u koordinatama vidnog polja).
[signal] void PlainTextEdit::cursorPositionChanged()
Ovaj se signal emitira kad god se promijeni položaj pokazivača.
[invokable] QRect PlainTextEdit::cursorRect() const
Vraća pravokutnik (u koordinatama vidnog polja) koji obuhvaća pokazivač tekstnog uređivača.
Napomena: Ovu funkciju je moguće pozvati putem sustava meta-objekata i iz QML-a. Pogledajte Q_INVOKABLE.
QRect PlainTextEdit::cursorRect(const QTextCursor &cursor) const
Vraća pravokutnik (u koordinatama vidnog polja) koji uključuje cursor.
[slot] void PlainTextEdit::cut()
Kopira odabrani tekst u međuspremnik i briše ga iz uređivača teksta.
Ako nema odabranog teksta, ništa se ne događa.
Vidi također copy() i paste().
QTextDocument *PlainTextEdit::document() const
Vraća pokazivač na temeljni dokument.
Vidi također setDocument().
void PlainTextEdit::ensureCursorVisible()
Osigurava da je pokazivač vidljiv pomicanjem okvira za unos teksta ako je potrebno.
Vidi također centerCursor() i centerOnScroll.
int PlainTextEdit::extraSelections() const
Vraća prethodno postavljene dodatne opcije.
Vidi također setExtraSelections().
[protected] int PlainTextEdit::firstVisibleBlock() const
Vraća prvi vidljivi blok.
[override virtual protected] bool PlainTextEdit::focusNextPrevChild(bool next)
[protected] int PlainTextEdit::getPaintContext() const
Vraća kontekst boje za viewport(), koristan samo pri ponovnoj implementaciji paintEvent().
[virtual protected] void PlainTextEdit::insertFromMimeData(const QMimeData *source)
Ova funkcija umeće sadržaj MIME objekta podataka, definiranog na adresi source, u polje za unos teksta na trenutnoj poziciji kursora. Poziva se kad god se tekst umeće kao rezultat operacije lijepljenja iz međuspremnika ili kad polje za unos teksta prihvati podatke iz operacije povlačenja i ispuštaња.
[slot] void PlainTextEdit::insertPlainText(const QString &text)
Praktični slot koji umeće e text u na trenutnu poziciju kursora.
To je ekvivalentno:
edit->textCursor().insertText(text);
[override virtual protected] void PlainTextEdit::keyPressEvent(QKeyEvent *e)
[override virtual protected] void PlainTextEdit::keyReleaseEvent(QKeyEvent *e)
[virtual] QVariant PlainTextEdit::loadResource(int type, const QUrl &name)
Učitava resurs naveden pomoću zadatih type i name.
Ova funkcija je proširenje funkcije QTextDocument::loadResource().
Vidi također QTextDocument::loadResource().
void PlainTextEdit::mergeCurrentCharFormat(const QTextCharFormat &modifier)
Spaja svojstva navedena u modifier u trenutni format karaktera pozivanjem QTextCursor::mergeCharFormat na kursoru uređivača. Ako uređivač ima odabir, svojstva iz modifier primjenjuju se izravno na odabir.
Vidi također QTextCursor::mergeCharFormat().
[signal] void PlainTextEdit::modificationChanged(bool changed)
Ovaj signal se emitira kad god se sadržaj dokumenta promijeni na način koji utječe na stanje izmjene. Ako je changed true , dokument je izmijenjen; inače je false.
Na primjer, pozivanje setModified(false) na dokumentu i zatim umetanje teksta uzrokuje emitiranje signala. Ako poništite tu operaciju, čime se dokument vraća u izvorno neizmijenjeno stanje, signal će se ponovno emitirati.
[override virtual protected] void PlainTextEdit::mouseDoubleClickEvent(QMouseEvent *e)
[override virtual protected] void PlainTextEdit::mouseMoveEvent(QMouseEvent *e)
[override virtual protected] void PlainTextEdit::mousePressEvent(QMouseEvent *e)
[override virtual protected] void PlainTextEdit::mouseReleaseEvent(QMouseEvent *e)
[override virtual protected] void PlainTextEdit::paintEvent(QPaintEvent *e)
[slot] void PlainTextEdit::paste()
Ulijepi tekst iz međuspremnika u polje za unos teksta na trenutnoj poziciji kursora.
Ako u međuspremniku nema teksta, ništa se ne događa.
Da biste promijenili ponašanje ove funkcije, tj. da biste izmijenili što PlainTextEdit može zalijepiti i kako se to lijepi, reimplementirajte virtualne funkcije canInsertFromMimeData() i insertFromMimeData().
[slot] void PlainTextEdit::redo()
Ponavlja posljednju operaciju.
Ako nema operacije za ponovno izvođenje, tj. nema koraka ponavljanja u povijesti poništavanja/ponavljanja, ništa se ne događa.
Vidi također undo().
[signal] void PlainTextEdit::redoAvailable(bool available)
Ovaj signal se emitira kad god operacije redo postanu dostupne (available je true) ili nedostupne (available je false).
[slot] void PlainTextEdit::selectAll()
Odabire sav tekst.
Vidi također copy(), cut(), i textCursor().
[signal] void PlainTextEdit::selectionChanged()
Ovaj signal se emitira kad god se odabir promijeni.
Vidi također copyAvailable().
void PlainTextEdit::setCurrentCharFormat(const QTextCharFormat &format)
Postavlja format znakova koji će se koristiti pri umetanju novog teksta u format pozivom QTextCursor::setCharFormat() na kursoru uređivača. Ako uređivač ima odabir, format znakova se izravno primjenjuje na odabir.
Vidi također currentCharFormat().
void PlainTextEdit::setDocument(QTextDocument *document)
Postavlja document kao novi dokument uređivača teksta.
Roditeljski QObject pruženog dokumenta ostaje vlasnik objekta. Ako je trenutni dokument dijete tekstnog uređivača, on se briše.
Dokument mora imati raspored stranice koji nasljeđuje PlainTextDocumentLayout (vidi QTextDocument::setDocumentLayout()).
Vidi također document().
void PlainTextEdit::setExtraSelections(const int &selections)
Ova funkcija omogućuje privremeno označavanje određenih područja u dokumentu danom bojom, specificiranom kao selections. To može biti korisno, na primjer, u uređivaču programa za označavanje cijelog retka teksta danom pozadinskom bojom kako bi se označila prisutnost prekidne točke.
Vidi također QTextEdit::ExtraSelection i extraSelections().
[slot] void PlainTextEdit::setPlainText(const QString &text)
Mijenja tekst polja za uređivanje na niz text. Svaki prethodni tekst se uklanja.
text se tumači kao običan tekst.
Napomene:
- Povijest poništavanja/ponavljanja se također briše.
- currentCharFormat() se resetira, osim ako textCursor() već nije na početku dokumenta.
Napomena: Metoda zapostavljanje vrijednosti svojstva plainText.
Vidi također toPlainText().
void PlainTextEdit::setTextCursor(const QTextCursor &cursor)
Postavlja vidljivu cursor u.
Vidi također textCursor().
[signal] void PlainTextEdit::textChanged()
Ovaj signal se emitira kad god se sadržaj dokumenta promijeni; na primjer, kad se tekst umetne ili izbriše, ili kad se primijeni formatiranje.
Napomena: signalNotifier za svojstvo plainText.
QTextCursor PlainTextEdit::textCursor() const
Vraća kopiju QTextCursor a koja predstavlja trenutno vidljivi pokazivač. Imajte na umu da promjene na vraćenom pokazivaču ne utječu na pokazivač PlainTextEdit a; upotrijebite setTextCursor() za ažuriranje vidljivog pokazivača.
Vidi također setTextCursor().
QString PlainTextEdit::toPlainText() const
Vraća tekst polja za unos teksta kao obični tekst.
Napomena: Getter funkcija za svojstvo plainText.
Vidi također PlainTextEdit::setPlainText().
[slot] void PlainTextEdit::undo()
Poništava posljednju operaciju.
Ako nema operacije za poništavanje, tj. nema koraka poništavanja u povijesti poništavanja/ponovnog izvođenja, ništa se ne događa.
Vidi također redo().
[signal] void PlainTextEdit::undoAvailable(bool available)
Ovaj signal se emitira kad god su operacije poništavanja dostupne (available je true) ili nedostupne (available je false).
[signal] void PlainTextEdit::updateRequest(const QRect &rect, int dy)
Ovaj signal se emitira kada tekstualni dokument treba ažuriranje navedenog rect. Ako je tekst pomaknut, rect pokriva cijelo područje prikaza. Ako je tekst pomaknut vertikalno, dy prenosi broj piksela za koje je prikaz pomaknut.
Svrha signala je podržati dodatne widgete u podklasama uređivača običnog teksta koji npr. prikazuju brojeve redaka, prekide ili druge dodatne informacije.
[slot] void PlainTextEdit::zoomIn(int range = 1)
Zumira tekst tako da osnovnu veličinu fonta povećava za range točaka i preračunava sve veličine fonta na novu veličinu. Ovo ne mijenja veličinu nijedne slike.
Vidi također zoomOut().
[slot] void PlainTextEdit::zoomOut(int range = 1)
Odzoomira tekst smanjujući osnovnu veličinu fonta za range točaka i preračunavajući sve veličine fonta na novu vrijednost. Ovo ne mijenja veličinu nijedne slike.
Vidi također zoomIn().
Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.