home *** CD-ROM | disk | FTP | other *** search
Wrap
package sun.awt.motif; import java.awt.Button; import java.awt.Checkbox; import java.awt.CheckboxGroup; import java.awt.Component; import java.awt.Container; import java.awt.Dialog; import java.awt.Event; import java.awt.FlowLayout; import java.awt.Font; import java.awt.Frame; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.GridLayout; import java.awt.Insets; import java.awt.Label; import java.awt.Panel; import java.awt.PrintJob; import java.awt.TextField; import java.awt.Window; import java.util.MissingResourceException; import java.util.ResourceBundle; class UPrintDialog extends Dialog { public static final int WAITING = 0; public static final int PRINT = 1; public static final int CANCELLED = 2; public int printStatus = 0; private PrintControl printControl; private PrintJob printJob; private int destType; private int orientation; private int paperSize; private Label docTitle; private NumericField copiesField; private CheckboxGroup destCBG; private Checkbox[] destCB = new Checkbox[2]; private TextField[] destField = new TextField[2]; private static int FIELD_LEN = 28; private Label bannerLbl; private TextField bannerField; private Label optionsLbl; private TextField optionsField; private CheckboxGroup orientCBG; private Checkbox[] orientCB = new Checkbox[2]; private CheckboxGroup paperCBG; private Checkbox[] paperCB = new Checkbox[4]; private Button printButton; private Button cancelButton; private static final String PRINT_LABEL = new String(getMsg("button.print")); private static final String CANCEL_LABEL = new String(getMsg("button.cancel")); private static ResourceBundle messageRB; static void initResource() { try { messageRB = ResourceBundle.getBundle("sun.awt.motif.resources.updialog"); } catch (MissingResourceException var0) { throw new Error("Fatal: Resource for PrintDialog is missing."); } } static String getMsg(String var0) { if (messageRB == null) { initResource(); } try { return messageRB.getString(var0); } catch (MissingResourceException var1) { throw new Error("Fatal: Resource for PrintDialog is broken, There is no " + var0 + " key in resource"); } } private void addComponent(Component var1, Container var2, GridBagLayout var3, GridBagConstraints var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, Insets var12) { var4.gridx = var5; var4.gridy = var6; var4.gridwidth = var7; var4.anchor = var10; var4.fill = var11; var4.insets = var12; var4.weightx = (double)var8; var4.weighty = (double)var9; var3.setConstraints(var1, var4); var2.add(var1); } public UPrintDialog(Frame var1, String var2) { super(var1, var2, true); Insets var5 = new Insets(0, 0, 0, 0); Insets var6 = new Insets(10, 0, 0, 0); Insets var7 = new Insets(8, 6, 0, 10); Insets var8 = new Insets(0, 40, 0, 0); Insets var9 = new Insets(10, 6, 0, 0); Insets var10 = new Insets(0, 6, 10, 10); Insets var11 = new Insets(0, 0, 0, 10); GridBagLayout var13 = new GridBagLayout(); GridBagConstraints var14 = new GridBagConstraints(); ((Container)this).setLayout(var13); Font var3 = ((Component)this).getFont(); Font var4 = new Font("Dialog", 1, var3.getSize()); ((Component)this).setFont(var4); Label var12 = new Label(getMsg("label.print"), 2); this.addComponent(var12, this, var13, var14, 0, 0, 1, 0, 1, 13, 0, var6); this.docTitle = new Label(""); this.docTitle.setFont(var3); this.addComponent(this.docTitle, this, var13, var14, 1, 0, 3, 1, 1, 17, 1, var9); var12 = new Label(getMsg("label.copies"), 2); this.addComponent(var12, this, var13, var14, 0, 1, 1, 0, 1, 13, 0, var6); this.copiesField = new NumericField(3); this.copiesField.setFont(var3); this.addComponent(this.copiesField, this, var13, var14, 1, 1, 1, 0, 1, 17, 0, var9); this.setNumCopies(1); var12 = new Label(getMsg("label.printto"), 2); this.addComponent(var12, this, var13, var14, 0, 2, 1, 0, 1, 13, 0, var6); this.destCBG = new CheckboxGroup(); this.destCB[0] = new Checkbox(getMsg("checkbox.printer"), this.destCBG, true); this.addComponent(this.destCB[0], this, var13, var14, 0, 3, 2, 0, 1, 17, 0, var8); this.destField[0] = new TextField(FIELD_LEN); this.destField[0].setFont(var3); this.addComponent(this.destField[0], this, var13, var14, 2, 3, 2, 1, 1, 10, 2, var11); this.destCB[1] = new Checkbox(getMsg("checkbox.file"), this.destCBG, false); this.addComponent(this.destCB[1], this, var13, var14, 0, 4, 2, 0, 1, 17, 0, var8); this.destField[1] = new TextField(FIELD_LEN); this.destField[1].setFont(var3); this.addComponent(this.destField[1], this, var13, var14, 2, 4, 2, 1, 1, 10, 2, var11); this.destType = 0; this.destField[1].disable(); this.bannerLbl = new Label(getMsg("label.banner"), 2); this.addComponent(this.bannerLbl, this, var13, var14, 0, 5, 3, 0, 1, 13, 0, var6); this.bannerField = new TextField(24); this.bannerField.setFont(var3); this.addComponent(this.bannerField, this, var13, var14, 3, 5, 1, 1, 1, 17, 2, var7); this.optionsLbl = new Label(getMsg("label.commandoption"), 2); this.addComponent(this.optionsLbl, this, var13, var14, 0, 6, 3, 0, 1, 13, 3, var5); this.optionsField = new TextField(24); this.optionsField.setFont(var3); this.addComponent(this.optionsField, this, var13, var14, 3, 6, 1, 1, 1, 17, 2, var10); Separator var15 = new Separator(100, 4, 0); this.addComponent(var15, this, var13, var14, 0, 7, 4, 1, 1, 10, 2, var5); Panel var16 = new Panel(); GridBagLayout var17 = new GridBagLayout(); ((Container)var16).setLayout(var17); this.addComponent(var16, this, var13, var14, 0, 8, 4, 1, 1, 17, 2, var5); var12 = new Label(getMsg("label.papersize"), 2); this.addComponent(var12, var16, var17, var14, 0, 0, 1, 1, 1, 17, 0, var6); Panel var18 = new Panel(); ((Container)var18).setLayout(new GridLayout(2, 2)); this.addComponent(var18, var16, var17, var14, 0, 1, 1, 1, 1, 10, 0, var10); this.paperCBG = new CheckboxGroup(); this.paperCB[0] = new Checkbox(getMsg("checkbox.letter"), this.paperCBG, true); ((Container)var18).add(this.paperCB[0]); this.paperCB[2] = new Checkbox(getMsg("checkbox.executive"), this.paperCBG, false); ((Container)var18).add(this.paperCB[2]); this.paperCB[1] = new Checkbox(getMsg("checkbox.legal"), this.paperCBG, false); ((Container)var18).add(this.paperCB[1]); this.paperCB[3] = new Checkbox(getMsg("checkbox.a4"), this.paperCBG, false); ((Container)var18).add(this.paperCB[3]); this.paperSize = 0; var12 = new Label(getMsg("label.orientation"), 2); this.addComponent(var12, var16, var17, var14, 1, 0, 1, 1, 1, 17, 0, var6); var18 = new Panel(); ((Container)var18).setLayout(new GridLayout(2, 1)); this.addComponent(var18, var16, var17, var14, 1, 1, 1, 1, 1, 10, 0, var10); this.orientCBG = new CheckboxGroup(); this.orientCB[1] = new Checkbox(getMsg("checkbox.portrait"), this.orientCBG, true); ((Container)var18).add(this.orientCB[1]); this.orientCB[0] = new Checkbox(getMsg("checkbox.landscape"), this.orientCBG, false); ((Container)var18).add(this.orientCB[0]); this.orientation = 1; var15 = new Separator(100, 4, 0); this.addComponent(var15, this, var13, var14, 0, 9, 4, 1, 0, 17, 2, var5); var18 = new Panel(); ((Container)var18).setLayout(new FlowLayout(1, 28, 10)); this.addComponent(var18, this, var13, var14, 0, 10, 4, 1, 0, 10, 0, var5); ((Container)var18).add(this.printButton = new Button(PRINT_LABEL)); ((Container)var18).add(this.cancelButton = new Button(CANCEL_LABEL)); ((Window)this).pack(); } private void setupDestType(int var1) { this.destField[this.destType].disable(); this.destField[var1].enable(); if (var1 == 0) { this.bannerLbl.enable(); this.bannerField.enable(); this.optionsLbl.enable(); this.optionsField.enable(); } else { this.bannerLbl.disable(); this.bannerField.disable(); this.optionsLbl.disable(); this.optionsField.disable(); } this.destType = var1; } public PrintJob getPrintJob(PrintControl var1) { this.printControl = var1; this.printJob = null; ((Dialog)this).show(); return this.printJob; } public boolean action(Event var1, Object var2) { if (var1.target instanceof Checkbox) { for(int var3 = 0; var3 < 2; ++var3) { if (var1.target == this.destCB[var3]) { if (var3 != this.destType) { this.setupDestType(var3); this.destField[var3].requestFocus(); } return true; } } for(int var4 = 0; var4 < 2; ++var4) { if (var1.target == this.orientCB[var4]) { this.orientation = var4; return true; } } for(int var5 = 0; var5 < 4; ++var5) { if (var1.target == this.paperCB[var5]) { this.paperSize = var5; return true; } } } if (PRINT_LABEL.equals(var2)) { this.printStatus = 1; this.printJob = this.printControl.createPrintJob(this.destType, this.getDestString(this.destType), this.getOptionsString(), this.getBannerString(), this.getPaperSize(), this.getOrientation(), this.getNumCopies()); if (this.printJob != null) { ((Component)this).hide(); } return true; } else if (CANCEL_LABEL.equals(var2)) { this.printStatus = 2; ((Component)this).hide(); return true; } else { return super.action(var1, var2); } } public boolean handleEvent(Event var1) { if (var1.id == 201) { this.printStatus = 2; ((Component)this).hide(); return true; } else { return super.handleEvent(var1); } } public int getNumCopies() { int var1 = 0; try { var1 = this.copiesField.getValue(); } catch (NumberFormatException var2) { } return var1; } public int getDestType() { return this.destType; } public String getDestString(int var1) { return this.destField[var1].getText(); } public String getBannerString() { return this.bannerField.getText(); } public String getOptionsString() { return this.optionsField.getText(); } public int getOrientation() { return this.orientation; } public int getPaperSize() { return this.paperSize; } public void setDocumentTitle(String var1) { this.docTitle.setText(var1); } public void setNumCopies(int var1) { this.copiesField.setValue(var1); } public void setDestType(int var1) { if (var1 != this.destType) { this.destCB[var1].setState(true); this.setupDestType(var1); } } public void setDestString(int var1, String var2) { this.destField[var1].setText(var2); } public void setBannerString(String var1) { this.bannerField.setText(var1); } public void setOptionsString(String var1) { this.optionsField.setText(var1); } public void setOrientation(int var1) { if (var1 != this.orientation) { this.orientation = var1; this.orientCB[var1].setState(true); } } public void setPaperSize(int var1) { if (var1 != this.paperSize) { this.paperSize = var1; this.paperCB[var1].setState(true); } } }