#include <dali/public-api/object/base-object.h>
#include <dali/public-api/actors/layer.h>
#include <dali/public-api/render-tasks/render-task-list.h>
+#include <dali/public-api/object/property-array.h>
// INTERNAL INCLUDES
#include <dali/public-api/adaptor-framework/window.h>
typedef Signal< void () > SignalType;
/**
- * Create a new Window. This should only be called once by the Application class
+ * @brief Create a new Window. This should only be called once by the Application class
* @param[in] positionSize The position and size of the window
* @param[in] name The window title
* @param[in] className The window class name
static Window* New(const PositionSize& positionSize, const std::string& name, const std::string& className, bool isTransparent = false);
/**
+ * @brief Create a new Window. This should only be called once by the Application class
+ * @param[in] surface The surface used to render on.
+ * @param[in] positionSize The position and size of the window
+ * @param[in] name The window title
+ * @param[in] className The window class name
+ * @param[in] isTransparent Whether window is transparent
+ * @return A newly allocated Window
+ */
+ static Window* New(Any surface, const PositionSize& positionSize, const std::string& name, const std::string& className, bool isTransparent = false);
+
+ /**
* @copydoc Dali::Window::ShowIndicator()
*/
void ShowIndicator( Dali::Window::IndicatorVisibleMode visibleMode );
*/
Dali::Window GetParent();
+ /**
+ * @copydoc Dali::DevelWindow::GetCurrentOrientation()
+ */
+ Dali::Window::WindowOrientation GetCurrentOrientation() const;
+
+ /**
+ * @copydoc Dali::DevelWindow::SetAvailableOrientations()
+ */
+ void SetAvailableOrientations( const Dali::Vector<Dali::Window::WindowOrientation>& orientations );
+
public: // Dali::Internal::Adaptor::SceneHolder
/**
/**
* Second stage initialization
*/
- void Initialize(const PositionSize& positionSize, const std::string& name, const std::string& className);
+ void Initialize(Any surface, const PositionSize& positionSize, const std::string& name, const std::string& className);
/**
* Called when the window becomes iconified or deiconified.
/**
* @brief Convert from angle to window orientation using OrientationMode.
*/
- Dali::Window::WindowOrientation ConvertToOrientation( int angle );
+ Dali::Window::WindowOrientation ConvertToOrientation( int angle ) const;
+
+ /**
+ * @brief Check available window orientation for Available orientation.
+ */
+ bool IsOrientationAvailable( Dali::Window::WindowOrientation orientation ) const;
private: // Dali::Internal::Adaptor::SceneHolder
OrientationMode mOrientationMode;
+ int mNativeWindowId; ///< The Native Window Id
+
// Signals
IndicatorSignalType mIndicatorVisibilityChangedSignal;
FocusSignalType mFocusChangedSignal;