File indexing completed on 2024-04-14 14:20:37
0001 /* 0002 Copyright 2007 Will Stephenson <wstephenson@kde.org> 0003 0004 This library is free software; you can redistribute it and/or 0005 modify it under the terms of the GNU Lesser General Public 0006 License as published by the Free Software Foundation; either 0007 version 2.1 of the License, or (at your option) version 3, or any 0008 later version accepted by the membership of KDE e.V. (or its 0009 successor approved by the membership of KDE e.V.), which shall 0010 act as a proxy defined in Section 6 of version 3 of the license. 0011 0012 This library is distributed in the hope that it will be useful, 0013 but WITHOUT ANY WARRANTY; without even the implied warranty of 0014 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 0015 Lesser General Public License for more details. 0016 0017 You should have received a copy of the GNU Lesser General Public 0018 License along with this library. If not, see <http://www.gnu.org/licenses/>. 0019 */ 0020 0021 #ifndef KTESTNETWORKSTATUS_H 0022 #define KTESTNETWORKSTATUS_H 0023 0024 #include <QApplication> 0025 #include <QMainWindow> 0026 0027 #include "solid/networking.h" 0028 0029 #include "ui_networkingclientview.h" 0030 0031 /** 0032 * Test client that uses a ConnectionManager to change its state 0033 * 0034 * @short Main window class 0035 * @author Will Stephenson <wstephenson@kde.org> 0036 * @version 0.1 0037 */ 0038 class TestClient : public QMainWindow 0039 { 0040 Q_OBJECT 0041 public: 0042 enum AppStatus { AppDisconnected, AppWaitingForConnect, AppConnected }; 0043 /** 0044 * Default Constructor 0045 */ 0046 TestClient(); 0047 0048 /** 0049 * Default Destructor 0050 */ 0051 ~TestClient() override; 0052 0053 private Q_SLOTS: 0054 void networkStatusChanged(Solid::Networking::Status status); 0055 void connectButtonClicked(); 0056 void doConnect(); 0057 void doDisconnect(); 0058 private: 0059 void appWaiting(); 0060 void appEstablishing(); 0061 void appIsConnected(); 0062 void appDisestablishing(); 0063 void appDisconnected(); 0064 static QColor toQColor(TestClient::AppStatus); 0065 private: 0066 //OrgKdeSolidNetworkingClientInterface *m_service; 0067 Ui_TestClientView ui; 0068 AppStatus m_status; // this represents the app's status not the network's status 0069 QWidget *m_view; 0070 }; 0071 0072 #endif // KTESTNETWORKSTATUS_H 0073