adapt style function to work with PlainTextEdit

This commit is contained in:
Giovanni JOSSERAND
2025-06-20 22:18:33 +02:00
parent fe5623b804
commit b9aa141763
3 changed files with 160 additions and 37 deletions
+16 -15
View File
@@ -8,6 +8,7 @@
#include <QTimer>
#include <QTextEdit>
#include <QColorDialog>
#include <QPlainTextEdit>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
@@ -216,13 +217,13 @@ void MainWindow::on_actionEditCut_triggered()
void MainWindow::setBold(){
QWidget *focused = QApplication::focusWidget();
QTextEdit* textEdit = qobject_cast<QTextEdit*>(focused);
QPlainTextEdit* plainTextEdit = qobject_cast<QPlainTextEdit*>(focused);
if (textEdit) {
QTextCursor cursor = textEdit->textCursor();
if (plainTextEdit) {
QTextCursor cursor = plainTextEdit->textCursor();
if (cursor.hasSelection()) {
QTextCharFormat format;
QFont font = textEdit->currentFont();
QFont font = plainTextEdit->currentCharFormat().font();
font.setBold(!font.bold());
format.setFont(font);
cursor.mergeCharFormat(format);
@@ -239,13 +240,13 @@ void MainWindow::on_actionBold_triggered()
void MainWindow::setItalic(){
QWidget *focused = QApplication::focusWidget();
QTextEdit* textEdit = qobject_cast<QTextEdit*>(focused);
QPlainTextEdit* plainTextEdit = qobject_cast<QPlainTextEdit*>(focused);
if (textEdit) {
QTextCursor cursor = textEdit->textCursor();
if (plainTextEdit) {
QTextCursor cursor = plainTextEdit->textCursor();
if (cursor.hasSelection()) {
QTextCharFormat format;
QFont font = textEdit->currentFont();
QFont font = plainTextEdit->currentCharFormat().font();
font.setItalic(!font.italic());
format.setFont(font);
cursor.mergeCharFormat(format);
@@ -261,13 +262,13 @@ void MainWindow::on_actionItalic_triggered()
void MainWindow::setUnderline(){
QWidget *focused = QApplication::focusWidget();
QTextEdit* textEdit = qobject_cast<QTextEdit*>(focused);
QPlainTextEdit* plainTextEdit = qobject_cast<QPlainTextEdit*>(focused);
if (textEdit) {
QTextCursor cursor = textEdit->textCursor();
if (plainTextEdit) {
QTextCursor cursor = plainTextEdit->textCursor();
if (cursor.hasSelection()) {
QTextCharFormat format;
QFont font = textEdit->currentFont();
QFont font = plainTextEdit->currentCharFormat().font();
font.setUnderline(!font.underline());
format.setFont(font);
cursor.mergeCharFormat(format);
@@ -284,11 +285,11 @@ void MainWindow::on_actionUnderline_triggered()
void MainWindow::setColor(){
QWidget *focused = QApplication::focusWidget();
QTextEdit* textEdit = qobject_cast<QTextEdit*>(focused);
QPlainTextEdit* plainTextEdit = qobject_cast<QPlainTextEdit*>(focused);
if (textEdit) {
if (plainTextEdit) {
QColor color = QColorDialog::getColor(Qt::black, this, "Choisir une couleur");
QTextCursor cursor = textEdit->textCursor();
QTextCursor cursor = plainTextEdit->textCursor();
if (cursor.hasSelection()) {
if (color.isValid()) {
QTextCharFormat format;