* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <sigrok.h>
+#include <libsigrok/libsigrok.h>
#include <gtk/gtk.h>
#include "sigrok-gtk.h"
static void dev_selected(GtkComboBox *devbox, GObject *parent)
{
GtkTreeModel *devlist = gtk_combo_box_get_model(devbox);
+ GtkEntry *timesamples = g_object_get_data(parent, "timesamples");
+ GtkComboBox *timeunit = g_object_get_data(parent, "timeunit");
GtkTreeIter iter;
const gchar *name;
GtkCheckMenuItem *menuitem;
dev = NULL;
}
g_object_set_data(parent, "dev", dev);
+
+ /*
+ * Grey out the time unless the device is valid,
+ * and it supports sample limiting
+ */
+ const gboolean limit_samples = dev &&
+ sr_driver_hwcap_exists(dev->driver,
+ SR_HWCAP_LIMIT_SAMPLES);
+ gtk_widget_set_sensitive((GtkWidget*)timesamples, limit_samples);
+ gtk_widget_set_sensitive((GtkWidget*)timeunit, limit_samples);
}
static void dev_menuitem_toggled(GtkMenuItem *item, GtkComboBox *combo)
GtkListStore *devlist = GTK_LIST_STORE(gtk_combo_box_get_model(devbox));
GtkTreeIter iter;
struct sr_dev *dev;
- struct sr_dev_inst *sdi;
+ const struct sr_dev_inst *sdi;
gchar *sdevname = NULL;
GSList *devs, *l;
GtkUIManager *ui = g_object_get_data(G_OBJECT(parent), "ui_manager");