edu.cmu.hcii.calo.SidebarWindow Class Reference

Inherits edu.cmu.hcii.calo.WinAppBar.

Inheritance diagram for edu.cmu.hcii.calo.SidebarWindow:

Inheritance graph
[legend]
Collaboration diagram for edu.cmu.hcii.calo.SidebarWindow:

Collaboration graph
[legend]
List of all members.

Detailed Description

The sidebar window itself.

This window hooks up all the controllers to the views, lays out the panes, handles the transition between sidebar and minibar mode, handles the collapsing and expanding of panes, and quite a lot more.

Author:
Brian Ellis


Panes

The various panes we show in the sidebar.

CALOComponent relevantStuffPaneView
 The relevant stuff pane visualization.
NotificationCenterView notificationCenterView
 The notification center visualization.
TaskPaneView taskPaneView
 The task pane visualization.
SchedulePaneView schedulePaneView
 The schedule pane visualization.
IconWellView iconWellView
 The icon well visualization.

Container Panes

Most panes need a title bar, a resize widget, and other such decorations.

These container panes provide those.

CALOPane relevantStuffPaneContainerPane
 The scrollable pane containing the relevant stuff pane.
CALOPane taskPaneContainerPane
 The scrollable pane containing the task pane.
CALOPane schedulePaneContainerPane
 The scrollable pane containing the schedule pane.
CALOPane notificationCenterContainerPane
 The pane containing the notification center.

Public Member Functions

 SidebarWindow (boolean isMiniaturized)
 Constructs a SidebarWindow in either full or minibar mode.
void closeWindow ()
 Closes the sidebar window.
void update ()
 Fix up the visual look of this sidebar.

Protected Attributes

Buttons
The buttons that show various panes in the minibar.

IconToggleButton taskPaneButton
IconToggleButton schedulePaneButton
IconToggleButton relevantStuffPaneButton

Private Member Functions

boolean isMiniaturized ()
 Returns whether the sidebar is in minibar mode.
void layoutFullSidebar ()
 Performs the layout of the full sidebar.
void layoutMinibar ()
 Performs the layout of the minibar.
void setMiniaturized (boolean isMiniaturized)
 Sets the mode of the sidebar to either full or minibar mode.
void setup ()
 Sets up the visual appearance of this window.

Private Attributes

boolean isMiniaturized
 Whether or not the sidebar is in minibar mode.
Map< Component, Dimension > oldPreferredSizes
 The map of components to their preferred sizes when not collapsed.
int fullSidebarWidth
 The current width of the full sidebar.
Other Controls
Miscellaneous controls that appear in the sidebar.

JDialog containerFrame
CALOPane currentlyVisiblePane
FlatButton sidebarMiniaturizeButton
Controllers
The controllers that control the various panes, as well as one for the sidebar itself.

SidebarController sidebarController
 Controls the sidebar display.
NotificationCenterController notificationCenterController
 Controls the notification center display.
TaskPaneController taskPaneController
 Controls the task pane display.
SchedulePaneController schedulePaneController
 Controls the schedule pane display.

Static Private Attributes

static final int FULLBAR_DEFAULT_WIDTH = 200
 The default width of the full sidebar.
static final int MINIBAR_WIDTH = 45
 The width of the minibar (cannot be changed by the user).
static final int MINIBAR_PANE_WIDTH = 300
 The width of panes that are shown from the minibar.
static final long serialVersionUID = 1L
 Prevent serialization collisions.

Classes

class  PaneButtonListener
 Listens for clicks on one of the buttons in the minibar that show and hide panes, and shows or hides the pane appopriately. More...
class  PaneExpansionListener
 Listens for property changes indicating that a pane has collapsed or expanded, and updates the sidebar accordingly. More...
class  PaneResizeListener
 Listens for property changes indicating that a pane's size has changed, and updates the sidebar accordingly. More...


Constructor & Destructor Documentation

edu.cmu.hcii.calo.SidebarWindow.SidebarWindow ( boolean  isMiniaturized  ) 

Constructs a SidebarWindow in either full or minibar mode.

Parameters:
isMiniaturized if true, the sidebar appears in minibar mode


