axeljaeger
06-07-2004, 16:47
Ich hab vor geraumer Zeit ein Widgetplugin geschrieben, dass aus mir bis eben unbekannten Gründen auf einmal nicht mehr laden wollte. Ich hab schon den Designer verteufelt und was nicht alles. Seit gestern abend sitze ich hier und kreise den Fehler ein. Jetzt konnte ich den Fehler auf zwei Zeilen eingrenzen. Ich habe jetzt zwei identische Widgetplugins, bis auf zwei Zeilen. Das eine lädt:
QWidget* QCodeWidgetPlugin::create( const QString &classname, QWidget* parent, const char* name) {
if ("TextEditor" == classname) {
return new TextEditor(parent, name);
} else if ("TabWorkspace" == classname) {
return new TabWorkspace(parent, name);
} else {
return 0;
}
}
Das andere nicht:
QWidget* QCodeWidgetPlugin::create( const QString &classname, QWidget* parent, const char* name) {
if ("TextEditor" == classname) {
return new TextEditor(parent, name);
} else if ("ProjectTree" == classname) { // Diese beiden Zeilen sind mehr drinn
return new ProjectTree(parent, name); //
} else if ("TabWorkspace" == classname) {
return new TabWorkspace(parent, name);
} else {
return 0;
}
}
Ich finde das äußerst mysteriös, da ja QCodeWidgetPlugin::create überhaupt nicht in den Prozess des Ladens und Verifizierens des Plugins involviert sein SOLLTE. Irgendwelche Ideen, woran das liegen könnte? Für mich riecht das schon nach Bug in Software, die ich nicht geschrieben hab.
Vielen Dank.
QWidget* QCodeWidgetPlugin::create( const QString &classname, QWidget* parent, const char* name) {
if ("TextEditor" == classname) {
return new TextEditor(parent, name);
} else if ("TabWorkspace" == classname) {
return new TabWorkspace(parent, name);
} else {
return 0;
}
}
Das andere nicht:
QWidget* QCodeWidgetPlugin::create( const QString &classname, QWidget* parent, const char* name) {
if ("TextEditor" == classname) {
return new TextEditor(parent, name);
} else if ("ProjectTree" == classname) { // Diese beiden Zeilen sind mehr drinn
return new ProjectTree(parent, name); //
} else if ("TabWorkspace" == classname) {
return new TabWorkspace(parent, name);
} else {
return 0;
}
}
Ich finde das äußerst mysteriös, da ja QCodeWidgetPlugin::create überhaupt nicht in den Prozess des Ladens und Verifizierens des Plugins involviert sein SOLLTE. Irgendwelche Ideen, woran das liegen könnte? Für mich riecht das schon nach Bug in Software, die ich nicht geschrieben hab.
Vielen Dank.