Skip to content

Commit 116b2ce

Browse files
authored
Add files via upload
1 parent cb6da04 commit 116b2ce

File tree

84 files changed

+57757
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

84 files changed

+57757
-0
lines changed
1.28 KB
Binary file not shown.
2.18 KB
Binary file not shown.

version24/TAEditDialog.class

2.17 KB
Binary file not shown.

version24/TAEditDialog.java

Lines changed: 151 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,151 @@
1+
import java.awt.*;
2+
import java.awt.event.*;
3+
import javax.swing.*;
4+
import javax.swing.event.*;
5+
6+
import javax.swing.border.Border;
7+
import java.util.EventObject;
8+
import java.util.Vector;
9+
import java.io.*;
10+
11+
/******************************
12+
* Copyright (c) 2003,2019 Kevin Lano
13+
* This program and the accompanying materials are made available under the
14+
* terms of the Eclipse Public License 2.0 which is available at
15+
* http://www.eclipse.org/legal/epl-2.0
16+
*
17+
* SPDX-License-Identifier: EPL-2.0
18+
* *****************************/
19+
20+
class TAEditDialog extends JDialog
21+
{ private JPanel bottom;
22+
private JButton okButton, cancelButton;
23+
private DialogPanel dialogPanel;
24+
25+
26+
private String defaultName;
27+
private boolean defaultInit;
28+
private String defaultInv;
29+
30+
private String newName;
31+
private boolean newInit;
32+
private String newInv;
33+
34+
public TAEditDialog(JFrame owner)
35+
{ super(owner, true);
36+
setTitle("Edit Time Annotation");
37+
okButton = new JButton("Ok");
38+
cancelButton = new JButton("Cancel");
39+
ButtonHandler bHandler = new ButtonHandler();
40+
okButton.addActionListener(bHandler);
41+
cancelButton.addActionListener(bHandler);
42+
bottom = new JPanel();
43+
bottom.add(okButton);
44+
bottom.add(cancelButton);
45+
bottom.setBorder(BorderFactory.createEtchedBorder());
46+
dialogPanel = new DialogPanel();
47+
getContentPane().setLayout(new BorderLayout());
48+
getContentPane().add(bottom, BorderLayout.SOUTH);
49+
getContentPane().add(dialogPanel, BorderLayout.CENTER);
50+
}
51+
52+
public void setOldFields(String ev, boolean init)
53+
{ defaultName = ev;
54+
defaultInit = init;
55+
dialogPanel.setOldFields(ev,init);
56+
}
57+
58+
public void setFields(String ev, String inv, boolean i)
59+
{ newName = ev;
60+
newInit = i;
61+
newInv = inv;
62+
}
63+
64+
public String getName() { return newName; }
65+
public boolean getInit() { return newInit; }
66+
public String getInv() { return newInv; }
67+
68+
class DialogPanel extends JPanel
69+
{ private JLabel nameLabel;
70+
JTextField nameField; /* State name */
71+
72+
private JLabel invLabel;
73+
JTextField invField; /* State invariant */
74+
75+
private JLabel entryLabel;
76+
JTextField entryField; /* State entry action */
77+
78+
JCheckBox initBox, notinitBox;
79+
private JPanel initPanel;
80+
private ButtonGroup group;
81+
82+
public DialogPanel()
83+
{ nameLabel = new JLabel("Time:");
84+
nameField = new JTextField();
85+
invLabel = new JLabel("Condition:");
86+
invField = new JTextField();
87+
initPanel = new JPanel();
88+
initBox = new JCheckBox("<<forall>>");
89+
notinitBox = new JCheckBox("<<exists>>",true);
90+
initPanel.add(initBox);
91+
initPanel.add(notinitBox);
92+
initPanel.setBorder(
93+
BorderFactory.createTitledBorder("Stereotype"));
94+
group = new ButtonGroup();
95+
group.add(initBox);
96+
group.add(notinitBox);
97+
98+
add(nameLabel);
99+
add(nameField);
100+
add(invLabel);
101+
add(invField);
102+
add(initPanel);
103+
}
104+
105+
public void setOldFields(String nme, boolean init)
106+
{ nameField.setText(nme);
107+
if (init)
108+
{ initBox.setSelected(true); }
109+
else
110+
{ notinitBox.setSelected(true); }
111+
}
112+
113+
public Dimension getPreferredSize()
114+
{ return new Dimension(350,160); }
115+
116+
public Dimension getMinimumSize()
117+
{ return new Dimension(350,160); }
118+
119+
public void doLayout()
120+
{ nameLabel.setBounds(10,10,60,30);
121+
nameField.setBounds(70,15,270,20);
122+
invLabel.setBounds(10,40,60,30);
123+
invField.setBounds(70,45,270,20);
124+
initPanel.setBounds(10,80,330,50);
125+
}
126+
127+
public void reset()
128+
{ nameField.setText("");
129+
notinitBox.setSelected(true);
130+
}
131+
} /* inner class */
132+
133+
class ButtonHandler implements ActionListener
134+
{ public void actionPerformed(ActionEvent ev)
135+
{ JButton button = (JButton) ev.getSource();
136+
String label = button.getText();
137+
if ("Ok".equals(label))
138+
{ setFields(dialogPanel.nameField.getText(),
139+
dialogPanel.invField.getText(),
140+
dialogPanel.initBox.isSelected());
141+
}
142+
else
143+
{ setFields(null,null,false); }
144+
145+
dialogPanel.reset();
146+
setVisible(false);
147+
}
148+
}
149+
}
150+
151+

