1*1d2dbeb0SAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
3*1d2dbeb0SAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
4*1d2dbeb0SAndrew Rist  * or more contributor license agreements.  See the NOTICE file
5*1d2dbeb0SAndrew Rist  * distributed with this work for additional information
6*1d2dbeb0SAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
7*1d2dbeb0SAndrew Rist  * to you under the Apache License, Version 2.0 (the
8*1d2dbeb0SAndrew Rist  * "License"); you may not use this file except in compliance
9*1d2dbeb0SAndrew Rist  * with the License.  You may obtain a copy of the License at
10*1d2dbeb0SAndrew Rist  *
11*1d2dbeb0SAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12*1d2dbeb0SAndrew Rist  *
13*1d2dbeb0SAndrew Rist  * Unless required by applicable law or agreed to in writing,
14*1d2dbeb0SAndrew Rist  * software distributed under the License is distributed on an
15*1d2dbeb0SAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*1d2dbeb0SAndrew Rist  * KIND, either express or implied.  See the License for the
17*1d2dbeb0SAndrew Rist  * specific language governing permissions and limitations
18*1d2dbeb0SAndrew Rist  * under the License.
19*1d2dbeb0SAndrew Rist  *
20*1d2dbeb0SAndrew Rist  *************************************************************/
21*1d2dbeb0SAndrew Rist 
22*1d2dbeb0SAndrew Rist 
23cdf0e10cSrcweir #ifndef _ADDRESSLISTDIALOG_HXX
24cdf0e10cSrcweir #define _ADDRESSLISTDIALOG_HXX
25cdf0e10cSrcweir 
26cdf0e10cSrcweir #include <sfx2/basedlgs.hxx>
27cdf0e10cSrcweir #include <svtools/stdctrl.hxx>
28cdf0e10cSrcweir #ifndef _SV_BUTTON_HXX
29cdf0e10cSrcweir #include <vcl/button.hxx>
30cdf0e10cSrcweir #endif
31cdf0e10cSrcweir #include <svtools/svtabbx.hxx>
32cdf0e10cSrcweir #include <svtools/headbar.hxx>
33cdf0e10cSrcweir #include <swdbdata.hxx>
34cdf0e10cSrcweir #include "sharedconnection.hxx"
35cdf0e10cSrcweir 
36cdf0e10cSrcweir 
37cdf0e10cSrcweir namespace com{namespace sun{namespace star{
38cdf0e10cSrcweir     namespace container{
39cdf0e10cSrcweir         class XNameAccess;
40cdf0e10cSrcweir     }
41cdf0e10cSrcweir     namespace sdbc{
42cdf0e10cSrcweir         class XDataSource;
43cdf0e10cSrcweir         class XConnection;
44cdf0e10cSrcweir     }
45cdf0e10cSrcweir     namespace sdbcx{
46cdf0e10cSrcweir         class XColumnsSupplier;
47cdf0e10cSrcweir     }
48cdf0e10cSrcweir }}}
49cdf0e10cSrcweir class SwMailMergeAddressBlockPage;
50cdf0e10cSrcweir /*-- 08.04.2004 14:04:29---------------------------------------------------
51cdf0e10cSrcweir 
52cdf0e10cSrcweir   -----------------------------------------------------------------------*/
53cdf0e10cSrcweir class SwAddressListDialog : public SfxModalDialog
54cdf0e10cSrcweir {
55cdf0e10cSrcweir     FixedInfo       m_aDescriptionFI;
56cdf0e10cSrcweir 
57cdf0e10cSrcweir     FixedInfo       m_aListFT;
58cdf0e10cSrcweir     HeaderBar       m_aListHB;
59cdf0e10cSrcweir     SvTabListBox    m_aListLB;
60cdf0e10cSrcweir 
61cdf0e10cSrcweir     PushButton      m_aLoadListPB;
62cdf0e10cSrcweir     PushButton      m_aCreateListPB;
63cdf0e10cSrcweir     PushButton      m_aFilterPB;
64cdf0e10cSrcweir     PushButton      m_aEditPB;
65cdf0e10cSrcweir     PushButton      m_aTablePB;
66cdf0e10cSrcweir 
67cdf0e10cSrcweir     FixedLine       m_aSeparatorFL;
68cdf0e10cSrcweir 
69cdf0e10cSrcweir     OKButton        m_aOK;
70cdf0e10cSrcweir     CancelButton    m_aCancel;
71cdf0e10cSrcweir     HelpButton      m_aHelp;
72cdf0e10cSrcweir 
73cdf0e10cSrcweir     String          m_sName;
74cdf0e10cSrcweir     String          m_sTable;
75cdf0e10cSrcweir     String          m_sConnecting;
76cdf0e10cSrcweir 
77cdf0e10cSrcweir     String          m_sCreatedURL;
78cdf0e10cSrcweir     SvLBoxEntry*    m_pCreatedDataSource;
79cdf0e10cSrcweir 
80cdf0e10cSrcweir     bool            m_bInSelectHdl;
81cdf0e10cSrcweir 
82cdf0e10cSrcweir     SwMailMergeAddressBlockPage* m_pAddressPage;
83cdf0e10cSrcweir 
84cdf0e10cSrcweir     ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess>     m_xDBContext;
85cdf0e10cSrcweir //    ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XDataSource>          m_xSource;
86cdf0e10cSrcweir //    ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection>          m_xConnection;
87cdf0e10cSrcweir //    ::com::sun::star::uno::Reference< ::com::sun::star::sdbcx::XColumnsSupplier>    m_xColumnsSupplier;
88cdf0e10cSrcweir     SwDBData                                                                        m_aDBData;
89cdf0e10cSrcweir 
90cdf0e10cSrcweir     void DetectTablesAndQueries(SvLBoxEntry* pSelect, bool bWidthDialog);
91cdf0e10cSrcweir 
92cdf0e10cSrcweir     DECL_LINK(FilterHdl_Impl, PushButton*);
93cdf0e10cSrcweir     DECL_LINK(LoadHdl_Impl,   PushButton*);
94cdf0e10cSrcweir     DECL_LINK(CreateHdl_Impl, PushButton*);
95cdf0e10cSrcweir     DECL_LINK(ListBoxSelectHdl_Impl, SvTabListBox*);
96cdf0e10cSrcweir     DECL_LINK(EditHdl_Impl, PushButton*);
97cdf0e10cSrcweir     DECL_LINK(TableSelectHdl_Impl, PushButton*);
98cdf0e10cSrcweir     DECL_LINK(OKHdl_Impl, PushButton*);
99cdf0e10cSrcweir 
100cdf0e10cSrcweir     DECL_STATIC_LINK(SwAddressListDialog, StaticListBoxSelectHdl_Impl, SvLBoxEntry*);
101cdf0e10cSrcweir 
102cdf0e10cSrcweir public:
103cdf0e10cSrcweir     SwAddressListDialog(SwMailMergeAddressBlockPage* pParent);
104cdf0e10cSrcweir     ~SwAddressListDialog();
105cdf0e10cSrcweir 
106cdf0e10cSrcweir     ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XDataSource>
107cdf0e10cSrcweir                         GetSource();
108cdf0e10cSrcweir 
109cdf0e10cSrcweir     SharedConnection    GetConnection();
110cdf0e10cSrcweir 
111cdf0e10cSrcweir     ::com::sun::star::uno::Reference< ::com::sun::star::sdbcx::XColumnsSupplier>
112cdf0e10cSrcweir                         GetColumnsSupplier();
113cdf0e10cSrcweir 
GetDBData() const114cdf0e10cSrcweir     const SwDBData&     GetDBData() const       {return m_aDBData;}
115cdf0e10cSrcweir     ::rtl::OUString     GetFilter();
116cdf0e10cSrcweir };
117cdf0e10cSrcweir #endif
118cdf0e10cSrcweir 
119