mirror of
https://github.com/ConjureETS/LOG750-LAB2.git
synced 2026-03-24 03:21:19 +00:00
Segfault unfaulted
This commit is contained in:
parent
1a8976cafd
commit
78935a18ae
@ -222,7 +222,7 @@ void Viewer::mousePressEvent(QMouseEvent* e) {
|
||||
if(!selectedGeom.position.isIdentity() && e->modifiers().testFlag(Qt::ControlModifier))
|
||||
{
|
||||
std::cout << "Selecting cube" << endl;
|
||||
if(selectedObj.shape->getParent() != nullptr) {
|
||||
if(selectedObj.shape != nullptr && selectedObj.shape->getParent() != nullptr) {
|
||||
// Remove previous selection
|
||||
selectedObj.shape->getParent()->getChildren()->erase(
|
||||
std::remove(selectedObj.shape->getParent()->getChildren()->begin(),
|
||||
@ -278,7 +278,7 @@ void Viewer::init()
|
||||
|
||||
{
|
||||
// Default non existant cube
|
||||
selectedObj.shape = new Cube();
|
||||
selectedObj.shape = nullptr;
|
||||
|
||||
QColor* c1 = new QColor(255, 0, 255, 255);
|
||||
QColor* c2 = new QColor(0, 255, 255, 255);
|
||||
@ -315,7 +315,7 @@ void Viewer::init()
|
||||
Shape* cube = new Cube();
|
||||
SceneGroup *sc = new SceneGroup();
|
||||
cube->setColor(*c1);
|
||||
cube->setType(TEX_GRASS);
|
||||
cube->setType(TEX_WOODFLOOR);
|
||||
sc->addChild(cube);
|
||||
sc->transform.translate(-5+i, 0, -5+j);
|
||||
root.addChild(sc);
|
||||
@ -817,7 +817,7 @@ void Viewer::setMinLinear(bool on) {
|
||||
|
||||
void Viewer::deleteSelected() {
|
||||
// Remove Shape from its parent
|
||||
|
||||
if(selectedObj.shape == nullptr) return;
|
||||
selectedObj.shape->getParent()->getChildren()->erase(
|
||||
std::remove(selectedObj.shape->getParent()->getChildren()->begin(),
|
||||
selectedObj.shape->getParent()->getChildren()->end(),
|
||||
@ -830,7 +830,7 @@ void Viewer::deleteSelected() {
|
||||
selectedObj.shape),
|
||||
selectedObj.shape->getParent()->getChildren()->end());
|
||||
|
||||
selectedObj.shape = new Cube(); // Rebind to "null"
|
||||
selectedObj.shape = nullptr; // Rebind to "null"
|
||||
|
||||
cubeSelected(false);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user