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