merge the formfield patch from ooo-build
[ooovba.git] / binfilter / inc / bf_sfx2 / sfxbasemodel.hxx
blobaafc7982bfb4c0a85e01af513d3fa2cc1608d694
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: sfxbasemodel.hxx,v $
10 * $Revision: 1.9 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef _SFX_SFXBASEMODEL_HXX_
32 #define _SFX_SFXBASEMODEL_HXX_
34 //________________________________________________________________________________________________________
35 // include of other projects
36 //________________________________________________________________________________________________________
38 #ifndef _COM_SUN_STAR_LANG_XTYPEPROVIDER_HPP_
39 #include <com/sun/star/lang/XTypeProvider.hpp>
40 #endif
42 #ifndef _COM_SUN_STAR_CONTAINER_XCHILD_HPP_
43 #include <com/sun/star/container/XChild.hpp>
44 #endif
50 #ifndef _COM_SUN_STAR_DOCUMENT_XDOCUMENTINFOSUPPLIER_HPP_
51 #include <com/sun/star/document/XDocumentInfoSupplier.hpp>
52 #endif
54 #ifndef _COM_SUN_STAR_DOCUMENT_XEVENTBROADCASTER_HPP_
55 #include <com/sun/star/document/XEventBroadcaster.hpp>
56 #endif
59 #ifndef _COM_SUN_STAR_DOCUMENT_XEVENTSSUPPLIER_HPP_
60 #include <com/sun/star/document/XEventsSupplier.hpp>
61 #endif
65 #ifndef _COM_SUN_STAR_FRAME_XMODEL_HPP_
66 #include <com/sun/star/frame/XModel.hpp>
67 #endif
70 #ifndef _COM_SUN_STAR_UTIL_XMODIFIABLE_HPP_
71 #include <com/sun/star/util/XModifiable.hpp>
72 #endif
75 #ifndef _COM_SUN_STAR_UTIL_XCLOSEABLE_HPP_
76 #include <com/sun/star/util/XCloseable.hpp>
77 #endif
82 #ifndef _COM_SUN_STAR_VIEW_XPRINTABLE_HPP_
83 #include <com/sun/star/view/XPrintable.hpp>
84 #endif
86 #ifndef _COM_SUN_STAR_VIEW_XPRINTJOBBROADCASTER_HPP_
87 #include <com/sun/star/view/XPrintJobBroadcaster.hpp>
88 #endif
90 #ifndef _COM_SUN_STAR_FRAME_XSTORABLE_HPP_
91 #include <com/sun/star/frame/XStorable.hpp>
92 #endif
94 #ifndef _COM_SUN_STAR_FRAME_XLOADABLE_HPP_
95 #include <com/sun/star/frame/XLoadable.hpp>
96 #endif
100 #ifndef _COM_SUN_STAR_DATATRANSFER_XTRANSFERABLE_HPP_
101 #include <com/sun/star/datatransfer/XTransferable.hpp>
102 #endif
107 #ifndef _CPPUHELPER_WEAK_HXX_
108 #include <cppuhelper/weak.hxx>
109 #endif
112 #ifndef _COM_SUN_STAR_SCRIPT_XSTARBASICACCESS_HPP_
113 #include <com/sun/star/script/XStarBasicAccess.hpp>
114 #endif
117 #ifndef _LINK_HXX_
118 #include <tools/link.hxx>
119 #endif
121 #include <com/sun/star/document/XViewDataSupplier.hpp>
123 //________________________________________________________________________________________________________
124 // include of my own project
125 //________________________________________________________________________________________________________
127 #ifndef _SFXLSTNER_HXX
128 #include <bf_svtools/lstner.hxx>
129 #endif
130 #include <tools/debug.hxx> //for strip
131 namespace binfilter {
132 //________________________________________________________________________________________________________
133 // defines
134 //________________________________________________________________________________________________________
136 // Some defines to write better code :-)
137 #define XCHILD ::com::sun::star::container::XChild
138 #define XNAMECONTAINER ::com::sun::star::container::XNameContainer
139 #define XCONTROLLER ::com::sun::star::frame::XController
140 #define XEVENTLISTENER ::com::sun::star::lang::XEventListener
141 #define XINTERFACE ::com::sun::star::uno::XInterface
142 #define XCOMPONENT ::com::sun::star::lang::XComponent
143 #define XMODEL ::com::sun::star::frame::XModel
144 #define XMODIFIABLE ::com::sun::star::util::XModifiable
145 #define XMODIFIABLE ::com::sun::star::util::XModifiable
146 #define XMODIFYBROADCASTER ::com::sun::star::util::XModifyBroadcaster
147 #define XMODIFYLISTENER ::com::sun::star::util::XModifyListener
148 #define XCLOSEABLE ::com::sun::star::util::XCloseable
149 #define XCLOSEBROADCASTER ::com::sun::star::util::XCloseBroadcaster
150 #define XCLOSELISTENER ::com::sun::star::util::XCloseListener
151 #define XPRINTABLE ::com::sun::star::view::XPrintable
152 #define XPRINTJOBBROADCASTER ::com::sun::star::view::XPrintJobBroadcaster
153 #define XSTORABLE ::com::sun::star::frame::XStorable
154 #define XLOADABLE ::com::sun::star::frame::XLoadable
155 #define XTYPEPROVIDER ::com::sun::star::lang::XTypeProvider
156 #define XSTARBASICACCESS ::com::sun::star::script::XStarBasicAccess
157 #define NOSUCHELEMENTEXCEPTION ::com::sun::star::container::NoSuchElementException
158 #define ELEMENTEXISTEXCEPTION ::com::sun::star::container::ElementExistException
159 #define XNAMEREPLACE ::com::sun::star::container::XNameReplace
161 #define DOCEVENTOBJECT ::com::sun::star::document::EventObject
162 #define XDOCEVENTLISTENER ::com::sun::star::document::XEventListener
163 #define XDOCUMENTINFO ::com::sun::star::document::XDocumentInfo
164 #define XDOCUMENTINFOSUPPLIER ::com::sun::star::document::XDocumentInfoSupplier
165 #define XEVENTBROADCASTER ::com::sun::star::document::XEventBroadcaster
166 #define XEVENTSSUPPLIER ::com::sun::star::document::XEventsSupplier
168 #define NOSUPPORTEXCEPTION ::com::sun::star::lang::NoSupportException
169 #define RUNTIMEEXCEPTION ::com::sun::star::uno::RuntimeException
170 #define CLOSEVETOEXCEPTION ::com::sun::star::util::CloseVetoException
172 #define ANY ::com::sun::star::uno::Any
173 #define EVENTOBJECT ::com::sun::star::lang::EventObject
174 #define PROPERTYVALUE ::com::sun::star::beans::PropertyValue
175 #define REFERENCE ::com::sun::star::uno::Reference
176 #define SEQUENCE ::com::sun::star::uno::Sequence
177 #define MUTEX ::osl::Mutex
178 #define OUSTRING ::rtl::OUString
179 #define OWEAKOBJECT ::cppu::OWeakObject
180 #define UNOTYPE ::com::sun::star::uno::Type
181 #define XVIEWDATASUPPLIER ::com::sun::star::document::XViewDataSupplier
182 #define XINDEXACCESS ::com::sun::star::container::XIndexAccess
183 #define XTRANSFERABLE ::com::sun::star::datatransfer::XTransferable
184 #define DATAFLAVOR ::com::sun::star::datatransfer::DataFlavor
186 //________________________________________________________________________________________________________
187 // forwards
188 //________________________________________________________________________________________________________
189 class SfxPrinter;
190 class SfxViewShell;
191 class SfxObjectShell ;
192 class SfxEventHint;
193 struct IMPL_SfxBaseModel_DataContainer ; // impl. struct to hold member of class SfxBaseModel
195 //________________________________________________________________________________________________________
196 // class declarations
197 //________________________________________________________________________________________________________
199 struct IMPL_SfxBaseModel_MutexContainer
201 MUTEX m_aMutex ;
204 /**_______________________________________________________________________________________________________
205 @short -
207 @descr -
209 @implements XChild
210 XComponent
211 XDocumentInfoSupplier
212 XEventListener
213 XModel
214 XModifiable
215 XPrintable
216 XStorable
217 ::document::XEventBroadcaster
218 ::document::XEventsSupplier
219 XCloseable
220 XCloseBroadcaster
222 @base IMPL_MutexContainer
223 SfxListener
226 class SfxBaseModel : public XTYPEPROVIDER
227 , public XCHILD
228 , public XDOCUMENTINFOSUPPLIER
229 , public XEVENTBROADCASTER
230 , public XEVENTLISTENER
231 , public XEVENTSSUPPLIER
232 , public XMODEL
233 , public XMODIFIABLE
234 , public XPRINTABLE
235 , public XPRINTJOBBROADCASTER
236 , public XSTORABLE
237 , public XLOADABLE
238 , public XSTARBASICACCESS
239 , public XVIEWDATASUPPLIER
240 , public XCLOSEABLE // => XCLOSEBROADCASTER
241 , public XTRANSFERABLE
242 , public IMPL_SfxBaseModel_MutexContainer
243 , public SfxListener
244 , public OWEAKOBJECT
247 //________________________________________________________________________________________________________
248 // public methods
249 //________________________________________________________________________________________________________
251 public:
253 //____________________________________________________________________________________________________
254 // constructor/destructor
255 //____________________________________________________________________________________________________
257 /**___________________________________________________________________________________________________
258 @short -
259 @descr -
261 @seealso -
263 @param -
265 @return -
267 @onerror -
270 SfxBaseModel( SfxObjectShell *pObjektShell = NULL ) ;
272 /**___________________________________________________________________________________________________
273 @short -
274 @descr -
276 @seealso -
278 @param -
280 @return -
282 @onerror -
285 virtual ~SfxBaseModel() ;
287 //____________________________________________________________________________________________________
288 // XInterface
289 //____________________________________________________________________________________________________
291 /**___________________________________________________________________________________________________
292 @short give answer, if interface is supported
293 @descr The interfaces are searched by type.
295 @seealso XInterface
297 @param "rType" is the type of searched interface.
299 @return Any information about found interface
301 @onerror A RuntimeException is thrown.
304 virtual ANY SAL_CALL queryInterface( const UNOTYPE& rType ) throw( RUNTIMEEXCEPTION ) ;
306 /**___________________________________________________________________________________________________
307 @short increment refcount
308 @descr -
310 @seealso XInterface
311 @seealso release()
313 @param -
315 @return -
317 @onerror A RuntimeException is thrown.
320 virtual void SAL_CALL acquire() throw() ;
322 /**___________________________________________________________________________________________________
323 @short decrement refcount
324 @descr -
326 @seealso XInterface
327 @seealso acquire()
329 @param -
331 @return -
333 @onerror A RuntimeException is thrown.
336 virtual void SAL_CALL release() throw() ;
338 //____________________________________________________________________________________________________
339 // XTypeProvider
340 //____________________________________________________________________________________________________
342 /**___________________________________________________________________________________________________
343 @short get information about supported interfaces
344 @descr -
346 @seealso XTypeProvider
348 @param -
350 @return Sequence of types of all supported interfaces
352 @onerror A RuntimeException is thrown.
355 virtual SEQUENCE< UNOTYPE > SAL_CALL getTypes() throw( RUNTIMEEXCEPTION ) ;
357 /**___________________________________________________________________________________________________
358 @short get implementation id
359 @descr This ID is neccessary for UNO-caching. If there no ID, cache is disabled.
360 Another way, cache is enabled.
362 @seealso XTypeProvider
364 @param -
366 @return ID as Sequence of byte
368 @onerror A RuntimeException is thrown.
371 virtual SEQUENCE< sal_Int8 > SAL_CALL getImplementationId() throw( RUNTIMEEXCEPTION ) ;
373 //____________________________________________________________________________________________________
374 // XStarBasicAccess
375 //____________________________________________________________________________________________________
377 /**___________________________________________________________________________________________________
378 @seealso XStarBasicAccess
380 virtual REFERENCE< XNAMECONTAINER > SAL_CALL getLibraryContainer() throw( RUNTIMEEXCEPTION );
382 /**___________________________________________________________________________________________________
383 @seealso XStarBasicAccess
385 virtual void SAL_CALL createLibrary( const OUSTRING& LibName, const OUSTRING& Password,
386 const OUSTRING& ExternalSourceURL, const OUSTRING& LinkTargetURL )
387 throw(ELEMENTEXISTEXCEPTION, RUNTIMEEXCEPTION);
389 /**___________________________________________________________________________________________________
390 @seealso XStarBasicAccess
392 virtual void SAL_CALL addModule( const OUSTRING& LibraryName, const OUSTRING& ModuleName,
393 const OUSTRING& Language, const OUSTRING& Source )
394 throw( NOSUCHELEMENTEXCEPTION, RUNTIMEEXCEPTION);
396 /**___________________________________________________________________________________________________
397 @seealso XStarBasicAccess
399 virtual void SAL_CALL addDialog( const OUSTRING& LibraryName, const OUSTRING& DialogName,
400 const ::com::sun::star::uno::Sequence< sal_Int8 >& Data )
401 throw(NOSUCHELEMENTEXCEPTION, RUNTIMEEXCEPTION);
403 //____________________________________________________________________________________________________
404 // XChild
405 //____________________________________________________________________________________________________
407 /**___________________________________________________________________________________________________
408 @short -
409 @descr -
411 @seealso -
413 @param -
415 @return -
417 @onerror -
420 virtual REFERENCE< XINTERFACE > SAL_CALL getParent() throw( RUNTIMEEXCEPTION ) ;
422 /**___________________________________________________________________________________________________
423 @short -
424 @descr -
426 @seealso -
428 @param -
430 @return -
432 @onerror -
435 virtual void SAL_CALL setParent( const REFERENCE< XINTERFACE >& xParent ) throw( NOSUPPORTEXCEPTION ,
436 RUNTIMEEXCEPTION ) ;
438 //____________________________________________________________________________________________________
439 // XComponent
440 //____________________________________________________________________________________________________
442 /**___________________________________________________________________________________________________
443 @short -
444 @descr -
446 @seealso -
448 @param -
450 @return -
452 @onerror -
455 virtual void SAL_CALL dispose() throw (::com::sun::star::uno::RuntimeException);
457 /**___________________________________________________________________________________________________
458 @short -
459 @descr -
461 @seealso -
463 @param -
465 @return -
467 @onerror -
470 virtual void SAL_CALL addEventListener(const REFERENCE< XEVENTLISTENER >& aListener) throw (::com::sun::star::uno::RuntimeException);
472 /**___________________________________________________________________________________________________
473 @short -
474 @descr -
476 @seealso -
478 @param -
480 @return -
482 @onerror -
485 virtual void SAL_CALL removeEventListener(const REFERENCE< XEVENTLISTENER >& aListener ) throw (::com::sun::star::uno::RuntimeException);
487 //____________________________________________________________________________________________________
488 // XDocumentInfoSupplier
489 //____________________________________________________________________________________________________
491 /**___________________________________________________________________________________________________
492 @short -
493 @descr -
495 @seealso -
497 @param -
499 @return -
501 @onerror -
504 virtual REFERENCE< XDOCUMENTINFO > SAL_CALL getDocumentInfo() throw (::com::sun::star::uno::RuntimeException);
506 //____________________________________________________________________________________________________
507 // XEventListener
508 //____________________________________________________________________________________________________
510 /**___________________________________________________________________________________________________
511 @short -
512 @descr -
514 @seealso -
516 @param -
518 @return -
520 @onerror -
523 virtual void SAL_CALL disposing( const EVENTOBJECT& aEvent ) throw (::com::sun::star::uno::RuntimeException);
525 //____________________________________________________________________________________________________
526 // XModel
527 //____________________________________________________________________________________________________
529 /**___________________________________________________________________________________________________
530 @short -
531 @descr -
533 @seealso -
535 @param -
537 @return -
539 @onerror -
542 virtual sal_Bool SAL_CALL attachResource( const OUSTRING& sURL ,
543 const SEQUENCE< PROPERTYVALUE >& aArgs )
544 throw (::com::sun::star::uno::RuntimeException);
546 /**___________________________________________________________________________________________________
547 @short -
548 @descr -
550 @seealso -
552 @param -
554 @return -
556 @onerror -
559 virtual OUSTRING SAL_CALL getURL() throw (::com::sun::star::uno::RuntimeException);
561 /**___________________________________________________________________________________________________
562 @short -
563 @descr -
565 @seealso -
567 @param -
569 @return -
571 @onerror -
574 virtual SEQUENCE< PROPERTYVALUE > SAL_CALL getArgs() throw (::com::sun::star::uno::RuntimeException);
576 /**___________________________________________________________________________________________________
577 @short -
578 @descr -
580 @seealso -
582 @param -
584 @return -
586 @onerror -
589 virtual void SAL_CALL connectController( const REFERENCE< XCONTROLLER >& xController ) throw (::com::sun::star::uno::RuntimeException);
591 /**___________________________________________________________________________________________________
592 @short -
593 @descr -
595 @seealso -
597 @param -
599 @return -
601 @onerror -
604 virtual void SAL_CALL disconnectController( const REFERENCE< XCONTROLLER >& xController ) throw (::com::sun::star::uno::RuntimeException);
606 /**___________________________________________________________________________________________________
607 @short -
608 @descr -
610 @seealso -
612 @param -
614 @return -
616 @onerror -
619 virtual void SAL_CALL lockControllers() throw (::com::sun::star::uno::RuntimeException);
621 /**___________________________________________________________________________________________________
622 @short -
623 @descr -
625 @seealso -
627 @param -
629 @return -
631 @onerror -
634 virtual void SAL_CALL unlockControllers() throw (::com::sun::star::uno::RuntimeException);
636 /**___________________________________________________________________________________________________
637 @short -
638 @descr -
640 @seealso -
642 @param -
644 @return -
646 @onerror -
649 virtual sal_Bool SAL_CALL hasControllersLocked() throw (::com::sun::star::uno::RuntimeException);
651 /**___________________________________________________________________________________________________
652 @short -
653 @descr -
655 @seealso -
657 @param -
659 @return -
661 @onerror -
664 virtual REFERENCE< XCONTROLLER > SAL_CALL getCurrentController() throw (::com::sun::star::uno::RuntimeException);
666 /**___________________________________________________________________________________________________
667 @short -
668 @descr -
670 @seealso -
672 @param -
674 @return -
676 @onerror -
679 virtual void SAL_CALL setCurrentController( const REFERENCE< XCONTROLLER >& xController )
680 throw (::com::sun::star::container::NoSuchElementException, ::com::sun::star::uno::RuntimeException);
682 /**___________________________________________________________________________________________________
683 @short -
684 @descr -
686 @seealso -
688 @param -
690 @return -
692 @onerror -
695 virtual REFERENCE< XINTERFACE > SAL_CALL getCurrentSelection() throw (::com::sun::star::uno::RuntimeException);
697 //____________________________________________________________________________________________________
698 // XModifiable
699 //____________________________________________________________________________________________________
701 /**___________________________________________________________________________________________________
702 @short -
703 @descr -
705 @seealso -
707 @param -
709 @return -
711 @onerror -
714 virtual sal_Bool SAL_CALL isModified() throw (::com::sun::star::uno::RuntimeException);
716 /**___________________________________________________________________________________________________
717 @short -
718 @descr -
720 @seealso -
722 @param -
724 @return -
726 @onerror -
729 virtual void SAL_CALL setModified( sal_Bool bModified )
730 throw (::com::sun::star::beans::PropertyVetoException, ::com::sun::star::uno::RuntimeException);
732 /**___________________________________________________________________________________________________
733 @short -
734 @descr -
736 @seealso -
738 @param -
740 @return -
742 @onerror -
745 virtual void SAL_CALL addModifyListener( const REFERENCE< XMODIFYLISTENER >& xListener ) throw( RUNTIMEEXCEPTION ) ;
747 /**___________________________________________________________________________________________________
748 @short -
749 @descr -
751 @seealso -
753 @param -
755 @return -
757 @onerror -
760 virtual void SAL_CALL removeModifyListener(const REFERENCE< XMODIFYLISTENER > & xListener) throw( RUNTIMEEXCEPTION ) ;
762 //____________________________________________________________________________________________________
763 // XCloseable
764 //____________________________________________________________________________________________________
766 virtual void SAL_CALL close( sal_Bool bDeliverOwnership ) throw (CLOSEVETOEXCEPTION, RUNTIMEEXCEPTION);
768 //____________________________________________________________________________________________________
769 // XCloseBroadcaster
770 //____________________________________________________________________________________________________
772 virtual void SAL_CALL addCloseListener( const REFERENCE< XCLOSELISTENER >& xListener ) throw (RUNTIMEEXCEPTION);
773 virtual void SAL_CALL removeCloseListener( const REFERENCE< XCLOSELISTENER >& xListener ) throw (RUNTIMEEXCEPTION);
775 //____________________________________________________________________________________________________
776 // XPrintJobBroadcaster
777 //____________________________________________________________________________________________________
779 virtual void SAL_CALL addPrintJobListener( const ::com::sun::star::uno::Reference< ::com::sun::star::view::XPrintJobListener >& xListener )throw (::com::sun::star::uno::RuntimeException) {DBG_BF_ASSERT(0, "STRIP");}//STRIP001 virtual void SAL_CALL addPrintJobListener( const ::com::sun::star::uno::Reference< ::com::sun::star::view::XPrintJobListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
780 virtual void SAL_CALL removePrintJobListener( const ::com::sun::star::uno::Reference< ::com::sun::star::view::XPrintJobListener >& xListener ) throw (::com::sun::star::uno::RuntimeException) {DBG_BF_ASSERT(0, "STRIP");}//STRIP001 virtual void SAL_CALL removePrintJobListener( const ::com::sun::star::uno::Reference< ::com::sun::star::view::XPrintJobListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
782 //____________________________________________________________________________________________________
783 // XPrintable
784 //____________________________________________________________________________________________________
786 /**___________________________________________________________________________________________________
787 @short -
788 @descr -
790 @seealso -
792 @param -
794 @return -
796 @onerror -
799 virtual SEQUENCE< PROPERTYVALUE > SAL_CALL getPrinter() throw (::com::sun::star::uno::RuntimeException) {DBG_BF_ASSERT(0, "STRIP");SEQUENCE< PROPERTYVALUE > aFlavorSeq( 0 );return aFlavorSeq;}//STRIP001 virtual SEQUENCE< PROPERTYVALUE > SAL_CALL getPrinter() throw (::com::sun::star::uno::RuntimeException);
801 /**___________________________________________________________________________________________________
802 @short -
803 @descr -
805 @seealso -
807 @param -
809 @return -
811 @onerror -
814 virtual void SAL_CALL setPrinter( const SEQUENCE< PROPERTYVALUE >& seqPrinter )
815 throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException) {DBG_BF_ASSERT(0, "STRIP");}//STRIP001 throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
816 /**___________________________________________________________________________________________________
817 @short -
818 @descr -
820 @seealso -
822 @param -
824 @return -
826 @onerror -
829 virtual void SAL_CALL print( const SEQUENCE< PROPERTYVALUE >& seqOptions )
830 throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
832 //____________________________________________________________________________________________________
833 // XStorable
834 //____________________________________________________________________________________________________
836 /**___________________________________________________________________________________________________
837 @short -
838 @descr -
840 @seealso -
842 @param -
844 @return -
846 @onerror -
849 virtual sal_Bool SAL_CALL hasLocation() throw (::com::sun::star::uno::RuntimeException);
851 /**___________________________________________________________________________________________________
852 @short -
853 @descr -
855 @seealso -
857 @param -
859 @return -
861 @onerror -
864 virtual OUSTRING SAL_CALL getLocation() throw (::com::sun::star::uno::RuntimeException);
866 /**___________________________________________________________________________________________________
867 @short -
868 @descr -
870 @seealso -
872 @param -
874 @return -
876 @onerror -
879 virtual sal_Bool SAL_CALL isReadonly() throw (::com::sun::star::uno::RuntimeException);
881 /**___________________________________________________________________________________________________
882 @short -
883 @descr -
885 @seealso -
887 @param -
889 @return -
891 @onerror -
894 virtual void SAL_CALL store() throw (::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
896 /**___________________________________________________________________________________________________
897 @short -
898 @descr -
900 @seealso -
902 @param -
904 @return -
906 @onerror -
909 virtual void SAL_CALL storeAsURL( const OUSTRING& sURL ,
910 const SEQUENCE< PROPERTYVALUE >& seqArguments )
911 throw (::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException) ;
913 /**___________________________________________________________________________________________________
914 @short -
915 @descr -
917 @seealso -
919 @param -
921 @return -
923 @onerror -
926 virtual void SAL_CALL storeToURL( const OUSTRING& sURL ,
927 const SEQUENCE< PROPERTYVALUE >& seqArguments )
928 throw (::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
930 //____________________________________________________________________________________________________
931 // XLoadable
932 //____________________________________________________________________________________________________
934 /**___________________________________________________________________________________________________
935 @short -
936 @descr -
938 @seealso -
940 @param -
942 @return -
944 @onerror -
947 virtual void SAL_CALL initNew()
948 throw (::com::sun::star::frame::DoubleInitializationException,
949 ::com::sun::star::io::IOException,
950 ::com::sun::star::uno::RuntimeException,
951 ::com::sun::star::uno::Exception); // #dochnoetig# {DBG_BF_ASSERT(0, "STRIP");}//STRIP001 ::com::sun::star::uno::Exception);
953 /**___________________________________________________________________________________________________
954 @short -
955 @descr -
957 @seealso -
959 @param -
961 @return -
963 @onerror -
966 virtual void SAL_CALL load( const SEQUENCE< PROPERTYVALUE >& seqArguments )
967 throw (::com::sun::star::frame::DoubleInitializationException,
968 ::com::sun::star::io::IOException,
969 ::com::sun::star::uno::RuntimeException,
970 ::com::sun::star::uno::Exception); // #dochnoetig# {DBG_BF_ASSERT(0, "STRIP");}//STRIP001 ::com::sun::star::uno::Exception);
972 //____________________________________________________________________________________________________
973 // XTransferable
974 //____________________________________________________________________________________________________
976 /**___________________________________________________________________________________________________
977 @short -
978 @descr -
980 @seealso -
982 @param -
984 @return -
986 @onerror -
989 virtual ANY SAL_CALL getTransferData( const DATAFLAVOR& aFlavor )
990 throw (::com::sun::star::datatransfer::UnsupportedFlavorException,
991 ::com::sun::star::io::IOException,
992 ::com::sun::star::uno::RuntimeException);
994 /**___________________________________________________________________________________________________
995 @short -
996 @descr -
998 @seealso -
1000 @param -
1002 @return -
1004 @onerror -
1007 virtual SEQUENCE< DATAFLAVOR > SAL_CALL getTransferDataFlavors()
1008 throw (::com::sun::star::uno::RuntimeException);
1010 /**___________________________________________________________________________________________________
1011 @short -
1012 @descr -
1014 @seealso -
1016 @param -
1018 @return -
1020 @onerror -
1023 virtual sal_Bool SAL_CALL isDataFlavorSupported( const DATAFLAVOR& aFlavor )
1024 throw (::com::sun::star::uno::RuntimeException) {DBG_BF_ASSERT(0, "STRIP");return false;}//STRIP001 throw (::com::sun::star::uno::RuntimeException);
1026 //____________________________________________________________________________________________________
1027 // XEventsSupplier
1028 //____________________________________________________________________________________________________
1030 /**___________________________________________________________________________________________________
1031 @short -
1032 @descr - offers a list of event handlers which are be bound to events of
1033 this object.
1034 @seealso -
1036 @param -
1038 @return - an <type>Events</type> object.
1040 @onerror -
1043 virtual REFERENCE< XNAMEREPLACE > SAL_CALL getEvents() throw( RUNTIMEEXCEPTION );
1045 //____________________________________________________________________________________________________
1046 // XEventBroadcaster
1047 //____________________________________________________________________________________________________
1049 /**___________________________________________________________________________________________________
1050 @short -
1051 @descr - registers the given <type>XEventListener</type>.
1053 @seealso -
1055 @param -
1057 @return -
1059 @onerror -
1062 virtual void SAL_CALL addEventListener( const REFERENCE< XDOCEVENTLISTENER >& xListener ) throw( RUNTIMEEXCEPTION );
1064 /**___________________________________________________________________________________________________
1065 @short -
1066 @descr - unregisters the given <type>XEventListener</type>.
1068 @seealso -
1070 @param -
1072 @return -
1074 @onerror -
1077 virtual void SAL_CALL removeEventListener( const REFERENCE< XDOCEVENTLISTENER >& xListener ) throw( RUNTIMEEXCEPTION );
1079 //____________________________________________________________________________________________________
1080 // SfxListener
1081 //____________________________________________________________________________________________________
1083 /**___________________________________________________________________________________________________
1084 @short -
1085 @descr -
1087 @seealso -
1089 @param -
1091 @return -
1093 @onerror -
1096 void Notify( SfxBroadcaster& aBC ,
1097 const SfxHint& aHint ) ;
1099 //____________________________________________________________________________________________________
1100 // public IMPL?
1101 //____________________________________________________________________________________________________
1103 /**___________________________________________________________________________________________________
1104 @short -
1105 @descr -
1107 @seealso -
1109 @param -
1111 @return -
1113 @onerror -
1116 void changing() ;
1118 /**___________________________________________________________________________________________________
1119 @short -
1120 @descr -
1122 @seealso -
1124 @param -
1126 @return -
1128 @onerror -
1131 SfxObjectShell* GetObjectShell() const ;
1133 /**___________________________________________________________________________________________________
1134 @short -
1135 @descr -
1137 @seealso -
1139 @param -
1141 @return -
1143 @onerror -
1146 sal_Bool impl_isDisposed() const ;
1148 ::com::sun::star::uno::Reference < ::com::sun::star::container::XIndexAccess > SAL_CALL getViewData() throw (::com::sun::star::uno::RuntimeException);
1149 void SAL_CALL setViewData( const ::com::sun::star::uno::Reference < ::com::sun::star::container::XIndexAccess >& aData ) throw (::com::sun::star::uno::RuntimeException);
1151 /** calls all XEventListeners */
1152 void notifyEvent( const ::com::sun::star::document::EventObject& aEvent ) const;
1154 /** returns true if someone added a XEventListener to this XEventBroadcaster */
1155 sal_Bool hasEventListeners() const;
1157 protected:
1158 virtual void impl_setPrinter(const SEQUENCE< PROPERTYVALUE >& rPrinter,SfxPrinter*& pPrinter,sal_uInt16& nChangeFlags,SfxViewShell*& pViewSh){DBG_BF_ASSERT(0, "STRIP");}//STRIP001 virtual void impl_setPrinter(const SEQUENCE< PROPERTYVALUE >& rPrinter,SfxPrinter*& pPrinter,sal_uInt16& nChangeFlags,SfxViewShell*& pViewSh);
1159 //________________________________________________________________________________________________________
1160 // private methods
1161 //________________________________________________________________________________________________________
1163 private:
1165 /**___________________________________________________________________________________________________
1166 @short -
1167 @descr -
1169 @seealso -
1171 @param -
1173 @return -
1175 @onerror -
1178 void impl_store( SfxObjectShell* pObjectShell ,
1179 const OUSTRING& sURL ,
1180 const SEQUENCE< PROPERTYVALUE >& seqArguments ,
1181 sal_Bool bSaveTo ) ;
1182 void postEvent_Impl( const SfxEventHint& rHint );
1183 String getEventName_Impl( long nID );
1185 //________________________________________________________________________________________________________
1186 // private variables and methods
1187 //________________________________________________________________________________________________________
1189 private:
1191 IMPL_SfxBaseModel_DataContainer* m_pData ;
1193 DECL_LINK( LoadDone_Impl, void* );
1195 } ; // class SfxBaseModel
1197 }//end of namespace binfilter
1198 #endif // _SFX_SFXBASEMODEL_HXX_