34 :
SfxTabPage(pPage, pController,
"modules/schart/ui/tp_axisLabel.ui",
"AxisLabelTabPage", &rInAttrs)
35 , m_bShowStaggeringControls( true )
36 , m_nInitialDegrees( 0 )
37 , m_bHasInitialDegrees( true )
38 , m_bInitialStacking( false )
39 , m_bHasInitialStacking( true )
40 , m_bComplexCategories( false )
41 , m_xCbShowDescription(m_xBuilder->weld_check_button(
"showlabelsCB"))
42 , m_xFlOrder(m_xBuilder->weld_label(
"orderL"))
43 , m_xRbSideBySide(m_xBuilder->weld_radio_button(
"tile"))
44 , m_xRbUpDown(m_xBuilder->weld_radio_button(
"odd"))
45 , m_xRbDownUp(m_xBuilder->weld_radio_button(
"even"))
46 , m_xRbAuto(m_xBuilder->weld_radio_button(
"auto"))
47 , m_xFlTextFlow(m_xBuilder->weld_label(
"textflowL"))
48 , m_xCbTextOverlap(m_xBuilder->weld_check_button(
"overlapCB"))
49 , m_xCbTextBreak(m_xBuilder->weld_check_button(
"breakCB"))
50 , m_xFtABCD(m_xBuilder->weld_label(
"labelABCD"))
51 , m_xFtRotate(m_xBuilder->weld_label(
"degreeL"))
52 , m_xNfRotate(m_xBuilder->weld_metric_spin_button(
"OrientDegree",
FieldUnit::
DEGREE))
53 , m_xCbStacked(m_xBuilder->weld_check_button(
"stackedCB"))
54 , m_xFtTextDirection(m_xBuilder->weld_label(
"textdirL"))
55 , m_aLbTextDirection(m_xBuilder->weld_combo_box(
"textdirLB"))
56 , m_xCtrlDial(new
svx::DialControl)
57 , m_xCtrlDialWin(new
weld::CustomWeld(*m_xBuilder,
"dialCtrl", *m_xCtrlDial))
78 return std::make_unique<SchAxisLabelTabPage>(pPage, pController, *rAttrs);
83 bool bStacked =
false;
101 bool bRadioButtonChecked =
true;
104 eOrder = SvxChartTextOrder::UpDown;
106 eOrder = SvxChartTextOrder::DownUp;
108 eOrder = SvxChartTextOrder::Auto;
110 eOrder = SvxChartTextOrder::SideBySide;
112 bRadioButtonChecked =
false;
114 if( bRadioButtonChecked )
137 if( aState == SfxItemState::DONTCARE )
144 if( aState == SfxItemState::SET )
148 if( aState != SfxItemState::DEFAULT && aState != SfxItemState::SET )
157 if( aState == SfxItemState::SET )
169 if( aState == SfxItemState::SET )
184 if( aState == SfxItemState::DONTCARE )
191 if( aState == SfxItemState::SET )
195 if( aState != SfxItemState::DEFAULT && aState != SfxItemState::SET )
201 if( aState == SfxItemState::DONTCARE )
208 if( aState == SfxItemState::SET )
212 if( aState != SfxItemState::DEFAULT && aState != SfxItemState::SET )
229 case SvxChartTextOrder::SideBySide:
232 case SvxChartTextOrder::UpDown:
235 case SvxChartTextOrder::DownUp:
238 case SvxChartTextOrder::Auto:
271 bool bActive = m_xCbStacked->get_active() && m_xCbStacked->get_sensitive();
272 m_xNfRotate->set_sensitive(!bActive);
273 m_xCtrlDialWin->set_sensitive(!bActive);
274 m_xCtrlDial->StyleUpdated();
275 m_xFtRotate->set_sensitive(!bActive);
280 bool bEnable = ( m_xCbShowDescription->get_state() !=
TRISTATE_FALSE );
282 m_xCbStacked->set_sensitive(bEnable);
283 StackedToggleHdl(*m_xCbStacked);
285 m_xFlOrder->set_sensitive( bEnable );
286 m_xRbSideBySide->set_sensitive( bEnable );
287 m_xRbUpDown->set_sensitive( bEnable );
288 m_xRbDownUp->set_sensitive( bEnable );
289 m_xRbAuto->set_sensitive( bEnable );
291 m_xFlTextFlow->set_sensitive( bEnable );
292 m_xCbTextOverlap->set_sensitive( bEnable && !m_bComplexCategories );
293 m_xCbTextBreak->set_sensitive( bEnable );
295 m_xFtTextDirection->set_sensitive( bEnable );
296 m_aLbTextDirection.set_sensitive( bEnable );
constexpr TypedWhichId< SfxBoolItem > SCHATTR_AXIS_LABEL_BREAK(SCHATTR_AXIS_LABEL_START+3)
constexpr TypedWhichId< SfxBoolItem > SCHATTR_AXIS_LABEL_OVERLAP(SCHATTR_AXIS_LABEL_START+2)
constexpr TypedWhichId< SfxBoolItem > SCHATTR_TEXT_STACKED(SCHATTR_TEXT_START+1)
constexpr TypedWhichId< SvxChartTextOrderItem > SCHATTR_AXIS_LABEL_ORDER(SCHATTR_AXIS_LABEL_START+1)
constexpr TypedWhichId< SfxBoolItem > SCHATTR_AXIS_SHOWDESCR(SCHATTR_AXIS_LABEL_START)
constexpr TypedWhichId< SdrAngleItem > SCHATTR_TEXT_DEGREES(SCHATTR_TEXT_START)
const T * GetItemIfSet(TypedWhichId< T > nWhich, bool bSrchInParent=true) const
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
virtual void Reset(const SfxItemSet *rInAttrs) override
bool m_bInitialStacking
false = DialControl in tristate
bool m_bComplexCategories
false = checkbox in tristate
std::unique_ptr< weld::Label > m_xFtRotate
SchAxisLabelTabPage(weld::Container *pPage, weld::DialogController *pController, const SfxItemSet &rInAttrs)
std::unique_ptr< weld::Label > m_xFlOrder
bool m_bShowStaggeringControls
std::unique_ptr< weld::RadioButton > m_xRbDownUp
std::unique_ptr< weld::RadioButton > m_xRbUpDown
std::unique_ptr< weld::CheckButton > m_xCbStacked
void ShowStaggeringControls(bool bShowStaggeringControls)
TextDirectionListBox m_aLbTextDirection
bool m_bHasInitialDegrees
std::unique_ptr< weld::CheckButton > m_xCbShowDescription
std::unique_ptr< weld::CustomWeld > m_xCtrlDialWin
bool m_bHasInitialStacking
virtual ~SchAxisLabelTabPage() override
std::unique_ptr< weld::MetricSpinButton > m_xNfRotate
std::unique_ptr< weld::RadioButton > m_xRbSideBySide
virtual bool FillItemSet(SfxItemSet *rOutAttrs) override
Degree100 m_nInitialDegrees
std::unique_ptr< svx::DialControl > m_xCtrlDial
std::unique_ptr< weld::Label > m_xFlTextFlow
static std::unique_ptr< SfxTabPage > Create(weld::Container *pPage, weld::DialogController *pController, const SfxItemSet *rInAttrs)
std::unique_ptr< weld::Label > m_xFtABCD
void SetComplexCategories(bool bComplexCategories)
std::unique_ptr< weld::CheckButton > m_xCbTextBreak
std::unique_ptr< weld::RadioButton > m_xRbAuto
std::unique_ptr< weld::CheckButton > m_xCbTextOverlap
SvxFrameDirection get_active_id() const
void set_active_id(SvxFrameDirection eDir)
constexpr TypedWhichId< SvxFrameDirectionItem > EE_PARA_WRITINGDIR(EE_PARA_START+0)
#define LINK(Instance, Class, Member)
IMPL_LINK_NOARG(SplinePropertiesDialog, SplineTypeListBoxHdl, weld::ComboBox &, void)