I have created a DialogBox in QtDesigner
//---------- *.H
namespace Ui {
class MyDialog;
}
class MyDialog : public QDialog {
Q_OBJECT
public:
explicit MyDialog(QWidget* parent = 0);
~MyDialog();
private:
Ui::MyDialog* ui;
};
and its source
// --------- *.CPP
MyDialog::MyDialog(QWidget* parent = 0) :
QDialog(parent),
ui(new Ui::MyDialog)
{
ui->setupUi(this);
//..
}
I would like to structure that in a certain namespace encapsulation, so that I have com::example::mydialogs::MyDialog like:
//---------- *.H
namespace com {
namespace example {
namespace mydialogs {
namespace Ui {
class MyDialog;
}
class MyDialog : public QDialog {
Q_OBJECT
public:
explicit MyDialog(QWidget* parent = 0);
~MyDialog();
private:
Ui::MyDialog* ui;
};
}}} //namespace closing
and its source
// --------- *.CPP
namespace com {
namespace example {
namespace mydialogs {
MyDialog::MyDialog(QWidget* parent = 0) :
QDialog(parent),
ui(new Ui::MyDialog)
{
ui->setupUi(this);
//..
}
}}} //namespace closing
but my compiler complains about that with a message:
C:\MyProjects\Test\com\example\mydialogs\MyDialog.h:29: Error: forward declaration of 'class com::example::mydialogs::Ui::MyDialog' class MyDialog;
The namespace Ui was added by Qt automatically. How can I use my namespace structure properly?