Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » Visual Editor (VE) » My Modal Dialog (again)
My Modal Dialog (again) [message #611209] Mon, 17 October 2005 20:49
Vitor Tortorello is currently offline Vitor TortorelloFriend
Messages: 6
Registered: July 2009
Junior Member
Hello,
The code listed below open a modal dialog
[like "Create my own dialog / Norbert Plöt / 16-09-2005 10:37"]

Please,
==> the way to FormMain gets the "text" and "text1" values, after
buttonOk click.
==> the way to gets in FormMain how button was clicked?

Thank you.
Vitor

---------------------------------
ps.
What I want:
a. FormMain open the modal dialog.
b. When modal dialog closes (by window close button, buttonOk or
buttonCancel, or ALT F4,...):
- FormMain gets data application needs (how button clicked, texts
values, etc.)
- FormMain disposes modal dialog

Something like (pseudo-code):
private void openMyDialog() {
String firstText = null;
String secondText = null;

FormDialog dlg = new FormDialog();
dlg.initialize(sShell);
try {
dlg.sShell.open();
// .....
if (buttonOk_Clicked) {
firstText = dlg.text.getText();
secondText = dlg.text1.getText();
}
finally {
dlg.dispose();
}
}


-----------------------------------

/***********
Main
***********/

package teste2;

import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.SWT;

public class FormMain {

private Shell sShell = null; //
@jve:decl-index=0:visual-constraint="10,10"
private Button buttonOpenDialog = null;

/**
* @param args
*/
public static void main(String[] args) {
Display display = Display.getDefault();
FormMain thisClass = new FormMain();
thisClass.createSShell();
thisClass.sShell.open();

while (!thisClass.sShell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}

/**
* This method initializes sShell
*/
private void createSShell() {
sShell = new Shell();
sShell.setText("Shell - Main");
sShell.setSize(new org.eclipse.swt.graphics.Point(300,125));
buttonOpenDialog = new Button(sShell, SWT.NONE);
buttonOpenDialog.setBounds(new
org.eclipse.swt.graphics.Rectangle(46,31,200,39));
buttonOpenDialog.setText("Open dialog");
buttonOpenDialog.addSelectionListener(new
org.eclipse.swt.events.SelectionAdapter() {
public void widgetSelected(org.eclipse.swt.events.SelectionEvent e) {
openMyDialog();
}
});
}

private void openMyDialog() {
FormDialog dlg = new FormDialog();
dlg.initialize(sShell);
dlg.sShell.open();
// here <=================================
System.out.println("Text = " + dlg.text.getText());
System.out.println("Text1= " + dlg.text1.getText());
}

}

/***********
MyDialog
***********/
package teste2;

import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Label;

public class FormDialog {

public Shell sShell = null; //
@jve:decl-index=0:visual-constraint="24,10"
public Text text = null;
public Text text1 = null;
private Button buttonOk = null;
private Button buttonCancel = null;
private Label label = null;
private Label label1 = null;

/**
* This method initializes sShell
*/
private void createSShell() {
// changed here
if (sShell == null)
sShell = new Shell();

sShell.setText("Shell- Dialog");
sShell.setSize(new Point(300, 200));
text = new Text(sShell, SWT.BORDER);
text.setBounds(new org.eclipse.swt.graphics.Rectangle(78,31,172,26));
text1 = new Text(sShell, SWT.BORDER);
text1.setBounds(new org.eclipse.swt.graphics.Rectangle(79,71,170,26));
buttonOk = new Button(sShell, SWT.NONE);
buttonOk.setBounds(new org.eclipse.swt.graphics.Rectangle(29,110,108,30));
buttonOk.setText("Ok");
buttonCancel = new Button(sShell, SWT.NONE);
buttonCancel.setBounds(new
org.eclipse.swt.graphics.Rectangle(159,109,103,30));
buttonCancel.setText("Cancel");
label = new Label(sShell, SWT.NONE);
label.setBounds(new org.eclipse.swt.graphics.Rectangle(28,31,39,18));
label.setText("Text:");
label1 = new Label(sShell, SWT.NONE);
label1.setBounds(new org.eclipse.swt.graphics.Rectangle(16,76,48,18));
label1.setText("Text1:");
}

// added this [ Main calls this sShell.open() ]
public void initialize(Shell parent) {
sShell = new Shell(parent, SWT.APPLICATION_MODAL | SWT.DIALOG_TRIM);
createSShell();
}
}
Previous Topic:list of field name property
Next Topic:My Modal Dialog (again)
Goto Forum:
  


Current Time: Sat Apr 20 01:05:03 GMT 2024

Powered by FUDForum. Page generated in 0.02989 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top