From 0b4f2a172c58ae51256d7ff9092dfc0575ef20aa Mon Sep 17 00:00:00 2001 From: Giovanni JOSSERAND Date: Fri, 20 Jun 2025 22:40:18 +0200 Subject: [PATCH] add of overline function --- data.qrc | 1 + data/images/overline.png | Bin 0 -> 4815 bytes mainwindow.cpp | 20 ++++++++++++++++++ mainwindow.h | 3 +++ mainwindow.ui | 44 +++++++++++++++++++++++++-------------- 5 files changed, 52 insertions(+), 16 deletions(-) create mode 100644 data/images/overline.png diff --git a/data.qrc b/data.qrc index e712d32..9a9c3b4 100644 --- a/data.qrc +++ b/data.qrc @@ -20,5 +20,6 @@ data/images/underline.png data/images/add.png data/images/font-color.png + data/images/overline.png diff --git a/data/images/overline.png b/data/images/overline.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bc7680a472041c46ae1826dea91f2ccdbac64d GIT binary patch literal 4815 zcmeHKdr(tX8V^2r3W`KQ%Q_*T2y&B~cXB0AAOup0vJfj+biBE_fdF}!Tu7iweNZcC zQSgNdL&X>M0ir^6#HB(26}N6zSA3(WW!3VkC`H|}CjkMco!N0_`ya{N+7;tA=E_++>J1cl&CAc+a%HoI^)JW0kwMtbgP9ZXM zI0ZMUlq8brwmSMVmwL*iH|^y4?PRq8y4zTS>sDDJD7|K%ET%9EO%ikI^i9lr3EBkGaM(%q`hMK`={ zuD>`--VwQ%f2FK5u{n&wN-_kLBwuQAt?ula`+|S)bbnUyK*p}k9e;7{(%Bd12n*wt z&d+o5K3X?H9O~4=A>(k*Ob4g_?+#Dw8z12qe>ZPhS2KxZldTF1iI#WZIVZ=GESqpbVC1iPJY-;nU6u z2}U+P`OICL(nT9mFPD=`rv*%3+sAr+C=g!dH0fBz>Xed4y*3wPD*nm){(=|0y!7X^ z5@VmSucLKO`al+G#S4826XpB}lxI=_g~dsu5KOD4p$e@Wrtf*Ks;7-&KOfEp)IibTwF2#-_ngxJi}Hqy{-s0`&?d5+f21L4Y?Q zHHjc}2%T;;8fiurO{-6&GXw$w9cI#*ObB>Dh71jXnjnqA+X69&A;JxqUZo>cS`Ed5 ziORKUgpf)F@jjF3p9ha)T$B&yUpYZM^+ zJx@ZV93kty+$nBpL&OYB1aa1;A-4fFnTpEUr?{f-nxu z2M~M|lCv2wgs~X{1q)^3d^T$o#3H>4s1i*bos|Vj0iZCHC%`Zc3j!H2AvPvwKmq|O zfCL;Clh5TaIT&{kN`WC_tzM0ScB<59B2L$760LJs2uDJqB|<8b29H>xQ&B<*0)*5k zl_t$JG9Xi_@mK=2u*u+YU^a)rXR$djkHKY+IDLxi4M2$&Oa@G24USmaf`DQGv8Y9- z0KggnYC*#EI7(>sGOadMNVTLyu|y6JOTltdpad#H2^@gJOb!Bb5hg5SG7%OJVX)@G zOava~uT`j&8UM@MvUn(ggDsC#8NmD*R@2~$ip5tBz74*ns;o|1k;1O^IjPszd3(+8?ZR&BI6At zlIIP}WfMj9-3N?zghU!{_tch5p6zn>d+#4eq;csIQHU(*e#fn5t@N*C+wRtm`u(4X zyrrVDOc6M?t?_`puXuES5gC=1ozrCgN0iTjskY+6)Ai!Qq-a+M{~i7zRnMw9Cw#u{ zExP}?;p%yHG5yx1OF_5ZtZKcVQqdIj_+q|ylRR|aI>xe_I~Wxy(b09 zasG#@6xr;>u+n}D>nG0ka}}Nod~7-U8AalKxrT~_Nj5KQZ$CX*ANpttkMMvIkv_x>XEk?Ufc8UiaV&fIJ|U9_I%ycrna+!haZL4G=<%5 zbXqkzKW+YI=cK0i8pqIvsVDDH8@pYWoJiZ*y=T8`@tK?-Zx-vXy?n~QzMAi$jC*nH z?08}2$!h~sigJIux^kAdEh8YL+vjyXN-gnq38?p~k?d|K zAb+#7!+%(3^1gdv-XIBVDDGY^k+a+jMEY^Yo>SR^MxFOMY_WgKC)t~Qdk5-v-Q3+D zZFZ}PG6fg3mOc*Ed%bjLE^eS6_iI?Gpefk1+ji~kt(x6Cxg|7mPs-g`<&jg+!+T#X zEyQ9KCk+RuFKI4pm(_Vzq-0cQ#uPLb&)%%8-1^ARp_RlvxOv$YI|s~n zLBhr(rM&PfEoBj}BK+>=jpvuhce2jNCb!(1v0GF1Ta3_g+fk?V6(=02oh`BER9@zB z^PO#Hi|S`M{p^ylAfaQsT(h3setColor(); } +void MainWindow::setOverline(){ + QWidget *focused = QApplication::focusWidget(); + QPlainTextEdit* plainTextEdit = qobject_cast(focused); + + if (plainTextEdit) { + QTextCursor cursor = plainTextEdit->textCursor(); + if (cursor.hasSelection()) { + QTextCharFormat format; + QFont font = plainTextEdit->currentCharFormat().font(); + font.setOverline(!font.overline()); + format.setFont(font); + cursor.mergeCharFormat(format); + } + } +} +void MainWindow::on_actionOverline_triggered() +{ + this->setOverline(); +} + diff --git a/mainwindow.h b/mainwindow.h index 39d3414..a3e7c94 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -30,6 +30,7 @@ public: void setItalic(); void setUnderline(); void setColor(); + void setOverline(); private slots: void on_pushButton_clicked(); @@ -55,6 +56,8 @@ private slots: void on_actionColor_triggered(); + void on_actionOverline_triggered(); + private: Ui::MainWindow *ui; QString currentFile; diff --git a/mainwindow.ui b/mainwindow.ui index 36948eb..56a0bdf 100644 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -246,7 +246,7 @@ ... - + :/data/images/data/images/add.png:/data/images/data/images/add.png @@ -346,6 +346,7 @@ + @@ -373,7 +374,7 @@ - + :/data/images/data/images/new.png:/data/images/data/images/new.png @@ -385,7 +386,7 @@ - + :/data/images/data/images/save_as.png:/data/images/data/images/save_as.png @@ -397,7 +398,7 @@ - + :/data/images/data/images/save.png:/data/images/data/images/save.png @@ -409,7 +410,7 @@ - + :/data/images/data/images/print.png:/data/images/data/images/print.png @@ -421,7 +422,7 @@ - + :/data/images/data/images/copy.png:/data/images/data/images/copy.png @@ -433,7 +434,7 @@ - + :/data/images/data/images/paste.png:/data/images/data/images/paste.png @@ -445,7 +446,7 @@ - + :/data/images/data/images/cut.png:/data/images/data/images/cut.png @@ -457,7 +458,7 @@ - + :/data/images/data/images/edit_undo.png:/data/images/data/images/edit_undo.png @@ -469,7 +470,7 @@ - + :/data/images/data/images/edit_redo.png:/data/images/data/images/edit_redo.png @@ -481,7 +482,7 @@ - + :/data/images/data/images/open.png:/data/images/data/images/open.png @@ -493,7 +494,7 @@ - + :/data/images/data/images/bold.png:/data/images/data/images/bold.png @@ -502,7 +503,7 @@ - + :/data/images/data/images/italic.png:/data/images/data/images/italic.png @@ -511,7 +512,7 @@ - + :/data/images/data/images/underline.png:/data/images/data/images/underline.png @@ -520,14 +521,25 @@ - + :/data/images/data/images/font-color.png:/data/images/data/images/font-color.png Color + + + + :/data/images/data/images/overline.png:/data/images/data/images/overline.png + + + Overline + + - + + +