22 #include <rtl/ustring.hxx>
31 #include <com/sun/star/lang/Locale.hpp>
32 #include <com/sun/star/lang/XEventListener.hpp>
33 #include <com/sun/star/deployment/XPackage.hpp>
41 #define SMALL_ICON_SIZE 16
43 #define ICON_HEIGHT 42
45 #define ICON_OFFSET 72
46 #define RIGHT_ICON_OFFSET 5
47 #define SPACE_BETWEEN 3
49 class TheExtensionManager;
79 css::uno::Reference<css::deployment::XPackage>
m_xPackage;
81 Entry_Impl(
const css::uno::Reference<css::deployment::XPackage> &xPackage,
103 virtual void SAL_CALL
disposing(css::lang::EventObject
const& evt)
override;
143 std::vector< css::uno::WeakReference<
171 virtual void Resize()
override;
186 void addEntry(
const css::uno::Reference<css::deployment::XPackage> &xPackage,
187 bool bLicenseMissing =
false );
188 void updateEntry(
const css::uno::Reference<css::deployment::XPackage> &xPackage );
189 void removeEntry(
const css::uno::Reference<css::deployment::XPackage> &xPackage );
void addEntry(const css::uno::Reference< css::deployment::XPackage > &xPackage, bool bLicenseMissing=false)
void updateEntry(const css::uno::Reference< css::deployment::XPackage > &xPackage)
DECL_LINK(ScrollHdl, weld::ScrolledWindow &, void)
virtual void selectEntry(const tools::Long nPos)
virtual void Resize() override
bool HandleCursorKey(sal_uInt16 nKeyCode)
sal_Int32 CompareTo(const CollatorWrapper *pCollator, const TEntry_Impl &rEntry) const
void setExtensionManager(TheExtensionManager *pManager)
Entry_Impl(const css::uno::Reference< css::deployment::XPackage > &xPackage, const PackageState eState, const bool bReadOnly)
virtual bool MouseButtonDown(const MouseEvent &rMEvt) override
virtual void Paint(vcl::RenderContext &rRenderContext, const tools::Rectangle &rPaintRect) override
ExtensionBox_Impl * m_pParent
virtual ~ExtensionRemovedListener() override
virtual bool MouseMove(const MouseEvent &rMEvt) override
void DrawRow(vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect, const TEntry_Impl &rEntry)
std::unique_ptr< weld::ScrolledWindow > m_xScrollBar
virtual ~ExtensionBox_Impl() override
std::unique_ptr< css::lang::Locale > m_pLocale
tools::Long m_nActiveHeight
virtual bool KeyInput(const KeyEvent &rKEvt) override
tools::Rectangle GetEntryRect(const tools::Long nPos) const
TEntry_Impl const & GetEntryData(tools::Long nPos)
rtl::Reference< ExtensionRemovedListener > m_xRemoveListener
virtual void SAL_CALL disposing(css::lang::EventObject const &evt) override
TheExtensionManager * m_pManager
css::uno::Reference< css::deployment::XPackage > m_xPackage
std::vector< TEntry_Impl > m_vEntries
tools::Long GetTotalHeight() const
sal_Int32 getSelIndex() const
sal_Int32 getItemCount() const
ExtensionBox_Impl(std::unique_ptr< weld::ScrolledWindow > xScroll)
ExtensionRemovedListener(ExtensionBox_Impl *pParent)
void cleanVecListenerAdded()
std::vector< TEntry_Impl > m_vRemovedEntries
virtual void SetDrawingArea(weld::DrawingArea *pDrawingArea) override
tools::Long PointToPos(const Point &rPos)
virtual OUString RequestHelp(tools::Rectangle &rRect) override
std::unique_ptr< CollatorWrapper > m_pCollator
void addEventListenerOnce(css::uno::Reference< css::deployment::XPackage > const &extension)
mutable::osl::Mutex m_entriesMutex
void CalcActiveHeight(const tools::Long nPos)
std::vector< css::uno::WeakReference< css::deployment::XPackage > > m_vListenerAdded
tools::Rectangle m_aLinkRect
bool FindEntryPos(const TEntry_Impl &rEntry, tools::Long nStart, tools::Long nEnd, tools::Long &nFound)
void removeEntry(const css::uno::Reference< css::deployment::XPackage > &xPackage)
tools::Long GetEntryCount() const
std::shared_ptr< Entry_Impl > TEntry_Impl