LibreOffice Module vcl (master)  1
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SalDisplay Class Referenceabstract

#include <saldisp.hxx>

Inheritance diagram for SalDisplay:
[legend]
Collaboration diagram for SalDisplay:
[legend]

Classes

struct  RenderEntry
 
struct  ScreenData
 

Public Types

typedef std::unordered_map< int, RenderEntryRenderEntryMap
 

Public Member Functions

 SalDisplay (Display *pDisp)
 
virtual ~SalDisplay () override
 
void Init ()
 
void PrintInfo () const
 
void DbgPrintDisplayEvent (const char *pComment, XEvent *pEvent) const
 
void Beep () const
 
void ModifierMapping ()
 
void SimulateKeyPress (sal_uInt16 nKeyCode)
 
KeyIndicatorState GetIndicatorState () const
 
OUString GetKeyNameFromKeySym (KeySym keysym) const
 
OUString GetKeyName (sal_uInt16 nKeyCode) const
 
sal_uInt16 GetKeyCode (KeySym keysym, char *pcPrintable) const
 
KeySym GetKeySym (XKeyEvent *pEvent, char *pPrintable, int *pLen, KeySym *pUnmodifiedKeySym, Status *pStatus, XIC=nullptr) const
 
Cursor GetPointer (PointerStyle ePointerStyle)
 
virtual int CaptureMouse (SalFrame *pCapture)
 
virtual ScreenDatainitScreen (SalX11Screen nXScreen) const
 
const ScreenDatagetDataForScreen (SalX11Screen nXScreen) const
 
::Window GetDrawable (SalX11Screen nXScreen) const
 
DisplayGetDisplay () const
 
const SalX11ScreenGetDefaultXScreen () const
 
const SizeGetScreenSize (SalX11Screen nXScreen) const
 
srv_vendor_t GetServerVendor () const
 
bool IsDisplay () const
 
GC GetCopyGC (SalX11Screen nXScreen) const
 
Pixmap GetInvert50 (SalX11Screen nXScreen) const
 
const SalColormapGetColormap (SalX11Screen nXScreen) const
 
const SalVisualGetVisual (SalX11Screen nXScreen) const
 
RenderEntryMapGetRenderEntries (SalX11Screen nXScreen) const
 
const PairGetResolution () const
 
sal_uLong GetMaxRequestSize () const
 
Time GetLastUserEventTime () const
 
Time GetX11ServerTime () const
 
bool XIfEventWithTimeout (XEvent *, XPointer, X_if_predicate) const
 
SalXLibGetXLib () const
 
SalI18N_InputMethodGetInputMethod () const
 
SalI18N_KeyboardExtensionGetKbdExtension () const
 
void SetKbdExtension (SalI18N_KeyboardExtension *pKbdExtension)
 
::vcl_sal::WMAdaptorgetWMAdaptor () const
 
bool IsXinerama () const
 
const std::vector< tools::Rectangle > & GetXineramaScreens () const
 
::Window GetRootWindow (SalX11Screen nXScreen) const
 
unsigned int GetXScreenCount () const
 
const SalFrameSetgetFrames () const
 
bool IsNumLockFromXS () const
 
std::list< SalObject * > & getSalObjects ()
 
- Public Member Functions inherited from SalGenericDisplay
 SalGenericDisplay ()
 
virtual ~SalGenericDisplay () override
 
void registerFrame (SalFrame *pFrame)
 
virtual void deregisterFrame (SalFrame *pFrame)
 
void emitDisplayChanged ()
 
void SendInternalEvent (SalFrame *pFrame, void *pData, SalEvent nEvent=SalEvent::UserEvent)
 
void CancelInternalEvent (SalFrame *pFrame, void *pData, SalEvent nEvent)
 
bool DispatchInternalEvent (bool bHandleAllCurrentEvent=false)
 
bool MouseCaptured (const SalFrame *pFrameData) const
 
SalFrameGetCaptureFrame () const
 
- Public Member Functions inherited from SalUserEventList
 SalUserEventList ()
 
virtual ~SalUserEventList ()
 
const SalFrameSetgetFrames () const
 
SalFrameanyFrame () const
 
