Package View
Class EditBillView
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
View.EditBillView
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
The EditBillView class represents a graphical user interface for editing a bill's details.
It allows users to view and modify the name, price, reading, and date associated with a bill.
Users can navigate back, delete the bill, or save the changes made to the bill's information.
This class serves as part of the App's user interface and is used for managing bill details.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
Modifier and TypeFieldDescriptionprotected App
A reference to the main application instance, facilitating communication between the view and the application logic.private JButton
A button for navigating back to the previous screen.private JLabel
A label displaying the bill's date.private JButton
A button for deleting the bill.private JLabel
A label displaying the bill's name.private JLabel
A label displaying the bill's price.private JLabel
A label displaying the bill's reading.private JButton
A button for saving changes made to the bill's details.Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Constructor Summary
ConstructorDescriptionEditBillView
(App app, UtilityBill utilityBill) Constructs a new EditBillView. -
Method Summary
Modifier and TypeMethodDescriptionprivate JLabel
createEditableLabel
(String text) The createEditableLabel method generates an editable label with the specified text, font, alignment, and border.private JButton
createEditButton
(String text, JLabel targetLabel) The createEditButton method generates an edit button with the specified text, font, and functionality for modifying the content of a target JLabel when clicked.private JLabel
createFieldLabel
(String text) The createFieldLabel method generates a custom label with specified text, font, alignment, and border.private boolean
The isNumeric method checks whether a given string is a numeric value, which may include integers and floating-point numbers (with or without a sign).Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
app
A reference to the main application instance, facilitating communication between the view and the application logic. -
nameLabel
A label displaying the bill's name. -
priceLabel
A label displaying the bill's price. -
readingLabel
A label displaying the bill's reading. -
dateLabel
A label displaying the bill's date. -
backButton
A button for navigating back to the previous screen. -
deleteButton
A button for deleting the bill. -
saveButton
A button for saving changes made to the bill's details.
-
-
Constructor Details
-
EditBillView
Constructs a new EditBillView. Initializes the graphical user interface components, including labels and buttons, for viewing and editing bill details. It also sets up event listeners for user interactions.- Parameters:
app
- The main application instance to connect the view with the application logic.
-
-
Method Details
-
createFieldLabel
The createFieldLabel method generates a custom label with specified text, font, alignment, and border. This label is typically used alongside input fields to provide descriptive text or labels for user input.- Parameters:
text
- The text content of the label.text
- The text content to be displayed on the label.- Returns:
- A new JLabel customized with the specified text, font, alignment, and border settings.
- See Also:
-
createEditableLabel
The createEditableLabel method generates an editable label with the specified text, font, alignment, and border. This label is often used to display information that users can edit or modify.- Parameters:
text
- The text content of the editable label.text
- The text content to be displayed on the editable label.- Returns:
- A new JLabel customized with the specified text, font, alignment, and border settings.
- See Also:
-
createEditButton
The createEditButton method generates an edit button with the specified text, font, and functionality for modifying the content of a target JLabel when clicked.- Parameters:
text
- The text content of the edit button.targetLabel
- The JLabel whose content will be modified when the edit button is clicked.text
- The text content to be displayed on the edit button.targetLabel
- The JLabel whose content will be modified when the edit button is clicked.- Returns:
- A new JButton customized with the specified text, font, and action listener for editing a JLabel.
- See Also:
-
isNumeric
The isNumeric method checks whether a given string is a numeric value, which may include integers and floating-point numbers (with or without a sign).- Parameters:
str
- The input string to be checked for numeric content.str
- The string to be evaluated for numeric content.- Returns:
true
if the input string is a numeric value, andfalse
otherwise.- See Also:
-