1 /* 2 * Copyright (c) 2014, Stephan Aßmus <superstippi@gmx.de> 3 * All rights reserved. Distributed under the terms of the MIT license. 4 */ 5 #ifndef BLOCKING_WINDOW_H 6 #define BLOCKING_WINDOW_H 7 8 9 #include <Window.h> 10 11 12 class BlockingWindow : public BWindow { 13 public: 14 BlockingWindow(BRect frame, 15 const char* title, uint32 flags = 0); 16 virtual ~BlockingWindow(); 17 18 virtual bool QuitRequested(); 19 20 virtual int32 Go(); 21 22 protected: 23 void ReleaseSem(int32 returnValue); 24 25 private: 26 sem_id fSemaphore; 27 int32 fReturnValue; 28 }; 29 30 31 #endif // BLOCKING_WINDOW_H 32 33