wxWidgets/include/wx/mac/carbon/drawer.h

75 lines
2.3 KiB
C
Raw Normal View History

/////////////////////////////////////////////////////////////////////////////
// Name: drawer.h
// Purpose: Drawer child window class.
// Drawer windows appear under their parent window and
// behave like a drawer, opening and closing to reveal
// content that does not need to be visible at all times.
// Author: Jason Bagley
// Modified by:
// Created: 2004-30-01
// RCS-ID: $Id$
// Copyright: (c) Jason Bagley; Art & Logic, Inc.
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DRAWERWINDOW_H_
#define _WX_DRAWERWINDOW_H_
#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma interface "drawer.h"
#endif
#include "wx/toplevel.h"
//
// NB: This is currently a private undocumented class -
// it is stable, but the API is not and will change in the
// near future
//
#if ( MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_2 )
class WXDLLEXPORT wxDrawerWindow : public wxTopLevelWindow
{
DECLARE_DYNAMIC_CLASS(wxDrawerWindow)
public:
wxDrawerWindow();
wxDrawerWindow(wxWindow* parent,
wxWindowID id,
const wxString& title,
wxSize size = wxDefaultSize,
wxDirection edge = wxLEFT,
const wxString& name = wxT("drawerwindow"))
{
this->Create(parent, id, title, size, edge, name);
}
~wxDrawerWindow();
// Create a drawer window.
// If parent is NULL, create as a tool window.
// If parent is not NULL, then wxTopLevelWindow::Attach this window to parent.
bool Create(wxWindow *parent,
wxWindowID id,
const wxString& title,
wxSize size = wxDefaultSize,
wxDirection edge = wxLEFT,
const wxString& name = wxFrameNameStr);
bool Open(bool show = true); // open or close the drawer, possibility for async param, i.e. animate
bool Close() { return this->Open(false); }
bool IsOpen() const;
// Set the edge of the parent where the drawer attaches.
bool SetPreferredEdge(wxDirection edge);
wxDirection GetPreferredEdge() const;
wxDirection GetCurrentEdge() const; // not necessarily the preferred, due to screen constraints
};
#endif // defined( __WXMAC__ ) && TARGET_API_MAC_OSX && ( MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_2 )
#endif // _WX_DRAWERWINDOW_H_