]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/qt_helpers.h
Amend f441590c
[lyx.git] / src / frontends / qt4 / qt_helpers.h
index 4a3855d5c36bd4adb1ff0c7c33d2422d6654edf2..d4afc78a338b7e615729a6debd1a377a4d5391e4 100644 (file)
 #ifndef QTHELPERS_H
 #define QTHELPERS_H
 
+#include "ColorSet.h"
 #include "Length.h"
 #include "support/qstring_helpers.h"
+#include "support/filetools.h"
 #include "qt_i18n.h"
 
-#include <QString>
+#include <QHeaderView>
 
 class QComboBox;
 class QLineEdit;
@@ -26,28 +28,32 @@ class QString;
 class QWidget;
 template <class T> class QList;
 
-class LengthCombo;
-
 namespace lyx {
 
 namespace support { class FileName; }
 
 class BufferParams;
-
 namespace frontend {
 
+class LengthCombo;
+
 /// method to get a Length from widgets (LengthCombo)
 std::string widgetsToLength(QLineEdit const * input, LengthCombo const * combo);
 /// method to get a Length from widgets (QComboBox)
 Length widgetsToLength(QLineEdit const * input, QComboBox const * combo);
 
-//FIXME It would be nice if defaultUnit were a default argument
 /// method to set widgets from a Length
+//FIXME Remove default_unit argument for the first form. FIXME Change
+// all the code to remove default_unit argument when equal to the
+// default.
 void lengthToWidgets(QLineEdit * input, LengthCombo * combo,
-Length const & len, Length::UNIT default_unit);
+                    Length const & len, 
+                    Length::UNIT default_unit = Length::defaultUnit());
 /// method to set widgets from a string
 void lengthToWidgets(QLineEdit * input, LengthCombo * combo,
-std::string const & len, Length::UNIT default_unit);
+                    std::string const & len, 
+                    Length::UNIT default_unit = Length::defaultUnit());
 /// method to set widgets from a docstring
 void lengthToWidgets(QLineEdit * input, LengthCombo * combo,
 docstring const & len, Length::UNIT default_unit);
@@ -62,10 +68,25 @@ void doubleToWidget(QLineEdit * input, double const & value,
 /// method to set a (localized) double value in a widget (QLineEdit)
 void doubleToWidget(QLineEdit * input, std::string const & value,
        char f = 'g', int prec = 6);
+/**
+ * method to format localized floating point numbers without
+ * ever using scientific notation
+ */
+QString formatLocFPNumber(double d);
+
+/// Method to sort colors by GUI name in combo widgets
+bool ColorSorter(ColorCode lhs, ColorCode rhs);
 
 /// colors a widget red if invalid
 void setValid(QWidget * widget, bool valid);
 
+/// Qt5 changed setSectionMode to setSectionResizeMode
+/// These wrappers work for Qt4 and Qt5
+void setSectionResizeMode(QHeaderView * view,
+    int logicalIndex, QHeaderView::ResizeMode mode);
+void setSectionResizeMode(QHeaderView * view,
+       QHeaderView::ResizeMode mode);
+
 } // namespace frontend
 
 
@@ -75,14 +96,18 @@ void setValid(QWidget * widget, bool valid);
  * Use this in qt4/ instead of _()
  */
 QString const qt_(std::string const & str);
+QString const qt_(QString const & qstr);
+
 
 ///
 support::FileName libFileSearch(QString const & dir, QString const & name,
-                               QString const & ext = QString());
+                               QString const & ext = QString(),
+                               support::search_mode mode = support::must_exist);
 
 ///
 support::FileName imageLibFileSearch(QString & dir, QString const & name,
-                                    QString const & ext = QString());
+                               QString const & ext = QString(),
+                               support::search_mode mode = support::must_exist);
 
 /** Wrappers around browseFile which try to provide a filename
        relative to relpath.