NDEVR
API Documentation
NetworkConnectionDialog.h
1#pragma once
2/*--------------------------------------------------------------------------------------------
3Copyright (c) 2019, NDEVR LLC
4tyler.parke@ndevr.org
5 __ __ ____ _____ __ __ _______
6 | \ | | | __ \ | ___|\ \ / / | __ \
7 | \ | | | | \ \ | |___ \ \ / / | |__) |
8 | . \| | | |__/ / | |___ \ V / | _ /
9 | |\ |_|_____/__|_____|___\_/____| | \ \
10 |__| \__________________________________| \__\
11
12Subject to the terms of the Enterprise+ Agreement, NDEVR hereby grants
13Licensee a limited, non-exclusive, non-transferable, royalty-free license
14(without the right to sublicense) to use the API solely for the purpose of
15Licensee's internal development efforts to develop applications for which
16the API was provided.
17
18The above copyright notice and this permission notice shall be included in all
19copies or substantial portions of the Software.
20
21THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
22INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
23PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
24FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
25OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
26DEALINGS IN THE SOFTWARE.
27
28Library: NDEVR
29File: SerialConnectionDialog
30Included in API: True
31Author(s): Tyler Parke
32 *-----------------------------------------------------------------------------------------**/
33#pragma once
34#include "DLLInfo.h"
35#include <NDEVR/ConnectionDialog.h>
36#include <NDEVR/Connection.h>
37#include <NDEVR/Dictionary.h>
38#include <QWidget>
39namespace Ui
40{
41 class NetworkConnectionUI;
42}
43namespace NDEVR
44{
45 class Connection;
46 class InfoPipe;
47 class Thread;
51 class NDEVR_NETWORK_PROTOCOLS_API NetworkConnectionDialog : public ConnectionDialog
52 {
53 Q_OBJECT
54 public:
59 explicit NetworkConnectionDialog(QWidget* parent = nullptr);
60 ~NetworkConnectionDialog();
65 void setFixedProtocol(const StringView& mode);
69 void clearFixedProtocol();
73 virtual void clear() override;
78 virtual ConnectionInfo connectionInfo() const override;
83 virtual void setConnectionInfo(const ConnectionInfo& connection) override;
89 virtual bool handlesConnection(const ConnectionInfo& connection) override;
94 void setAllowPingLogic(bool allow_ping);
99 void setAllowLocalButton(bool allow_local);
104 bool checkIfValid() const;
109 String protocol() const;
110 protected slots:
114 void updateFromDialog();
115 protected:
119 void refreshPingVisible();
120 protected:
121 String m_fixed_protocol;
122 Ui::NetworkConnectionUI* ui;
123 bool m_allow_ping_logic = true;
124 bool m_allow_local_button = true;
125 };
129 class NDEVR_NETWORK_PROTOCOLS_API NetworkConnectionDialogFactory : public ConnectionDialogFactory
130 {
131 public:
137 virtual bool handlesType(const StringView& connection) const override;
142 virtual TranslatedString title() const override;
147 virtual StringView icon() const override;
152 virtual ConnectionDialog* createConnectionDialog() const override;
153 };
154}
Defines cross-platform DLL export/import macros for the NDEVRNetworkProtocols module.
Used to, given a Connection, generate an appropriate ConnectionDialog to allow adjustment of paramete...
A virtual dialog that provides an interface that allows the user to adjust certain parameters for a C...
A standard interface for all types of connections that allow transmitting and receiving of data betwe...
Definition Connection.h:316
A light-weight base class for Log that allows processes to update, without the need for additional in...
The default thread class for executing concurrent sequences in the NDEVR API.
Definition Thread.h:113
The primary namespace for the NDEVR SDK.
@ icon
Icon identifier for the object.