Proxy Configuration Dialog UI

Author: Josef Holy
Last update: 1/8/2006

Table Of Contents

1. Goal
2. UI Spec  
    2.1. General Options Dialog
       2.1.1. General Options Dialog Components
    2.2. Advanced Proxy Options Dialog
       2.2.1. Advanced Proxy Options Components
3. Issues

1. Goal

The goal is to unify the way of how our users set up their proxy settings in NetBeans. The initial set of requirements for this spec is here.

UI described in this document should be invoked whenever the NB user is asked to configure the proxy - e.g. when using various versioning systems, welcome screen and other network-dependent functionality in NetBeans.

2. UI Spec

It is important from the UI point of view to provide the users with some consistent way of setting the proxy. The users should use one proxy setting dialog all across the IDE. The most natural way to do that is to use the current dialog in the Options General tab. This dialog just has to be a bit extended in order to reflect all the requirements gathered at, e.g. HTTPS and SOCKS proxy settings, as well as the settings for a case when the proxy requires authentication.

2.1. General Options Dialog

The Proxy configuration dialog is a part of the General Options Dialog, as shown on the Figure 1 below.

Figure 1: General options dialog with redesigned proxy settings.

2.1.1. General Options Dialog Components

The dialog on the Figure 1 consists out of the following components:
  • Proxy Configuration HTTP Proxy input field - serves for configuring the HTTP Proxy.
  • Proxy Settings radio-buttons
  • No Proxy Radio-button - When checked, there is no proxy set. When checked, the HTTP Proxy component is disabled. If it was set to some value before, this value should be persisted and reused again later on. The More button is disabled as well.
  • Use System Proxy Settings - When checked, the system-wide proxy is used. This should work on Windows as well as on Gnome and MacOS systems. When checked, the HTTP Proxy textfield as well as the More button are disabled.
  • Manual Proxy Configuration - When checked, the HTTP Proxy and More Button components are enabled, otherwise they are disabled - this means, that unless the user checks this radio button, he is unable to get to the Advanced Proxy Configuration Dialog described below.
  • More button - When pressed, it invokes the Advanced Proxy Configuration modal dialog, which is described further.

  • 2.2. Advanced Proxy Options dialog

    Figure 2: Advanced Proxy Options dialog.

    2.2.1. Advanced Proxy Options Dialog components

    This dialog contains the following components:
    • Proxy configuration input fields - serve for configuring the respective proxy types - HTTP Proxy, HTTPS Proxy, SOCKS Proxy. The HTTP Proxy field value should be taken from the General Options Dialog.
    • 'Use the same proxy settings for all protocols.' check-box - Should be checked on by default. When checked, the HTTPS Proxy and SOCKS Proxy components are disabled and their values are set to the value of the HTTP proxy value. If the HTTPS and SOCKS values were already set before, then their values are persisted and used later again when the check-box is unset. When this check-box is set and when the user is typing something into the HTTP proxy/port text-fields, the text should be dynamically added to the HTTPS and SOCKS text-fields as well.
    • No proxy for text-field: The user can enter hosts, or IP address ranges which shouldn't be accessed via proxy. Default should be detected and should contain localhost, etc. The label below the text-field shows example values.
    • Proxy Requires Authentication check-box: When checked, the Username and Password textfields are enabled. The user is then allowed to enter the Username and Password values for the proxy, which requires the authentication.

    3. Issues

    • How is it with the SOCKS V4/V5 switch? Does this need to be part of the configuration? Do we have to bother our users with that? If we need it, then we should add 2 radio buttons below the SOCKS Proxy text-fields.
    • Can there be more than one authorization proxy at once - e.g. 2 different authorization settings, one for the HTTP and one for the SOCKS proxy? It's most likely a corner case.

    Project Features

    About this Project

    ui was started in November 2009, is owned by Jiří Kovalský, and has 44 members.
    By use of this website, you agree to the NetBeans Policies and Terms of Use (revision 20160708.bf2ac18). © 2014, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo
    Please Confirm