]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/GuiIdListModel.h
Properly track the lifetime of signals2::slots (#8261)
[lyx.git] / src / frontends / qt4 / GuiIdListModel.h
index 507e4ad2f8005985ae3e5fb0984e09b0e9657364..4282940e9875754c7830a335076fce8172acc93f 100644 (file)
@@ -65,53 +65,51 @@ public:
        // New methods
        //////////////////////////////////////////////////////////////////////
        ///
-       void setUIString(QModelIndex const & index, QString const & value)
-                       { setData(index, value); }
-       ///
-       void setUIString(int const i, QString const & value)
-                       { setUIString(index(i), value); }
-       ///
-       void setIDString(QModelIndex const & index, QString const & value)
-                       { setData(index, value, Qt::UserRole); }
-       ///
-       void setIDString(int const i, std::string const & value)
-                       { setIDString(index(i), toqstr(value)); }
+       void insertRow(int const i, QString const & uiString, 
+                       std::string const & idString, QString const & ttString);
+       /// A convenience method, setting ttString to the same as uiString
+       void insertRow(int const i, QString const & uiString, 
+                       std::string const & idString);
+       /// \return the index of the (first) item with idString
+       /// \return -1 if not found
+       int findIDString(std::string const & idString);
        ///
        virtual QString getIDString(QModelIndex const & index) const
-                       { return data(index, Qt::UserRole).toString(); }
+               { return data(index, Qt::UserRole).toString(); }
        ///
        virtual std::string getIDString(int const i) const
-                       { return fromqstr(getIDString(index(i))); }
+               { return fromqstr(getIDString(index(i))); }
+
+private:
+       /// noncopyable
+       GuiIdListModel(GuiIdListModel const &);
        ///
-       void insertRow(int const i, QString const & uiString, 
-                       std::string const & idString);
-       /* The following functions are currently unused but are retained here in
-          case they should at some point be useful.
+       void operator=(GuiIdListModel const &);
        ///
-       void setUIString(int const i, std::string const & value)
-                       { setUIString(index(i), value); }
+       void setUIString(QModelIndex const & index, QString const & value)
+               { setData(index, value); }
        ///
-       void setIDString(int const i, QString const & value)
-                       { setIDString(index(i), value); }
+       void setUIString(int const i, QString const & value)
+               { setUIString(index(i), value); }
        ///
-       QStringList getIDStringList() const;
+       void setIDString(QModelIndex const & index, QString const & value)
+               { setData(index, value, Qt::UserRole); }
        ///
-       void insertRow(int const i, QString const & uiString, 
-                       QString const & idString);
+       void setIDString(int const i, std::string const & value)
+               { setIDString(index(i), toqstr(value)); }
        ///
-       void insertRow(int const i, std::string const & uiString, 
-                       std::string const & idString);
-       /// Returns whether the model contains an item with the given ID
-       bool containsID(QVariant const &) const;
-       */
-private:
-       /// noncopyable
-       GuiIdListModel(GuiIdListModel const &);
-       void operator=(GuiIdListModel const &);
+       void setTTString(QModelIndex const & index, QString const & value)
+               { setData(index, value, Qt::ToolTipRole); }
        ///
+       void setTTString(int const i, QString const & value)
+               { setTTString(index(i), value); }
        struct OurData {
+               /// Qt::DisplayRole and Qt::EditRole
                QVariant uiString;
+               /// Qt::UserRole
                QVariant idString;
+               /// Qt::ToolTipRole
+               QVariant ttString;
        };
        ///
        std::vector<OurData> userData_;