Changeset 91 in tmcsimulator-scriptbuilder


Ignore:
Timestamp:
08/28/2017 03:39:34 PM (9 years ago)
Author:
bmcguffin
Message:

Added functionality for popup menu options: "Events", "Properties", "Delete".

Fixed a bug where closing the properties window without altering the incident number would display an error message.

Location:
trunk/src/scriptbuilder/gui
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/scriptbuilder/gui/ScriptBuilderFrame.java

    r89 r91  
    15561556            script.incidents.get(oldIncidentIndex).description = addIncidentDescription.getText(); 
    15571557            script.incidents.get(oldIncidentIndex).setOffset(((int) addIncidentStart.getValue()) * 60); 
    1558             if (!scriptContainsLogNum(script, (int) addIncidentNumber.getValue())) 
     1558            if ((int) addIncidentNumber.getValue() == script.incidents.get(oldIncidentIndex).number 
     1559                    || !scriptContainsLogNum(script, (int) addIncidentNumber.getValue())) 
    15591560            { 
    15601561                script.incidents.get(oldIncidentIndex).number = (int) addIncidentNumber.getValue(); 
     
    17021703        if (i != null) 
    17031704        { 
    1704             editingIncident = true; 
    1705             oldIncidentIndex = script.incidents.indexOf(i); 
    1706  
    1707             addIncidentName.setText(i.name); 
    1708             addIncidentNumber.setValue(i.number); 
    1709             addIncidentStart.setValue(i.offset / 60); 
    1710             addIncidentLength.setValue(i.length / 60); 
    1711             incidentColorField.setBackground(i.color); 
    1712             selectedColor = i.color; 
    1713             addIncidentDescription.setText(i.description); 
    1714  
    1715             incidentFrame.setVisible(true); 
     1705            incidentDetailsScreen(i); 
    17161706        } 
    17171707    }//GEN-LAST:event_incidentDetailsActionPerformed 
     1708 
     1709    public void incidentDetailsScreen(ScriptIncident i) 
     1710    { 
     1711        editingIncident = true; 
     1712        oldIncidentIndex = script.incidents.indexOf(i); 
     1713 
     1714        addIncidentName.setText(i.name); 
     1715        addIncidentNumber.setValue(i.number); 
     1716        addIncidentStart.setValue(i.offset / 60); 
     1717        addIncidentLength.setValue(i.length / 60); 
     1718        incidentColorField.setBackground(i.color); 
     1719        selectedColor = i.color; 
     1720        addIncidentDescription.setText(i.description); 
     1721 
     1722        incidentFrame.setVisible(true); 
     1723    } 
    17181724 
    17191725    /** 
     
    19801986                this, 
    19811987                "Select Incident:", 
    1982                 "Save Incident", 
     1988                "Delete Incident", 
    19831989                JOptionPane.PLAIN_MESSAGE, 
    19841990                null, 
  • trunk/src/scriptbuilder/gui/panels/IncidentTimelinePanel.java

    r90 r91  
    130130            public void actionPerformed(ActionEvent e) 
    131131            { 
    132                 JOptionPane.showMessageDialog(null, e.getActionCommand() + " will be handled here."); 
     132                JFrame topFrame = (JFrame) getTopLevelAncestor(); 
     133                if (topFrame instanceof ScriptBuilderFrame) 
     134                { 
     135                    SimulationScript script = ((ScriptBuilderFrame) topFrame).getScript(); 
     136                    if (e.getActionCommand().equals("Edit Events")) 
     137                    { 
     138                        IncidentEditorFrame editor = new IncidentEditorFrame(incident); 
     139                        script.addObserver(editor); 
     140                        editor.setVisible(true); 
     141                        ((ScriptBuilderFrame) topFrame).update(script, script); 
     142                    } 
     143                    if (e.getActionCommand().equals("Modify Incident Properties")) 
     144                    { 
     145                        ((ScriptBuilderFrame) topFrame).incidentDetailsScreen(incident); 
     146                        ((ScriptBuilderFrame) topFrame).update(script, script); 
     147                    } 
     148                    if (e.getActionCommand().equals("Delete Incident")) 
     149                    { 
     150                        int confirm = JOptionPane.showConfirmDialog(((ScriptBuilderFrame) topFrame), 
     151                                "Are you sure you want to delete " + incident.toString() + "?"); 
     152                        if (confirm == JOptionPane.YES_OPTION) 
     153                        { 
     154                            script.incidents.remove(incident); 
     155                            script.incidents.add(null); 
     156                            ((ScriptBuilderFrame) topFrame).update(script, script); 
     157                        } 
     158                    } 
     159                } 
     160                topFrame.repaint(); 
    133161            } 
    134162        } 
Note: See TracChangeset for help on using the changeset viewer.