LibreOffice Module sfx2 (master) 1
Classes | Namespaces | Macros | Typedefs | Enumerations | Variables
shell.hxx File Reference
#include <memory>
#include <rtl/ustring.hxx>
#include <sal/config.h>
#include <sal/types.h>
#include <svl/typedwhich.hxx>
#include <sfx2/dllapi.h>
#include <svl/SfxBroadcaster.hxx>
#include <o3tl/typed_flags_set.hxx>
#include <o3tl/strong_int.hxx>
#include <optional>
Include dependency graph for shell.hxx:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  o3tl::typed_flags< SfxShellFeature >
 
struct  o3tl::typed_flags< SfxDisableFlags >
 
class  SfxShell
 The class SfxShell is the base class for all classes, which provide the functionality of the form <Slot>s. More...
 
struct  o3tl::typed_flags< SfxVisibilityFlags >
 

Namespaces

namespace  com
 
namespace  com::sun
 
namespace  com::sun::star
 
namespace  com::sun::star::embed
 Implementation of the interface com.sun.star.rdf.XDocumentMetadataAccess.
 
namespace  com::sun::star::uno
 
namespace  o3tl
 

Macros

#define SFX_DECL_INTERFACE(nId)
 
#define SFX_TMPL_INTERFACE(Class, SuperClass, Abstract)
 
#define SFX_IMPL_INTERFACE(Class, SuperClass)   SFX_TMPL_INTERFACE(Class,SuperClass,false) \
 
#define SFX_IMPL_SUPERCLASS_INTERFACE(Class, SuperClass)   SFX_TMPL_INTERFACE(Class,SuperClass,true) \
 

Typedefs

typedef o3tl::strong_int< sal_uInt16, struct SfxInterfaceIdTag > SfxInterfaceId
 Id for <SfxInterface>s, gives a quasi-static access to the interface through an array to <SfxApplication>. More...
 
typedef void(* SfxExecFunc) (SfxShell *, SfxRequest &rReq)
 
typedef void(* SfxStateFunc) (SfxShell *, SfxItemSet &rSet)
 

Enumerations

enum class  SfxShellFeature {
  NONE = 0x0000 ,
  SwChildWindowLabel = 0x0001 ,
  BasicShowBrowser = 0x0004 ,
  FormShowDatabaseBar = 0x0008 ,
  FormShowField = 0x0010 ,
  FormShowProperties = 0x0020 ,
  FormShowExplorer = 0x0040 ,
  FormShowFilterBar = 0x0080 ,
  FormShowFilterNavigator = 0x0100 ,
  FormShowTextControlBar = 0x0200 ,
  FormTBControls = 0x0400 ,
  FormTBDesign = 0x1000 ,
  FormShowDataNavigator = 0x2000 ,
  SwMask = 0x0001 ,
  BasicMask = 0x0004 ,
  FormMask = 0x3ff8
}
 
enum class  SfxDisableFlags {
  NONE ,
  SwOnProtectedCursor = 0x0001 ,
  SwOnMailboxEditor = 0x0002
}
 
enum class  SfxVisibilityFlags {
  Invisible = 0x0000 ,
  Viewer = 0x0040 ,
  ReadonlyDoc = 0x0400 ,
  Standard = 0x1000 ,
  FullScreen = 0x2000 ,
  Client = 0x4000 ,
  Server = 0x8000
}
 

Variables

constexpr auto SFX_INTERFACE_NONE = SfxInterfaceId(0)
 
constexpr auto SFX_INTERFACE_SFXAPP = SfxInterfaceId(1)
 
constexpr auto SFX_INTERFACE_SFXDOCSH = SfxInterfaceId(2)
 
constexpr auto SFX_INTERFACE_SFXVIEWSH = SfxInterfaceId(3)
 
constexpr auto SFX_INTERFACE_SFXVIEWFRM = SfxInterfaceId(4)
 
constexpr auto SFX_INTERFACE_SFXMODULE = SfxInterfaceId(5)
 
constexpr auto SFX_INTERFACE_SC_START = SfxInterfaceId(150)
 
constexpr auto SFX_INTERFACE_SD_START = SfxInterfaceId(200)
 
constexpr auto SFX_INTERFACE_SW_START = SfxInterfaceId(250)
 
constexpr auto SFX_INTERFACE_SMA_START = SfxInterfaceId(340)
 
constexpr auto SFX_INTERFACE_IDE_START = SfxInterfaceId(400)
 
constexpr auto SFX_INTERFACE_IDE_END = SfxInterfaceId(409)
 

Macro Definition Documentation

◆ SFX_DECL_INTERFACE

#define SFX_DECL_INTERFACE (   nId)
Value:
static SfxInterface* s_pInterface; \
static SfxInterface* GetStaticInterface(); \
static SfxInterfaceId GetInterfaceId() {return nId;} \
static void RegisterInterface(const SfxModule* pMod=nullptr); \
virtual SfxInterface* GetInterface() const override;
sal_Int16 nId

Definition at line 532 of file shell.hxx.

◆ SFX_IMPL_INTERFACE

#define SFX_IMPL_INTERFACE (   Class,
  SuperClass 
)    SFX_TMPL_INTERFACE(Class,SuperClass,false) \

Definition at line 567 of file shell.hxx.

◆ SFX_IMPL_SUPERCLASS_INTERFACE

