1/*
2 * Copyright 2004-2015 Haiku, Inc. All rights reserved.
3 * Distributed under the terms of the MIT License.
4 *
5 * Authors:
6 *		Axel D��rfler, <axeld@pinc-software.de>
7 *		Alexander von Gluck, kallisti5@unixzen.com
8 *		John Scipione, jscipione@gmail.com
9 */
10#ifndef INTERFACE_VIEW_H
11#define INTERFACE_VIEW_H
12
13
14#include <GroupView.h>
15#include <NetworkInterface.h>
16
17
18class BButton;
19class BMenuField;
20class BMessage;
21class BStringView;
22
23
24class InterfaceView : public BGroupView {
25public:
26								InterfaceView();
27	virtual						~InterfaceView();
28
29			void				SetTo(const char* name);
30
31	virtual	void				MessageReceived(BMessage* message);
32	virtual void				AttachedToWindow();
33	virtual	void				Pulse();
34
35private:
36			status_t			_Update(bool updateWirelessNetworks = true);
37			void				_EnableFields(bool enabled);
38
39private:
40			BNetworkInterface	fInterface;
41			int					fPulseCount;
42
43			BStringView*		fStatusField;
44			BStringView*		fMacAddressField;
45			BStringView*		fLinkSpeedField;
46			BStringView*		fLinkTxField;
47			BStringView*		fLinkRxField;
48
49			BMenuField*			fNetworkMenuField;
50
51			BButton*			fToggleButton;
52			BButton*			fRenegotiateButton;
53};
54
55
56#endif // INTERFACE_HARDWARE_VIEW_H
57
58