Member Function Documentation

void edu.cmu.hcii.calo.SidebarWindow.closeWindow (  ) 

Closes the sidebar window.

void edu.cmu.hcii.calo.SidebarWindow.update (  ) 

Fix up the visual look of this sidebar.

boolean edu.cmu.hcii.calo.SidebarWindow.isMiniaturized (  )  [private]

Returns whether the sidebar is in minibar mode.

Returns:
true if the sidebar is miniaturized, false otherwise

void edu.cmu.hcii.calo.SidebarWindow.layoutFullSidebar (  )  [private]

Performs the layout of the full sidebar.

void edu.cmu.hcii.calo.SidebarWindow.layoutMinibar (  )  [private]

Performs the layout of the minibar.

void edu.cmu.hcii.calo.SidebarWindow.setMiniaturized ( boolean  isMiniaturized  )  [private]

Sets the mode of the sidebar to either full or minibar mode.

Parameters:
isMiniaturized true if the sidebar should go into minibar mode, false otherwise

void edu.cmu.hcii.calo.SidebarWindow.setup (  )  [private]

Sets up the visual appearance of this window.


Member Data Documentation

final int edu.cmu.hcii.calo.SidebarWindow.FULLBAR_DEFAULT_WIDTH = 200 [static, private]

The default width of the full sidebar.

final int edu.cmu.hcii.calo.SidebarWindow.MINIBAR_WIDTH = 45 [static, private]

The width of the minibar (cannot be changed by the user).

final int edu.cmu.hcii.calo.SidebarWindow.MINIBAR_PANE_WIDTH = 300 [static, private]

The width of panes that are shown from the minibar.

final long edu.cmu.hcii.calo.SidebarWindow.serialVersionUID = 1L [static, private]

Prevent serialization collisions.

Reimplemented from edu.cmu.hcii.calo.WinAppBar.

NotificationCenterView edu.cmu.hcii.calo.SidebarWindow.notificationCenterView [private]

The notification center visualization.

TaskPaneView edu.cmu.hcii.calo.SidebarWindow.taskPaneView [private]

The task pane visualization.

SchedulePaneView edu.cmu.hcii.calo.SidebarWindow.schedulePaneView [private]

The schedule pane visualization.

CALOComponent edu.cmu.hcii.calo.SidebarWindow.relevantStuffPaneView [protected]

The relevant stuff pane visualization.

IconWellView edu.cmu.hcii.calo.SidebarWindow.iconWellView [private]

The icon well visualization.

CALOPane edu.cmu.hcii.calo.SidebarWindow.taskPaneContainerPane [private]

The scrollable pane containing the task pane.

CALOPane edu.cmu.hcii.calo.SidebarWindow.schedulePaneContainerPane [private]

The scrollable pane containing the schedule pane.

CALOPane edu.cmu.hcii.calo.SidebarWindow.notificationCenterContainerPane [private]

The pane containing the notification center.

CALOPane edu.cmu.hcii.calo.SidebarWindow.relevantStuffPaneContainerPane [protected]

The scrollable pane containing the relevant stuff pane.

SidebarController edu.cmu.hcii.calo.SidebarWindow.sidebarController [private]

Controls the sidebar display.

NotificationCenterController edu.cmu.hcii.calo.SidebarWindow.notificationCenterController [private]

Controls the notification center display.

TaskPaneController edu.cmu.hcii.calo.SidebarWindow.taskPaneController [private]

Controls the task pane display.

SchedulePaneController edu.cmu.hcii.calo.SidebarWindow.schedulePaneController [private]

Controls the schedule pane display.

boolean edu.cmu.hcii.calo.SidebarWindow.isMiniaturized [private]

Whether or not the sidebar is in minibar mode.

Map<Component, Dimension> edu.cmu.hcii.calo.SidebarWindow.oldPreferredSizes [private]

The map of components to their preferred sizes when not collapsed.

int edu.cmu.hcii.calo.SidebarWindow.fullSidebarWidth [private]

The current width of the full sidebar.


The documentation for this class was generated from the following file:
Generated on Mon Aug 13 15:06:12 2007 for CALO by  doxygen 1.5.2