[Interest] Subclassing QTreeItemWidget seg faults when adding child

Michael Jackson imikejackson at gmail.com
Thu Jun 7 18:40:24 CEST 2012


I decided to subclass QTreeItemWidget in order to add some custom behavior and catch/emit signals slots. Here is my class decl:

class PMDirTWI : public QObject,  public QTreeWidgetItem
{
    Q_OBJECT;
  public:
    PMDirTWI(QString outputDir, QString pathTemplate,
             QString dirName,
             QString codeTemplateResourcePath,
             QTreeWidget* parent = 0);

    PMDirTWI(QString outputDir, QString pathTemplate,
             QString dirName,
             QString codeTemplateResourcePath,
             QTreeWidgetItem* parent = 0);

    virtual ~PMDirTWI();
...
...
};

And some example code of how I am using it:
  QString pathTemplate = "@PluginName@";
  PMDirTWI* F_Doc = new PMDirTWI(m_OutputDir->text(), pathTemplate, QString("Documentation"), QString(""), F_main);
  connect(m_PluginName, SIGNAL(textChanged(const QString &)),
          F_Doc, SLOT(pluginNameChanged(const QString &)));

  QTreeWidgetItem* F_namefilters = new QTreeWidgetItem(F_doc); <====== CRASHES IN THIS CALL
  F_namefilters->setText(0, "Unknown Plugin Name"); 


The program dies in QTreeItemWidget->addChild() method. I know this is probably something simple but I just can not "see" what I am doing wrong. Any suggestions would be appreciated.


Thanks
Mike Jackson


More information about the Interest mailing list