LibreOffice Module svx (master)  1
SelectionAnalyzer.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * This file incorporates work covered by the following license notice:
10  *
11  * Licensed to the Apache Software Foundation (ASF) under one or more
12  * contributor license agreements. See the NOTICE file distributed
13  * with this work for additional information regarding copyright
14  * ownership. The ASF licenses this file to you under the Apache
15  * License, Version 2.0 (the "License"); you may not use this file
16  * except in compliance with the License. You may obtain a copy of
17  * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18  */
19 #ifndef INCLUDED_SVX_SIDEBAR_SELECTIONANALYZER_HXX
20 #define INCLUDED_SVX_SIDEBAR_SELECTIONANALYZER_HXX
21 
22 #include <vcl/EnumContext.hxx>
23 #include <svx/svxdllapi.h>
24 
25 class SdrMarkList;
26 class SdrObject;
27 enum class SdrInventor : sal_uInt32;
28 
29 namespace svx::sidebar {
30 
37 {
38 public:
39  static vcl::EnumContext::Context GetContextForSelection_SC (
40  const SdrMarkList& rMarkList);
41 
42  enum class ViewType
43  {
44  Standard,
45  Master,
46  Handout,
47  Notes,
48  };
49  static vcl::EnumContext::Context GetContextForSelection_SD (
50  const SdrMarkList& rMarkList,
51  const ViewType eViewType);
52 
53 private:
54  static vcl::EnumContext::Context GetContextForObjectId_SC (
55  const sal_uInt16 nObjectId);
56  static vcl::EnumContext::Context GetContextForObjectId_SD (
57  const sal_uInt16 nObjectId,
58  const ViewType eViewType);
59  static SdrInventor GetInventorTypeFromMark (
60  const SdrMarkList& rMarkList);
61  static sal_uInt16 GetObjectTypeFromMark (
62  const SdrMarkList& rMarkList);
63  static sal_uInt16 GetObjectTypeFromGroup (
64  const SdrObject* pObj);
65  static bool IsShapeType (
66  const sal_uInt16 nType);
67  static bool IsTextObjType (
68  const sal_uInt16 nType);
69 };
70 
71 } // end of namespace svx::sidebar
72 
73 #endif
74 
75 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
SdrInventor
Definition: svdobj.hxx:100
#define SVX_DLLPUBLIC
Definition: svxdllapi.h:28
Notes
Analyze the current selection of Calc or Draw/Impress documents and return the associated sidebar con...
Abstract DrawObject.
Definition: svdobj.hxx:260
Master