void insertFrame (SalFrame *pFrame)
 
void eraseFrame (SalFrame *pFrame)
 
bool isFrameAlive (const SalFrame *pFrame) const
 
void PostEvent (SalFrame *pFrame, void *pData, SalEvent nEvent)
 
void RemoveEvent (SalFrame *pFrame, void *pData, SalEvent nEvent)
 
bool HasUserEvents () const
 
bool DispatchUserEvents (bool bHandleAllCurrentEvents)
 

Static Public Member Functions

static bool BestOpenGLVisual (Display *pDisplay, int nScreen, XVisualInfo &rVI)
 
static bool BestVisual (Display *pDisp, int nScreen, XVisualInfo &rVI)
 

Protected Member Functions

virtual bool Dispatch (XEvent *pEvent)=0
 
void InitXinerama ()
 
void InitRandR (::Window aRoot) const
 
void DeInitRandR ()
 
void processRandREvent (XEvent *)
 
void doDestruct ()
 
void addXineramaScreenUnique (int i, long i_nX, long i_nY, long i_nWidth, long i_nHeight)
 
Time GetEventTimeImpl (bool bAlwaysReget=false) const
 
- Protected Member Functions inherited from SalGenericDisplay
virtual void ProcessEvent (SalUserEvent aEvent) override
 
- Protected Member Functions inherited from SalUserEventList
virtual void TriggerUserEventProcessing ()=0
 
virtual void TriggerAllUserEventsProcessed ()
 

Protected Attributes

SalXLibpXLib_
 
SalI18N_KeyboardExtensionmpKbdExtension
 
DisplaypDisp_
 
SalX11Screen m_nXDefaultScreen
 
std::vector< ScreenDatam_aScreens
 
ScreenData const m_aInvalidScreenData
 
Pair aResolution_
 
sal_uLong nMaxRequestSize_
 
srv_vendor_t meServerVendor
 
o3tl::enumarray< PointerStyle, CursoraPointerCache_
 
bool bNumLockFromXS_
 
int nNumLockIndex_
 
KeySym nShiftKeySym_
 
KeySym nCtrlKeySym_
 
KeySym nMod1KeySym_
 
std::unique_ptr< vcl_sal::WMAdaptorm_pWMAdaptor
 
bool m_bXinerama
 
std::vector< tools::Rectanglem_aXineramaScreens
 
std::vector< intm_aXineramaScreenIndexMap
 
std::list< SalObject * > m_aSalObjects
 
bool m_bUseRandRWrapper
 
Time m_nLastUserEventTime
 
- Protected Attributes inherited from SalGenericDisplay
SalFramem_pCapture
 
- Protected Attributes inherited from SalUserEventList
osl::Mutex m_aUserEventsMutex
 
std::list< SalUserEventm_aUserEvents
 
std::list< SalUserEventm_aProcessingUserEvents
 
bool m_bAllUserEventProcessedSignaled
 
SalFrameSet m_aFrames
 
oslThreadIdentifier m_aProcessingThread
 

Detailed Description

Definition at line 228 of file saldisp.hxx.

Member Typedef Documentation

typedef std::unordered_map<int,RenderEntry> SalDisplay::RenderEntryMap

Definition at line 239 of file saldisp.hxx.

Constructor & Destructor Documentation

SalDisplay::SalDisplay ( Display pDisp)
virtual SalDisplay::~SalDisplay ( )
overridevirtual

Member Function Documentation

void SalDisplay::addXineramaScreenUnique ( int  i,
long  i_nX,
long  i_nY,
long  i_nWidth,
long  i_nHeight 
)
protected
void SalDisplay::Beep ( ) const
static bool SalDisplay::BestOpenGLVisual ( Display pDisplay,
int  nScreen,
XVisualInfo &  rVI 
)
static
static bool SalDisplay::BestVisual ( Display pDisp,
int  nScreen,
XVisualInfo &  rVI 
)
static
virtual int SalDisplay::CaptureMouse ( SalFrame pCapture)
virtual

Reimplemented in GtkSalDisplay.

void SalDisplay::DbgPrintDisplayEvent ( const char *  pComment,
XEvent *  pEvent 
) const
void SalDisplay::DeInitRandR ( )
protected
virtual bool SalDisplay::Dispatch ( XEvent *  pEvent)
protectedpure virtual