#define SFX_IMPL_SUPERCLASS_INTERFACE (   Class,
  SuperClass 
)    SFX_TMPL_INTERFACE(Class,SuperClass,true) \

Definition at line 570 of file shell.hxx.

◆ SFX_TMPL_INTERFACE

#define SFX_TMPL_INTERFACE (   Class,
  SuperClass,
  Abstract 
)
Value:
\
SfxInterface* Class::s_pInterface = nullptr; \
SfxInterface* Class::GetStaticInterface() \
{ \
if ( !s_pInterface ) \
{ \
s_pInterface = \
new SfxInterface( \
#Class, Abstract, GetInterfaceId(), \
SuperClass::GetStaticInterface(), \
a##Class##Slots_Impl[0], \
sal_uInt16(sizeof(a##Class##Slots_Impl) / sizeof(SfxSlot) ) ); \
InitInterface_Impl(); \
} \
return s_pInterface; \
} \
\
SfxInterface* Class::GetInterface() const \
{ \
return GetStaticInterface(); \
} \
\
void Class::RegisterInterface(const SfxModule* pMod) \
{ \
GetStaticInterface()->Register(pMod); \
}
Definition: msg.hxx:184

Definition at line 539 of file shell.hxx.

Typedef Documentation

◆ SfxExecFunc

typedef void(* SfxExecFunc) (SfxShell *, SfxRequest &rReq)

Definition at line 111 of file shell.hxx.

◆ SfxInterfaceId

typedef o3tl::strong_int<sal_uInt16, struct SfxInterfaceIdTag> SfxInterfaceId

Id for <SfxInterface>s, gives a quasi-static access to the interface through an array to <SfxApplication>.

Definition at line 58 of file shell.hxx.

◆ SfxStateFunc

typedef void(* SfxStateFunc) (SfxShell *, SfxItemSet &rSet)

Definition at line 112 of file shell.hxx.

Enumeration Type Documentation

◆ SfxDisableFlags

enum class SfxDisableFlags
strong
Enumerator
NONE 
SwOnProtectedCursor 
SwOnMailboxEditor 

Definition at line 102 of file shell.hxx.

◆ SfxShellFeature

enum class SfxShellFeature
strong
Enumerator
NONE 
SwChildWindowLabel 
BasicShowBrowser 
FormShowDatabaseBar 
FormShowField 
FormShowProperties 
FormShowExplorer 
FormShowFilterBar 
FormShowFilterNavigator 
FormShowTextControlBar 
FormTBControls 
FormTBDesign 
FormShowDataNavigator 
SwMask 
BasicMask 
FormMask 

Definition at line 73 of file shell.hxx.

◆ SfxVisibilityFlags

enum class SfxVisibilityFlags
strong
Enumerator
Invisible 
Viewer 
ReadonlyDoc 
Standard 
FullScreen 
Client 
Server 

Definition at line 573 of file shell.hxx.

Variable Documentation

◆ SFX_INTERFACE_IDE_END

constexpr auto SFX_INTERFACE_IDE_END = SfxInterfaceId(409)
constexpr

Definition at line 71 of file shell.hxx.

◆ SFX_INTERFACE_IDE_START

constexpr auto SFX_INTERFACE_IDE_START = SfxInterfaceId(400)
constexpr

Definition at line 70 of file shell.hxx.

◆ SFX_INTERFACE_NONE

constexpr auto SFX_INTERFACE_NONE = SfxInterfaceId(0)
constexpr

◆ SFX_INTERFACE_SC_START

constexpr auto SFX_INTERFACE_SC_START = SfxInterfaceId(150)
constexpr

Definition at line 66 of file shell.hxx.

◆ SFX_INTERFACE_SD_START

constexpr auto SFX_INTERFACE_SD_START = SfxInterfaceId(200)
constexpr

Definition at line 67 of file shell.hxx.

◆ SFX_INTERFACE_SFXAPP

constexpr auto SFX_INTERFACE_SFXAPP = SfxInterfaceId(1)
constexpr

Definition at line 61 of file shell.hxx.

◆ SFX_INTERFACE_SFXDOCSH

constexpr auto SFX_INTERFACE_SFXDOCSH = SfxInterfaceId(2)
constexpr

Definition at line 62 of file shell.hxx.

◆ SFX_INTERFACE_SFXMODULE

constexpr auto SFX_INTERFACE_SFXMODULE = SfxInterfaceId(5)
constexpr

Definition at line 65 of file shell.hxx.

◆ SFX_INTERFACE_SFXVIEWFRM

constexpr auto SFX_INTERFACE_SFXVIEWFRM = SfxInterfaceId(4)
constexpr

Definition at line 64 of file shell.hxx.

◆ SFX_INTERFACE_SFXVIEWSH

constexpr auto SFX_INTERFACE_SFXVIEWSH = SfxInterfaceId(3)
constexpr

Definition at line 63 of file shell.hxx.

◆ SFX_INTERFACE_SMA_START

constexpr auto SFX_INTERFACE_SMA_START = SfxInterfaceId(340)
constexpr

Definition at line 69 of file shell.hxx.

◆ SFX_INTERFACE_SW_START

constexpr auto SFX_INTERFACE_SW_START = SfxInterfaceId(250)
constexpr

Definition at line 68 of file shell.hxx.