[haiku-commits] r40500 - haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn

  • From: kallisti5@xxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Tue, 15 Feb 2011 01:04:27 +0100 (CET)

Author: kallisti5
Date: 2011-02-15 01:04:27 +0100 (Tue, 15 Feb 2011)
New Revision: 40500
Changeset: http://dev.haiku-os.org/changeset/40500

Modified:
   
haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceAddressView.cpp
   haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceAddressView.h
   haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceWindow.cpp
Log:
added BTextControls for IP address and Netmask configuration

Modified: 
haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceAddressView.cpp
===================================================================
--- 
haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceAddressView.cpp 
    2011-02-14 23:48:32 UTC (rev 40499)
+++ 
haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceAddressView.cpp 
    2011-02-15 00:04:27 UTC (rev 40500)
@@ -21,18 +21,33 @@
        fSettings(settings),
        fFamily(family)
 {
+       float textControlW;
+       float textControlH;
+
        SetLayout(new BGroupLayout(B_VERTICAL));
 
-       // TODO : Draw address fields in a generic way
-       BStringView* address = new BStringView(Bounds(), "address",
-               fSettings->IP(family));
+       // Create our controls
+       fAddressField = new BTextControl(frame, "address", "IP Address:",
+               NULL, NULL, B_FOLLOW_LEFT | B_FOLLOW_TOP, B_WILL_DRAW);
+       fNetmaskField = new BTextControl(frame, "netmask", "Netmask:",
+               NULL, NULL, B_FOLLOW_LEFT | B_FOLLOW_TOP, B_WILL_DRAW);
 
+       fAddressField->GetPreferredSize(&textControlW, &textControlH);
+       float labelSize = ( textControlW + 50 )
+               - fAddressField->StringWidth("XXX.XXX.XXX.XXX");
+
+       _RevertFields();
+               // Do the initial field population
+
+       fAddressField->SetDivider(labelSize);
+       fNetmaskField->SetDivider(labelSize);
+
        AddChild(BGroupLayoutBuilder(B_VERTICAL, 10)
-               .Add(address)
+               .Add(fAddressField)
+               .Add(fNetmaskField)
                .AddGlue()
                .SetInsets(10, 10, 10, 10)
        );
-
 }
 
 
@@ -42,3 +57,12 @@
 }
 
 
+status_t
+InterfaceAddressView::_RevertFields()
+{
+       // Populate address fields with current settings
+       fAddressField->SetText(fSettings->IP(fFamily));
+       fNetmaskField->SetText(fSettings->Netmask(fFamily));
+
+       return B_OK;
+}

Modified: 
haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceAddressView.h
===================================================================
--- 
haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceAddressView.h   
    2011-02-14 23:48:32 UTC (rev 40499)
+++ 
haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceAddressView.h   
    2011-02-15 00:04:27 UTC (rev 40500)
@@ -13,6 +13,7 @@
 
 #include <Screen.h>
 #include <View.h>
+#include <TextControl.h>
 
 
 class InterfaceAddressView : public BView {
@@ -23,8 +24,13 @@
        virtual                                         ~InterfaceAddressView();
 
 private:
+                       status_t                        _RevertFields();
                        NetworkSettings*        fSettings;
                        int                                     fFamily;
+
+                       BTextControl*           fAddressField;
+                       BTextControl*           fNetmaskField;
+                       BTextControl*           fGatewayField;
 };
 
 

Modified: 
haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceWindow.cpp
===================================================================
--- haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceWindow.cpp  
2011-02-14 23:48:32 UTC (rev 40499)
+++ haiku/trunk/src/tests/kits/net/preflet/InterfacesAddOn/InterfaceWindow.cpp  
2011-02-15 00:04:27 UTC (rev 40500)
@@ -17,7 +17,7 @@
 
 
 InterfaceWindow::InterfaceWindow(NetworkSettings* settings)
-       : BWindow(BRect(50, 50, 400, 302), "Interface Settings",
+       : BWindow(BRect(50, 50, 370, 350), "Interface Settings",
                B_TITLED_WINDOW_LOOK, B_MODAL_APP_WINDOW_FEEL,
                B_NOT_RESIZABLE | B_ASYNCHRONOUS_CONTROLS | B_NOT_ZOOMABLE,
                B_CURRENT_WORKSPACE)


Other related posts: