Package Diagram “user_interface”
user_interface
Description:
Contains classes composing the UI system
Author:
Peter Coad
Number:
3.1
Note1:
To activate the persistence aspect of this example, see the demoguide html file. This will help you set up the database. This UI class has a "USE_DB" static variable to turn persistence functionality on and off.
Links To: Class POSFrame
Note2:
This is where the main UI application is started from.
Links To: Class CashSalesApp
Note3:
These "PD" classes show how the UI class makes use of the PD classes.
Links To: Class CashSale, Class CashSaleDetail, Class ProductDesc
Note4:
To work with the UI Design view for this sample, first rebuild the project. This enables the POSFrame class to be displayed correctly in UI Designer.
Links To: Class POSFrame
URL Links
.\Requirements\UI-prototype.png
Diagram Node Summary
Class: Imported. This represents the overall transaction record of the sale.
Class: Imported. The detail class holds the association-level information.
Class: This is a sample that was based on the JMCU CashSale component built into the Together tool.
Class: This is a sample that was based on the JMCU CashSale component built into the Together tool.
Class: This is a sample that was based on the JMCU CashSale component built into Together Components.
Class: Imported. This class represents the catalog-like description of the product being sold.
Class: Create a model of the data.
Diagram Node Detail
Class "CashSale"
Imported from:
Package Diagram problem_domain
This represents the overall transaction record of the sale.
See Also:  Detailed Documentation, Class Documentation
Local Links
Aggregation
to Class CashSaleDetail
This is the list of sale details (line items)
Attribute:
detailList
associates:
problem_domain.CashSaleDetail
Supplier Cardinality:
1..*

Class "CashSaleDetail"
Imported from:
Package Diagram problem_domain
The detail class holds the association-level information.
See Also:  Detailed Documentation, Class Documentation
Local Links
Association
to Class ProductDesc
This is the item being scanned in/sold. This object holds all the pertinent details.
Attribute:
product
Client Cardinality:
0..*
Supplier Cardinality:
1

Class "CashSalesApp"
This is a sample that was based on the JMCU CashSale component built into the Together tool. This presents a simple GUI and shows how we can tie it into the PD classes.

Author:
TogetherSoft
Version:
1.0
Stereotype:
ui-component
See Also:  Class Documentation
All Outgoing Links
Dependency
to Class POSFrame

