1 /*
2 J-Bird net/sourceforge/jbird/NewRegion.java
3
4 Copyright 2001, 2002, 2003 Dick Repasky
5 */
6 package net.sourceforge.jbird;
7
8 import java.awt.Frame;
9 import java.sql.SQLException;
10 import java.text.MessageFormat;
11 import java.util.ResourceBundle;
12
13 import net.sourceforge.jbird.awt.SimpleDialog;
14 import net.sourceforge.jbird.iface.IntegerListener;
15 import net.sourceforge.jbird.iface.LogListener;
16
17 /**
18 * Dialog for entering name of a new region.
19 * @author Dick Repasky
20 *
21 */
22
23 class NewRegion extends SimpleDialog {
24 private IntegerListener client;
25 private JbirdDB dbase;
26 private LogListener log;
27 private ResourceBundle progres;
28
29 public NewRegion(JbirdDB db, ResourceBundle rb,
30 LogListener logger,
31 IntegerListener listener, Frame owner) {
32 super(owner);
33 client = listener;
34 dbase = db;
35 log = logger;
36 progres = rb;
37 setTitle(progres.getString("Add_New_Reg"));
38 }
39
40 public void cancelTransaction() {
41 client.receiveInteger(-1);
42 dispose();
43 }
44
45 public void completeTransaction() {
46 String request = textfield.getText();
47 int answer;
48 answer = dbase.addNewRegion(request);
49 if (answer == -2) {
50 log.popupError(progres.getString("Internal_db_error"),
51 true);
52 return;
53 }
54 Object[] oba = new Object[2];
55 oba[0] = progres.getString("Region");
56 oba[1] = request;
57 if (answer == -1) {
58 log.popupError(MessageFormat.format(
59 progres.getString("Already_exists"), oba),
60 true);
61 return;
62 } else {
63 log.trace(MessageFormat.format
64 (progres.getString("Added"), oba));
65 }
66 client.receiveInteger(answer);
67 dispose();
68 }
69
70 }