* 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_CONNECT_H
-#define PULSEVIEW_PV_CONNECT_H
+#ifndef PULSEVIEW_PV_CONNECT_HPP
+#define PULSEVIEW_PV_CONNECT_HPP
#include <memory>
+#include <QCheckBox>
#include <QComboBox>
#include <QDialog>
#include <QDialogButtonBox>
#include <QFormLayout>
+#include <QHBoxLayout>
#include <QLineEdit>
+#include <QSpinBox>
#include <QListWidget>
#include <QPushButton>
#include <QVBoxLayout>
namespace sigrok {
- class Driver;
- class HardwareDevice;
+class Driver;
+}
+
+namespace pv {
+namespace devices {
+class HardwareDevice;
+}
}
Q_DECLARE_METATYPE(std::shared_ptr<sigrok::Driver>);
-Q_DECLARE_METATYPE(std::shared_ptr<sigrok::HardwareDevice>);
+Q_DECLARE_METATYPE(std::shared_ptr<pv::devices::HardwareDevice>);
namespace pv {
public:
Connect(QWidget *parent, pv::DeviceManager &device_manager);
- std::shared_ptr<sigrok::HardwareDevice> get_selected_device() const;
+ std::shared_ptr<devices::HardwareDevice> get_selected_device() const;
private:
void populate_drivers();
- void unset_connection();
+ void populate_serials(std::shared_ptr<sigrok::Driver> driver);
- void set_serial_connection();
+ void unset_connection();
private Q_SLOTS:
- void device_selected(int index);
+ void driver_selected(int index);
+
+ void serial_toggled(bool checked);
+ void tcp_toggled(bool checked);
void scan_pressed();
QComboBox drivers_;
- QLineEdit serial_device_;
+ QComboBox serial_devices_;
+
+ QWidget *tcp_config_;
+ QLineEdit *tcp_host_;
+ QSpinBox *tcp_port_;
+ QCheckBox *tcp_use_vxi_;
QPushButton scan_button_;
QListWidget device_list_;
} // namespace dialogs
} // namespace pv
-#endif // PULSEVIEW_PV_CONNECT_H
+#endif // PULSEVIEW_PV_CONNECT_HPP