[haiku-commits] Re: r39462 - in haiku/trunk: headers/os/app headers/private/app src/kits/app

  • From: Ingo Weinhold <ingo_weinhold@xxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Wed, 17 Nov 2010 14:38:38 +0100

On 2010-11-17 at 05:38:49 [+0100], clemens.zeidler@xxxxxxxxxxxxxx wrote:
> Modified: haiku/trunk/headers/os/app/Application.h
> ===================================================================
> --- haiku/trunk/headers/os/app/Application.h    2010-11-17 03:06:09 UTC 
> (rev 39461)
> +++ haiku/trunk/headers/os/app/Application.h    2010-11-17 04:38:48 UTC 
> (rev 39462)
> @@ -29,6 +29,10 @@
>  }
>  
>  
> +void restore_window_geometry(BWindow* window, const BMessage* 
> windowGeometry);
> +void save_window_geometry(const BWindow* window, BMessage* windowGeometry);
> +
> +
>  class BApplication : public BLooper {
>  public:
>                                  BApplication(const char* signature);
> @@ -91,6 +95,12 @@
>  
>      class Private;
>  
> +protected:
> +    // Session Manager
> +            bool                HasBeenRestored();
> +    virtual    status_t            RestoreState(const BMessage* state);
> +    virtual    status_t            SaveState(BMessage* state) const;
> +

Introducing new virtual methods without removing reserved slots breaks binary 
compatibility. 

That aside, I'm not very fond of the idea of introducing such an API in an ad 
hoc manner before R1. I'm afraid there are concerns similar to those of the 
archiving API that need to be considered, plus the integration with the 
system (and possibly other APIs). I very much recommend creating a feature 
branch.

CU, Ingo

Other related posts: