diff --git a/src/tests/kits/net/preflet/InterfacesAddOn/Jamfile b/src/tests/kits/net/preflet/InterfacesAddOn/Jamfile index 1e6a44a9a8..a1acd9190f 100644 --- a/src/tests/kits/net/preflet/InterfacesAddOn/Jamfile +++ b/src/tests/kits/net/preflet/InterfacesAddOn/Jamfile @@ -18,6 +18,7 @@ Addon Interfaces : InterfacesListView.cpp NetworkSettings.cpp SettingsWindow.cpp + SettingsIfView.cpp # from src/apps/networkstatus RadioView.cpp diff --git a/src/tests/kits/net/preflet/InterfacesAddOn/SettingsIfView.cpp b/src/tests/kits/net/preflet/InterfacesAddOn/SettingsIfView.cpp new file mode 100644 index 0000000000..4a27ad2dde --- /dev/null +++ b/src/tests/kits/net/preflet/InterfacesAddOn/SettingsIfView.cpp @@ -0,0 +1,44 @@ +/* + * Copyright 2004-2011 Haiku Inc. All rights reserved. + * Distributed under the terms of the MIT License. + * + * Authors: + * Alexander von Gluck, kallisti5@unixzen.com + */ + +#include "SettingsIfView.h" +#include "NetworkSettings.h" + +#include +#include +#include + + +SettingsIfView::SettingsIfView(BRect frame, const char* name, int family, + NetworkSettings* settings) + : + BView(frame, name, B_FOLLOW_ALL_SIDES, 0), + fSettings(settings), + fFamily(family) +{ + SetLayout(new BGroupLayout(B_VERTICAL)); + + // TODO : Draw address fields in a generic way + BStringView* address = new BStringView(Bounds(), "address", + fSettings->IP(family)); + + AddChild(BGroupLayoutBuilder(B_VERTICAL, 10) + .Add(address) + .AddGlue() + .SetInsets(10, 10, 10, 10) + ); + +} + + +SettingsIfView::~SettingsIfView() +{ + +} + + diff --git a/src/tests/kits/net/preflet/InterfacesAddOn/SettingsIfView.h b/src/tests/kits/net/preflet/InterfacesAddOn/SettingsIfView.h new file mode 100644 index 0000000000..6ae0fb9830 --- /dev/null +++ b/src/tests/kits/net/preflet/InterfacesAddOn/SettingsIfView.h @@ -0,0 +1,31 @@ +/* + * Copyright 2004-2011 Haiku Inc. All rights reserved. + * Distributed under the terms of the MIT License. + * + * Authors: + * Alexander von Gluck, kallisti5@unixzen.com + */ + +#ifndef SETTINGS_IFVIEW_H +#define SETTINGS_IFVIEW_H + +#include "NetworkSettings.h" + +#include +#include + + +class SettingsIfView : public BView { +public: + SettingsIfView(BRect frame, const char* name, + int family, NetworkSettings* settings); + virtual ~SettingsIfView(); + +private: + NetworkSettings* fSettings; + int fFamily; +}; + + +#endif /* SETTINGS_IFVIEW_H */ + diff --git a/src/tests/kits/net/preflet/InterfacesAddOn/SettingsWindow.cpp b/src/tests/kits/net/preflet/InterfacesAddOn/SettingsWindow.cpp index 81b0141ebf..ab006bcd51 100644 --- a/src/tests/kits/net/preflet/InterfacesAddOn/SettingsWindow.cpp +++ b/src/tests/kits/net/preflet/InterfacesAddOn/SettingsWindow.cpp @@ -8,6 +8,7 @@ #include "SettingsWindow.h" +#include "SettingsIfView.h" #include @@ -18,8 +19,8 @@ SettingsWindow::SettingsWindow(NetworkSettings* settings) : BWindow(BRect(50, 50, 400, 302), "Interface Settings", B_TITLED_WINDOW_LOOK, B_MODAL_APP_WINDOW_FEEL, - B_NOT_RESIZABLE | B_ASYNCHRONOUS_CONTROLS | B_NOT_ZOOMABLE - | B_AUTO_UPDATE_SIZE_LIMITS, B_CURRENT_WORKSPACE) + B_NOT_RESIZABLE | B_ASYNCHRONOUS_CONTROLS | B_NOT_ZOOMABLE, + B_CURRENT_WORKSPACE) { fNetworkSettings = settings; @@ -69,12 +70,11 @@ SettingsWindow::MessageReceived(BMessage* message) status_t SettingsWindow::_PopulateTabs() { - // TODO : Temporary, just to get example data BRect frame = fTabView->Bounds(); - BView* view4 = new BView(frame, "net_settings_ipv4", - B_FOLLOW_ALL_SIDES, B_WILL_DRAW); - BView* view6 = new BView(frame, "net_settings_ipv6", - B_FOLLOW_ALL_SIDES, B_WILL_DRAW); + BView* view4 = new SettingsIfView(frame, "net_settings_ipv4", + AF_INET, fNetworkSettings); + BView* view6 = new SettingsIfView(frame, "net_settings_ipv6", + AF_INET6, fNetworkSettings); BTab* tab4 = new BTab; BTab* tab6 = new BTab;