1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 #include "precompiled_reportdesign.hxx" 24 #include "FixedLine.hxx" 25 #include <com/sun/star/beans/PropertyAttribute.hpp> 26 #ifndef REPORTDESIGN_SHARED_CORESTRINGS_HRC 27 #include "corestrings.hrc" 28 #endif 29 #ifndef REPORTDESIGN_CORE_RESOURCE_HRC_ 30 #include "core_resource.hrc" 31 #endif 32 #include "core_resource.hxx" 33 #include <comphelper/sequence.hxx> 34 #include <tools/debug.hxx> 35 #include <comphelper/property.hxx> 36 #include "Tools.hxx" 37 #include "FormatCondition.hxx" 38 #include <com/sun/star/beans/XPropertyState.hpp> 39 #include <com/sun/star/text/ParagraphVertAlign.hpp> 40 #include <boost/bind.hpp> 41 #include "ReportHelperImpl.hxx" 42 43 #define MIN_WIDTH 80 44 #define MIN_HEIGHT 20 45 // ============================================================================= 46 namespace reportdesign 47 { 48 // ============================================================================= 49 using namespace com::sun::star; 50 using namespace comphelper; 51 uno::Sequence< ::rtl::OUString > lcl_getLineOptionals() 52 { 53 ::rtl::OUString pProps[] = { 54 PROPERTY_DATAFIELD 55 ,PROPERTY_DEFAULTCONTROL 56 ,PROPERTY_CONTROLBORDER 57 ,PROPERTY_CONTROLBORDERCOLOR 58 ,PROPERTY_CHARCOLOR 59 ,PROPERTY_CHAREMPHASIS 60 ,PROPERTY_CHARFONTCHARSET 61 ,PROPERTY_CHARFONTFAMILY 62 ,PROPERTY_CHARFONTNAME 63 ,PROPERTY_CHARFONTPITCH 64 ,PROPERTY_CHARFONTSTYLENAME 65 ,PROPERTY_CHARHEIGHT 66 ,PROPERTY_CHARPOSTURE 67 ,PROPERTY_CHARRELIEF 68 ,PROPERTY_FONTDESCRIPTOR 69 ,PROPERTY_FONTDESCRIPTORASIAN 70 ,PROPERTY_FONTDESCRIPTORCOMPLEX 71 ,PROPERTY_CONTROLTEXTEMPHASISMARK 72 ,PROPERTY_CHARROTATION 73 ,PROPERTY_CHARSCALEWIDTH 74 ,PROPERTY_CHARSTRIKEOUT 75 ,PROPERTY_CHARUNDERLINECOLOR 76 ,PROPERTY_CHARUNDERLINE 77 ,PROPERTY_CHARWEIGHT 78 ,PROPERTY_CHARWORDMODE 79 ,PROPERTY_CONTROLBACKGROUND 80 ,PROPERTY_CONTROLBACKGROUNDTRANSPARENT 81 ,PROPERTY_CHARFLASH 82 ,PROPERTY_CHARAUTOKERNING 83 ,PROPERTY_CHARESCAPEMENTHEIGHT 84 ,PROPERTY_CHARLOCALE 85 ,PROPERTY_CHARESCAPEMENT 86 ,PROPERTY_CHARCASEMAP 87 ,PROPERTY_CHARCOMBINEISON 88 ,PROPERTY_CHARCOMBINEPREFIX 89 ,PROPERTY_CHARCOMBINESUFFIX 90 ,PROPERTY_CHARHIDDEN 91 ,PROPERTY_CHARSHADOWED 92 ,PROPERTY_CHARCONTOURED 93 ,PROPERTY_HYPERLINKURL 94 ,PROPERTY_HYPERLINKTARGET 95 ,PROPERTY_HYPERLINKNAME 96 ,PROPERTY_VISITEDCHARSTYLENAME 97 ,PROPERTY_UNVISITEDCHARSTYLENAME 98 ,PROPERTY_CHARKERNING 99 ,PROPERTY_PRINTREPEATEDVALUES 100 ,PROPERTY_CONDITIONALPRINTEXPRESSION 101 ,PROPERTY_PRINTWHENGROUPCHANGE 102 ,PROPERTY_MASTERFIELDS 103 ,PROPERTY_DETAILFIELDS 104 ,PROPERTY_PARAADJUST 105 106 , PROPERTY_CHAREMPHASISASIAN 107 , PROPERTY_CHARFONTNAMEASIAN 108 , PROPERTY_CHARFONTSTYLENAMEASIAN 109 , PROPERTY_CHARFONTFAMILYASIAN 110 , PROPERTY_CHARFONTCHARSETASIAN 111 , PROPERTY_CHARFONTPITCHASIAN 112 , PROPERTY_CHARHEIGHTASIAN 113 , PROPERTY_CHARUNDERLINEASIAN 114 , PROPERTY_CHARWEIGHTASIAN 115 , PROPERTY_CHARPOSTUREASIAN 116 , PROPERTY_CHARWORDMODEASIAN 117 , PROPERTY_CHARROTATIONASIAN 118 , PROPERTY_CHARSCALEWIDTHASIAN 119 , PROPERTY_CHARLOCALEASIAN 120 , PROPERTY_CHAREMPHASISCOMPLEX 121 , PROPERTY_CHARFONTNAMECOMPLEX 122 , PROPERTY_CHARFONTSTYLENAMECOMPLEX 123 , PROPERTY_CHARFONTFAMILYCOMPLEX 124 , PROPERTY_CHARFONTCHARSETCOMPLEX 125 , PROPERTY_CHARFONTPITCHCOMPLEX 126 , PROPERTY_CHARHEIGHTCOMPLEX 127 , PROPERTY_CHARUNDERLINECOMPLEX 128 , PROPERTY_CHARWEIGHTCOMPLEX 129 , PROPERTY_CHARPOSTURECOMPLEX 130 , PROPERTY_CHARWORDMODECOMPLEX 131 , PROPERTY_CHARROTATIONCOMPLEX 132 , PROPERTY_CHARSCALEWIDTHCOMPLEX 133 , PROPERTY_CHARLOCALECOMPLEX 134 135 136 }; 137 return uno::Sequence< ::rtl::OUString >(pProps,sizeof(pProps)/sizeof(pProps[0])); 138 } 139 DBG_NAME(rpt_OFixedLine) 140 // ----------------------------------------------------------------------------- 141 OFixedLine::OFixedLine(uno::Reference< uno::XComponentContext > const & _xContext) 142 :FixedLineBase(m_aMutex) 143 ,FixedLinePropertySet(_xContext,static_cast< Implements >(IMPLEMENTS_PROPERTY_SET),lcl_getLineOptionals()) 144 ,m_aProps(m_aMutex,static_cast< container::XContainer*>( this ),_xContext) 145 ,m_nOrientation(1) 146 ,m_LineColor(0) 147 ,m_LineTransparence(0) 148 ,m_LineWidth(0) 149 { 150 DBG_CTOR(rpt_OFixedLine,NULL); 151 m_aProps.aComponent.m_sName = RPT_RESSTRING(RID_STR_FIXEDLINE,m_aProps.aComponent.m_xContext->getServiceManager()); 152 m_aProps.aComponent.m_nWidth = MIN_WIDTH; 153 } 154 // ----------------------------------------------------------------------------- 155 OFixedLine::OFixedLine(uno::Reference< uno::XComponentContext > const & _xContext 156 ,const uno::Reference< lang::XMultiServiceFactory>& _xFactory 157 ,uno::Reference< drawing::XShape >& _xShape 158 ,sal_Int32 _nOrientation) 159 :FixedLineBase(m_aMutex) 160 ,FixedLinePropertySet(_xContext,static_cast< Implements >(IMPLEMENTS_PROPERTY_SET),lcl_getLineOptionals()) 161 ,m_aProps(m_aMutex,static_cast< container::XContainer*>( this ),_xContext) 162 ,m_nOrientation(_nOrientation) 163 ,m_LineColor(0) 164 ,m_LineTransparence(0) 165 ,m_LineWidth(0) 166 { 167 DBG_CTOR(rpt_OFixedLine,NULL); 168 m_aProps.aComponent.m_sName = RPT_RESSTRING(RID_STR_FIXEDLINE,m_aProps.aComponent.m_xContext->getServiceManager()); 169 m_aProps.aComponent.m_xFactory = _xFactory; 170 osl_incrementInterlockedCount( &m_refCount ); 171 try 172 { 173 awt::Size aSize = _xShape->getSize(); 174 if ( m_nOrientation == 1 ) 175 { 176 if ( aSize.Width < MIN_WIDTH ) 177 { 178 aSize.Width = MIN_WIDTH; 179 _xShape->setSize(aSize); 180 } 181 } 182 else if ( MIN_HEIGHT > aSize.Height ) 183 { 184 aSize.Height = MIN_HEIGHT; 185 _xShape->setSize(aSize); 186 } 187 m_aProps.aComponent.setShape(_xShape,this,m_refCount); 188 } 189 catch(uno::Exception&) 190 { 191 OSL_ENSURE(0,"OFixedLine::OFixedLine: Exception caught!"); 192 } 193 osl_decrementInterlockedCount( &m_refCount ); 194 } 195 // ----------------------------------------------------------------------------- 196 OFixedLine::~OFixedLine() 197 { 198 DBG_DTOR(rpt_OFixedLine,NULL); 199 } 200 // ----------------------------------------------------------------------------- 201 //IMPLEMENT_FORWARD_XINTERFACE2(OFixedLine,FixedLineBase,FixedLinePropertySet) 202 IMPLEMENT_FORWARD_REFCOUNT( OFixedLine, FixedLineBase ) 203 // -------------------------------------------------------------------------------- 204 uno::Any SAL_CALL OFixedLine::queryInterface( const uno::Type& _rType ) throw (uno::RuntimeException) 205 { 206 uno::Any aReturn = FixedLineBase::queryInterface(_rType); 207 if ( !aReturn.hasValue() ) 208 aReturn = FixedLinePropertySet::queryInterface(_rType); 209 if ( !aReturn.hasValue() && OReportControlModel::isInterfaceForbidden(_rType) ) 210 return aReturn; 211 212 return aReturn.hasValue() ? aReturn : (m_aProps.aComponent.m_xProxy.is() ? m_aProps.aComponent.m_xProxy->queryAggregation(_rType) : aReturn); 213 } 214 // ----------------------------------------------------------------------------- 215 void SAL_CALL OFixedLine::dispose() throw(uno::RuntimeException) 216 { 217 FixedLinePropertySet::dispose(); 218 cppu::WeakComponentImplHelperBase::dispose(); 219 } 220 // ----------------------------------------------------------------------------- 221 ::rtl::OUString OFixedLine::getImplementationName_Static( ) throw(uno::RuntimeException) 222 { 223 return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.report.OFixedLine")); 224 } 225 226 //-------------------------------------------------------------------------- 227 ::rtl::OUString SAL_CALL OFixedLine::getImplementationName( ) throw(uno::RuntimeException) 228 { 229 return getImplementationName_Static(); 230 } 231 //-------------------------------------------------------------------------- 232 uno::Sequence< ::rtl::OUString > OFixedLine::getSupportedServiceNames_Static( ) throw(uno::RuntimeException) 233 { 234 uno::Sequence< ::rtl::OUString > aServices(1); 235 aServices.getArray()[0] = SERVICE_FIXEDLINE; 236 237 return aServices; 238 } 239 //------------------------------------------------------------------------------ 240 uno::Reference< uno::XInterface > OFixedLine::create(uno::Reference< uno::XComponentContext > const & xContext) 241 { 242 return *(new OFixedLine(xContext)); 243 } 244 245 //-------------------------------------------------------------------------- 246 uno::Sequence< ::rtl::OUString > SAL_CALL OFixedLine::getSupportedServiceNames( ) throw(uno::RuntimeException) 247 { 248 return getSupportedServiceNames_Static(); 249 } 250 //------------------------------------------------------------------------------ 251 sal_Bool SAL_CALL OFixedLine::supportsService(const ::rtl::OUString& ServiceName) throw( uno::RuntimeException ) 252 { 253 return ::comphelper::existsValue(ServiceName,getSupportedServiceNames_Static()); 254 } 255 // ----------------------------------------------------------------------------- 256 // XReportComponent 257 REPORTCOMPONENT_IMPL3(OFixedLine,m_aProps.aComponent) 258 REPORTCOMPONENT_NOMASTERDETAIL(OFixedLine) 259 // ----------------------------------------------------------------------------- 260 ::sal_Int16 SAL_CALL OFixedLine::getControlBorder( ) throw (beans::UnknownPropertyException, uno::RuntimeException) 261 { 262 throw beans::UnknownPropertyException(); 263 } 264 // ----------------------------------------------------------------------------- 265 void SAL_CALL OFixedLine::setControlBorder( ::sal_Int16 /*_border*/ ) throw (lang::IllegalArgumentException, beans::UnknownPropertyException, uno::RuntimeException) 266 { 267 throw beans::UnknownPropertyException(); 268 } 269 // ----------------------------------------------------------------------------- 270 ::sal_Int32 SAL_CALL OFixedLine::getControlBorderColor() throw (beans::UnknownPropertyException,uno::RuntimeException) 271 { 272 throw beans::UnknownPropertyException(); 273 } 274 // ----------------------------------------------------------------------------- 275 void SAL_CALL OFixedLine::setControlBorderColor( ::sal_Int32 /*_bordercolor*/ ) throw (beans::UnknownPropertyException,lang::IllegalArgumentException,uno::RuntimeException) 276 { 277 throw beans::UnknownPropertyException(); 278 } 279 // ----------------------------------------------------------------------------- 280 uno::Reference< beans::XPropertySetInfo > SAL_CALL OFixedLine::getPropertySetInfo( ) throw(uno::RuntimeException) 281 { 282 return FixedLinePropertySet::getPropertySetInfo(); 283 } 284 // ----------------------------------------------------------------------------- 285 void SAL_CALL OFixedLine::setPropertyValue( const ::rtl::OUString& aPropertyName, const uno::Any& aValue ) throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException) 286 { 287 FixedLinePropertySet::setPropertyValue( aPropertyName, aValue ); 288 } 289 // ----------------------------------------------------------------------------- 290 uno::Any SAL_CALL OFixedLine::getPropertyValue( const ::rtl::OUString& PropertyName ) throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException) 291 { 292 return FixedLinePropertySet::getPropertyValue( PropertyName); 293 } 294 // ----------------------------------------------------------------------------- 295 void SAL_CALL OFixedLine::addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const uno::Reference< beans::XPropertyChangeListener >& xListener ) throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException) 296 { 297 FixedLinePropertySet::addPropertyChangeListener( aPropertyName, xListener ); 298 } 299 // ----------------------------------------------------------------------------- 300 void SAL_CALL OFixedLine::removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const uno::Reference< beans::XPropertyChangeListener >& aListener ) throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException) 301 { 302 FixedLinePropertySet::removePropertyChangeListener( aPropertyName, aListener ); 303 } 304 // ----------------------------------------------------------------------------- 305 void SAL_CALL OFixedLine::addVetoableChangeListener( const ::rtl::OUString& PropertyName, const uno::Reference< beans::XVetoableChangeListener >& aListener ) throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException) 306 { 307 FixedLinePropertySet::addVetoableChangeListener( PropertyName, aListener ); 308 } 309 // ----------------------------------------------------------------------------- 310 void SAL_CALL OFixedLine::removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const uno::Reference< beans::XVetoableChangeListener >& aListener ) throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException) 311 { 312 FixedLinePropertySet::removeVetoableChangeListener( PropertyName, aListener ); 313 } 314 // ----------------------------------------------------------------------------- 315 // XReportControlModel 316 ::rtl::OUString SAL_CALL OFixedLine::getDataField() throw (beans::UnknownPropertyException, uno::RuntimeException) 317 { 318 throw beans::UnknownPropertyException(); 319 } 320 // ----------------------------------------------------------------------------- 321 void SAL_CALL OFixedLine::setDataField( const ::rtl::OUString& /*_datafield*/ ) throw (lang::IllegalArgumentException, beans::UnknownPropertyException, uno::RuntimeException) 322 { 323 throw beans::UnknownPropertyException(); 324 } 325 // ----------------------------------------------------------------------------- 326 ::sal_Int32 SAL_CALL OFixedLine::getControlBackground() throw (beans::UnknownPropertyException, uno::RuntimeException) 327 { 328 throw beans::UnknownPropertyException(); 329 } 330 // ----------------------------------------------------------------------------- 331 void SAL_CALL OFixedLine::setControlBackground( ::sal_Int32 /*_backgroundcolor*/ ) throw (uno::RuntimeException,beans::UnknownPropertyException) 332 { 333 throw beans::UnknownPropertyException(); 334 } 335 // ----------------------------------------------------------------------------- 336 ::sal_Bool SAL_CALL OFixedLine::getControlBackgroundTransparent() throw (beans::UnknownPropertyException, uno::RuntimeException) 337 { 338 throw beans::UnknownPropertyException(); 339 } 340 // ----------------------------------------------------------------------------- 341 void SAL_CALL OFixedLine::setControlBackgroundTransparent( ::sal_Bool /*_controlbackgroundtransparent*/ ) throw (beans::UnknownPropertyException, uno::RuntimeException) 342 { 343 throw beans::UnknownPropertyException(); 344 } 345 // ----------------------------------------------------------------------------- 346 ::sal_Bool SAL_CALL OFixedLine::getPrintWhenGroupChange() throw (beans::UnknownPropertyException, uno::RuntimeException) 347 { 348 throw beans::UnknownPropertyException(); 349 } 350 // ----------------------------------------------------------------------------- 351 void SAL_CALL OFixedLine::setPrintWhenGroupChange( ::sal_Bool /*_printwhengroupchange*/ ) throw (beans::UnknownPropertyException, uno::RuntimeException) 352 { 353 throw beans::UnknownPropertyException(); 354 } 355 // ----------------------------------------------------------------------------- 356 ::rtl::OUString SAL_CALL OFixedLine::getConditionalPrintExpression() throw (beans::UnknownPropertyException, uno::RuntimeException) 357 { 358 throw beans::UnknownPropertyException(); 359 } 360 // ----------------------------------------------------------------------------- 361 void SAL_CALL OFixedLine::setConditionalPrintExpression( const ::rtl::OUString& /*_conditionalprintexpression*/ ) throw (beans::UnknownPropertyException, uno::RuntimeException) 362 { 363 throw beans::UnknownPropertyException(); 364 } 365 // ----------------------------------------------------------------------------- 366 // XCloneable 367 uno::Reference< util::XCloneable > SAL_CALL OFixedLine::createClone( ) throw (uno::RuntimeException) 368 { 369 uno::Reference< report::XReportComponent> xSource = this; 370 uno::Reference< report::XFixedLine> xSet(cloneObject(xSource,m_aProps.aComponent.m_xFactory,SERVICE_FIXEDLINE),uno::UNO_QUERY_THROW); 371 return xSet.get(); 372 } 373 // ----------------------------------------------------------------------------- 374 375 // XFixedLine 376 // ----------------------------------------------------------------------------- 377 ::sal_Int32 SAL_CALL OFixedLine::getOrientation() throw (beans::UnknownPropertyException,uno::RuntimeException) 378 { 379 ::osl::MutexGuard aGuard(m_aMutex); 380 return m_nOrientation; 381 } 382 // ----------------------------------------------------------------------------- 383 void SAL_CALL OFixedLine::setOrientation( ::sal_Int32 _orientation ) throw (beans::UnknownPropertyException,uno::RuntimeException) 384 { 385 set(PROPERTY_ORIENTATION,_orientation,m_nOrientation); 386 } 387 // ----------------------------------------------------------------------------- 388 drawing::LineStyle SAL_CALL OFixedLine::getLineStyle() throw (uno::RuntimeException) 389 { 390 ::osl::MutexGuard aGuard(m_aMutex); 391 return m_LineStyle; 392 } 393 // ----------------------------------------------------------------------------- 394 void SAL_CALL OFixedLine::setLineStyle( drawing::LineStyle _linestyle ) throw (uno::RuntimeException) 395 { 396 set(PROPERTY_LINESTYLE,_linestyle,m_LineStyle); 397 } 398 // ----------------------------------------------------------------------------- 399 drawing::LineDash SAL_CALL OFixedLine::getLineDash() throw (uno::RuntimeException) 400 { 401 ::osl::MutexGuard aGuard(m_aMutex); 402 return m_LineDash; 403 } 404 // ----------------------------------------------------------------------------- 405 void SAL_CALL OFixedLine::setLineDash( const drawing::LineDash& _linedash ) throw (uno::RuntimeException) 406 { 407 set(PROPERTY_LINEDASH,_linedash,m_LineDash); 408 } 409 // ----------------------------------------------------------------------------- 410 ::sal_Int32 SAL_CALL OFixedLine::getLineColor() throw (uno::RuntimeException) 411 { 412 ::osl::MutexGuard aGuard(m_aMutex); 413 return m_LineColor; 414 } 415 // ----------------------------------------------------------------------------- 416 void SAL_CALL OFixedLine::setLineColor( ::sal_Int32 _linecolor ) throw (uno::RuntimeException) 417 { 418 set(PROPERTY_LINECOLOR,_linecolor,m_LineColor); 419 } 420 // ----------------------------------------------------------------------------- 421 ::sal_Int16 SAL_CALL OFixedLine::getLineTransparence() throw (uno::RuntimeException) 422 { 423 ::osl::MutexGuard aGuard(m_aMutex); 424 return m_LineTransparence; 425 } 426 // ----------------------------------------------------------------------------- 427 void SAL_CALL OFixedLine::setLineTransparence( ::sal_Int16 _linetransparence ) throw (uno::RuntimeException) 428 { 429 set(PROPERTY_LINETRANSPARENCE,_linetransparence,m_LineTransparence); 430 } 431 // ----------------------------------------------------------------------------- 432 ::sal_Int32 SAL_CALL OFixedLine::getLineWidth() throw (uno::RuntimeException) 433 { 434 ::osl::MutexGuard aGuard(m_aMutex); 435 return m_LineWidth; 436 } 437 // ----------------------------------------------------------------------------- 438 void SAL_CALL OFixedLine::setLineWidth( ::sal_Int32 _linewidth ) throw (uno::RuntimeException) 439 { 440 set(PROPERTY_LINEWIDTH,_linewidth,m_LineWidth); 441 } 442 // ----------------------------------------------------------------------------- 443 // ----------------------------------------------------------------------------- 444 // XChild 445 uno::Reference< uno::XInterface > SAL_CALL OFixedLine::getParent( ) throw (uno::RuntimeException) 446 { 447 return OShapeHelper::getParent(this); 448 } 449 // ----------------------------------------------------------------------------- 450 void SAL_CALL OFixedLine::setParent( const uno::Reference< uno::XInterface >& Parent ) throw (lang::NoSupportException, uno::RuntimeException) 451 { 452 OShapeHelper::setParent(Parent,this); 453 } 454 // ----------------------------------------------------------------------------- 455 uno::Reference< report::XFormatCondition > SAL_CALL OFixedLine::createFormatCondition( ) throw (uno::Exception, uno::RuntimeException) 456 { 457 return new OFormatCondition(m_aProps.aComponent.m_xContext); 458 } 459 // ----------------------------------------------------------------------------- 460 // XContainer 461 void SAL_CALL OFixedLine::addContainerListener( const uno::Reference< container::XContainerListener >& xListener ) throw (uno::RuntimeException) 462 { 463 m_aProps.addContainerListener(xListener); 464 } 465 // ----------------------------------------------------------------------------- 466 void SAL_CALL OFixedLine::removeContainerListener( const uno::Reference< container::XContainerListener >& xListener ) throw (uno::RuntimeException) 467 { 468 m_aProps.removeContainerListener(xListener); 469 } 470 // ----------------------------------------------------------------------------- 471 // XElementAccess 472 uno::Type SAL_CALL OFixedLine::getElementType( ) throw (uno::RuntimeException) 473 { 474 return ::getCppuType(static_cast< uno::Reference<report::XFormatCondition>*>(NULL)); 475 } 476 // ----------------------------------------------------------------------------- 477 ::sal_Bool SAL_CALL OFixedLine::hasElements( ) throw (uno::RuntimeException) 478 { 479 return m_aProps.hasElements(); 480 } 481 // ----------------------------------------------------------------------------- 482 // XIndexContainer 483 void SAL_CALL OFixedLine::insertByIndex( ::sal_Int32 Index, const uno::Any& Element ) throw (lang::IllegalArgumentException, lang::IndexOutOfBoundsException, lang::WrappedTargetException, uno::RuntimeException) 484 { 485 m_aProps.insertByIndex(Index,Element); 486 } 487 // ----------------------------------------------------------------------------- 488 void SAL_CALL OFixedLine::removeByIndex( ::sal_Int32 Index ) throw (lang::IndexOutOfBoundsException, lang::WrappedTargetException, uno::RuntimeException) 489 { 490 m_aProps.removeByIndex(Index); 491 } 492 // ----------------------------------------------------------------------------- 493 // XIndexReplace 494 void SAL_CALL OFixedLine::replaceByIndex( ::sal_Int32 Index, const uno::Any& Element ) throw (lang::IllegalArgumentException, lang::IndexOutOfBoundsException, lang::WrappedTargetException, uno::RuntimeException) 495 { 496 m_aProps.replaceByIndex(Index,Element); 497 } 498 // ----------------------------------------------------------------------------- 499 // XIndexAccess 500 ::sal_Int32 SAL_CALL OFixedLine::getCount( ) throw (uno::RuntimeException) 501 { 502 return m_aProps.getCount(); 503 } 504 // ----------------------------------------------------------------------------- 505 uno::Any SAL_CALL OFixedLine::getByIndex( ::sal_Int32 Index ) throw (lang::IndexOutOfBoundsException, lang::WrappedTargetException, uno::RuntimeException) 506 { 507 return m_aProps.getByIndex( Index ); 508 } 509 // ----------------------------------------------------------------------------- 510 // XShape 511 awt::Point SAL_CALL OFixedLine::getPosition( ) throw (uno::RuntimeException) 512 { 513 return OShapeHelper::getPosition(this); 514 } 515 // ----------------------------------------------------------------------------- 516 void SAL_CALL OFixedLine::setPosition( const awt::Point& aPosition ) throw (uno::RuntimeException) 517 { 518 OShapeHelper::setPosition(aPosition,this); 519 } 520 // ----------------------------------------------------------------------------- 521 awt::Size SAL_CALL OFixedLine::getSize( ) throw (uno::RuntimeException) 522 { 523 return OShapeHelper::getSize(this); 524 } 525 // ----------------------------------------------------------------------------- 526 void SAL_CALL OFixedLine::setSize( const awt::Size& aSize ) throw (beans::PropertyVetoException, uno::RuntimeException) 527 { 528 if ( (aSize.Width < MIN_WIDTH && m_nOrientation == 1) || (aSize.Height < MIN_HEIGHT && m_nOrientation == 0) ) 529 throw beans::PropertyVetoException(); 530 OShapeHelper::setSize(aSize,this); 531 } 532 // ----------------------------------------------------------------------------- 533 // XShapeDescriptor 534 ::rtl::OUString SAL_CALL OFixedLine::getShapeType( ) throw (uno::RuntimeException) 535 { 536 return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.drawing.ControlShape")); 537 } 538 // ----------------------------------------------------------------------------- 539 ::rtl::OUString SAL_CALL OFixedLine::getHyperLinkURL() throw (uno::RuntimeException, beans::UnknownPropertyException) 540 { 541 throw beans::UnknownPropertyException(); 542 } 543 void SAL_CALL OFixedLine::setHyperLinkURL(const ::rtl::OUString & /*the_value*/) throw (uno::RuntimeException, beans::UnknownPropertyException) 544 { 545 throw beans::UnknownPropertyException(); 546 } 547 ::rtl::OUString SAL_CALL OFixedLine::getHyperLinkTarget() throw (uno::RuntimeException, beans::UnknownPropertyException) 548 { 549 throw beans::UnknownPropertyException(); 550 } 551 void SAL_CALL OFixedLine::setHyperLinkTarget(const ::rtl::OUString & /*the_value*/) throw (uno::RuntimeException, beans::UnknownPropertyException) 552 { 553 throw beans::UnknownPropertyException(); 554 } 555 ::rtl::OUString SAL_CALL OFixedLine::getHyperLinkName() throw (uno::RuntimeException, beans::UnknownPropertyException) 556 { 557 throw beans::UnknownPropertyException(); 558 } 559 void SAL_CALL OFixedLine::setHyperLinkName(const ::rtl::OUString & /*the_value*/) throw (uno::RuntimeException, beans::UnknownPropertyException) 560 { 561 throw beans::UnknownPropertyException(); 562 } 563 564 NO_REPORTCONTROLFORMAT_IMPL(OFixedLine) 565 566 ::sal_Bool SAL_CALL OFixedLine::getPrintRepeatedValues() throw (beans::UnknownPropertyException, uno::RuntimeException) 567 { 568 throw beans::UnknownPropertyException(); 569 } 570 void SAL_CALL OFixedLine::setPrintRepeatedValues( ::sal_Bool /*_printrepeatedvalues*/ ) throw (beans::UnknownPropertyException, uno::RuntimeException) 571 { 572 throw beans::UnknownPropertyException(); 573 } 574 575 // ----------------------------------------------------------------------------- 576 // ============================================================================= 577 } // namespace reportdesign 578 // ============================================================================= 579 580