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 24 #ifndef _UNOCONTROLS_BASECONTROL_CTRL_HXX 25 #define _UNOCONTROLS_BASECONTROL_CTRL_HXX 26 27 //____________________________________________________________________________________________________________ 28 // includes of other projects 29 //____________________________________________________________________________________________________________ 30 31 #include <com/sun/star/awt/XKeyListener.hpp> 32 #include <com/sun/star/awt/XPaintListener.hpp> 33 #include <com/sun/star/awt/KeyEvent.hpp> 34 #include <com/sun/star/awt/KeyModifier.hpp> 35 #include <com/sun/star/awt/XMouseMotionListener.hpp> 36 #include <com/sun/star/awt/FocusEvent.hpp> 37 #include <com/sun/star/awt/XWindowListener.hpp> 38 #include <com/sun/star/awt/XActivateListener.hpp> 39 #include <com/sun/star/awt/MouseEvent.hpp> 40 #include <com/sun/star/awt/XTopWindowListener.hpp> 41 #include <com/sun/star/awt/PaintEvent.hpp> 42 #include <com/sun/star/awt/InputEvent.hpp> 43 #include <com/sun/star/awt/KeyGroup.hpp> 44 #include <com/sun/star/awt/Key.hpp> 45 #include <com/sun/star/awt/WindowEvent.hpp> 46 #include <com/sun/star/awt/XMouseListener.hpp> 47 #include <com/sun/star/awt/KeyFunction.hpp> 48 #include <com/sun/star/awt/FocusChangeReason.hpp> 49 #include <com/sun/star/awt/MouseButton.hpp> 50 #include <com/sun/star/awt/XFocusListener.hpp> 51 #include <com/sun/star/awt/XFileDialog.hpp> 52 #include <com/sun/star/awt/XTextComponent.hpp> 53 #include <com/sun/star/awt/XListBox.hpp> 54 #include <com/sun/star/awt/XProgressMonitor.hpp> 55 #include <com/sun/star/awt/TextAlign.hpp> 56 #include <com/sun/star/awt/XScrollBar.hpp> 57 #include <com/sun/star/awt/XVclContainerPeer.hpp> 58 #include <com/sun/star/awt/XTabControllerModel.hpp> 59 #include <com/sun/star/awt/XMessageBox.hpp> 60 #include <com/sun/star/awt/XTextEditField.hpp> 61 #include <com/sun/star/awt/Style.hpp> 62 #include <com/sun/star/awt/XTimeField.hpp> 63 #include <com/sun/star/awt/XVclWindowPeer.hpp> 64 #include <com/sun/star/awt/XControlModel.hpp> 65 #include <com/sun/star/awt/XSpinField.hpp> 66 #include <com/sun/star/awt/XUnoControlContainer.hpp> 67 #include <com/sun/star/awt/XTextLayoutConstrains.hpp> 68 #include <com/sun/star/awt/XNumericField.hpp> 69 #include <com/sun/star/awt/XButton.hpp> 70 #include <com/sun/star/awt/XTextArea.hpp> 71 #include <com/sun/star/awt/XImageButton.hpp> 72 #include <com/sun/star/awt/XFixedText.hpp> 73 #include <com/sun/star/awt/XControlContainer.hpp> 74 #include <com/sun/star/awt/XDialog.hpp> 75 #include <com/sun/star/awt/ScrollBarOrientation.hpp> 76 #include <com/sun/star/awt/XRadioButton.hpp> 77 #include <com/sun/star/awt/XCurrencyField.hpp> 78 #include <com/sun/star/awt/XPatternField.hpp> 79 #include <com/sun/star/awt/VclWindowPeerAttribute.hpp> 80 #include <com/sun/star/awt/XTabController.hpp> 81 #include <com/sun/star/awt/XVclContainer.hpp> 82 #include <com/sun/star/awt/XDateField.hpp> 83 #include <com/sun/star/awt/XComboBox.hpp> 84 #include <com/sun/star/awt/XControl.hpp> 85 #include <com/sun/star/awt/XCheckBox.hpp> 86 #include <com/sun/star/awt/MessageBoxCommand.hpp> 87 #include <com/sun/star/awt/XLayoutConstrains.hpp> 88 #include <com/sun/star/awt/XProgressBar.hpp> 89 #include <com/sun/star/awt/XTopWindow.hpp> 90 #include <com/sun/star/awt/XWindow.hpp> 91 #include <com/sun/star/awt/PosSize.hpp> 92 #include <com/sun/star/awt/XView.hpp> 93 #include <com/sun/star/lang/XServiceInfo.hpp> 94 #include <osl/mutex.hxx> 95 #include <cppuhelper/weak.hxx> 96 #include <cppuhelper/component.hxx> 97 98 //____________________________________________________________________________________________________________ 99 // includes of my project 100 //____________________________________________________________________________________________________________ 101 #include "multiplexer.hxx" 102 103 //____________________________________________________________________________________________________________ 104 // "namespaces" 105 //____________________________________________________________________________________________________________ 106 107 namespace unocontrols{ 108 109 #define UNO3_ANY ::com::sun::star::uno::Any 110 #define UNO3_EVENTOBJECT ::com::sun::star::lang::EventObject 111 #define UNO3_MUTEX ::osl::Mutex 112 #define UNO3_OCOMPONENTHELPER ::cppu::OComponentHelper 113 #define UNO3_OUSTRING ::rtl::OUString 114 #define UNO3_PAINTEVENT ::com::sun::star::awt::PaintEvent 115 #define UNO3_RECTANGLE ::com::sun::star::awt::Rectangle 116 #define UNO3_REFERENCE ::com::sun::star::uno::Reference 117 #define UNO3_RUNTIMEEXCEPTION ::com::sun::star::uno::RuntimeException 118 #define UNO3_SEQUENCE ::com::sun::star::uno::Sequence 119 #define UNO3_SIZE ::com::sun::star::awt::Size 120 #define UNO3_TYPE ::com::sun::star::uno::Type 121 #define UNO3_WINDOWDESCRIPTOR ::com::sun::star::awt::WindowDescriptor 122 #define UNO3_XCONTROL ::com::sun::star::awt::XControl 123 #define UNO3_XCONTROLMODEL ::com::sun::star::awt::XControlModel 124 #define UNO3_XEVENTLISTENER ::com::sun::star::lang::XEventListener 125 #define UNO3_XFOCUSLISTENER ::com::sun::star::awt::XFocusListener 126 #define UNO3_XGRAPHICS ::com::sun::star::awt::XGraphics 127 #define UNO3_XKEYLISTENER ::com::sun::star::awt::XKeyListener 128 #define UNO3_XMOUSELISTENER ::com::sun::star::awt::XMouseListener 129 #define UNO3_XMOUSEMOTIONLISTENER ::com::sun::star::awt::XMouseMotionListener 130 #define UNO3_XMULTISERVICEFACTORY ::com::sun::star::lang::XMultiServiceFactory 131 #define UNO3_XPAINTLISTENER ::com::sun::star::awt::XPaintListener 132 #define UNO3_XSERVICEINFO ::com::sun::star::lang::XServiceInfo 133 #define UNO3_XTOOLKIT ::com::sun::star::awt::XToolkit 134 #define UNO3_XVIEW ::com::sun::star::awt::XView 135 #define UNO3_XWINDOW ::com::sun::star::awt::XWindow 136 #define UNO3_XWINDOWLISTENER ::com::sun::star::awt::XWindowListener 137 #define UNO3_XWINDOWPEER ::com::sun::star::awt::XWindowPeer 138 #define UNO3_XINTERFACE ::com::sun::star::uno::XInterface 139 140 //____________________________________________________________________________________________________________ 141 // macros 142 //____________________________________________________________________________________________________________ 143 144 #define TRGB_COLORDATA(TRANSPARENCE,RED,GREEN,BLUE) \ 145 ((sal_Int32)(((sal_uInt32)((sal_uInt8)(BLUE))))|(((sal_uInt32)((sal_uInt8)(GREEN)))<<8)|(((sal_uInt32)((sal_uInt8)(RED)))<<16)|(((sal_uInt32)((sal_uInt8)(TRANSPARENCE)))<<24)) 146 147 //____________________________________________________________________________________________________________ 148 // structs 149 //____________________________________________________________________________________________________________ 150 151 struct IMPL_MutexContainer 152 { 153 // Is necassery to initialize "BaseControl" and make this class thread-safe. 154 UNO3_MUTEX m_aMutex ; 155 }; 156 157 //____________________________________________________________________________________________________________ 158 // classes 159 //____________________________________________________________________________________________________________ 160 161 class BaseControl : public UNO3_XSERVICEINFO 162 , public UNO3_XPAINTLISTENER 163 , public UNO3_XWINDOWLISTENER 164 , public UNO3_XVIEW 165 , public UNO3_XWINDOW 166 , public UNO3_XCONTROL 167 , public IMPL_MutexContainer 168 , public UNO3_OCOMPONENTHELPER 169 { 170 //____________________________________________________________________________________________________________ 171 // public methods 172 //____________________________________________________________________________________________________________ 173 174 public: 175 176 //________________________________________________________________________________________________________ 177 // construct/destruct 178 //________________________________________________________________________________________________________ 179 180 /**_______________________________________________________________________________________________________ 181 @short - 182 @descr - 183 184 @seealso - 185 186 @param - 187 188 @return - 189 190 @onerror - 191 */ 192 193 BaseControl( const UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY >& xFactory ); 194 195 /**_______________________________________________________________________________________________________ 196 @short - 197 @descr - 198 199 @seealso - 200 201 @param - 202 203 @return - 204 205 @onerror - 206 */ 207 208 virtual ~BaseControl(); 209 210 //________________________________________________________________________________________________________ 211 // XInterface 212 //________________________________________________________________________________________________________ 213 214 /**_______________________________________________________________________________________________________ 215 @short give answer, if interface is supported 216 @descr The interfaces are searched by type. 217 218 @seealso XInterface 219 220 @param "rType" is the type of searched interface. 221 222 @return Any information about found interface 223 224 @onerror A RuntimeException is thrown. 225 */ 226 227 virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION ); 228 229 /**_______________________________________________________________________________________________________ 230 @short increment refcount 231 @descr - 232 233 @seealso XInterface 234 @seealso release() 235 236 @param - 237 238 @return - 239 240 @onerror A RuntimeException is thrown. 241 */ 242 243 virtual void SAL_CALL acquire() throw(); 244 245 /**_______________________________________________________________________________________________________ 246 @short decrement refcount 247 @descr - 248 249 @seealso XInterface 250 @seealso acquire() 251 252 @param - 253 254 @return - 255 256 @onerror A RuntimeException is thrown. 257 */ 258 259 virtual void SAL_CALL release() throw(); 260 261 //________________________________________________________________________________________________________ 262 // XTypeProvider 263 //________________________________________________________________________________________________________ 264 265 /**_______________________________________________________________________________________________________ 266 @short get information about supported interfaces 267 @descr - 268 269 @seealso XTypeProvider 270 271 @param - 272 273 @return Sequence of types of all supported interfaces 274 275 @onerror A RuntimeException is thrown. 276 */ 277 278 virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getTypes() throw( UNO3_RUNTIMEEXCEPTION ); 279 280 /**_______________________________________________________________________________________________________ 281 @short get implementation id 282 @descr This ID is neccessary for UNO-caching. If there no ID, cache is disabled. 283 Another way, cache is enabled. 284 285 @seealso XTypeProvider 286 287 @param - 288 289 @return ID as Sequence of byte 290 291 @onerror A RuntimeException is thrown. 292 */ 293 294 virtual UNO3_SEQUENCE< sal_Int8 > SAL_CALL getImplementationId() throw( UNO3_RUNTIMEEXCEPTION ); 295 296 //________________________________________________________________________________________________________ 297 // XAggregation 298 //________________________________________________________________________________________________________ 299 300 /**_______________________________________________________________________________________________________ 301 @short - 302 @descr - 303 304 @seealso - 305 306 @param - 307 308 @return - 309 310 @onerror - 311 */ 312 313 virtual void SAL_CALL setDelegator( const UNO3_REFERENCE< UNO3_XINTERFACE >& xDelegator ) throw( UNO3_RUNTIMEEXCEPTION ); 314 315 /**_______________________________________________________________________________________________________ 316 @short - 317 @descr - 318 319 @seealso - 320 321 @param - 322 323 @return - 324 325 @onerror - 326 */ 327 328 virtual UNO3_ANY SAL_CALL queryAggregation( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION ); 329 330 //________________________________________________________________________________________________________ 331 // XServiceInfo 332 //________________________________________________________________________________________________________ 333 334 /**_______________________________________________________________________________________________________ 335 @short - 336 @descr - 337 338 @seealso - 339 340 @param - 341 342 @return - 343 344 @onerror - 345 */ 346 347 virtual sal_Bool SAL_CALL supportsService( const UNO3_OUSTRING& sServiceName ) throw( UNO3_RUNTIMEEXCEPTION ); 348 349 /**_______________________________________________________________________________________________________ 350 @short - 351 @descr - 352 353 @seealso - 354 355 @param - 356 357 @return - 358 359 @onerror - 360 */ 361 362 virtual UNO3_OUSTRING SAL_CALL getImplementationName() throw( UNO3_RUNTIMEEXCEPTION ); 363 364 /**_______________________________________________________________________________________________________ 365 @short - 366 @descr - 367 368 @seealso - 369 370 @param - 371 372 @return - 373 374 @onerror - 375 */ 376 377 virtual UNO3_SEQUENCE< UNO3_OUSTRING > SAL_CALL getSupportedServiceNames() throw( UNO3_RUNTIMEEXCEPTION ); 378 379 //________________________________________________________________________________________________________ 380 // XComponent 381 //________________________________________________________________________________________________________ 382 383 /**_______________________________________________________________________________________________________ 384 @short - 385 @descr - 386 387 @seealso - 388 389 @param - 390 391 @return - 392 393 @onerror - 394 */ 395 396 virtual void SAL_CALL dispose() throw( UNO3_RUNTIMEEXCEPTION ); 397 398 /**_______________________________________________________________________________________________________ 399 @short - 400 @descr - 401 402 @seealso - 403 404 @param - 405 406 @return - 407 408 @onerror - 409 */ 410 411 virtual void SAL_CALL addEventListener( const UNO3_REFERENCE< UNO3_XEVENTLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 412 413 /**_______________________________________________________________________________________________________ 414 @short - 415 @descr - 416 417 @seealso - 418 419 @param - 420 421 @return - 422 423 @onerror - 424 */ 425 426 virtual void SAL_CALL removeEventListener( const UNO3_REFERENCE< UNO3_XEVENTLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 427 428 //________________________________________________________________________________________________________ 429 // XControl 430 //________________________________________________________________________________________________________ 431 432 /**_______________________________________________________________________________________________________ 433 @short - 434 @descr - 435 436 @seealso - 437 438 @param - 439 440 @return - 441 442 @onerror - 443 */ 444 445 virtual void SAL_CALL createPeer( const UNO3_REFERENCE< UNO3_XTOOLKIT >& xToolkit, const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParent ) throw( UNO3_RUNTIMEEXCEPTION ); 446 447 /**_______________________________________________________________________________________________________ 448 @short - 449 @descr - 450 451 @seealso - 452 453 @param - 454 455 @return - 456 457 @onerror - 458 */ 459 460 virtual void SAL_CALL setContext( const UNO3_REFERENCE< UNO3_XINTERFACE >& xContext ) throw( UNO3_RUNTIMEEXCEPTION ); 461 462 /**_______________________________________________________________________________________________________ 463 @short - 464 @descr - 465 466 @seealso - 467 468 @param - 469 470 @return - 471 472 @onerror - 473 */ 474 475 virtual sal_Bool SAL_CALL setModel( const UNO3_REFERENCE< UNO3_XCONTROLMODEL >& xModel ) throw( UNO3_RUNTIMEEXCEPTION ) = 0 ; 476 477 /**_______________________________________________________________________________________________________ 478 @short - 479 @descr - 480 481 @seealso - 482 483 @param - 484 485 @return - 486 487 @onerror - 488 */ 489 490 virtual void SAL_CALL setDesignMode( sal_Bool bOn ) throw( UNO3_RUNTIMEEXCEPTION ); 491 492 /**_______________________________________________________________________________________________________ 493 @short - 494 @descr - 495 496 @seealso - 497 498 @param - 499 500 @return - 501 502 @onerror - 503 */ 504 505 virtual UNO3_REFERENCE< UNO3_XINTERFACE > SAL_CALL getContext() throw( UNO3_RUNTIMEEXCEPTION ); 506 507 /**_______________________________________________________________________________________________________ 508 @short - 509 @descr - 510 511 @seealso - 512 513 @param - 514 515 @return - 516 517 @onerror - 518 */ 519 520 virtual UNO3_REFERENCE< UNO3_XCONTROLMODEL > SAL_CALL getModel() throw( UNO3_RUNTIMEEXCEPTION ) = 0; 521 522 /**_______________________________________________________________________________________________________ 523 @short - 524 @descr - 525 526 @seealso - 527 528 @param - 529 530 @return - 531 532 @onerror - 533 */ 534 535 virtual UNO3_REFERENCE< UNO3_XWINDOWPEER > SAL_CALL getPeer() throw( UNO3_RUNTIMEEXCEPTION ); 536 537 /**_______________________________________________________________________________________________________ 538 @short - 539 @descr - 540 541 @seealso - 542 543 @param - 544 545 @return - 546 547 @onerror - 548 */ 549 550 virtual UNO3_REFERENCE< UNO3_XVIEW > SAL_CALL getView() throw( UNO3_RUNTIMEEXCEPTION ); 551 552 /**_______________________________________________________________________________________________________ 553 @short - 554 @descr - 555 556 @seealso - 557 558 @param - 559 560 @return - 561 562 @onerror - 563 */ 564 565 virtual sal_Bool SAL_CALL isDesignMode() throw( UNO3_RUNTIMEEXCEPTION ); 566 567 /**_______________________________________________________________________________________________________ 568 @short - 569 @descr - 570 571 @seealso - 572 573 @param - 574 575 @return - 576 577 @onerror - 578 */ 579 580 virtual sal_Bool SAL_CALL isTransparent() throw( UNO3_RUNTIMEEXCEPTION ); 581 582 //________________________________________________________________________________________________________ 583 // XWindow 584 //________________________________________________________________________________________________________ 585 586 /**_______________________________________________________________________________________________________ 587 @short - 588 @descr - 589 590 @seealso - 591 592 @param - 593 594 @return - 595 596 @onerror - 597 */ 598 599 virtual void SAL_CALL setPosSize( sal_Int32 nX , 600 sal_Int32 nY , 601 sal_Int32 nWidth , 602 sal_Int32 nHeight , 603 sal_Int16 nFlags ) throw( UNO3_RUNTIMEEXCEPTION ); 604 605 /**_______________________________________________________________________________________________________ 606 @short - 607 @descr - 608 609 @seealso - 610 611 @param - 612 613 @return - 614 615 @onerror - 616 */ 617 618 virtual void SAL_CALL setVisible( sal_Bool bVisible ) throw( UNO3_RUNTIMEEXCEPTION ); 619 620 /**_______________________________________________________________________________________________________ 621 @short - 622 @descr - 623 624 @seealso - 625 626 @param - 627 628 @return - 629 630 @onerror - 631 */ 632 633 virtual void SAL_CALL setEnable( sal_Bool bEnable ) throw( UNO3_RUNTIMEEXCEPTION ); 634 635 /**_______________________________________________________________________________________________________ 636 @short - 637 @descr - 638 639 @seealso - 640 641 @param - 642 643 @return - 644 645 @onerror - 646 */ 647 648 virtual void SAL_CALL setFocus() throw( UNO3_RUNTIMEEXCEPTION ); 649 650 /**_______________________________________________________________________________________________________ 651 @short - 652 @descr - 653 654 @seealso - 655 656 @param - 657 658 @return - 659 660 @onerror - 661 */ 662 663 virtual UNO3_RECTANGLE SAL_CALL getPosSize() throw( UNO3_RUNTIMEEXCEPTION ); 664 665 /**_______________________________________________________________________________________________________ 666 @short - 667 @descr - 668 669 @seealso - 670 671 @param - 672 673 @return - 674 675 @onerror - 676 */ 677 678 virtual void SAL_CALL addWindowListener( const UNO3_REFERENCE< UNO3_XWINDOWLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 679 680 /**_______________________________________________________________________________________________________ 681 @short - 682 @descr - 683 684 @seealso - 685 686 @param - 687 688 @return - 689 690 @onerror - 691 */ 692 693 virtual void SAL_CALL addFocusListener( const UNO3_REFERENCE< UNO3_XFOCUSLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 694 695 /**_______________________________________________________________________________________________________ 696 @short - 697 @descr - 698 699 @seealso - 700 701 @param - 702 703 @return - 704 705 @onerror - 706 */ 707 708 virtual void SAL_CALL addKeyListener( const UNO3_REFERENCE< UNO3_XKEYLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 709 710 /**_______________________________________________________________________________________________________ 711 @short - 712 @descr - 713 714 @seealso - 715 716 @param - 717 718 @return - 719 720 @onerror - 721 */ 722 723 virtual void SAL_CALL addMouseListener( const UNO3_REFERENCE< UNO3_XMOUSELISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 724 725 /**_______________________________________________________________________________________________________ 726 @short - 727 @descr - 728 729 @seealso - 730 731 @param - 732 733 @return - 734 735 @onerror - 736 */ 737 738 virtual void SAL_CALL addMouseMotionListener( const UNO3_REFERENCE< UNO3_XMOUSEMOTIONLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 739 740 /**_______________________________________________________________________________________________________ 741 @short - 742 @descr - 743 744 @seealso - 745 746 @param - 747 748 @return - 749 750 @onerror - 751 */ 752 753 virtual void SAL_CALL addPaintListener( const UNO3_REFERENCE< UNO3_XPAINTLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 754 755 /**_______________________________________________________________________________________________________ 756 @short - 757 @descr - 758 759 @seealso - 760 761 @param - 762 763 @return - 764 765 @onerror - 766 */ 767 768 virtual void SAL_CALL removeWindowListener( const UNO3_REFERENCE< UNO3_XWINDOWLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 769 770 /**_______________________________________________________________________________________________________ 771 @short - 772 @descr - 773 774 @seealso - 775 776 @param - 777 778 @return - 779 780 @onerror - 781 */ 782 783 virtual void SAL_CALL removeFocusListener( const UNO3_REFERENCE< UNO3_XFOCUSLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 784 785 /**_______________________________________________________________________________________________________ 786 @short - 787 @descr - 788 789 @seealso - 790 791 @param - 792 793 @return - 794 795 @onerror - 796 */ 797 798 virtual void SAL_CALL removeKeyListener( const UNO3_REFERENCE< UNO3_XKEYLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 799 800 /**_______________________________________________________________________________________________________ 801 @short - 802 @descr - 803 804 @seealso - 805 806 @param - 807 808 @return - 809 810 @onerror - 811 */ 812 813 virtual void SAL_CALL removeMouseListener( const UNO3_REFERENCE< UNO3_XMOUSELISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 814 815 /**_______________________________________________________________________________________________________ 816 @short - 817 @descr - 818 819 @seealso - 820 821 @param - 822 823 @return - 824 825 @onerror - 826 */ 827 828 virtual void SAL_CALL removeMouseMotionListener( const UNO3_REFERENCE< UNO3_XMOUSEMOTIONLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 829 830 /**_______________________________________________________________________________________________________ 831 @short - 832 @descr - 833 834 @seealso - 835 836 @param - 837 838 @return - 839 840 @onerror - 841 */ 842 843 virtual void SAL_CALL removePaintListener( const UNO3_REFERENCE< UNO3_XPAINTLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION ); 844 845 //________________________________________________________________________________________________________ 846 // XView 847 //________________________________________________________________________________________________________ 848 849 /**_______________________________________________________________________________________________________ 850 @short - 851 @descr - 852 853 @seealso - 854 855 @param - 856 857 @return - 858 859 @onerror - 860 */ 861 862 virtual void SAL_CALL draw( sal_Int32 nX , 863 sal_Int32 nY ) throw( UNO3_RUNTIMEEXCEPTION ); 864 865 /**_______________________________________________________________________________________________________ 866 @short - 867 @descr - 868 869 @seealso - 870 871 @param - 872 873 @return - 874 875 @onerror - 876 */ 877 878 virtual sal_Bool SAL_CALL setGraphics( const UNO3_REFERENCE< UNO3_XGRAPHICS >& xDevice ) throw( UNO3_RUNTIMEEXCEPTION ); 879 880 /**_______________________________________________________________________________________________________ 881 @short - 882 @descr - 883 884 @seealso - 885 886 @param - 887 888 @return - 889 890 @onerror - 891 */ 892 893 virtual void SAL_CALL setZoom( float fZoomX , 894 float fZoomY ) throw( UNO3_RUNTIMEEXCEPTION ); 895 896 /**_______________________________________________________________________________________________________ 897 @short - 898 @descr - 899 900 @seealso - 901 902 @param - 903 904 @return - 905 906 @onerror - 907 */ 908 909 virtual UNO3_REFERENCE< UNO3_XGRAPHICS > SAL_CALL getGraphics() throw( UNO3_RUNTIMEEXCEPTION ); 910 911 /**_______________________________________________________________________________________________________ 912 @short - 913 @descr - 914 915 @seealso - 916 917 @param - 918 919 @return - 920 921 @onerror - 922 */ 923 924 virtual UNO3_SIZE SAL_CALL getSize() throw( UNO3_RUNTIMEEXCEPTION ); 925 926 //________________________________________________________________________________________________________ 927 // UNO3_XEVENTLISTENER 928 //________________________________________________________________________________________________________ 929 930 /**_______________________________________________________________________________________________________ 931 @short - 932 @descr - 933 934 @seealso - 935 936 @param - 937 938 @return - 939 940 @onerror - 941 */ 942 943 virtual void SAL_CALL disposing( const UNO3_EVENTOBJECT& rSource ) throw( UNO3_RUNTIMEEXCEPTION ); 944 945 //________________________________________________________________________________________________________ 946 // XPaintListener 947 //________________________________________________________________________________________________________ 948 949 /**_______________________________________________________________________________________________________ 950 @short - 951 @descr - 952 953 @seealso - 954 955 @param - 956 957 @return - 958 959 @onerror - 960 */ 961 962 virtual void SAL_CALL windowPaint( const UNO3_PAINTEVENT& rEvent ) throw( UNO3_RUNTIMEEXCEPTION ); 963 964 //________________________________________________________________________________________________________ 965 // XWindowListener 966 //________________________________________________________________________________________________________ 967 968 /**_______________________________________________________________________________________________________ 969 @short - 970 @descr - 971 972 @seealso - 973 974 @param - 975 976 @return - 977 978 @onerror - 979 */ 980 981 virtual void SAL_CALL windowResized( const UNO3_WINDOWEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ); 982 virtual void SAL_CALL windowMoved( const UNO3_WINDOWEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ); 983 virtual void SAL_CALL windowShown( const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ); 984 virtual void SAL_CALL windowHidden( const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ); 985 986 //________________________________________________________________________________________________________ 987 // impl but public method to register service 988 //________________________________________________________________________________________________________ 989 990 /**_______________________________________________________________________________________________________ 991 @short - 992 @descr - 993 994 @seealso - 995 996 @param - 997 998 @return - 999 1000 @onerror - 1001 */ 1002 1003 static const UNO3_SEQUENCE< UNO3_OUSTRING > impl_getStaticSupportedServiceNames(); 1004 1005 /**_______________________________________________________________________________________________________ 1006 @short - 1007 @descr - 1008 1009 @seealso - 1010 1011 @param - 1012 1013 @return - 1014 1015 @onerror - 1016 */ 1017 1018 static const UNO3_OUSTRING impl_getStaticImplementationName(); 1019 1020 //____________________________________________________________________________________________________________ 1021 // protected methods 1022 //____________________________________________________________________________________________________________ 1023 1024 protected: 1025 using OComponentHelper::disposing; 1026 1027 /**_______________________________________________________________________________________________________ 1028 @short - 1029 @descr - 1030 1031 @seealso - 1032 1033 @param - 1034 1035 @return - 1036 1037 @onerror - 1038 */ 1039 1040 const UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY > impl_getMultiServiceFactory(); 1041 1042 /**_______________________________________________________________________________________________________ 1043 @short - 1044 @descr - 1045 1046 @seealso - 1047 1048 @param - 1049 1050 @return - 1051 1052 @onerror - 1053 */ 1054 1055 const UNO3_REFERENCE< UNO3_XWINDOW > impl_getPeerWindow(); 1056 1057 /**_______________________________________________________________________________________________________ 1058 @short - 1059 @descr - 1060 1061 @seealso - 1062 1063 @param - 1064 1065 @return - 1066 1067 @onerror - 1068 */ 1069 1070 const UNO3_REFERENCE< UNO3_XGRAPHICS > impl_getGraphicsPeer(); 1071 1072 /**_______________________________________________________________________________________________________ 1073 @short - 1074 @descr - 1075 1076 @seealso - 1077 1078 @param - 1079 1080 @return - 1081 1082 @onerror - 1083 */ 1084 1085 const sal_Int32& impl_getWidth(); 1086 1087 /**_______________________________________________________________________________________________________ 1088 @short - 1089 @descr - 1090 1091 @seealso - 1092 1093 @param - 1094 1095 @return - 1096 1097 @onerror - 1098 */ 1099 1100 const sal_Int32& impl_getHeight(); 1101 1102 /**_______________________________________________________________________________________________________ 1103 @short - 1104 @descr - 1105 1106 @seealso - 1107 1108 @param - 1109 1110 @return - 1111 1112 @onerror - 1113 */ 1114 1115 virtual UNO3_WINDOWDESCRIPTOR* impl_getWindowDescriptor( const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParentPeer ); 1116 1117 /**_______________________________________________________________________________________________________ 1118 @short - 1119 @descr - 1120 1121 @seealso - 1122 1123 @param - 1124 1125 @return - 1126 1127 @onerror - 1128 */ 1129 1130 virtual void impl_paint( sal_Int32 nX , 1131 sal_Int32 nY , 1132 const UNO3_REFERENCE< UNO3_XGRAPHICS >& xGraphics ); 1133 1134 /**_______________________________________________________________________________________________________ 1135 @short - 1136 @descr - 1137 1138 @seealso - 1139 1140 @param - 1141 1142 @return - 1143 1144 @onerror - 1145 */ 1146 1147 virtual void impl_recalcLayout( const UNO3_WINDOWEVENT& aEvent ); 1148 1149 /**_______________________________________________________________________________________________________ 1150 @short - 1151 @descr - 1152 1153 @seealso - 1154 1155 @param - 1156 1157 @return - 1158 1159 @onerror - 1160 */ 1161 1162 UNO3_REFERENCE< UNO3_XINTERFACE > impl_getDelegator(); 1163 1164 //____________________________________________________________________________________________________________ 1165 // private methods 1166 //____________________________________________________________________________________________________________ 1167 1168 private: 1169 1170 /**_______________________________________________________________________________________________________ 1171 @short - 1172 @descr - 1173 1174 @seealso - 1175 1176 @param - 1177 1178 @return - 1179 1180 @onerror - 1181 */ 1182 1183 void impl_releasePeer(); 1184 1185 /**_______________________________________________________________________________________________________ 1186 @short - 1187 @descr - 1188 1189 @seealso - 1190 1191 @param - 1192 1193 @return - 1194 1195 @onerror - 1196 */ 1197 1198 OMRCListenerMultiplexerHelper* impl_getMultiplexer(); 1199 1200 //____________________________________________________________________________________________________________ 1201 // private variables 1202 //____________________________________________________________________________________________________________ 1203 1204 private: 1205 1206 UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY > m_xFactory ; 1207 UNO3_REFERENCE< UNO3_XINTERFACE > m_xDelegator ; 1208 OMRCListenerMultiplexerHelper* m_pMultiplexer ; // multiplex events 1209 UNO3_REFERENCE< UNO3_XINTERFACE > m_xMultiplexer ; 1210 UNO3_REFERENCE< UNO3_XINTERFACE > m_xContext ; 1211 UNO3_REFERENCE< UNO3_XWINDOWPEER > m_xPeer ; 1212 UNO3_REFERENCE< UNO3_XWINDOW > m_xPeerWindow ; 1213 UNO3_REFERENCE< UNO3_XGRAPHICS > m_xGraphicsView ; // graphics for ::com::sun::star::awt::XView-operations 1214 UNO3_REFERENCE< UNO3_XGRAPHICS > m_xGraphicsPeer ; // graphics for painting on a peer 1215 sal_Int32 m_nX ; // Position ... 1216 sal_Int32 m_nY ; 1217 sal_Int32 m_nWidth ; // ... and size of window 1218 sal_Int32 m_nHeight ; 1219 sal_Bool m_bVisible ; // Some state flags 1220 sal_Bool m_bInDesignMode ; 1221 sal_Bool m_bEnable ; 1222 1223 }; // class BaseControl 1224 1225 } // namespace unocontrols 1226 1227 #endif // ifndef _UNOCONTROLS_BASECONTROL_CTRL_HXX 1228