maandag 2 mei 2011

Another week's progress

The end is nearing...

  • Created the CloudProvider properties screen, which for the moment consists only of an SSH key tab (maybe more will come, maybe not...)
  • Made the "Create new Server"-server one-click instead of double click to open (Ruben's suggestion)
  • When entering tags, if the user neglects to press ENTER the last time to add the tag to the taglist, the tag is automatically added.
  • Wrote a KeyList component for displaying tags. This new one had to be written because the previous one was not able to display a radio button which would be selected when that key is the default key for that provider. Behind the screens this new Keylist is a JTable with a custom TableCellRenderer, CellEditor and ItemListener.

    Creating the KeyList also required work arrounds for several bugs in Swing related to displaying interactive components in a JTable.

  • Created the New Key wizard, that creates a new SSH key and registers it with the CloudProvider.
  • Finished the Import key wizard, which allows the user to pick a keyfile from file. Also made the part that loads the available CloudProvider keys asynchronous.
  • Made it so when a connection to the server cannot be established, no graph is displayed in the server component and the "View statistics" and "Start terminal" options in the context menu are disabled.
  • Changed the appearance of the Toolbar-style buttons in e.g. Server Properties (the ones next to the labels). These were previously weirdly styled JButtons, but even after hours and hours of work, which included reading a paper about Nimbus (the Look & Feel I'm using), they still caused alignment problems (JButtons in Nimbus have invisible Borders which screw up my form layout when they're present but on the other hand they have to be present or the contents of the button will be obscured by the actual button edge).

    Currently these buttons are simple JLabels with an easy MouseListener to listen for clicks (which fires all ActionListeners) and mouse hovers. This change should also improve compatibility for people who can't use Nimbus (probably due to them not running the Oracle JRE).

  • Display the union of all selected servers their tags when displaying the properties of multiple servers.
  • Fixed bug that allowed you to add the same tag twice to the taglist.
  • Made a better Server size-selection slide in the Add Server Wizard. This slide knows the architecture you chose in the previous (Image) slide so it displays only relevant information. Information displayed per instance size includes number of CPU's, Memory and Hard drive size. I'm getting pretty good at writing ListCellRenderers...
  • And some other minor things...

Geen opmerkingen:

Een reactie plaatsen