version24/TableCell.class

196 Bytes
Binary file not shown.

version24/TempInvDialogPanel.class

3.1 KB
Binary file not shown.
1.2 KB
Binary file not shown.

version24/TempInvEditDialog.class

3.06 KB
Binary file not shown.

version24/TempInvEditDialog.java

Lines changed: 239 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,239 @@
1+
import java.awt.*;
2+
import java.awt.event.*;
3+
import javax.swing.*;
4+
import javax.swing.event.*;
5+
6+
import javax.swing.border.*;
7+
import java.util.EventObject;
8+
import java.util.Vector;
9+
import java.util.StringTokenizer;
10+
import java.io.*;
11+
12+
/******************************
13+
* Copyright (c) 2003,2019 Kevin Lano
14+
* This program and the accompanying materials are made available under the
15+
* terms of the Eclipse Public License 2.0 which is available at
16+
* http://www.eclipse.org/legal/epl-2.0
17+
*
18+
* SPDX-License-Identifier: EPL-2.0
19+
* *****************************/
20+
21+
class TempInvEditDialog extends JDialog
22+
{
23+
JPanel bottom;
24+
JButton okButton, cancelButton;
25+
TempInvDialogPanel dialogPanel;
26+
String defaultOp = "";
27+
String defaultCond = "";
28+
String defaultEffect = "";
29+
boolean defaultisSys = true;
30+
boolean defaultisCrit = false;
31+
32+
Vector newOp = new Vector();
33+
String newCond;
34+
String newEffect;
35+
boolean newisSys;
36+
boolean newisCrit;
37+
38+
TempInvEditDialog(JFrame owner)
39+
{ super(owner,
40+
"Edit/Create Temporal Invariant", true);
41+
okButton = new JButton("Ok");
42+
cancelButton = new JButton("Cancel");
43+
ButtonHandler bHandler = new ButtonHandler();
44+
okButton.addActionListener(bHandler);
45+
cancelButton.addActionListener(bHandler);
46+
47+
bottom = new JPanel();
48+
bottom.add(okButton);
49+
bottom.add(cancelButton);
50+
bottom.setBorder(
51+
BorderFactory.createEtchedBorder());
52+
dialogPanel = new TempInvDialogPanel();
53+
getContentPane().setLayout(new BorderLayout());
54+
getContentPane().add(bottom, BorderLayout.SOUTH);
55+
getContentPane().add(dialogPanel,
56+
BorderLayout.CENTER); }
57+
58+
public void setOldFields(Vector op, String c,
59+
String e, boolean isSys,
60+
boolean isCrit)
61+
{ defaultOp = "";
62+
for (int i = 0; i < op.size(); i++)
63+
{ defaultOp =
64+
defaultOp + (String) op.get(i) + " "; }
65+
defaultCond = c;
66+
defaultEffect = e;
67+
defaultisSys = isSys;
68+
defaultisCrit = isCrit;
69+
dialogPanel.setOldFields(defaultOp, c,e,isSys,isCrit); }
70+
71+
public void setFields(String op, String c, String e,
72+
boolean isSys, boolean isCrit)
73+
{ StringTokenizer st = new StringTokenizer(op);
74+
newOp = new Vector();
75+
76+
if (op == null)
77+
{ newOp = null; }
78+
else
79+
{ while (st.hasMoreTokens())
80+
{ newOp.add((String) st.nextToken()); }
81+
}
82+
83+
newCond = c;
84+
newEffect = e;
85+
newisSys = isSys;
86+
newisCrit = isCrit; }
87+
88+
public Vector getOp() { return newOp; }
89+
90+
public String getCond() { return newCond; }
91+
92+
public String getEffect() { return newEffect; }
93+
94+
public boolean isSystem() { return newisSys; }
95+
96+
public boolean isCritical() { return newisCrit; }
97+
98+
class ButtonHandler implements ActionListener
99+
{ public void actionPerformed(ActionEvent ev)
100+
{ JButton button = (JButton) ev.getSource();
101+
String label = button.getText();
102+
if ("Ok".equals(label))
103+
{ setFields(dialogPanel.getOp(),
104+
dialogPanel.getCond(),
105+
dialogPanel.getEffect(),
106+
dialogPanel.isSystem(),
107+
dialogPanel.isCritical()); }
108+
else
109+
{ setFields(null, null, null, true, false); }
110+
dialogPanel.reset();
111+
setVisible(false);
112+
}
113+
}
114+
}
115+
116+
class TempInvDialogPanel extends JPanel
117+
{ JLabel opLabel;
118+
JTextField opField; /* Modal ops */
119+
JLabel condLabel;
120+
JTextField condField;
121+
JLabel effectLabel;
122+
JTextField effectField;
123+
124+
JPanel envPanel;
125+
ButtonGroup bg1;
126+
JCheckBox systemInv;
127+
JCheckBox environmentInv;
128+
129+
JPanel critPanel;
130+
ButtonGroup bg2;
131+
JCheckBox noncriticalInv;
132+
JCheckBox criticalInv;
133+
134+
TempInvDialogPanel()
135+
{ envPanel = new JPanel();
136+
bg1 = new ButtonGroup();
137+
systemInv = new JCheckBox("System", true);
138+
environmentInv =
139+
new JCheckBox("Environment");
140+
bg1.add(systemInv);
141+
bg1.add(environmentInv);
142+
envPanel.add(systemInv);
143+
envPanel.add(environmentInv);
144+
envPanel.setBorder(
145+
BorderFactory.createTitledBorder(
146+
"System Requirement or Environment " +
147+
"Assumption?"));
148+
149+
critPanel = new JPanel();
150+
bg2 = new ButtonGroup();
151+
noncriticalInv =
152+
new JCheckBox("Non-critical", true);
153+
criticalInv =
154+
new JCheckBox("Critical");
155+
bg2.add(noncriticalInv);
156+
bg2.add(criticalInv);
157+
critPanel.add(noncriticalInv);
158+
critPanel.add(criticalInv);
159+
critPanel.setBorder(
160+
BorderFactory.createTitledBorder(
161+
"Critical (eg: Safety) or " +
162+
"Non-critical?"));
163+
164+
opLabel = new JLabel("Modalities:");
165+
opField = new JTextField();
166+
condLabel = new JLabel("Assumption:");
167+
condField = new JTextField();
168+
effectLabel = new JLabel("Conclusion:");
169+
effectField = new JTextField();
170+
setBorder(
171+
BorderFactory.createTitledBorder(
172+
"Temporal invariant: " +
173+
"Assumption => Modalities(Conclusion)"));
174+
add(condLabel);
175+
add(condField);
176+
add(opLabel);
177+
add(opField);
178+
add(effectLabel);
179+
add(effectField);
180+
add(envPanel);
181+
add(critPanel); }
182+
183+
public void setOldFields(String op, String c,
184+
String e, boolean isSys,
185+
boolean isCrit)
186+
{ opField.setText(op);
187+
condField.setText(c);
188+
effectField.setText(e);
189+
systemInv.setSelected(isSys);
190+
criticalInv.setSelected(isCrit); }
191+
192+
public Dimension getPreferredSize()
193+
{ return new Dimension(410,250); }
194+
195+
public Dimension getMinimumSize()
196+
{ return new Dimension(410,250); }
197+
198+
public void doLayout()
199+
{ condLabel.setBounds(10,10,90,30);
200+
condField.setBounds(100,15,300,20);
201+
opLabel.setBounds(10,40,90,30);
202+
opField.setBounds(100,45,300,20);
203+
effectLabel.setBounds(10,70,90,30);
204+
effectField.setBounds(100,75,300,20);
205+
envPanel.setBounds(10,110,390,50);
206+
critPanel.setBounds(10,170,390,50); }
207+
208+
209+
public void reset()
210+
{ opField.setText("");
211+
condField.setText("");
212+
effectField.setText("");
213+
systemInv.setSelected(true);
214+
criticalInv.setSelected(false); }
215+
216+
public String getOp()
217+
{ return opField.getText(); }
218+
219+
public String getCond()
220+
{ return condField.getText(); }
221+
222+
public String getEffect()
223+
{ return effectField.getText(); }
224+
225+
public boolean isSystem()
226+
{ return systemInv.isSelected(); }
227+
228+
public boolean isCritical()
229+
{ return criticalInv.isSelected(); }
230+
}
231+
232+
233+
234+
235+
236+
237+
238+
239+

version24/TemplateExp.class

1.21 KB
Binary file not shown.

0 commit comments

Comments
 (0)