Binding: Add help icons for entries with descriptions
[pulseview.git] / pv / binding / device.hpp
index 9d879ee58186680a01301e59c1f6e406e8d627cf..d4fbf3714ba040236cb055488a5dbc2fd4014a5a 100644 (file)
  * GNU General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
 #ifndef PULSEVIEW_PV_BINDING_DEVICE_HPP
 #define PULSEVIEW_PV_BINDING_DEVICE_HPP
 
+#include <functional>
+
 #include <boost/optional.hpp>
 
 #include <QObject>
 
 #include <libsigrokcxx/libsigrokcxx.hpp>
 
+using std::function;
+using std::pair;
+using std::set;
+using std::shared_ptr;
+
 namespace pv {
 
 namespace binding {
 
-class Device : public QObject, public Binding
+class Device : public Binding
 {
        Q_OBJECT
 
 public:
-       Device(std::shared_ptr<sigrok::Configurable> configurable);
+       Device(shared_ptr<sigrok::Configurable> configurable);
 
 Q_SIGNALS:
        void config_changed();
 
 private:
-       void bind_bool(const QString &name,
+       void bind_bool(const QString &name, const QString &desc,
                prop::Property::Getter getter, prop::Property::Setter setter);
-       void bind_enum(const QString &name,
+       void bind_enum(const QString &name, const QString &desc,
                const sigrok::ConfigKey *key,
-               std::set<const sigrok::Capability *> capabilities,
+               set<const sigrok::Capability *> capabilities,
                prop::Property::Getter getter, prop::Property::Setter setter,
-               std::function<QString (Glib::VariantBase)> printer = print_gvariant);
-       void bind_int(const QString &name, QString suffix,
-               boost::optional< std::pair<int64_t, int64_t> > range,
+               function<QString (Glib::VariantBase)> printer = print_gvariant);
+       void bind_int(const QString &name, const QString &desc, QString suffix,
+               boost::optional< pair<int64_t, int64_t> > range,
                prop::Property::Getter getter, prop::Property::Setter setter);
 
        static QString print_timebase(Glib::VariantBase gvar);
@@ -64,10 +70,10 @@ private:
        static QString print_probe_factor(Glib::VariantBase gvar);
 
 protected:
-       std::shared_ptr<sigrok::Configurable> configurable_;
+       shared_ptr<sigrok::Configurable> configurable_;
 };
 
-} // binding
-} // pv
+}  // namespace binding
+}  // namespace pv
 
 #endif // PULSEVIEW_PV_BINDING_DEVICE_HPP