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.AccessibleJPanelNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected AppA reference to the main application instance, facilitating communication between the view and the application logic.private JButtonA button for navigating back to the previous screen.private JLabelA label displaying the bill's date.private JButtonA button for deleting the bill.private JLabelA label displaying the bill's name.private JLabelA label displaying the bill's price.private JLabelA label displaying the bill's reading.private JButtonA 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_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
ConstructorsConstructorDescriptionEditBillView(App app, UtilityBill utilityBill) Constructs a new EditBillView. -
Method Summary
Modifier and TypeMethodDescriptionprivate JLabelcreateEditableLabel(String text) The createEditableLabel method generates an editable label with the specified text, font, alignment, and border.private JButtoncreateEditButton(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 JLabelcreateFieldLabel(String text) The createFieldLabel method generates a custom label with specified text, font, alignment, and border.private booleanThe 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, updateUIMethods 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, updateMethods 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, validateTreeMethods 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:
trueif the input string is a numeric value, andfalseotherwise.- See Also:
-