4.4.2014

foto Petr Bravenec

Petr Bravenec
Twitter: @BravenecPetr
+420 777 566 384
petr.bravenec@hobrasoft.cz

Knihovna Qt má vestavený editor html textu - třídu QTextEdit. Potíž je v tom, že editor nemá jakékoliv ovládací prvky, kterými by se dal text v editoru formátovat. Proto nám náš občasný firemní kolega Jiří Procházka vyrobil jednoduchý editor, třídu MRichTextEdit, abychom měli co použít v aplikaci Deko the CRM.

Editor je volně k dispozici (kromě ikonek, zde se Jiří spoléhá na podporu prostředí), ke stažení je zde:
https://github.com/Anchakor/MRichTextEditor

Základní dovednosti editoru

  • Zpracovává html nebo prostý text
  • Undo, Redo
  • Cut, copy a paste
  • Html odkazy
  • Standardní html formáty (h1, h2...)
  • Formátování textu: tučný, skloněný, podtržený, velikost
  • Nečíslované nebo číslované seznamy
  • Barva pozadí textu
  • Obrázky vložené do html dokumentu

Další svobodný oftware pro Qt

Použití

Použití je jednoduché, obrázky byly vytvořené pomocí pár řádků v C++ aplikaci:

QDialog *dialog = new QDialog(this);
MRichTextEdit *rte = new MRichTextEdit(dialog);
QGridLayout *gl = new QGridLayout(dialog);
gl->addWidget(rte,0,0,1,1);
dialog->setWindowTitle(tr("Rich text editor"));
dialog->setMinimumWidth (400);
dialog->setMinimumHeight(400);
dialog->show();

Editor akceptuje prostý text nebo html:

  • void setText(const QString& text) - automaticky rozezná jednoduchý text nebo html

Text vrací v několika různých formátech:

  • QString toPlainText() - vrací prostý text, bez html formátování
  • QString toHtml() - vrací kompletní html dokument
  • QTextDocument *document() - vrací Qt třídu QTextDocument

Ukázky

Hobrasoft s.r.o. | Kontakt