2001-02-05 02:35:57 -06:00
|
|
|
/*************************************************************************
|
|
|
|
*
|
2008-04-10 10:21:35 -05:00
|
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
2008-04-10 10:21:35 -05:00
|
|
|
* Copyright 2008 by Sun Microsystems, Inc.
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
2008-04-10 10:21:35 -05:00
|
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
2008-04-10 10:21:35 -05:00
|
|
|
* $RCSfile: QTableWindow.hxx,v $
|
|
|
|
* $Revision: 1.9 $
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
2008-04-10 10:21:35 -05:00
|
|
|
* This file is part of OpenOffice.org.
|
2001-02-05 02:35:57 -06:00
|
|
|
*
|
2008-04-10 10:21:35 -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:21:35 -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:21:35 -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_QUERY_TABLEWINDOW_HXX
|
|
|
|
#define DBAUI_QUERY_TABLEWINDOW_HXX
|
|
|
|
|
|
|
|
#ifndef DBAUI_TABLEWINDOW_HXX
|
|
|
|
#include "TableWindow.hxx"
|
|
|
|
#endif
|
|
|
|
#ifndef DBAUI_QUERY_TABLEWINDOWDATA_HXX
|
|
|
|
#include "QTableWindowData.hxx"
|
|
|
|
#endif
|
|
|
|
#ifndef DBAUI_TABLEFIELDDESC_HXX
|
|
|
|
#include "TableFieldDescription.hxx"
|
|
|
|
#endif
|
|
|
|
#ifndef _RTTI_HXX
|
|
|
|
#include <tools/rtti.hxx>
|
|
|
|
#endif
|
|
|
|
|
|
|
|
namespace dbaui
|
|
|
|
{
|
|
|
|
//==================================================================
|
|
|
|
class OQueryTableWindow : public OTableWindow
|
|
|
|
{
|
2001-03-23 02:47:54 -06:00
|
|
|
sal_Int32 m_nAliasNum;
|
2001-02-05 02:35:57 -06:00
|
|
|
::rtl::OUString m_strInitialAlias;
|
|
|
|
public:
|
2007-11-01 09:30:41 -05:00
|
|
|
OQueryTableWindow( Window* pParent, const TTableWindowData::value_type& pTabWinData, sal_Unicode* pszInitialAlias = NULL );
|
2001-02-05 02:35:57 -06:00
|
|
|
virtual ~OQueryTableWindow();
|
|
|
|
|
|
|
|
::rtl::OUString GetAliasName() const
|
|
|
|
{
|
2007-11-01 09:30:41 -05:00
|
|
|
return static_cast<OQueryTableWindowData*>(GetData().get())->GetAliasName();
|
2001-02-05 02:35:57 -06:00
|
|
|
}
|
|
|
|
void SetAliasName(const ::rtl::OUString& strNewAlias)
|
|
|
|
{
|
2007-11-01 09:30:41 -05:00
|
|
|
static_cast<OQueryTableWindowData*>(GetData().get())->SetAliasName(strNewAlias);
|
2001-02-05 02:35:57 -06:00
|
|
|
}
|
|
|
|
|
|
|
|
// spaeter Constructor, die Basisklasse ERZEUGT beim ersten Aufruf die Listbox
|
|
|
|
virtual BOOL Init();
|
|
|
|
|
2007-11-01 09:30:41 -05:00
|
|
|
inline sal_Int32 GetAliasNum() const { return m_nAliasNum; }
|
2001-02-05 02:35:57 -06:00
|
|
|
|
2001-10-05 00:49:21 -05:00
|
|
|
BOOL ExistsField(const ::rtl::OUString& strFieldName, OTableFieldDescRef& rInfo);
|
2001-02-05 02:35:57 -06:00
|
|
|
BOOL ExistsAVisitedConn() const;
|
|
|
|
|
2002-11-08 02:27:59 -06:00
|
|
|
virtual ::rtl::OUString GetName() const { return GetWinName(); }
|
|
|
|
|
2001-02-05 02:35:57 -06:00
|
|
|
protected:
|
|
|
|
virtual void KeyInput( const KeyEvent& rEvt );
|
|
|
|
|
|
|
|
virtual void OnEntryDoubleClicked(SvLBoxEntry* pEntry);
|
|
|
|
// wird aus dem DoubleClickHdl der ListBox heraus aufgerufen
|
2002-06-27 02:23:50 -05:00
|
|
|
/** delete the user data with the equal type as created within createUserData
|
|
|
|
@param _pUserData
|
|
|
|
The user data store in the listbox entries. Created with a call to createUserData.
|
|
|
|
_pUserData may be <NULL/>.
|
|
|
|
*/
|
|
|
|
virtual void deleteUserData(void*& _pUserData);
|
|
|
|
|
|
|
|
/** creates user information that will be append at the ListBoxentry
|
|
|
|
@param _xColumn
|
|
|
|
The corresponding column, can be <NULL/>.
|
|
|
|
@param _bPrimaryKey
|
|
|
|
<TRUE/> when the column belongs to the primary key
|
|
|
|
@return
|
|
|
|
the user data which will be append at the listbox entry, may be <NULL/>
|
|
|
|
*/
|
|
|
|
virtual void* createUserData(const ::com::sun::star::uno::Reference<
|
|
|
|
::com::sun::star::beans::XPropertySet>& _xColumn,
|
|
|
|
bool _bPrimaryKey);
|
2001-02-05 02:35:57 -06:00
|
|
|
};
|
|
|
|
}
|
|
|
|
#endif // DBAUI_QUERY_TABLEWINDOW_HXX
|
|
|
|
|
|
|
|
|