Implemented in SalX11Display, and GtkSalDisplay.

void SalDisplay::doDestruct ( )
protected
const SalColormap& SalDisplay::GetColormap ( SalX11Screen  nXScreen) const
inline

Definition at line 370 of file saldisp.hxx.

GC SalDisplay::GetCopyGC ( SalX11Screen  nXScreen) const
inline

Definition at line 368 of file saldisp.hxx.

const ScreenData& SalDisplay::getDataForScreen ( SalX11Screen  nXScreen) const
inline

Definition at line 353 of file saldisp.hxx.

References SalX11Screen::getXScreen().

const SalX11Screen& SalDisplay::GetDefaultXScreen ( ) const
inline

Definition at line 364 of file saldisp.hxx.

Display* SalDisplay::GetDisplay ( ) const
inline
::Window SalDisplay::GetDrawable ( SalX11Screen  nXScreen) const
inline

Definition at line 362 of file saldisp.hxx.

Time SalDisplay::GetEventTimeImpl ( bool  bAlwaysReget = false) const
protected
const SalFrameSet& SalDisplay::getFrames ( ) const
inline

Definition at line 393 of file saldisp.hxx.

References SalUserEventList::m_aFrames.

KeyIndicatorState SalDisplay::GetIndicatorState ( ) const
SalI18N_InputMethod* SalDisplay::GetInputMethod ( ) const
inline

Definition at line 382 of file saldisp.hxx.

References SalXLib::GetInputMethod().

Pixmap SalDisplay::GetInvert50 ( SalX11Screen  nXScreen) const
inline

Definition at line 369 of file saldisp.hxx.

SalI18N_KeyboardExtension* SalDisplay::GetKbdExtension ( ) const
inline

Definition at line 383 of file saldisp.hxx.

sal_uInt16 SalDisplay::GetKeyCode ( KeySym  keysym,
char *  pcPrintable 
) const
OUString SalDisplay::GetKeyName ( sal_uInt16  nKeyCode) const
OUString SalDisplay::GetKeyNameFromKeySym ( KeySym  keysym) const
KeySym SalDisplay::GetKeySym ( XKeyEvent *  pEvent,
char *  pPrintable,
int pLen,
KeySym *  pUnmodifiedKeySym,
Status pStatus,
XIC  = nullptr 
) const
Time SalDisplay::GetLastUserEventTime ( ) const
inline

Definition at line 375 of file saldisp.hxx.

References Time.

sal_uLong SalDisplay::GetMaxRequestSize ( ) const
inline

Definition at line 374 of file saldisp.hxx.

Cursor SalDisplay::GetPointer ( PointerStyle  ePointerStyle)
RenderEntryMap& SalDisplay::GetRenderEntries ( SalX11Screen  nXScreen) const
inline

Definition at line 372 of file saldisp.hxx.

const Pair& SalDisplay::GetResolution ( ) const
inline

Definition at line 373 of file saldisp.hxx.

::Window SalDisplay::GetRootWindow ( SalX11Screen  nXScreen) const
inline

Definition at line 389 of file saldisp.hxx.

std::list< SalObject* >& SalDisplay::getSalObjects ( )
inline

Definition at line 396 of file saldisp.hxx.

const Size& SalDisplay::GetScreenSize ( SalX11Screen  nXScreen) const
inline

Definition at line 365 of file saldisp.hxx.

srv_vendor_t SalDisplay::GetServerVendor ( ) const
inline

Definition at line 366 of file saldisp.hxx.

const SalVisual& SalDisplay::GetVisual ( SalX11Screen  nXScreen) const
inline

Definition at line 371 of file saldisp.hxx.

::vcl_sal::WMAdaptor* SalDisplay::getWMAdaptor ( ) const
inline

Definition at line 386 of file saldisp.hxx.

Time SalDisplay::GetX11ServerTime ( ) const
inline

Definition at line 377 of file saldisp.hxx.

References Time.

const std::vector< tools::Rectangle >& SalDisplay::GetXineramaScreens ( ) const
inline

