Search in sources :

Example 1 with DateListener

use of delta.common.ui.swing.text.dates.DateListener in project lotro-companion by dmorcellet.

the class ProfessionStatusEditionPanelController method buildValidityDatePanel.

private JPanel buildValidityDatePanel() {
    _validityDate = new DateEditionController(DateFormat.getDateTimeCodec());
    JPanel panel = GuiFactory.buildPanel(new FlowLayout());
    panel.add(GuiFactory.buildLabel("Validity date:"));
    panel.add(_validityDate.getTextField());
    DateListener dateListener = new DateListener() {

        @Override
        public void dateChanged(DateEditionController controller, Long newDate) {
            _status.setValidityDate(newDate);
            triggerChartUpdateTimer();
        }
    };
    _validityDate.addListener(dateListener);
    return panel;
}
Also used : JPanel(javax.swing.JPanel) FlowLayout(java.awt.FlowLayout) DateListener(delta.common.ui.swing.text.dates.DateListener) DateEditionController(delta.common.ui.swing.text.dates.DateEditionController)

Example 2 with DateListener

use of delta.common.ui.swing.text.dates.DateListener in project lotro-companion by dmorcellet.

the class FactionStatusEditionPanelController method buildStatusEditionPanel.

private JPanel buildStatusEditionPanel() {
    JPanel panel = GuiFactory.buildPanel(new GridBagLayout());
    // Header row 1
    GridBagConstraints c = new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0);
    JLabel tier = GuiFactory.buildLabel("Rank");
    panel.add(tier, c);
    // Header row 2
    c.gridx = 1;
    c.gridy = 1;
    c.gridwidth = 1;
    panel.add(GuiFactory.buildLabel("Completed"), c);
    c.gridx++;
    panel.add(GuiFactory.buildLabel("XP"), c);
    c.gridx++;
    panel.add(GuiFactory.buildLabel("Completion date"), c);
    c.gridx++;
    c.gridy++;
    ActionListener l = new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            handleCompletionChange(e.getSource());
        }
    };
    DateListener dateListener = new DateListener() {

        @Override
        public void dateChanged(DateEditionController controller, Long newDate) {
            long date = (newDate != null) ? newDate.longValue() : 0;
            handleDateChange(controller, date);
        }
    };
    // Data rows
    Faction faction = _status.getFaction();
    for (FactionLevel level : faction.getLevels()) {
        FactionLevelStatus levelStatus = _status.getStatusForLevel(level);
        c.gridx = 0;
        JLabel tierLabel = GuiFactory.buildLabel(level.toString());
        panel.add(tierLabel, c);
        c.gridx++;
        FactionLevelEditionGadgets gadgets = new FactionLevelEditionGadgets(levelStatus);
        CheckboxController checkboxCtrl = gadgets.getCompleted();
        JCheckBox checkbox = checkboxCtrl.getCheckbox();
        panel.add(checkbox, c);
        checkbox.addActionListener(l);
        c.gridx++;
        panel.add(gadgets.getXp().getTextField(), c);
        c.gridx++;
        DateEditionController dateCompletion = gadgets.getCompletionDate();
        dateCompletion.addListener(dateListener);
        panel.add(dateCompletion.getTextField(), c);
        c.gridx++;
        _gadgets.add(gadgets);
        c.gridy++;
        if (level == faction.getInitialLevel()) {
            checkboxCtrl.setState(false);
        }
    }
    return panel;
}
Also used : JPanel(javax.swing.JPanel) GridBagConstraints(java.awt.GridBagConstraints) CheckboxController(delta.common.ui.swing.checkbox.CheckboxController) Insets(java.awt.Insets) GridBagLayout(java.awt.GridBagLayout) ActionEvent(java.awt.event.ActionEvent) JLabel(javax.swing.JLabel) FactionLevel(delta.games.lotro.lore.reputation.FactionLevel) JCheckBox(javax.swing.JCheckBox) ActionListener(java.awt.event.ActionListener) DateListener(delta.common.ui.swing.text.dates.DateListener) DateEditionController(delta.common.ui.swing.text.dates.DateEditionController) FactionLevelStatus(delta.games.lotro.character.reputation.FactionLevelStatus) Faction(delta.games.lotro.lore.reputation.Faction)

Example 3 with DateListener

use of delta.common.ui.swing.text.dates.DateListener in project lotro-companion by dmorcellet.

the class ProfessionStatusEditionPanelController method buildStatusEditionPanel.

private JPanel buildStatusEditionPanel() {
    JPanel panel = GuiFactory.buildPanel(new GridBagLayout());
    // Header row 1
    GridBagConstraints c = new GridBagConstraints(0, 0, 1, 2, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0);
    JLabel tier = GuiFactory.buildLabel("Tier");
    panel.add(tier, c);
    c.gridx = 1;
    c.gridwidth = 3;
    c.gridheight = 1;
    JLabel proficiency = GuiFactory.buildLabel("Proficiency");
    panel.add(proficiency, c);
    c.gridx = 4;
    c.gridwidth = 3;
    c.gridheight = 1;
    JLabel mastery = GuiFactory.buildLabel("Mastery");
    panel.add(mastery, c);
    // Header row 2
    c.gridx = 1;
    c.gridy = 1;
    c.gridwidth = 1;
    for (int i = 0; i < 2; i++) {
        panel.add(GuiFactory.buildLabel("Completed"), c);
        c.gridx++;
        panel.add(GuiFactory.buildLabel("XP"), c);
        c.gridx++;
        panel.add(GuiFactory.buildLabel("Completion date"), c);
        c.gridx++;
    }
    c.gridy++;
    ActionListener l = new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            handleCompletionChange(e.getSource());
        }
    };
    DateListener dateListener = new DateListener() {

        @Override
        public void dateChanged(DateEditionController controller, Long newDate) {
            long date = (newDate != null) ? newDate.longValue() : 0;
            handleDateChange(controller, date);
        }
    };
    // Data rows
    CraftingLevel[] levels = CraftingLevel.ALL_TIERS;
    for (CraftingLevel level : levels) {
        CraftingLevelStatus levelStatus = _status.getLevelStatus(level);
        c.gridx = 0;
        JLabel tierLabel = GuiFactory.buildLabel(level.toString());
        panel.add(tierLabel, c);
        c.gridx++;
        // Proficiency
        CraftingLevelTierStatus proficiencyStatus = levelStatus.getProficiency();
        CraftingLevelTierEditionGadgets proficiencyGadgets = new CraftingLevelTierEditionGadgets(proficiencyStatus);
        JCheckBox checkbox = proficiencyGadgets.getCompleted().getCheckbox();
        panel.add(checkbox, c);
        checkbox.addActionListener(l);
        c.gridx++;
        panel.add(proficiencyGadgets.getXp().getTextField(), c);
        c.gridx++;
        DateEditionController dateCompletion = proficiencyGadgets.getCompletionDate();
        dateCompletion.addListener(dateListener);
        panel.add(dateCompletion.getTextField(), c);
        c.gridx++;
        _proficiencyGadgets.add(proficiencyGadgets);
        // Mastery
        CraftingLevelTierStatus masteryStatus = levelStatus.getMastery();
        CraftingLevelTierEditionGadgets masteryGadgets = new CraftingLevelTierEditionGadgets(masteryStatus);
        checkbox = masteryGadgets.getCompleted().getCheckbox();
        panel.add(checkbox, c);
        checkbox.addActionListener(l);
        c.gridx++;
        panel.add(masteryGadgets.getXp().getTextField(), c);
        c.gridx++;
        dateCompletion = masteryGadgets.getCompletionDate();
        dateCompletion.addListener(dateListener);
        panel.add(dateCompletion.getTextField(), c);
        c.gridx++;
        _masteryGadgets.add(masteryGadgets);
        c.gridy++;
        if (level == CraftingLevel.BEGINNER) {
            proficiencyGadgets.getCompleted().setState(false);
            masteryGadgets.getCompleted().setState(false);
        }
    }
    return panel;
}
Also used : JPanel(javax.swing.JPanel) GridBagConstraints(java.awt.GridBagConstraints) Insets(java.awt.Insets) GridBagLayout(java.awt.GridBagLayout) ActionEvent(java.awt.event.ActionEvent) JLabel(javax.swing.JLabel) JCheckBox(javax.swing.JCheckBox) CraftingLevelTierStatus(delta.games.lotro.character.crafting.CraftingLevelTierStatus) ActionListener(java.awt.event.ActionListener) DateListener(delta.common.ui.swing.text.dates.DateListener) DateEditionController(delta.common.ui.swing.text.dates.DateEditionController) CraftingLevel(delta.games.lotro.lore.crafting.CraftingLevel) CraftingLevelStatus(delta.games.lotro.character.crafting.CraftingLevelStatus)

Aggregations

DateEditionController (delta.common.ui.swing.text.dates.DateEditionController)3 DateListener (delta.common.ui.swing.text.dates.DateListener)3 JPanel (javax.swing.JPanel)3 GridBagConstraints (java.awt.GridBagConstraints)2 GridBagLayout (java.awt.GridBagLayout)2 Insets (java.awt.Insets)2 ActionEvent (java.awt.event.ActionEvent)2 ActionListener (java.awt.event.ActionListener)2 JCheckBox (javax.swing.JCheckBox)2 JLabel (javax.swing.JLabel)2 CheckboxController (delta.common.ui.swing.checkbox.CheckboxController)1 CraftingLevelStatus (delta.games.lotro.character.crafting.CraftingLevelStatus)1 CraftingLevelTierStatus (delta.games.lotro.character.crafting.CraftingLevelTierStatus)1 FactionLevelStatus (delta.games.lotro.character.reputation.FactionLevelStatus)1 CraftingLevel (delta.games.lotro.lore.crafting.CraftingLevel)1 Faction (delta.games.lotro.lore.reputation.Faction)1 FactionLevel (delta.games.lotro.lore.reputation.FactionLevel)1 FlowLayout (java.awt.FlowLayout)1