Centralizar DialogBox GWT

Alguém já conseguiu centralizar um DialogBox do GWT? Tem aquela famosa:

myBox.setPopupPosition( (Window.clientWidth() - myBox.getOffsetWidth())/2, (Window.clientHeight() - myBox.getOffsetHeight())/2 );
Mas assim o dialog fica mais pra direita e mais pra baixo… na verdade a ponta superior esquerda do dialog é que fica bem no centro…

[quote=andre_guitar7]Alguém já conseguiu centralizar um DialogBox do GWT? Tem aquela famosa:

myBox.setPopupPosition( (Window.clientWidth() - myBox.getOffsetWidth())/2, (Window.clientHeight() - myBox.getOffsetHeight())/2 );
Mas assim o dialog fica mais pra direita e mais pra baixo… na verdade a ponta superior esquerda do dialog é que fica bem no centro…[/quote]

tenta o center();
no caso: dialogBox.center();

Pessoa, estou com outro problema.

Estou usando o DialogBox e na hora de exibir aparece todo zoado. Estou usando o Eclipse com o plugin do GWT.

Alguém tem alguma idéia do que pode ser?

Descobri que não dá pra setar largura e altura. Ele zoa tudo.

Nobre amigo, acho que sei o seu problema… Você não deve ta setando um título no DialogBox…
Faz assim:

DialogBox dialogBox = new DialogBox();
dialogBox.setText("DialogBox Teste");

Daí, vc não seta um tamanho diretamente no DialogBox, pois não precisa…
Você cria um Painel qualquer, no meu caso aqui eu trabalho com um ScrollPanel, seta um tamanho pra ele e insere no DialogBox…

dialogBox.setWidget(scrollPanel_que_vc_criou);

Dessa maneira ele vai funcionar corretamente!

[]'s

Oi pessoal eu estou tendo dificuldades em trocar a cor da fonte do título do meu painel. Alguém saberia como me ajuda.

package com.apress.beginninggwt.gwtasks.client.ui.mainpane.categorypane;

import com.apress.beginninggwt.gwtasks.client.manager.data.DataManager;

@SuppressWarnings("deprecation")
public class CategoryFormDialogBox extends DialogBox {

	private final static String ERROR_IMAGE_URL = "image/field-error.gif";

    private final TextBox nameField;
    private final Image nameErrorImage;
    private final TextArea descriptionField;
    private final Button submitButton;
    private final Button cancelButton;

    private final boolean editMode;
    private final Category category;
    private final CategoryPane categoryPane;
    private final DataManager dataManager;

    public CategoryFormDialogBox(CategoryPane categoryPane, DataManager dataManager) {
        this(categoryPane, dataManager, new Category(), false);
    }

   
    public CategoryFormDialogBox(CategoryPane categoryPane, DataManager dataManager, Category category) {
        this(categoryPane, dataManager, category, true);
    }

    private CategoryFormDialogBox(CategoryPane categoryPane, DataManager dataManager, Category category, boolean editMode) {
        super(false, true);
        setText("Formulário de Categoria");
        this.category = category;
		this.categoryPane = categoryPane;
        this.dataManager = dataManager;
		this.editMode = editMode;

        VerticalPanel main = new VerticalPanel();
        main.add(new Label("Nome"));
        addGap(main, "3px");
        
        nameField = new TextBox();
        nameErrorImage = new Image(ERROR_IMAGE_URL);
        nameErrorImage.setVisible(false);
        HorizontalPanel nameFieldRow = new HorizontalPanel();
        nameFieldRow.add(nameField);
        nameFieldRow.setCellWidth(nameField, "60%");
        nameFieldRow.add(nameErrorImage);
        main.add(nameFieldRow);
        main.setCellWidth(nameFieldRow, "100%");
        addGap(main, "10px");

        main.add(new HTML("Descriçâo"));
        addGap(main, "3px");

        descriptionField = new TextArea();
        descriptionField.setSize("300px", "250px");
        main.add(descriptionField);
        addGap(main, "10px");

        HorizontalPanel buttons = new HorizontalPanel();
        submitButton = new Button(editMode ? "Edit" : "Add");
        submitButton.addClickListener(new ClickListener() {
            public void onClick(Widget sender) {
                handleSubmit();
            }
        });
        cancelButton = new Button("Cancel", new ClickListener() {
            public void onClick(Widget sender) {
                handleCancel();
            }
        });
        buttons.add(submitButton);
        addGap(buttons, "5px");
        buttons.add(cancelButton);
        main.add(buttons);
        addGap(main, "10px");
        main.setCellHorizontalAlignment(buttons, VerticalPanel.ALIGN_CENTER);
        main.setCellVerticalAlignment(buttons, VerticalPanel.ALIGN_MIDDLE);

        SimplePanel content = new SimplePanel();
        content.setWidget(main);
        content.setStyleName("DialogContent");
        setWidget(content);
    }
    

    protected void handleSubmit() {
        if (validate()) {
            category.setName(nameField.getText().trim());
            category.setDescription(descriptionField.getText().trim());
            if (editMode) {
                handleUpdate();
            } else {
                handleCreate();
            }
        }
    }

    protected void handleCreate() {
        Category selectedCategory = categoryPane.getSelectedCategory();
        Long parentCategoryId = selectedCategory == null ? null : selectedCategory.getId();
        dataManager.createCategory(category, parentCategoryId, new Callback<Category>() {
            public void onSuccess(Category category) {
                categoryPane.addCategory(category);
                hide();
            }
        });
    }

    protected void handleUpdate() {
        dataManager.updateCategory(category, new Callback<Void>() {
            public void onSuccess(Void result) {
                categoryPane.reloadCategories();
            }
        });
    }

    protected void handleCancel() {
        hide();
    }

    protected boolean validate() {
        String name = nameField.getText().trim();
        if (name.length() == 0) {
            nameErrorImage.setTitle("Required");
            nameErrorImage.setVisible(true);
            return false;
        }
        return true;
    }

    protected void addGap(HorizontalPanel panel, String width) {
        Label label = new Label();
        panel.add(label);
        panel.setCellWidth(label, width);
    }

    protected void addGap(VerticalPanel panel, String height) {
        Label label = new Label();
        panel.add(label);
        panel.setCellHeight(label, height);
    }

}
.gwt-DialogBox {
	border: 1px solid #666666;
	background-color: #e3dede;
}

Ele aparece como branco e eu quero trocar para preto. Como realizo isso? Obrigado. Frederico