Version 4.0.0.1, tag libreoffice-4.0.0.1
[LibreOffice.git] / cui / source / inc / pastedlg.hxx
blobe4d020f9f0ac1239d20075c3569aeb0dc31a0420
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
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/.
9 * This file incorporates work covered by the following license notice:
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 .
20 #ifndef _PASTEDLG_HXX
21 #define _PASTEDLG_HXX
23 #include <map>
24 #include <sot/formats.hxx>
25 #include <tools/globname.hxx>
26 #include <svtools/transfer.hxx>
28 #include <vcl/dialog.hxx>
29 #include <vcl/fixed.hxx>
30 #include <vcl/button.hxx>
31 #include <vcl/edit.hxx>
32 #include <vcl/lstbox.hxx>
34 /********************** SvPasteObjectDialog ******************************
35 *************************************************************************/
37 struct TransferableObjectDescriptor;
38 class TransferableDataHelper;
40 class SvPasteObjectDialog : public ModalDialog
42 FixedText aFtSource;
43 FixedText aFtObjectSource;
44 RadioButton aRbPaste;
45 RadioButton aRbPasteLink;
46 CheckBox aCbDisplayAsIcon;
47 PushButton aPbChangeIcon;
48 FixedLine aFlChoice;
49 ListBox aLbInsertList;
50 OKButton aOKButton1;
51 CancelButton aCancelButton1;
52 HelpButton aHelpButton1;
53 ::std::map< SotFormatStringId, String > aSupplementMap;
54 SvGlobalName aObjClassName;
55 String aObjName;
56 sal_uInt16 nAspect;
57 sal_Bool bLink;
59 ListBox& ObjectLB() { return aLbInsertList; }
60 FixedText& ObjectSource() { return aFtObjectSource; }
61 RadioButton& PasteLink() { return aRbPasteLink; }
62 CheckBox& AsIconBox() { return aCbDisplayAsIcon; }
64 void SelectObject();
65 DECL_LINK( SelectHdl, ListBox * );
66 DECL_LINK( DoubleClickHdl, ListBox * );
67 void SetDefault();
68 sal_uInt16 GetAspect() const { return nAspect; }
69 sal_Bool ShouldLink() const { return bLink; }
71 public:
72 SvPasteObjectDialog( Window* pParent );
73 ~SvPasteObjectDialog();
75 void Insert( SotFormatStringId nFormat, const String & rFormatName );
76 void SetObjName( const SvGlobalName & rClass, const String & rObjName );
77 sal_uLong GetFormat( const TransferableDataHelper& aHelper,
78 const DataFlavorExVector* pFormats=0,
79 const TransferableObjectDescriptor* pDesc=0 );
82 #endif // _PASTEDLG_HXX
84 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */