/*****************************************************************************
* x11_factory.hpp
*****************************************************************************
- * Copyright (C) 2003 VideoLAN
- * $Id: x11_factory.hpp,v 1.1 2004/01/03 23:31:34 asmax Exp $
+ * Copyright (C) 2003 the VideoLAN team
+ * $Id$
*
* Authors: Cyril Deguet <asmax@via.ecp.fr>
* Olivier Teulière <ipkiss@via.ecp.fr>
#include <map>
class X11Display;
+class X11DragDrop;
class X11TimerLoop;
class X11Factory: public OSFactory
{
public:
+ /// Map to find the GenericWindow associated to a X11Window
+ map<Window, GenericWindow*> m_windowMap;
+ /// Map to find the Dnd object associated to a X11Window
+ map<Window, X11DragDrop*> m_dndMap;
+
X11Factory( intf_thread_t *pIntf );
virtual ~X11Factory();
/// Instantiate an OSTimer with the given callback
virtual OSTimer *createOSTimer( const Callback &rCallback );
+ ///
+ virtual void minimize();
+
/// Instantiate an OSWindow object
virtual OSWindow *createOSWindow( GenericWindow &rWindow,
- bool dragDrop, bool playOnDrop );
+ bool dragDrop, bool playOnDrop,
+ OSWindow *pParent );
/// Instantiate an object OSTooltip.
virtual OSTooltip *createOSTooltip();
/// Get the directory separator
- virtual const string getDirSeparator() const;
+ virtual const string &getDirSeparator() const { return m_dirSep; }
+
+ /// Get the resource path
+ virtual const list<string> &getResourcePath() const
+ { return m_resourcePath; }
/// Get the screen size
virtual int getScreenWidth() const;
/// Get the position of the mouse
virtual void getMousePos( int &rXPos, int &rYPos ) const;
+ /// Change the cursor
+ virtual void changeCursor( CursorType_t type ) const { /*TODO*/ }
+
/// Delete a directory recursively
virtual void rmDir( const string &rPath );
/// Get the timer loop
X11TimerLoop *getTimerLoop() const { return m_pTimerLoop; }
- /// Map to find the GenericWindow associated with a X11Window
- map<Window, GenericWindow*> m_windowMap;
-
private:
/// X11 display
X11Display *m_pDisplay;
/// Timer loop
X11TimerLoop *m_pTimerLoop;
+ /// Directory separator
+ const string m_dirSep;
+ /// Resource path
+ list<string> m_resourcePath;
};
#endif