- Home /
Can not close editor window not in GUILayout.somemethod in OnGUI method
There are things in processs o programming that you can not predict cause you did not do this kind of work. It can be editor scripting or something else. In my case, it is.
So, basically here is a moment that I would like to understand.
I have next classes: LevelBuilder - Monobehaviour class. LevelBuilderEditor - Custom editor for LevelBuilder. BuildLevelWindow - EditorWindow class.
So, it works like this: When I click on button "Build Level" in LevelBuilder inspector, I open window "BuildLevelWindow".
Then I click "Build" button. Then I start IEnumerator(Yes, it possible in edit mode, with using delegate EditorApplication.update) that generate some data.
In BuildLevelEditor In GUI I show progress bar with progress. When my Ienumerator ends, I set boolean variable called "toCloseBuildLevelWindow".
And that is it:
In OnGUI() method of class BuildLevelWindow I check when that variable will be true, and then I call Close() method and set variable to false.
BUT, not like all cases, when I call method Close() in GUILayout.Button("") blocks of code, this call throws an error in console. And that error this:
Error: GUI Window tries to begin rendering while something else has not finished rendering
Butm if I do this checking on variable in Update method of BuildLevelWindow, it works properly.
So, hopefully, someone can tell me what is this all about ?
Your answer
Follow this Question
Related Questions
Can't find proper use of objectfield in a custom editor window (C#) 0 Answers
How do I use GUI.BeginCLip() ? There is no documentation on docs.Unity 1 Answer
Distribute terrain in zones 3 Answers
Can EditorWindows dynamically display interfaces of other Editor Windows ? 1 Answer
Multiple Cars not working 1 Answer