Mercurial > octave
view libgui/src/qt-utils.h @ 28571:dea121672378
avoid deprecated Qt QFontMetrics::width function
* acinclude.m4 (OCTAVE_CHECK_FUNC_QFONTMETRICS_HORIZONTAL_ADVANCE):
New macro.
(OCTAVE_CHECK_QT_VERSION): Use it.
* qt-utils.h (qt_fontmetrics_horizontal_advance): New wrapper functions.
* TerminalView.cpp, variable-editor.cc:
Use qt_fontmetrics_horizontal_advance instead of QFontMetrics::width.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Tue, 14 Jul 2020 00:45:39 -0400 |
parents | 20ee8aa92897 |
children | 0a5b15007766 |
line wrap: on
line source
//////////////////////////////////////////////////////////////////////// // // Copyright (C) 2020 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. // // This file is part of Octave. // // Octave is free software: you can redistribute it and/or modify it // under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // Octave is distributed in the hope that it will be useful, but // WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with Octave; see the file COPYING. If not, see // <https://www.gnu.org/licenses/>. // //////////////////////////////////////////////////////////////////////// #if ! defined (octave_qt_utils_h) #define octave_qt_utils_h 1 #include <list> #include <QFontMetrics> #include <QList> namespace octave { template <typename T> inline QList<T> std_list_to_qt_list (const std::list<T>& lst) { #if defined (HAVE_QLIST_ITERATOR_CONSTRUCTOR) return QList<T> (lst.begin (), lst.end ()); #else return QList<T>::fromStdList (lst); #endif } inline int qt_fontmetrics_horizontal_advance (const QFontMetrics& fm, QChar ch) { #if defined (HAVE_QFONTMETRICS_HORIZONTAL_ADVANCE) return fm.horizontalAdvance (ch); #else return fm.width (ch); #endif } inline int qt_fontmetrics_horizontal_advance (const QFontMetrics& fm, const QString& text, int len = -1) { #if defined (HAVE_QFONTMETRICS_HORIZONTAL_ADVANCE) return fm.horizontalAdvance (text, len); #else return fm.width (text, len); #endif } } #endif