2001-02-05 02:35:57 -06:00
|
|
|
/*************************************************************************
|
|
|
|
*
|
2008-04-10 10:29:28 -05:00
|
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
2010-02-12 08:01:35 -06:00
|
|
|
* Copyright 2000, 2010 Oracle and/or its affiliates.
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
2008-04-10 10:29:28 -05:00
|
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
2008-04-10 10:29:28 -05:00
|
|
|
* This file is part of OpenOffice.org.
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
2008-04-10 10:29:28 -05:00
|
|
|
* OpenOffice.org is free software: you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU Lesser General Public License version 3
|
|
|
|
* only, as published by the Free Software Foundation.
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
2008-04-10 10:29:28 -05:00
|
|
|
* OpenOffice.org is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU Lesser General Public License version 3 for more details
|
|
|
|
* (a copy is included in the LICENSE file that accompanied this code).
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
2008-04-10 10:29:28 -05:00
|
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
|
|
* version 3 along with OpenOffice.org. If not, see
|
|
|
|
* <http://www.openoffice.org/license.html>
|
|
|
|
* for a copy of the LGPLv3 License.
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
|
|
|
************************************************************************/
|
|
|
|
#ifndef DBAUI_QUERYDLG_HXX
|
|
|
|
#define DBAUI_QUERYDLG_HXX
|
|
|
|
#ifndef _SV_DIALOG_HXX //autogen
|
|
|
|
#include <vcl/dialog.hxx>
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef _SV_BUTTON_HXX //autogen
|
|
|
|
#include <vcl/button.hxx>
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef _SV_FIXED_HXX //autogen
|
|
|
|
#include <vcl/fixed.hxx>
|
|
|
|
#endif
|
2002-02-06 00:45:42 -06:00
|
|
|
#ifndef _SV_LSTBOX_HXX
|
|
|
|
#include <vcl/lstbox.hxx>
|
|
|
|
#endif
|
2001-02-05 02:35:57 -06:00
|
|
|
|
|
|
|
#ifndef DBAUI_ENUMTYPES_HXX
|
|
|
|
#include "QEnumTypes.hxx"
|
|
|
|
#endif
|
2002-02-06 00:45:42 -06:00
|
|
|
|
|
|
|
#ifndef DBAUI_RELCONTROLIFACE_HXX
|
|
|
|
#include "RelControliFace.hxx"
|
|
|
|
#endif
|
|
|
|
#ifndef DBAUI_JOINTABLEVIEW_HXX
|
|
|
|
#include "JoinTableView.hxx"
|
2001-02-05 02:35:57 -06:00
|
|
|
#endif
|
|
|
|
|
2002-02-06 00:45:42 -06:00
|
|
|
|
2001-02-05 02:35:57 -06:00
|
|
|
namespace dbaui
|
|
|
|
{
|
|
|
|
class OQueryTableConnectionData;
|
2002-02-06 00:45:42 -06:00
|
|
|
class OTableListBoxControl;
|
2007-11-01 09:35:48 -05:00
|
|
|
class OQueryTableView;
|
|
|
|
class OJoinControl;
|
2002-02-06 00:45:42 -06:00
|
|
|
class DlgQryJoin : public ModalDialog
|
|
|
|
,public IRelationControlInterface
|
2001-02-05 02:35:57 -06:00
|
|
|
{
|
|
|
|
protected:
|
2002-02-27 03:20:16 -06:00
|
|
|
FixedText aML_HelpText;
|
2002-02-06 00:45:42 -06:00
|
|
|
OKButton aPB_OK;
|
|
|
|
CancelButton aPB_CANCEL;
|
|
|
|
HelpButton aPB_HELP;
|
|
|
|
|
2007-11-01 09:35:48 -05:00
|
|
|
OJoinControl* m_pJoinControl;
|
2002-02-06 00:45:42 -06:00
|
|
|
OTableListBoxControl* m_pTableControl;
|
|
|
|
OJoinTableView::OTableWindowMap* m_pTableMap;
|
2007-11-01 09:35:48 -05:00
|
|
|
OQueryTableView* m_pTableView;
|
2002-02-06 00:45:42 -06:00
|
|
|
|
2007-11-01 09:35:48 -05:00
|
|
|
EJoinType eJoinType;
|
|
|
|
TTableConnectionData::value_type m_pConnData; // enth"alt linke und rechte Tabelle
|
|
|
|
TTableConnectionData::value_type m_pOrigConnData;
|
2002-02-06 00:45:42 -06:00
|
|
|
::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection > m_xConnection;
|
2001-02-05 02:35:57 -06:00
|
|
|
|
2007-11-01 09:35:48 -05:00
|
|
|
|
2001-02-05 02:35:57 -06:00
|
|
|
DECL_LINK( OKClickHdl, Button* );
|
2002-02-06 00:45:42 -06:00
|
|
|
DECL_LINK( LBChangeHdl, ListBox* );
|
2007-11-01 09:35:48 -05:00
|
|
|
DECL_LINK( NaturalToggleHdl, CheckBox* );
|
2002-02-06 00:45:42 -06:00
|
|
|
|
|
|
|
/** setJoinType enables and set the new join type
|
|
|
|
@param _eNewJoinType the new jointype
|
|
|
|
*/
|
|
|
|
void setJoinType(EJoinType _eNewJoinType);
|
2001-02-05 02:35:57 -06:00
|
|
|
public:
|
2007-11-01 09:35:48 -05:00
|
|
|
DlgQryJoin( OQueryTableView * pParent,
|
|
|
|
const TTableConnectionData::value_type& pData,
|
2002-02-06 00:45:42 -06:00
|
|
|
OJoinTableView::OTableWindowMap* _pTableMap,
|
|
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _xConnection,
|
|
|
|
BOOL _bAllowTableSelect);
|
2001-02-05 02:35:57 -06:00
|
|
|
virtual ~DlgQryJoin();
|
|
|
|
EJoinType GetJoinType() const { return eJoinType; };
|
2002-02-06 00:45:42 -06:00
|
|
|
|
|
|
|
/** getConnectionData returns the current connection data
|
|
|
|
@return the current connectiondata
|
|
|
|
*/
|
2007-11-01 09:35:48 -05:00
|
|
|
virtual TTableConnectionData::value_type getConnectionData() const;
|
2002-02-06 00:45:42 -06:00
|
|
|
|
|
|
|
/** setValid set the valid inside, can be used for OK buttons
|
|
|
|
@param _bValid true when the using control allows an update
|
|
|
|
*/
|
|
|
|
virtual void setValid(sal_Bool _bValid);
|
|
|
|
|
|
|
|
virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection > getConnection() { return m_xConnection; }
|
|
|
|
|
|
|
|
/** notifyConnectionChange is callback which is called when the table selection has changed and a new connection exists
|
|
|
|
@param _pConnectionData the connection which exists between the new tables
|
|
|
|
*/
|
2006-06-19 21:30:21 -05:00
|
|
|
virtual void notifyConnectionChange();
|
2001-02-05 02:35:57 -06:00
|
|
|
};
|
|
|
|
}
|
|
|
|
#endif // DBAUI_QUERYDLG_HXX
|
|
|
|
|
|
|
|
|
|
|
|
|