xref: /AOO41X/main/sc/source/ui/inc/drawsh.hxx (revision 54628ca40d27d15cc98fe861da7fff7e60c2f7d6)
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 SC_DRAWSH_HXX
25 #define SC_DRAWSH_HXX
26 
27 #include <sfx2/shell.hxx>
28 #include "shellids.hxx"
29 #include <sfx2/module.hxx>
30 #include <svx/svdmark.hxx>
31 #include <tools/link.hxx>
32 
33 class AbstractSvxNameDialog; //CHINA001 class SvxNameDialog;
34 class ScViewData;
35 class ScDrawView;
36 
37 class ScDrawShell : public SfxShell
38 {
39     ScViewData* pViewData;
40 
41     DECL_LINK( NameObjectHdl, AbstractSvxNameDialog* );
42 
43 #ifdef ISSUE66550_HLINK_FOR_SHAPES
44     void SetHlinkForObject( SdrObject* pObj, const rtl::OUString& rHlnk );
45 #endif
46 
47 protected:
48     ScViewData* GetViewData()   { return pViewData; }
49 
50 public:
51     TYPEINFO();
52     SFX_DECL_INTERFACE(SCID_DRAW_SHELL)
53 
54                     ScDrawShell(ScViewData* pData);
55                     ~ScDrawShell();
56 
57     void    StateDisableItems( SfxItemSet &rSet );
58 
59     void    ExecDrawAttr(SfxRequest& rReq);
60     void    GetDrawAttrState(SfxItemSet &rSet);
61     void    GetAttrFuncState(SfxItemSet &rSet);
62 
63     void    ExecDrawFunc(SfxRequest& rReq);
64     void    GetDrawFuncState(SfxItemSet &rSet);
65     void    GetState(SfxItemSet &rSet);
66 
67     void    ExecFormText(SfxRequest& rReq);     // StarFontWork
68     void    GetFormTextState(SfxItemSet& rSet);
69 
70     void    ExecuteHLink(SfxRequest& rReq);     // Hyperlink
71     void    GetHLinkState(SfxItemSet& rSet);
72 
73     void    ExecFormatPaintbrush(SfxRequest& rReq);
74     void    StateFormatPaintbrush(SfxItemSet& rSet);
75 
76     void    ExecuteMacroAssign( SdrObject* pObj, Window* pWin );
77     void    ExecuteLineDlg( SfxRequest& rReq, sal_uInt16 nTabPage = 0xffff );
78     void    ExecuteAreaDlg( SfxRequest& rReq, sal_uInt16 nTabPage = 0xffff );
79     void    ExecuteTextAttrDlg( SfxRequest& rReq, sal_uInt16 nTabPage = 0xffff );
80 
81     ScDrawView* GetDrawView();
82 
83     sal_Bool    AreAllObjectsOnLayer(sal_uInt16 nLayerNo,const SdrMarkList& rMark);
84 };
85 
86 
87 
88 #endif
89 
90 
91