summaryrefslogtreecommitdiffstats
path: root/demo/Main.qml
Commit message (Collapse)AuthorAgeFilesLines
* Rename classes to OpcUa* prefix, replace BobinkNode with OpcUaMonitoredNode ↵Thomas Vanbesien11 hours1-5/+5
| | | | | | | | | | boilerplate Rename BobinkAuth → OpcUaAuth, BobinkClient → OpcUaClient (C++ class names only; QML module URI and singleton name stay as Bobink). Remove BobinkNode (QQuickItem-based) and add OpcUaMonitoredNode skeleton using QObject + QQmlParserStatus, following Qt convention for non-visual QML types.
* Refactor BobinkClient and clean up commentsThomas Vanbesien23 hours1-0/+2
| | | | | | | | | | - Format BobinkAuth.cpp to match GNU style used elsewhere - Replace brittle error name array with QMetaEnum in BobinkClient - Move QOpcUaPkiConfiguration include from header to .cpp - Replace m_discoveryInterval member with file-scope constant - Add doc comments to SecurityMode and SecurityPolicy enums - Comment endpoint selection strategy in handleEndpointsReceived - Add missing QML ids to connectionPage and serverListView
* Reorganize BobinkClient by domain and make s_instance privateThomas Vanbesien24 hours1-1/+1
| | | | | | | Group header and source by domain (Connection, Discovery, PKI) so properties, methods, and signal handlers live together. Move enums before constructor, move s_instance to private, and add a public instance() accessor used by BobinkNode.
* Rename QML singleton to Bobink and simplify singleton lifecycleThomas Vanbesien28 hours1-64/+127
| | | | | | | | Replace QML_ELEMENT with QML_NAMED_ELEMENT(Bobink) so QML references use `Bobink` instead of `BobinkClient`. Remove instance()/create() factory in favor of inline s_instance set in the constructor. Import BobinkPlugin statically in demo, link demo to BobinkQtOpcUaplugin, and make library link dependencies PUBLIC. Add .qtcreator to gitignore.
* Log attribute reads to debug console and replace raw C++ types with Qt ↵Thomas Vanbesien34 hours1-3/+3
| | | | | | | | | | | | equivalents Connect QOpcUaNode::attributeRead signal to new handler that logs read results (value or error code) to the debug console via BobinkClient::statusMessage. Add nameFromAttribute() helper. Replace const char* arrays with QLatin1StringView, bare string literals with QStringLiteral, uint with quint32, int with qint32. Rename statusLog to debugLog in Main.qml for consistency.
* Add BobinkNode QML type and two-page demo for node monitoringThomas Vanbesien40 hours1-299/+246
| | | | | | | | | | | | | BobinkNode (QQuickItem) monitors a single OPC UA node with automatic lifecycle: monitoring starts/stops based on item visibility (StackView page switches, Loader, etc.). Properties: nodeId, value (r/w), status, sourceTimestamp, serverTimestamp. On-demand readAttribute() for metadata. writeError signal for failed writes. Demo restructured with StackView: connection page → two node pages demonstrating the visibility-based monitoring lifecycle.
* Rename targets, route messages to debug console, clean upThomas Vanbesien40 hours1-86/+157
| | | | | | | | - Rename CMake project and library target to BobinkQtOpcUa (URI stays Bobink) - Rename demo target to BobinkDemo, output binary to build/bin/ - Route all QML status/error messages to the in-app debug console - Remove discoveryInterval QML property, default to 30s internally - Add errorChanged handler, PKI file validation in applyPki()
* Add direct connect, auto-detect PKI, and rework demo flowThomas Vanbesien2 days1-14/+131
| | | | | | | | | | | - connectDirect(policy, mode): connect without endpoint discovery, for servers with no unencrypted endpoint. Sets user identity token policy matching the auth mode. - autoDetectPki(): scan own/certs/*.der and own/private/*.pem|crt, called automatically at startup. - Demo: discovery auto-starts, PKI section hidden behind toggle with auto-detected cert summary, direct connect appears on connect failure. File/folder dialogs for manual PKI override.
* Refactor and document: fix cert filenames, add Doxygen, improve demoThomas Vanbesien3 days1-26/+61
| | | | | | | | | | | | | | | | | | | Refactoring (issues 1,3,4,5,7,8,9,10 from review): - Replace hardcoded cert filenames with certFile/keyFile properties - Add 30s timeout to certificate trust QEventLoop - Cache servers() QVariantList instead of rebuilding per call - Validate URLs before passing to QtOpcUa - Use ComboBox valueRole for robust enum mapping - Add certificate trust dialog to demo - Remove unnecessary RowLayout wrapper - Remove debug output from BuildDeps.cmake Documentation: - Add Doxygen file blocks to all C++ files - Document AuthMode enum, toAuthenticationInformation(), key Q_INVOKABLE methods, certificateTrustRequested signal contract - Convert section banners to standard format - Add file/target comments to CMake and QML files
* Initial Bobink library: BobinkAuth, BobinkClient, and demo appThomas Vanbesien3 days1-0/+188
Implements the core OPC UA wrapper library with: - Build system with automatic dep building (open62541, QtOpcUa) - BobinkAuth: QML auth component (anonymous/userpass/certificate) - BobinkClient: QML singleton managing connection, LDS discovery, PKI configuration, endpoint selection, and certificate trust flow - Demo app for manual testing of the full connection flow