mirror of
https://github.com/AxioDL/boo.git
synced 2025-12-21 02:39:21 +00:00
shared_ptr for IWindow; better Cocoa app lifecycle
This commit is contained in:
@@ -51,7 +51,7 @@ public:
|
||||
virtual const std::vector<SystemString>& getArgs() const=0;
|
||||
|
||||
/* Constructors/initializers for sub-objects */
|
||||
virtual IWindow* newWindow(const SystemString& title, uint32_t drawSamples)=0;
|
||||
virtual std::shared_ptr<IWindow> newWindow(const SystemString& title, uint32_t drawSamples)=0;
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -254,14 +254,15 @@ enum class EClipboardType
|
||||
PNGImage = 3
|
||||
};
|
||||
|
||||
class IWindow
|
||||
class IWindow : public std::enable_shared_from_this<IWindow>
|
||||
{
|
||||
public:
|
||||
|
||||
virtual ~IWindow() {}
|
||||
virtual ~IWindow() = default;
|
||||
|
||||
virtual void setCallback(IWindowCallback* cb)=0;
|
||||
|
||||
|
||||
virtual void closeWindow()=0;
|
||||
virtual void showWindow()=0;
|
||||
virtual void hideWindow()=0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user