Definition at line 388 of file saldisp.hxx.

SalXLib* SalDisplay::GetXLib ( ) const
inline

Definition at line 380 of file saldisp.hxx.

unsigned int SalDisplay::GetXScreenCount ( ) const
inline

Definition at line 391 of file saldisp.hxx.

void SalDisplay::Init ( )
void SalDisplay::InitRandR ( ::Window  aRoot) const
protected
virtual ScreenData* SalDisplay::initScreen ( SalX11Screen  nXScreen) const
virtual

Reimplemented in GtkSalDisplay.

void SalDisplay::InitXinerama ( )
protected
bool SalDisplay::IsDisplay ( ) const
inline

Definition at line 367 of file saldisp.hxx.

bool SalDisplay::IsNumLockFromXS ( ) const
inline

Definition at line 394 of file saldisp.hxx.

bool SalDisplay::IsXinerama ( ) const
inline

Definition at line 387 of file saldisp.hxx.

void SalDisplay::ModifierMapping ( )
void SalDisplay::PrintInfo ( ) const
void SalDisplay::processRandREvent ( XEvent *  )
protected
void SalDisplay::SetKbdExtension ( SalI18N_KeyboardExtension pKbdExtension)
inline

Definition at line 384 of file saldisp.hxx.

void SalDisplay::SimulateKeyPress ( sal_uInt16  nKeyCode)
bool SalDisplay::XIfEventWithTimeout ( XEvent *  ,
XPointer  ,
X_if_predicate   
) const

Member Data Documentation

o3tl::enumarray<PointerStyle, Cursor> SalDisplay::aPointerCache_
protected

Definition at line 290 of file saldisp.hxx.

Pair SalDisplay::aResolution_
protected

Definition at line 283 of file saldisp.hxx.

bool SalDisplay::bNumLockFromXS_
protected

Definition at line 293 of file saldisp.hxx.

ScreenData const SalDisplay::m_aInvalidScreenData
protected

Definition at line 282 of file saldisp.hxx.

std::list<SalObject*> SalDisplay::m_aSalObjects
protected

Definition at line 304 of file saldisp.hxx.

std::vector< ScreenData > SalDisplay::m_aScreens
protected

Definition at line 281 of file saldisp.hxx.

std::vector< int > SalDisplay::m_aXineramaScreenIndexMap
protected

Definition at line 303 of file saldisp.hxx.

std::vector< tools::Rectangle > SalDisplay::m_aXineramaScreens
protected

Definition at line 302 of file saldisp.hxx.

bool SalDisplay::m_bUseRandRWrapper
protected

Definition at line 306 of file saldisp.hxx.

bool SalDisplay::m_bXinerama
protected

Definition at line 301 of file saldisp.hxx.

Time SalDisplay::m_nLastUserEventTime
mutableprotected

Definition at line 308 of file saldisp.hxx.

SalX11Screen SalDisplay::m_nXDefaultScreen
protected

Definition at line 280 of file saldisp.hxx.

std::unique_ptr<vcl_sal::WMAdaptor> SalDisplay::m_pWMAdaptor
protected

Definition at line 299 of file saldisp.hxx.

srv_vendor_t SalDisplay::meServerVendor
protected

Definition at line 286 of file saldisp.hxx.

SalI18N_KeyboardExtension* SalDisplay::mpKbdExtension
protected

Definition at line 276 of file saldisp.hxx.

KeySym SalDisplay::nCtrlKeySym_
protected

Definition at line 296 of file saldisp.hxx.

sal_uLong SalDisplay::nMaxRequestSize_
protected

Definition at line 284 of file saldisp.hxx.

KeySym SalDisplay::nMod1KeySym_
protected

Definition at line 297 of file saldisp.hxx.

int SalDisplay::nNumLockIndex_
protected

Definition at line 294 of file saldisp.hxx.

KeySym SalDisplay::nShiftKeySym_
protected

Definition at line 295 of file saldisp.hxx.

Display* SalDisplay::pDisp_
protected

Definition at line 278 of file saldisp.hxx.

SalXLib* SalDisplay::pXLib_
protected

Definition at line 275 of file saldisp.hxx.


The documentation for this class was generated from the following file: