SFML community forums

Help => Window => Topic started by: ImNewToSFML on September 27, 2021, 03:03:37 pm

Title: How to prevent window.close() and do some other activity instead?
Post by: ImNewToSFML on September 27, 2021, 03:03:37 pm
I'm new to SFML, using C++.

How to prevent window.close() and do some other activity instead in case of the
Event::EventType::Closed:
event?

For example, if I want the user to either save or discard a file made, how would I do that?

This is the part of code from the SFML tutorial, a bit modified.
sf::Event e;
        while (sfmlWin.pollEvent(e)) {

            switch (e.type) {
            case sf::Event::EventType::Closed:

                using namespace sf;

                Text t;

                t.setString("Something.");
               
                sfmlWin.draw(t);


            }
        }

Thanks in advance!

Title: Re: How to prevent window.close() and do some other activity instead?
Post by: eXpl0it3r on September 27, 2021, 04:28:40 pm
You simply don't call window.close() in that regards.
Title: Re: How to prevent window.close() and do some other activity instead?
Post by: ImNewToSFML on September 27, 2021, 04:34:50 pm
Yes, I didn't call it. Still when I click the close button of the SFML window, it closes.
Very sorry, I had another piece of code that was blocking it.
Also, is there any pre-built button class or do we have to make it on our own using Text(s)? Thanks!
Title: Re: How to prevent window.close() and do some other activity instead?
Post by: eXpl0it3r on September 27, 2021, 04:51:40 pm
Please use the edit button when you have multiple updates in such a short amount of time, this isn't Twitter :D

No, SFML doesn't provide a button class.