Update ooo320-m1
[ooovba.git] / sd / source / ui / slidesorter / view / SlsViewCacheContext.hxx
blob42a8a5a052056b80f929dd0570107a0564c34479
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: SlsViewCacheContext.hxx,v $
11 * $Revision: 1.3 $
13 * This file is part of OpenOffice.org.
15 * OpenOffice.org is free software: you can redistribute it and/or modify
16 * it under the terms of the GNU Lesser General Public License version 3
17 * only, as published by the Free Software Foundation.
19 * OpenOffice.org is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU Lesser General Public License version 3 for more details
23 * (a copy is included in the LICENSE file that accompanied this code).
25 * You should have received a copy of the GNU Lesser General Public License
26 * version 3 along with OpenOffice.org. If not, see
27 * <http://www.openoffice.org/license.html>
28 * for a copy of the LGPLv3 License.
30 ************************************************************************/
32 #ifndef SD_SLIDESORTER_VIEW_VIEW_CACHE_CONTEXT_HXX
33 #define SD_SLIDESORTER_VIEW_VIEW_CACHE_CONTEXT_HXX
35 #include "cache/SlsCacheContext.hxx"
36 #include "model/SlsSharedPageDescriptor.hxx"
38 namespace sd { namespace slidesorter { namespace model {
39 class SlideSorterModel;
40 } } }
42 namespace sd { namespace slidesorter { namespace view {
44 class SlideSorterView;
46 /** The cache context for the SlideSorter as used by Draw and Impress. See
47 the base class for documentation of the individual methods.
49 class ViewCacheContext : public cache::CacheContext
51 public:
52 ViewCacheContext (
53 model::SlideSorterModel& rModel,
54 SlideSorterView& rView);
55 virtual ~ViewCacheContext (void);
56 virtual void NotifyPreviewCreation (cache::CacheKey aKey, const ::boost::shared_ptr<BitmapEx>& rPreview);
57 virtual bool IsIdle (void);
58 virtual bool IsVisible (cache::CacheKey aKey);
59 virtual const SdrPage* GetPage (cache::CacheKey aKey);
60 virtual ::boost::shared_ptr<std::vector<cache::CacheKey> > GetEntryList (bool bVisible);
61 virtual sal_Int32 GetPriority (cache::CacheKey aKey);
62 virtual ::com::sun::star::uno::Reference<com::sun::star::uno::XInterface> GetModel (void);
64 private:
65 model::SlideSorterModel& mrModel;
66 SlideSorterView& mrView;
68 model::SharedPageDescriptor GetDescriptor (cache::CacheKey aKey);
72 } } } // end of namespace ::sd::slidesorter::view
74 #endif