37#include <dlgedfac.hxx>
40#define SECTION_OFFSET 3
70 m_aHRuler->SetUnit(MeasurementSystem::Metric == eSystem ? FieldUnit::CM : FieldUnit::INCH);
116 if ( !_xSection.is() )
140 return sal_Int32(
static_cast<tools::Long>(aStartWidth));
145 sal_Int32 nWidth = 0;
150 aStartWidth *= aZoom;
151 sal_Int32 nPaperWidth = getStyleProperty<awt::Size>(
m_pView->getController().getReportDefinition(),
PROPERTY_PAPERSIZE).Width;
171 const sal_Int32 nPaperWidth = getStyleProperty<awt::Size>(xReportDefinition,
PROPERTY_PAPERSIZE).Width;
181 tools::Long nSectionsHeight = ::std::max<tools::Long>(nTermp,aTotalOutputSize.
Height());
183 m_aHRuler->SetPosSizePixel(aStartPoint,aPageSize);
189 nSectionsHeight -= aStartPoint.
Y();
191 aStartPoint.
setX( aOffset.
X() );
208 Window::DataChanged( rDCEvt );
210 if ( (rDCEvt.
GetType() == DataChangedEventType::SETTINGS) &&
211 (rDCEvt.
GetFlags() & AllSettingsFlags::STYLE) )
227 if ( aOrg.
X() != (-_aThumbPos.
X()) )
229 aMap.SetOrigin(
Point(- _aThumbPos.
X(), aOrg.
Y()));
310void OReportWindow::setMarked(
const uno::Sequence< uno::Reference< report::XReportComponent> >& _xShape,
bool _bMark)
346 m_aViewsWindow->alignMarkedObjects(_nControlModification, _bAlignAtSection);
378 Invalidate(InvalidateFlags::NoErase | InvalidateFlags::NoChildren | InvalidateFlags::Transparent);
388 const sal_Int32 nPaperWidth = getStyleProperty<awt::Size>(
m_pView->getController().getReportDefinition(),
PROPERTY_PAPERSIZE).Width;
396 sal_uInt16 nZoom(100);
400 case SvxZoomType::PERCENT:
401 nZoom =
m_pView->getController().getZoomValue();
403 case SvxZoomType::OPTIMAL:
405 case SvxZoomType::WHOLEPAGE:
413 case SvxZoomType::PAGEWIDTH:
#define REPORT_STARTMARKER_WIDTH
#define REPORT_ENDMARKER_WIDTH
DataChangedEventType GetType() const
AllSettingsFlags GetFlags() const
MeasurementSystem getMeasurementSystemEnum() const
constexpr tools::Long Y() const
void setX(tools::Long nX)
tools::Long AdjustY(tools::Long nVertMove)
constexpr tools::Long X() const
constexpr tools::Long Height() const
void setHeight(tools::Long nHeight)
constexpr tools::Long Width() const
const LocaleDataWrapper & GetLocaleData() const
OReportController & getController() const
const css::uno::Reference< css::report::XReportDefinition > & getReportDefinition() const
gives access to the report definition
OSectionView & getSectionView() const
sal_uInt16 getSectionCount() const
VclPtr< ODesignView > m_pView
VclPtr< Ruler > m_aHRuler
virtual void DataChanged(const DataChangedEvent &rDCEvt) override
sal_Int32 GetTotalWidth() const
returns the total width of the first section
void ScrollChildren(const Point &_aThumbPos)
bool handleKeyEvent(const KeyEvent &_rEvent)
checks if the keycode is known by the child windows
rtl::Reference< comphelper::OPropertyChangeMultiplexer > m_pReportListener
virtual void markSection(const sal_uInt16 _nPos) override
mark the section on the given position .
void addSection(const css::uno::Reference< css::report::XSection > &_xSection, const OUString &_sColorEntry, sal_uInt16 _nPosition)
adds a new section at position _nPosition.
bool HasSelection() const
returns <TRUE> when an object is marked
bool IsPasteAllowed() const
returns if paste is allowed
void setMarked(OSectionView const *_pSectionView, bool _bMark)
the section as marked or not marked
void showRuler(bool _bShow)
shows the ruler
void SetMode(DlgEdMode m_eMode)
void zoom(const Fraction &_aZoom)
zoom the ruler and view windows
void SetInsertObj(SdrObjKind eObj, const OUString &_sShapeType)
virtual void Resize() override
void Delete()
Deletes the current selection in this section.
OSectionWindow * getMarkedSection(NearSectionAccess nsa=CURRENT) const override
returns the section which is currently marked.
void Copy()
copies the current selection in this section
virtual ~OReportWindow() override
sal_uInt32 getMarkedObjectCount() const
sal_Int32 getMaxMarkerWidth() const
calculate the max width of the markers The end marker will not be used for calculation.
void unmarkAllObjects()
unmark all objects on the views without the given one.
void SelectAll(const SdrObjKind _nObjectType)
All objects will be marked.
void removeSection(sal_uInt16 _nPosition)
removes the section at the given position.
ODesignView * getReportView() const
VclPtr< OViewsWindow > m_aViewsWindow
VclPtr< OScrollWindowHelper > m_pParent
sal_Int32 GetTotalHeight() const
OSectionWindow * getSectionWindow(const css::uno::Reference< css::report::XSection > &_xSection) const
void showProperties(const css::uno::Reference< css::report::XSection > &_xReportComponent)
triggers the property browser with the report component or section
virtual void dispose() override
void fillCollapsedSections(::std::vector< sal_uInt16 > &_rCollapsedPositions) const
fills the positions of all collapsed sections.
OUString const & GetInsertObjString() const
sal_uInt16 getZoomFactor(SvxZoomType _eType) const
calculates the zoom factor.
Point getThumbPos() const
void alignMarkedObjects(ControlModification _nControlModification, bool _bAlignAtSection)
align all marked objects in all sections
virtual void _propertyChanged(const css::beans::PropertyChangeEvent &_rEvent) override
void setGridSnap(bool bOn)
void Paste()
paste a new control in this section
void fillControlModelSelection(::std::vector< css::uno::Reference< css::uno::XInterface > > &_rSelection) const
fills the vector with all selected control models /param _rSelection The vector will be filled and wi...
sal_Int32 impl_getRealPixelWidth() const
void setDragStripes(bool bOn)
void collapseSections(const css::uno::Sequence< css::beans::PropertyValue > &_aCollapsedSections)
collapse all sections given by their position
void toggleGrid(bool _bVisible)
turns the grid on or off
OReportWindow(OReportWindow const &)=delete
OReportSection & getReportSection()
virtual void dispose() override
Point LogicToPixel(const Point &rLogicPt) const
virtual Size GetSizePixel() const
Size GetOutputSizePixel() const
void Invalidate(InvalidateFlags nFlags=InvalidateFlags::NONE)
void SetHelpId(const OUString &)
constexpr OUStringLiteral UID_RPT_REPORTWINDOW
tools::Long const nRightMargin
tools::Long const nLeftMargin
::rtl::Reference< comphelper::OPropertyChangeMultiplexer > addStyleListener(const css::uno::Reference< css::report::XReportDefinition > &_xReportDefinition,::comphelper::OPropertyChangeListener *_pListener)
add a listener for the properties size, left margin, right margin to the page style
HashMap_OWString_Interface aMap
constexpr OUStringLiteral PROPERTY_RIGHTMARGIN
constexpr OUStringLiteral PROPERTY_LEFTMARGIN
constexpr OUStringLiteral PROPERTY_PAPERSIZE
WinBits const WB_DIALOGCONTROL