Class "POSFrame"
This is a sample that was based on the JMCU CashSale component built into the Together tool. This presents a simple GUI and shows how we can tie it into the PD classes.
robustness:
Boundary
subtitle:
The std cashier UI
Stereotype:
ui-component
Author:
TogetherSoft
See Also:  Class Documentation
All Outgoing Links
Generalization
to Class JFrame
Association
to Class ArrayList
List of store items
Attribute:
products
Association
to Class ArrayList
List of Cashiers
Attribute:
cashiers
Association
to Class BorderLayout
Attribute:
borderLayout1
Association
to Class BorderLayout
Attribute:
borderLayout2
Association
to Class BorderLayout
Attribute:
borderLayout3
Association
to Class CashSale
Problem Domain Object
Attribute:
currentSale
Association
to Class DMServer (in Package Diagram server)
Database handle
Attribute:
dmServer
Association
to Class GridLayout
Attribute:
gridLayout1
Association
to Class ImageIcon
Attribute:
imageHelp
Association
to Class JButton
Attribute:
jButtonScan
Association
to Class JButton
Attribute:
jButtonNewSale
Association
to Class JButton
Attribute:
jButtonCancel
Association
to Class JButton
Attribute:
jButtonPayment
Association
to Class JButton
Attribute:
jButtonTotal
Association
to Class JLabel
Attribute:
statusBar
Association
to Class JLabel
Attribute:
jLabel1
Association
to Class JLabel
Attribute:
jLabel2
Association
to Class JLabel
Attribute:
jLabel3
Association
to Class JLabel
Attribute:
jLabel4
Association
to Class JLabel
Attribute:
jLabelCashier
Association
to Class JLabel
Attribute:
jLabel6
Association
to Class JLabel
Attribute:
jLabelTimeStamp
Association
to Class JLabel
Attribute:
jLabel8
Association
to Class JMenu
Attribute:
menuFile
Association
to Class JMenu
Attribute:
menuView
Association
to Class JMenu
Attribute:
menuHelp
Association
to Class JMenuBar
Attribute:
menuBar1
Association
to Class JMenuItem
Attribute:
menuFileExit
Association
to Class JMenuItem
Attribute:
menuViewListAll
Association
to Class JMenuItem
Attribute:
menuHelpAbout
Association
to Class JPanel
Attribute:
jPanel1
Association
to Class JPanel
Attribute:
jPanelScan
Association
to Class JPanel
Attribute:
jPanelDetails
Association
to Class JPanel
Attribute:
jPanelCompleteSale
Association
to Class JScrollPane
Attribute:
jScrollPaneDetails
Association
to Class JTable
Attribute:
jTableSaleDetails
Association
to Class JTextField
Attribute:
jTextFieldItem
Association
to Class JTextField
Attribute:
jTextFieldSubTotal
Association
to Class JTextField
Attribute:
jTextFieldTax
Association
to Class JTextField
Attribute:
jTextFieldPayment
Association
to Class JTextField
Attribute:
jTextFieldTotal
Association
to Class JTextField
Attribute:
jTextFieldChange
Association
to Class JToolBar
Attribute:
toolBar
Association
to Class NumberFormat
Format helper
Attribute:
currencyFormat
Association
to Class SimpleDateFormat
Format helper
Attribute:
dateFormat

Class "POSFrame_AboutBox"
This is a sample that was based on the JMCU CashSale component built into Together Components. This presents a simple GUI and shows how we can tie it into the PD classes.
Author:
TogetherSoft
Stereotype:
ui-component
See Also:  Class Documentation
All Outgoing Links
Generalization
to Class JDialog
Implementation
to Interface ActionListener
Association
to Class BorderLayout
Attribute:
borderLayout1
Association
to Class BorderLayout
Attribute:
borderLayout2
Association
to Class FlowLayout
Attribute:
flowLayout1
Association
to Class FlowLayout
Attribute:
flowLayout2
Association
to Class GridLayout
Attribute:
gridLayout1
Association
to Class ImageIcon
Attribute:
imageIcon
Association
to Class JButton
Attribute:
button1
Association
to Class JLabel
Attribute:
imageControl1
Association
to Class JLabel
Attribute:
label1
Association
to Class JLabel
Attribute:
label2
Association
to Class JLabel
Attribute:
label3
Association
to Class JLabel
Attribute:
label4
Association
to Class JPanel
Attribute:
panel1
Association
to Class JPanel
Attribute:
panel2
Association
to Class JPanel
Attribute:
insetsPanel1
Association
to Class JPanel
Attribute:
insetsPanel2
Association
to Class JPanel
Attribute:
insetsPanel3
Association
to Class String
Attribute:
product
Association
to Class String
Attribute:
version
Association
to Class String
Attribute:
copyright
Association
to Class String
Attribute:
comments

Class "ProductDesc"
Imported from:
Package Diagram problem_domain
This class represents the catalog-like description of the product being sold.
See Also:  Detailed Documentation, Class Documentation

Class "TableDataModel"
Create a model of the data. NOTE: We could have built our own local vector to store the sale detail objects, but we are using the GUI object's own instance of a CashSale object to access the information pertaining to its collection of SaleDetails.
See Also:  Class Documentation
All Outgoing Links
Generalization
to Class AbstractTableModel
Association
to Class CashSale
Problem Domain Object
Attribute:
currentSale
Association
to Class NumberFormat
Attribute:
currencyFormat
Association
to Class String
Sale Detail Table Column Header
Attribute:
colNames