xl-project/doc/diagramOffGui.md
2024-05-11 19:49:12 +02:00

2.1 KiB

---
title: gui
---
classDiagram
    class JPanel
    class BorderPanel {
        #Borderpanel()
    }
    class SheetPanel {
        +SheetPanel(int rows, int columns)
    }
    class StatusPanel {
        #StatusPanel(StatusLabel statusLabel)
    }
    class GridPanel {
        +GridPanel(int rows, int columns)
    }
    class RowLabels {
        -RowLabels(int row)
    }
    class SlotLabels {
        -List~SlotLabel~ labelList
        +SlotLabels(int rows, int cols)
    }

    JPanel <|-- BorderPanel
    JPanel <|-- GridPanel
    GridPanel <|-- RowLabels
    BorderPanel <|-- SheetPanel 
    BorderPanel <|-- StatusPanel
    GridPanel <|-- SlotLabels
classDiagram
    class JLabel
    class Observer
    class ColoredLabel {
        +ColoredLabel(String text)
        +ColoredLabel(String text, Color color)
        +ColoredLabel(String text, Color color, int alignment)
    }
    class SlotLabel {
        +SlotLabel()
    }
    class CurrentLabel {
        +CurrentLabel()
    }
    class StatusLabel {
        +StatusLabel()
        +update(Observable observable, Object object)
    } 

    <<interface>> Observer

    ColoredLabel <|-- SlotLabel   
    JLabel <|-- ColoredLabel
    ColoredLabel <|-- CurrentLabel
    ColoredLabel <|-- StatusLabel
    Observer <-- StatusLabel
classDiagram
    class JFrame
    class XL {
        -static final int ROWS = 10, COLUMNS = 8
        -XLCounter counter
        -StatusLabel statusLabel
        -XLList xlList
        +XL(XL oldXL)
        +XL(XLList xlList, XLCounter counter)
        +rename(String title)
        +main(String[] args)
    }
    class JTextField
    class Editor {
        +Editor()
    }
    class XLCounter {
        -int counter
        +increment()
        +toString()
    }
    class Observable
    class Iterable
    class XLList {
        -List~XL~ list
        +add(XL xl) 
        +isEmpty() boolean
        +iterator() Iterator~XL~
        +last() XL
        +remove(Xl xl)
        +setChanged()
    }

    <<interface>> Iterable

    JTextField <|-- Editor
    JFrame <|-- XL
    Observable <|-- XLList
    Iterable <-- XLList